desktop-jovian: unify steam/jovian config across yarn + patiodeck

- modules/desktop-jovian.nix: shared Jovian deck-mode config (unfree
  predicate, jovian.steam, sddm, gamescope override, imports
  desktop-steam-update.nix)
- home/progs/steam-shortcuts.nix: declarative non-Steam shortcuts
  (Prism Launcher); add new entries here for all Jovian hosts
- hosts/yarn/default.nix: reduced to host-specific config only
- hosts/patiodeck/default.nix: same
This commit is contained in:
2026-04-23 22:42:25 -04:00
parent 5b2a1a652a
commit f3d21f16fb
6 changed files with 77 additions and 103 deletions

View File

@@ -1,6 +1,4 @@
{
pkgs,
lib,
username,
inputs,
site_config,
@@ -9,12 +7,11 @@
{
imports = [
../../modules/desktop-common.nix
../../modules/desktop-steam-update.nix
../../modules/desktop-jovian.nix
./disk.nix
./impermanence.nix
inputs.impermanence.nixosModules.impermanence
inputs.jovian-nixos.nixosModules.default
];
networking.hostId = "a1b2c3d4";
@@ -37,30 +34,5 @@
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;
jovian.devices.steamdeck.enable = true;
}

View File

@@ -1,29 +1,8 @@
{
pkgs,
inputs,
lib,
...
}:
{ ... }:
{
imports = [
../../home/profiles/gui.nix
../../home/profiles/desktop.nix
inputs.json2steamshortcut.homeModules.default
../../home/progs/steam-shortcuts.nix
];
services.steam-shortcuts = {
enable = true;
overwriteExisting = true;
steamUserId = lib.strings.toInt (
lib.strings.trim (builtins.readFile ../../secrets/home/steam-user-id)
);
shortcuts = [
{
AppName = "Prism Launcher";
Exe = "${pkgs.prismlauncher}/bin/prismlauncher";
Icon = "${pkgs.prismlauncher}/share/icons/hicolor/scalable/apps/org.prismlauncher.PrismLauncher.svg";
Tags = [ "Game" ];
}
];
};
}