stdenvNoCC + p7zip extraction; strips installer scripts and README, keeps Licenses/. dontFixup since the artifacts are Windows DLLs. meta.license is unfreeRedistributable to reflect the bundled XeSS (Intel SLA) alongside the GPL-3.0 source. Wires lib/overlays.nix into mkDesktopHost (was muffin-only) and adds "optiscaler" to the unfree allowlist on jovian hosts so yarn can consume it without flipping the global allowUnfree flag.
53 lines
1.7 KiB
Nix
53 lines
1.7 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"
|
|
# OptiScaler bundles XeSS (Intel SLA) and FidelityFX SDK alongside its own GPL-3.0
|
|
# source. The package's meta.license is unfreeRedistributable to reflect the bundle.
|
|
"optiscaler"
|
|
];
|
|
|
|
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;
|
|
}
|