#sway #x11 #display #rotation

app rot8

automatic display rotation using built-in accelerometer

3 releases

0.1.3 Jan 4, 2020
0.1.2 Sep 14, 2019
0.1.1 Aug 17, 2019

#164 in Unix APIs

39 downloads per month

MIT license

303 lines


automatic display rotation using built-in accelerometer

Automatic rotate modern Linux desktop screen and input devices. Handy for convertible touchscreen notebooks like the Kaby Lake model of the HP Spectre x360.

Compatible with sway and X11.

Available in the Arch User Repository: rot8-git.

Rust language and the cargo package manager are required to build the binary.

$ git clone https://github.com/efernau/rot8
$ cd rot8 && cargo build --release
$ cp target/release/rot8  /usr/bin/rot8


$ cargo install rot8

For Sway map your input to the output device:

$ swaymsg <INPUTDEVICE> map_to_output <OUTPUTDEVICE>

Call rot8 from sway configuration file ~/.config/sway/config:

exec rot8

For X11 set Touchscreen Device

rot8 --touchscreen <TOUCHSCREEN>

there are the following args.

--sleep // Set sleep millis (500)
--display // Set Display Device (eDP-1)
--touchscreen // Set Touchscreen Device X11 (ELAN0732:00 04F3:22E1)
--keyboard // Set keyboard to deactivate upon rotation
--threshold // Set a rotation threshold between 0 and 1 (0.5)


~89K SLoC