Installation¶
Requirements¶
Linux or FreeBSD.
Rust 1.96 or later.
Python 3.
libseat,libinputandudev(development headers to build from source).A GPU with DRM/KMS support.
Install¶
- Arch Linux
Install ionwl-git from the AUR.
- From Source
Build and install with
make:make make install PREFIX=/opt/ionwl mkdir -p ~/.config/ionwl cp config/default/ion_init.py ~/.config/ionwl/
PREFIXdefaults to/usr/local. Rather than repeating it on each command, set it once in a gitignored.envfile at the repository root (a command-linePREFIX=...still overrides it):PREFIX = /opt/ionwl
Runtime Programs¶
The bundled configuration binds external programs for its default actions:
a terminal (foot), an application launcher (tofi), a notification
daemon (mako) and volume/media controls (wpctl, cmus). Install the
ones you use, or edit the bindings in your config.
Launching¶
Run from a TTY, not from inside another compositor. Launching from a TTY needs
an active seat, provided either by a logind session (the usual case on
systemd systems - simply log in on a virtual terminal) or a running seatd
daemon.
Launch either the local build produced by cargo or the installed binary.
- Local Build
./target/release/ionwl
- Installed
/opt/ionwl/bin/ionwl
- From a Display Manager
make installalso installs awayland-sessionsentry, so IonWL appears as a session at the login screen. Display managers only scanwayland-sessionsdirectories onXDG_DATA_DIRS, so install into a prefix they search (typically/usr):make install PREFIX=/usr
Uninstalling¶
Remove an installation with make uninstall, passing the same PREFIX.
Next Steps¶
See Configuration to set up preferences and key bindings.