Control mouse and keyboard from a smartphone
Find a file
Luka Jankovic ed7e8bae54
Some checks are pending
Test / test (linux, []) (push) Waiting to run
Test / test (linux, [null portal uinput x11]) (push) Waiting to run
Test / test (linux, [null]) (push) Waiting to run
Test / test (linux, [portal]) (push) Waiting to run
Test / test (linux, [uinput]) (push) Waiting to run
Test / test (linux, [x11]) (push) Waiting to run
Test / test (windows, []) (push) Waiting to run
Test / test (windows, [null]) (push) Waiting to run
Add systemd user service and CLI wrapper for remote-touchpad
This commit introduces a complete systemd user service setup for
remote-touchpad, eliminating the need for users to manually manage
the binary process. Key additions:

- New rts CLI wrapper script providing a user-friendly interface
  for service management without requiring root access
- Systemd service file for proper background operation with
  restart policies and dependency management
- Service management commands: install, start, stop, status,
  restart, and uninstall
- URL extraction and QR code generation via the url command
- Service log viewing via the log command

The installation process now:
1. Verifies Go is installed
2. Builds the remote-touchpad binary with appropriate tags
3. Installs service files to ~/.config/systemd/user/
4. Installs the binary to ~/.local/bin/
5. Enables and starts the service automatically

The README has been updated with comprehensive installation
instructions for the new user service approach.
2026-08-14 21:59:58 +02:00
.github/workflows CI: Install missing package 2025-03-17 20:24:25 +01:00
desktop Bump version to 1.5.4 2026-08-03 00:34:58 +02:00
flatpak Update dependencies 2026-08-03 00:34:58 +02:00
icon-font Reorganize 2022-06-20 03:48:43 +02:00
inputcontrol X11: Reduce delay when mapping new keys 2026-08-03 00:32:34 +02:00
screenshots Update screenshots 2022-01-29 11:04:22 +01:00
snap Snap: Specifiy supported platforms 2026-07-11 20:59:03 +02:00
terminal Reorganize 2022-06-20 03:48:43 +02:00
webdata Workaround for virtual keyboard covering buttons for Safari on iOS 2024-01-31 09:33:11 +01:00
CHANGELOG.md Bump version to 1.5.4 2026-08-03 00:34:58 +02:00
COPYING import project 2018-06-23 17:40:58 +02:00
go.mod Update dependencies 2026-08-03 00:34:58 +02:00
go.sum Update dependencies 2026-08-03 00:34:58 +02:00
host.go Format code 2026-08-02 22:12:27 +02:00
icon_windows.go Use tags for go generate 2020-08-26 03:31:59 +02:00
icon_windows.syso New logo 2021-06-06 00:46:14 +02:00
main.go Bump version to 1.5.4 2026-08-03 00:34:58 +02:00
README.md Add systemd user service and CLI wrapper for remote-touchpad 2026-08-14 21:59:58 +02:00
remote-touchpad.service Add systemd user service and CLI wrapper for remote-touchpad 2026-08-14 21:59:58 +02:00
rts Add systemd user service and CLI wrapper for remote-touchpad 2026-08-14 21:59:58 +02:00
webdata.go Set MIME types explicitly 2024-02-06 11:26:34 +01:00
webdata_test.go Set MIME types explicitly 2024-02-06 11:26:34 +01:00

Remote Touchpad

Control mouse and keyboard from the webbrowser of a smartphone (or any other device with a touchscreen). To take control open the displayed URL or scan the QR code.

Supports Flatpak's RemoteDesktop portal (for Wayland), Windows and X11.

Installation

  • Flatpak
  • Snap
  • Windows
  • Golang:
    • Portal & uinput & X11:

      go install -tags portal,uinput,x11 github.com/unrud/remote-touchpad@latest
      
    • Windows:

      go install github.com/unrud/remote-touchpad@latest
      

Linux User Service Installation

To install remote-touchpad as a user-specific systemd service (no root access required):

  1. Clone the repository and navigate to the project directory:

    git clone https://github.com/Unrud/remote-touchpad.git
    cd remote-touchpad
    
  2. Install the service using the provided wrapper script (no sudo required):

    ./rts install
    
  3. Access the service:

    • View service status: ./rts status
    • Get URL: ./rts url
    • View logs: ./rts log
    • Stop service: ./rts stop
    • Start service: ./rts start
    • Restart service: ./rts restart
    • Uninstall: ./rts uninstall

The service will run in the background and maintain a persistent connection with URL and QR code accessible via the url command.

Screenshots

screenshot 1

screenshot 2

screenshot 3

screenshot 4