Files
dotfiles/home/swaync.nix
T
2026-09-23 00:44:36 +05:00

30 lines
1.2 KiB
Nix

# SwayNotificationCenter -- the notification daemon, replacing mako.
#
# mako shows a notification's actions only as "click the popup to fire the
# default one"; swaync draws one button per action, which is what makes
# blueman's pairing prompts (Accept / Reject / Always accept), browser
# permission prompts and the like usable without hunting for a CLI.
#
# Nothing else may own org.freedesktop.Notifications -- two daemons racing for
# that name means whichever lost silently eats every notification. Sway starts
# it from its exec block (config/sway/config), same as waybar; there is no
# graphical-session.target running here, so a systemd user unit would never
# fire.
#
# Config stays in swaync's own syntax at config/swaync/ and is symlinked, like
# sway and waybar. cssPriority = "user" in config.json is what lets style.css
# override the GTK theme instead of losing to it.
#
# Iteration loop: edit config/swaync/... -> git add if new ->
# nixos-rebuild switch -> swaync-client -rs (reload config + css).
{ pkgs, ... }:
{
home.packages = with pkgs; [ swaynotificationcenter ];
xdg.configFile."swaync" = {
source = ../config/swaync;
recursive = true;
};
}