{ pkgs, ... }: { # ── Niri desktop environment ───────────────────────────────────────────────── xdg.configFile."niri".source = ./config/niri; xdg.configFile."foot".source = ./config/foot; xdg.configFile."waybar".source = ./config/waybar; xdg.configFile."fuzzel/fuzzel.ini".source = ./config/fuzzel/fuzzel.ini; home.file.".local/bin/wallpaper.sh" = { source = ./config/niri/wallpaper.sh; executable = true; }; home.file.".local/bin/waybar-network.sh" = { source = ./config/waybar/network.sh; executable = true; }; home.file.".local/bin/waybar-weather.sh" = { source = ./config/waybar/weather.sh; executable = true; }; xdg.dataFile."applications/switch-wallpaper.desktop".source = ./config/applications/switch-wallpaper.desktop; xdg.dataFile."applications/signal.desktop".source = ./config/applications/signal.desktop; xdg.dataFile."applications/vesktop.desktop".source = ./config/applications/vesktop.desktop; services.mako = { enable = true; settings = { background-color = "#0a0a0a99"; text-color = "#f3eeea"; border-color = "#cd0a00"; border-radius = 8; border-size = 1; default-timeout = 7500; max-icon-size = 64; padding = "10,14"; font = "JetBrains Mono 12"; }; }; home.packages = with pkgs; [ # wayland / desktop libnotify wl-clipboard slurp grim satty wlogout fuzzel swaylock swayidle brightnessctl awww waybar lxqt.lxqt-policykit # messaging telegram-desktop signal-desktop vesktop karere ]; }