Unverified Commit 3039b4ca authored by Jared Baur's avatar Jared Baur Committed by GitHub
Browse files

nixos/programs/xscreensaver: init (#462242)

parents fe9c4cd9 ba19c819
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -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
+26 −0
Original line number Diff line number Diff line
{
  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 "$@"
      '';
    };
  };
}
+20 −0
Original line number Diff line number Diff line
{
  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;
  };
}