{ config, lib, pkgs, self, ... }: let inherit (lib) getExe mkForce; inherit (config.vars) mainUser; # FIXME: switch to wayland when possible defaultSession = "plasmax11"; switch-session = pkgs.writeShellApplication { name = "switch-session"; text = '' mkdir -p /etc/sddm.conf.d cat < Settings > System > Enable Developer Mode # Steam > Developer > CEF Remote Debugging enable = true; user = mainUser; desktopSession = config.services.displayManager.defaultSession; }; jovian.decky-loader = { enable = true; user = mainUser; stateDir = "/home/${mainUser}/.local/share/decky"; # Keep scoped to user # https://github.com/Jovian-Experiments/Jovian-NixOS/blob/1171169117f63f1de9ef2ea36efd8dcf377c6d5a/modules/decky-loader.nix#L80-L84 extraPackages = with pkgs; [ # Generic packages curl unzip util-linux gnugrep readline.out procps pciutils libpulseaudio ]; extraPythonPackages = pythonPackages: with pythonPackages; [ python ]; }; # Takes way too long to shutdown systemd.services."decky-loader".serviceConfig.TimeoutStopSec = "5"; }