Halley targets native Linux Wayland sessions. This page is showing install notes for v0.2.0.
Requirements
Before installing
Halley expects a real Wayland-capable Linux session with native graphics and input access.
DRM/KMS-capable graphics stack with GBM, EGL, and OpenGL support
A seat/session backend through libseat, such as seatd or logind
libinput and udev access on a real TTY for the native backend
Rust and Cargo if building from source
Optional, but commonly useful:
xwayland-satellite for X11 app support
xdg-desktop-portal-wlr plus xdg-desktop-portal-gtk for portal screenshot and screencast flows
fuzzel and a Wayland terminal if using the default launch bindings
Arch Linux
AUR packages
Install the stable package with your preferred AUR helper.
yay
yay -S halley
paru
paru -S halley
For the latest commit, install the development package.
yay dev
yay -S halley-dev
paru dev
paru -S halley-dev
Source
Build with Cargo
Clone the repository and build the release binary locally.
source build
git clone https://github.com/saltnpepper97/halley
cd halley
cargo build --release
The compositor binary will be available at target/release/halley.
Display Manager
Launch as a Wayland session
v0.2.0 ships session assets for display managers such as SDDM. When installed from a
package, pick Halley from the Wayland session list. The session entry starts Halley through
the native session path.
session entry
halley --session
Running the same command manually is useful for debugging startup outside a display manager.
It sets up the compositor session path directly instead of relying on the older wrapper chain.
Desktop Portal
Screenshot and screencast portal setup
Halley exposes the wlr screencopy protocol used by xdg-desktop-portal-wlr.
Install the portal backend plus a general portal implementation so apps can request screen
capture through the standard desktop portal APIs.
When Halley starts its native tty session, it exports the Wayland and desktop environment to
D-Bus/systemd and queues a restart of xdg-desktop-portal.service plus a start of xdg-desktop-portal-wlr.service. If portal capture does not appear after login, restart those user services manually.