{ pkgs, lib, username, inputs, site_config, ... }: { imports = [ ../../modules/desktop-common.nix ../../modules/desktop-steam-update.nix ./disk.nix ./impermanence.nix inputs.impermanence.nixosModules.impermanence inputs.jovian-nixos.nixosModules.default ]; networking.hostId = "a1b2c3d4"; # SSH for remote management from laptop services.openssh = { enable = true; ports = [ 22 ]; settings = { PasswordAuthentication = false; PermitRootLogin = "yes"; }; }; users.users.${username}.openssh.authorizedKeys.keys = [ site_config.ssh_keys.laptop ]; users.users.root.openssh.authorizedKeys.keys = [ site_config.ssh_keys.laptop ]; nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [ "steamdeck-hw-theme" "steam-jupiter-unwrapped" "steam" "steam-original" "steam-unwrapped" "steam-run" ]; jovian = { devices.steamdeck.enable = true; steam = { enable = true; autoStart = true; desktopSession = "niri"; user = username; }; }; # Jovian-NixOS requires sddm services.displayManager.sddm.wayland.enable = true; # disable gamescope from desktop-common.nix to avoid conflict with jovian programs.gamescope.enable = lib.mkForce false; }