50 lines
1.5 KiB
Nix
50 lines
1.5 KiB
Nix
# Jovian-NixOS deck-mode configuration shared by all hosts running Steam
|
|
# in gamescope (yarn, patiodeck). Host-specific settings (like
|
|
# jovian.devices.steamdeck.enable) stay in the host's default.nix.
|
|
{
|
|
lib,
|
|
username,
|
|
inputs,
|
|
...
|
|
}:
|
|
{
|
|
imports = [
|
|
./desktop-steam-update.nix
|
|
inputs.jovian-nixos.nixosModules.default
|
|
];
|
|
|
|
nixpkgs.config.allowUnfreePredicate =
|
|
pkg:
|
|
builtins.elem (lib.getName pkg) [
|
|
"steamdeck-hw-theme"
|
|
"steam-jupiter-unwrapped"
|
|
"steam"
|
|
"steam-original"
|
|
"steam-unwrapped"
|
|
"steam-run"
|
|
];
|
|
|
|
jovian.steam = {
|
|
enable = true;
|
|
autoStart = true;
|
|
desktopSession = "niri";
|
|
user = username;
|
|
};
|
|
|
|
# default off: jovian's SteamOS kernel cmdline (Valve's Deck-tuned amdgpu
|
|
# params: amd_iommu=off, amdgpu.sched_hw_submission=4, dcdebugmask=0x20000,
|
|
# lockup_timeout=5000,...,5000, ttm.pages_min=2097152, audit=0) is tuned for
|
|
# Van Gogh / Sephiroth APUs at 1280x800 and corrupts host memory pages on
|
|
# RDNA3 desktop GPUs (yarn: Navi 32 1440p, FH5 wine-log showed >1M
|
|
# illegal-instruction faults across .text after extended play).
|
|
# mkDefault so actual Deck hosts can opt back in (see hosts/patiodeck).
|
|
jovian.steamos.enableDefaultCmdlineConfig = lib.mkDefault false;
|
|
|
|
# jovian overrides the display manager; sddm is required
|
|
services.displayManager.sddm.wayland.enable = true;
|
|
|
|
# desktop-common.nix enables programs.gamescope which conflicts with
|
|
# jovian's own gamescope wrapper
|
|
programs.gamescope.enable = lib.mkForce false;
|
|
}
|