79 lines
1.8 KiB
Nix
79 lines
1.8 KiB
Nix
{
|
|
pkgs,
|
|
lib,
|
|
inputs,
|
|
mainUser,
|
|
getPkgs,
|
|
config,
|
|
...
|
|
}:
|
|
let
|
|
inherit (lib) getExe;
|
|
in
|
|
{
|
|
user.packages = getPkgs {
|
|
# quickshell stuff
|
|
inherit (pkgs.kdePackages) qtbase qtdeclarative;
|
|
inherit (pkgs) wl-clipboard quickshell;
|
|
};
|
|
|
|
imports = [
|
|
inputs.stasis.nixosModules.default
|
|
inputs.stash.nixosModules.default
|
|
];
|
|
services.stasis = {
|
|
enable = true;
|
|
extraPathPackages = [ (config.programs.niri.package) ];
|
|
extraConfig = ''
|
|
default:
|
|
dpms_off:
|
|
timeout 300
|
|
command "niri msg action power-off-monitors"
|
|
end
|
|
suspend:
|
|
timeout 600
|
|
command "systemctl suspend"
|
|
end
|
|
end
|
|
'';
|
|
};
|
|
|
|
services.stash-clipboard = {
|
|
enable = true;
|
|
excludedApps = [ "Bitwarden" ];
|
|
};
|
|
|
|
quick.services = {
|
|
noti = "${getExe pkgs.swaynotificationcenter}";
|
|
shell = "${getExe pkgs.quickshell}";
|
|
pwManager = "${getExe config.apps.passwordManager}";
|
|
# music = "${getExe config.apps.streamPlayer}";
|
|
};
|
|
|
|
user.systemd.services.music = {
|
|
environment.PATH = lib.mkForce "/run/current-system/sw/bin:/run/current-system/sw/sbin:/etc/profiles/per-user/${mainUser}/bin:/etc/profiles/per-user/${mainUser}/sbin";
|
|
unitConfig = {
|
|
Description = "airdrome";
|
|
Requires = [
|
|
"graphical-session.target"
|
|
];
|
|
After = [
|
|
"graphical-session.target"
|
|
"niri.target"
|
|
];
|
|
PartOf = [ "graphical-session.target" ];
|
|
};
|
|
serviceConfig = {
|
|
ExecStart = "${getExe config.apps.streamPlayer}";
|
|
Type = "forking";
|
|
};
|
|
wantedBy = [ "graphical-session.target" ];
|
|
|
|
};
|
|
|
|
environment.files."/home/${mainUser}/.config/quickshell" = {
|
|
source = "/home/${mainUser}/.nix/graphical/desktop/quickshell";
|
|
uid = 1000;
|
|
gid = 100;
|
|
};
|
|
}
|