9d18d477d57dc322bc23883e3dde1a47601c37a3
Here is my desktop configuration for the Niri wayland compositor.
Notes
- Everything under .config/noctalia and most of what's under .config/nvim was generated by Noctalia and Lazyvim respectively.
- Everything else I've created or edited extensively myself.
- niri/outputs.kdl will always need to be edited to your monitor configuration
Dependencies
Required
- Niri
- Version 25.11 or higher (config is split into multiple files)
- Noctalia's Dependencies Including Optional (except matugen)
- Noctalia itself is included in these files
- polkit-kde-agent
- gnome-keyring
- pipewire
- wireplumber
- pipwire-pulse
- swayidle
- to trigger sleep/lock after inactivity
- power-profiles-daemon
Choice (will require editing configs to change)
- Void Linux
- The only void-specific config I'm aware of is the Update Count plugin for Noctalia
- On systemd systems you may want to change some spawn-at-startup items to be systemd services
- Alacritty
- Terminal Emulator of choice
- niri/binds.kdl
- Noctalia Settings
- Launcher -> Terminal Command
- Plugins -> Update Count Settings -> Terminal Emulatorpolkit-kde-agent
- SDDM
- cron.hourly/sddm-background.sh and sddm-random-background.sh won't work without SDDM but otherwise feel free to use any (or no) login manager
- zfs-auto-snaphot
- the zfs-auto-snaphot is setup to use zrep following this guide
- Either set it up if you're using zfs or remove the cron files under /etc
- requires cron (see below)
- Nemo
- File Manager of choice
- niri/binds.kdl
- xdg-desktop-portal (FileChooser)
- Firefox
- Browser of choice
- niri/binds.kdl
- Element
- Matrix client
- niri/startup.kdl
- Discord (flatpak)
- niri/startup.kdl
- discord-delay.sh
- Audio seems to not work for discord if it's started too soon
Optional
- Neovim
- .config/nvim will do nothing if nvim is not installed
- Seahorse
- GUI to Manage gnome-keyring
- Evolution
- Needed to add calendars to evolution-data-server, which Noctalia uses to show calendar events
- GNOME Calendar
- GUI to view calendar, but is solely a calendar unlike Evolution
- A cron implementation
- I use snooze on void, you may want to convert the cron files to systemd timers if that is an option for you.
Description
Languages
QML
84%
Lua
9.1%
Shell
6.7%
Roff
0.2%