nix/graphical/shell.nix
2025-09-09 08:12:26 +10:00

40 lines
879 B
Nix

{
pkgs,
lib,
inputs,
mainUser,
getPkgs,
getFlakePkg',
...
}:
let
inherit (lib) getExe getExe';
in
{
# quickshell stuff
user.packages = getPkgs {
inherit (pkgs.kdePackages) qtbase qtdeclarative;
inherit (pkgs) wl-clipboard quickshell;
};
quick.services = {
swaync = "${getExe pkgs.swaynotificationcenter}";
quickshell = "${getExe pkgs.quickshell}";
swayidle =
let
niri = getFlakePkg' inputs.niri "niri-unstable";
systemctl = getExe' pkgs.systemd "systemctl";
in
''
${lib.getExe pkgs.swayidle} -w \
timeout 1800 '${systemctl} suspend' \
timeout 600 '${niri} msg action power-off-monitors'
'';
};
environment.files."/home/${mainUser}/.config/quickshell" = {
source = "/home/${mainUser}/.nix/graphical/desktop/quickshell";
uid = 1000;
gid = 100;
};
}