nixos/programs/xscreensaver: init

Co-authored-by: Sandro <sandro.jaeckel@gmail.com>
This commit is contained in:
matthewcroughan
2025-11-16 13:58:51 +00:00
parent 34d58868b1
commit ba19c819cf
3 changed files with 48 additions and 0 deletions
+2
View File
@@ -365,6 +365,8 @@
./programs/xfs_quota.nix
./programs/xonsh.nix
./programs/xppen.nix
./programs/xscreensaver/sonar.nix
./programs/xscreensaver/xscreensaver.nix
./programs/xss-lock.nix
./programs/xwayland.nix
./programs/yazi.nix
@@ -0,0 +1,26 @@
{
config,
pkgs,
lib,
...
}:
let
cfg = config.programs.xscreensaver.sonar;
globalCfg = config.programs.xscreensaver;
in
{
options.programs.xscreensaver.sonar = {
enable = lib.mkEnableOption "xscreensaver";
};
config = lib.mkIf cfg.enable {
security.wrappers.sonar = {
capabilities = "cap_net_raw+ep";
owner = "root";
group = "root";
source = pkgs.writeShellScript "sonar-fakeroot" ''
exec ${lib.getExe pkgs.fakeroot} ${globalCfg.package}/libexec/xscreensaver/sonar "$@"
'';
};
};
}
@@ -0,0 +1,20 @@
{
config,
pkgs,
lib,
...
}:
let
cfg = config.programs.xscreensaver;
in
{
options.programs.xscreensaver = {
enable = lib.mkEnableOption "all of the xscreensaver programs";
package = lib.mkPackageOption pkgs "xscreensaver" { };
};
config = lib.mkIf cfg.enable {
environment.systemPackages = [ cfg.package ];
programs.xscreensaver.sonar.enable = true;
};
}