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