nixos-config/users/simon/modules/sway/swaync.nix

39 lines
1.2 KiB
Nix

{ lib, pkgs, ... }:
let
inherit ((import ../common.nix).colorschemes) solarized;
in
{
systemd.user.services.swaync = {
Unit.PartOf = [ "sway-session.target" ];
Install.WantedBy = [ "sway-session.target" ];
Service = {
ExecStart = "${pkgs.swaynotificationcenter}/bin/swaync";
Restart = "on-failure";
# override default stylesheet and GTK theme
Environment = "XDG_CONFIG_DIRS=${pkgs.writeTextDir "swaync/style.css" ""} GTK_THEME=none";
};
};
xdg.configFile = {
"swaync/config.json".text = lib.generators.toJSON { } {
positionX = "right";
positionY = "top";
timeout = 10;
timeout-low = 5;
timeout-critical = 0;
notification-window-width = 480;
fit-to-screen = true;
keyboard-shortcuts = true;
image-visibility = "when-available";
transition-time = 0;
hide-on-clear = true;
hide-on-action = true;
};
"swaync/style.css".text = lib.concatStrings (lib.attrsets.mapAttrsToList (k: v: "@define-color ${k} ${v};\n") solarized) + builtins.readFile ./swaync.css;
};
# dummy file to create empty theme
xdg.dataFile."themes/none/gtk-3.0/gtk.css".text = "";
}