keylightd
is a small system daemon for Framework laptops that listens to keyboard and touchpad input, and turns on the keyboard backlight while either is being used.
To install from source, clone the repository and run:
$ cargo build --release
$ sudo cp target/release/keylightd /usr/local/bin
keylightd
has no native dependencies you have to install first (apart from a recent Rust toolchain for building it, of course).
It implements communication with the Embedded Controller itself, and talks to the input devices using evdev
ioctls directly.
It also does not have any hard dependencies on a desktop environment or display server.
If you want to configure keylightd
as a systemd service that starts on boot, you can use the provided service file:
$ sudo cp etc/keylightd.service /etc/systemd/system
$ sudo systemctl enable --now keylightd
Note that keylightd
needs to be run as root, since it accesses the Embedded Controller to control the keyboard backlight.
keylightd
takes the following command-line arguments:
Usage: keylightd [--brightness <brightness>] [--timeout <timeout>] [--power]
keylightd - automatic keyboard backlight daemon for Framework laptops
Options:
--brightness brightness level when active (0-100) [default=30]
--timeout activity timeout in seconds [default=10]
--power also control the power LED in the fingerprint module
--help display usage information
If you're using the provided keylightd.service
file, you can adjust the command line parameters there.
This project does not accept contributions. It is finished and does what I want of it.