A keyboard-first desktop shell for Hyprland, built with Quickshell.
A bar, launcher, spatial window switcher, control center, clipboard history, wallpaper picker, and lock screen that work together. Desktop Shell reads live state from Hyprland and the desktop's services. NixOS and Home Manager handle installation and configuration.
desktop-shell-demo-github.mp4
The supported setup is NixOS, Home Manager, and Hyprland with Lua configuration, launched through UWSM. Start with an existing Hyprland session.
Follow the installation guide, then the user guide. The shell supplies its own compositor integration; your applications, workspace bindings, monitor rules, and login manager stay in your configuration.
- A bar on each display, with workspaces, tray, calendar, audio, battery, system metrics, and network status.
- An application launcher with a separate search for open windows, launch profiles, and optional browser-tab search.
- A spatial Alt-Tab overview with live workspace previews and drag-to-workspace.
- A control center for notifications, Wi-Fi, Bluetooth, PipeWire audio, displays, brightness, and power controls.
- Clipboard search, a wallpaper picker, media notifications, focus mode, and a keybinding reference.
- A separate PAM-backed lock screen and an optional greetd login screen.
NetworkManager supplies Wi-Fi controls, PipeWire supplies audio, BlueZ supplies Bluetooth, and hyprpaper applies wallpapers. Hardware controls appear as their backends become available. Tailscale and browser tabs are optional integrations.
- Installation — modules, prerequisites, and first login
- User guide — everyday controls and keyboard navigation
- Configuration — Home Manager options
- Keybindings — suggested Hyprland bindings
- Commands — CLI reference
- Troubleshooting — diagnostics and removal
- Browser tabs · Login greeter · Session lock
For contributors: Contributing, Architecture, and Design notes.
$ nix develop
$ nix flake check
$ nix build --quiet