diff options
author | tv <tv@krebsco.de> | 2021-01-25 01:46:22 +0100 |
---|---|---|
committer | tv <tv@krebsco.de> | 2021-01-26 20:54:47 +0100 |
commit | 21303714afa87ca3081a9fbc4585d86badc131bb (patch) | |
tree | 2a62010b52ab0f7d9ccbe7fd178a1a3cdb04d609 /krebs/3modules | |
parent | 46f57b43888027bd245d14087fc096329729cb03 (diff) |
nixos/coma: init sleep as desktop manager
Diffstat (limited to 'krebs/3modules')
-rw-r--r-- | krebs/3modules/upstream/desktop-managers/coma.nix | 21 | ||||
-rw-r--r-- | krebs/3modules/upstream/desktop-managers/default.nix | 1 |
2 files changed, 22 insertions, 0 deletions
diff --git a/krebs/3modules/upstream/desktop-managers/coma.nix b/krebs/3modules/upstream/desktop-managers/coma.nix new file mode 100644 index 000000000..95db7fb5c --- /dev/null +++ b/krebs/3modules/upstream/desktop-managers/coma.nix @@ -0,0 +1,21 @@ +with import <stockholm/lib>; +{ config, pkgs, ... }: { + options = { + services.xserver.desktopManager.coma = { + enable = mkEnableOption "sleep as a desktop manager"; + }; + }; + config = mkIf config.services.xserver.desktopManager.coma.enable { + services.xserver.desktopManager.session = singleton { + name = "coma"; + bgSupport = true; + start = /* sh */ '' + if test -n "$waitPID"; then + ${pkgs.uutils-coreutils}/bin/uutils-sleep 1s && kill $waitPID & + wait $waitPID + fi + exec -a sleep ${pkgs.uutils-coreutils}/bin/uutils-sleep infinity + ''; + }; + }; +} diff --git a/krebs/3modules/upstream/desktop-managers/default.nix b/krebs/3modules/upstream/desktop-managers/default.nix index 4f60ee27d..22e75439d 100644 --- a/krebs/3modules/upstream/desktop-managers/default.nix +++ b/krebs/3modules/upstream/desktop-managers/default.nix @@ -1,5 +1,6 @@ { imports = [ + ./coma.nix ./none.nix ]; } |