at master 821 B view raw
1{ 2 config, 3 lib, 4 pkgs, 5 ... 6}: 7 8with lib; 9 10let 11 12 cfg = config.services.xserver.desktopManager.xterm; 13 xSessionEnabled = config.services.xserver.enable; 14 15in 16 17{ 18 options = { 19 20 services.xserver.desktopManager.xterm.enable = mkOption { 21 type = types.bool; 22 default = versionOlder config.system.stateVersion "19.09" && xSessionEnabled; 23 defaultText = literalExpression ''versionOlder config.system.stateVersion "19.09" && config.services.xserver.enable;''; 24 description = "Enable a xterm terminal as a desktop manager."; 25 }; 26 27 }; 28 29 config = mkIf cfg.enable { 30 31 services.xserver.desktopManager.session = singleton { 32 name = "xterm"; 33 start = '' 34 ${pkgs.xterm}/bin/xterm -ls & 35 waitPID=$! 36 ''; 37 }; 38 39 environment.systemPackages = [ pkgs.xterm ]; 40 41 }; 42 43}