A niri desktop for Fedora, ready in one command.
Firelink sets up niri and everything a desktop needs around it: a bar, a launcher, notifications, a lock screen, clipboard history and more, all in one Catppuccin theme.
$ curl -fsSL https://firelink.estuslabs.com/install | bash
Then log out and pick Niri on the login screen. Read the script first if you like; it's short.
01 What it installs
Only what the desktop needs. Packages come from Fedora's own repositories, and sudo is only used to install them. No browsers, chat apps or anything else you didn't ask for.
- niriThe compositor. Scrolling tiling, an overview, gestures.
- WaybarWorkspaces, clock, audio, network, Bluetooth, battery.
- fuzzelThe app launcher, plus power, Bluetooth, clipboard and theme menus.
- mako, wobNotifications, and a slim bar for volume and brightness.
- swaylock, swayidleLocks after five minutes; suspends on battery.
- SattyScreenshots you can annotate, plus screen recording.
- Alacritty, NeovimThe terminal and the editor.
- cliphist, wlsunsetClipboard history and a night light.
Satty and the wallpapers are downloaded at fixed versions and checked against known hashes. If GNOME is installed too, it's left alone: Firelink's services only run in a niri session.
02 Keys
| SuperT | Terminal |
| SuperD | Launch an app |
| SuperB | Web browser |
| SuperO | Overview of every workspace |
| SuperHL | Scroll to the window on the left or right |
| SuperQ | Close a window |
| SuperCtrlV | Clipboard history |
| SuperPrint | Screenshot a region and annotate it |
| ShiftPrint | Start or stop recording a region |
| SuperShift/ | Every other key |
03 Themes
Everything follows one of Catppuccin's four flavors: window borders, the bar, menus, notifications, the lock screen, the terminal and the wallpaper. Switch with SuperCtrlShiftT or firelink theme latte.
04 Making it yours
Firelink keeps its defaults in ~/.local/share/firelink. Your files in ~/.config include them, and anything you add after that wins. firelink update brings in new defaults and never touches your files.
// ~/.config/niri/config.kdl include "~/.local/share/firelink/config/niri/firelink.kdl" // Yours from here down output "eDP-1" { scale 1.25 }