diff --git a/system/system-yarn.nix b/system/system-yarn.nix index a3e4918..5c6f1ff 100644 --- a/system/system-yarn.nix +++ b/system/system-yarn.nix @@ -75,6 +75,71 @@ "steam-run" ]; + # Override jovian-stubs to disable steamos-update kernel check + # This prevents Steam from requesting reboots for "system updates" + # Steam client updates will still work normally + nixpkgs.overlays = [ + (final: prev: { + jovian-stubs = prev.stdenv.mkDerivation { + name = "jovian-stubs-no-update"; + dontUnpack = true; + installPhase = '' + mkdir -p $out/bin + + # steamos-update: always report "no update available" (exit 7) + # This disables the kernel mismatch check that triggers reboot prompts + cat > $out/bin/steamos-update << 'STUB' + #!/bin/sh + >&2 echo "[JOVIAN] $0: stub called with: $* (system updates disabled)" + exit 7 + STUB + + # steamos-reboot: reboot the system + cat > $out/bin/steamos-reboot << 'STUB' + #!/bin/sh + >&2 echo "[JOVIAN] $0: stub called with: $*" + systemctl reboot + STUB + + # steamos-select-branch: no-op stub + cat > $out/bin/steamos-select-branch << 'STUB' + #!/bin/sh + >&2 echo "[JOVIAN] $0: stub called with: $*" + exit 0 + STUB + + # steamos-factory-reset-config: no-op stub + cat > $out/bin/steamos-factory-reset-config << 'STUB' + #!/bin/sh + >&2 echo "[JOVIAN] $0: stub called with: $*" + exit 0 + STUB + + # steamos-firmware-update: no-op stub + cat > $out/bin/steamos-firmware-update << 'STUB' + #!/bin/sh + >&2 echo "[JOVIAN] $0: stub called with: $*" + exit 0 + STUB + + # pkexec: pass through to real pkexec + cat > $out/bin/pkexec << 'STUB' + #!/bin/sh + exec /run/wrappers/bin/pkexec "$@" + STUB + + # sudo: pass through to doas + cat > $out/bin/sudo << 'STUB' + #!/bin/sh + exec /run/wrappers/bin/doas "$@" + STUB + + chmod 755 $out/bin/* + ''; + }; + }) + ]; + jovian = { devices.steamdeck.enable = false; steam = {