Merge pull request #6724 from anderspapitto/local

Add x11 service for unclutter

lethalman c8ac0697 de8e22ad

Changed files
+34
nixos
modules
+1
nixos/modules/module-list.nix
···
./services/web-servers/varnish/default.nix
./services/web-servers/winstone.nix
./services/web-servers/zope2.nix
./services/x11/desktop-managers/default.nix
./services/x11/display-managers/auto.nix
./services/x11/display-managers/default.nix
···
./services/web-servers/varnish/default.nix
./services/web-servers/winstone.nix
./services/web-servers/zope2.nix
+
./services/x11/unclutter.nix
./services/x11/desktop-managers/default.nix
./services/x11/display-managers/auto.nix
./services/x11/display-managers/default.nix
+33
nixos/modules/services/x11/unclutter.nix
···
···
+
{ config, lib, pkgs, ... }:
+
with lib;
+
let cfg = config.services.unclutter;
+
in {
+
options = {
+
services.unclutter.enable = mkOption {
+
type = types.bool;
+
default = false;
+
example = true;
+
description = "Enable unclutter to hide your mouse cursor when inactive";
+
};
+
+
services.unclutter.arguments = mkOption {
+
description = "Arguments to pass to unclutter command";
+
default = "-idle 1";
+
type = types.uniq types.string;
+
};
+
};
+
+
config = mkIf cfg.enable {
+
systemd.services.unclutter = {
+
description = "unclutter";
+
requires = [ "display-manager.service" ];
+
after = [ "display-manager.service" ];
+
wantedBy = [ "graphical.target" ];
+
serviceConfig.ExecStart = ''
+
${pkgs.unclutter}/bin/unclutter ${cfg.arguments}
+
'';
+
environment = { DISPLAY = ":0"; };
+
serviceConfig.Restart = "always";
+
};
+
};
+
}