Repository navigation
Margin v0.4.0: Linux support
Margin now runs on Linux as well as Windows, and both have a one-line installer.
Install
Windows 10 / 11 (PowerShell):
irm https://raw.githubusercontent.com/arxhr007/margin/main/scripts/install.ps1 | iexLinux (64-bit Intel/AMD, systemd):
curl -fsSL https://raw.githubusercontent.com/arxhr007/margin/main/scripts/install.sh | shBoth check the SHA-256 of what they download. Or download by hand: margin.exe for Windows, margin-linux-x86_64 for Linux (a static binary with no dependencies), each with a .sha256 file.
What's new
- Linux support. Edge slides and corner presses work through evdev (reads the touchpad) and uinput (sends keys), so it works on Wayland and X11. A background systemd user service runs it, and
margin settingsopens the settings page in your browser. The settings file format is the same as on Windows. - One-line installers for Windows and Linux (see above).
- Windows: the Switch tabs (Alt+Tab) screen now has a Change the keys… button that opens the Custom keys editor with the preset list, so changing those keys is easy to find.
- Fixed a bug found while testing on Linux: a touch that starts at exactly the same X as the previous touch in that slot could be missed.
Linux notes
This is the first Linux release. It is tested end to end with a virtual touchpad on Ubuntu 24.04 (a fake touchpad drives the real daemon and the key events it sends are checked), but not yet on a range of real laptops and desktops. Known differences from Windows: slides start by sliding in from the edge only; the pointer is not frozen during a slide; a corner press also clicks; brightness and volume use media keys, so your desktop sets the step and shows its own display; no fine-step modifier. See the README's Linux section, including the one-time permissions setup (input group and /dev/uinput).
There is no prebuilt Linux arm64 binary in this release; on arm64, build from source with cargo build --release.
Checksums (SHA-256)
1628e83bc40a83bdd697b1f69fffd45799811c9ea109a8aa06943039a7bd2cd3 margin.exe
5be736f62aef50bbc96878335e734a5b5a3fa21098b204fa1b7b88481b1c36c1 margin-linux-x86_64