LibreSplit icon indicating copy to clipboard operation
LibreSplit copied to clipboard

Add ctl

Open EXtremeExploit opened this issue 1 month ago • 4 comments

Adds a new binary libresplit-ctl, which talks to the main libresplit instance to control the timer, for cases where the game and libresplit arent running on the same system Also works as a workaround for wayland keybinds since you can setup global hotkeys in your desktop to launch libresplit-ctl

For appimage: Both binaries work as one, launching without arguments (double click too) will open the main libresplit program, but running the appimage with any arguments will use ctl instead, like so:

./libresplit.appimage (launches the normal libresplit)
./libresplit.appimage help (gives you info on what commands are available)
./libresplit.appimage start-split (will start or split the timer)

Fixes: https://github.com/LibreSplit/LibreSplit/issues/98

TODO:

  • [x] Add at least some documentation on ctl

EXtremeExploit avatar Nov 15 '25 01:11 EXtremeExploit

If you want, I can take care of the documentation side of things.

Penaz91 avatar Nov 15 '25 13:11 Penaz91

yes thank you

EXtremeExploit avatar Nov 15 '25 14:11 EXtremeExploit

Would it be possible for the commands to be made the same as the ones in LiveSplit Server? This would increase compatibility with existing LiveSplit tools.

On top of this, I don't think the ctl utility being packaged with the AppImage (at least in the way that it currently is) is a good idea as the decompression process could cause latency issues (especially on slower HDD systems).

Loomeh avatar Nov 16 '25 08:11 Loomeh

Would it be possible for the commands to be made the same as the ones in LiveSplit Server? This would increase compatibility with existing LiveSplit tools.

On top of this, I don't think the ctl utility being packaged with the AppImage (at least in the way that it currently is) is a good idea as the decompression process could cause latency issues (especially on slower HDD systems).

I cant think of any other way to include the ctl in the appimage, besides, when on slow drives linux disk cache will already have the appimage loaded, and that will always be the case since the main libresplit program is running, and decompression happens in /tmp, which lives is RAM, the only latency is the already fast boot of the appimage . If you have any ideas on how to package it say so, im open for suggestions

EXtremeExploit avatar Nov 16 '25 14:11 EXtremeExploit

I cant think of any other way to include the ctl in the appimage

This might be "fixable" with documentation: allowing users to interact with the LibreSplit server using netcat (as an alternative to libresplitctl) or distributing the client separately (which kinda defeats the purpose of the appimage)

Penaz91 avatar Dec 12 '25 22:12 Penaz91