at master 658 B view raw
1{ 2 config, 3 lib, 4 pkgs, 5 ... 6}: 7 8let 9 inherit (lib) 10 mkEnableOption 11 mkIf 12 mkPackageOption 13 singleton 14 ; 15 cfg = config.services.xserver.windowManager.katriawm; 16in 17{ 18 ###### interface 19 options = { 20 services.xserver.windowManager.katriawm = { 21 enable = mkEnableOption "katriawm"; 22 package = mkPackageOption pkgs "katriawm" { }; 23 }; 24 }; 25 26 ###### implementation 27 config = mkIf cfg.enable { 28 services.xserver.windowManager.session = singleton { 29 name = "katriawm"; 30 start = '' 31 ${cfg.package}/bin/katriawm & 32 waitPID=$! 33 ''; 34 }; 35 environment.systemPackages = [ cfg.package ]; 36 }; 37}