Skip to content

Install Steam client - #52

Open
kimptoc wants to merge 1 commit into
mainfrom
kilo/fresh-feather-2f9
Open

kimptoc wants to merge 1 commit into
mainfrom
kilo/fresh-feather-2f9

Conversation

@kimptoc

@kimptoc kimptoc commented Sep 6, 2026

Copy link
Copy Markdown
Owner

Closes #50

Adds the Steam client to the CodeClub live CD via programs.steam.enable.

What this does

  • Installs the Steam client (plus steam-run)
  • The NixOS module enables 32-bit OpenGL (hardware.graphics.enable32Bit), required by many Steam games
  • Installs Steam hardware/controller udev rules
  • remotePlay/dedicatedServer/gamescopeSession left at defaults — no firewall changes

Things to weigh before merging

  • Image size: Steam + 32-bit Mesa grow the xz-squashed ISO noticeably. Worth one test ISO build to confirm it stays within practical ISO/USB limits.
  • No persistence: this is a plain live CD/USB, so Steam re-downloads its client update each boot and games cannot be stored. Real use needs a writable setup or club accounts.
  • Audience: the Steam storefront/community presumes 13+ accounts; only the client is bundled (no games).

Enable the Steam program to address issue #50. This configuration
allows the Steam client to be included in the ISO, which also
enables 32-bit OpenGL support via hardware.graphics.enable32Bit
required by many Steam games.

Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
Comment thread iso.nix
# games are downloaded on demand and can't be persisted on a plain
# live CD/USB, so this is for sessions where games are installed to a
# writable setup / club accounts.
programs.steam.enable = true;

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔥 The Roast: You've bolted a ~1.5GB self-downloading launcher onto a RAM-only live CD and hand-waved it as "games can't be persisted." News flash: the games are the second multi-gigabyte download. pkgs.steam is just a bootstrap — on first launch it slurps the full client into ~/.local/share/Steam, which on this image lives in a tmpfs/RAM overlay. With zramSwap.memoryPercent = 50 and no persistent disk, this isn't a Steam client so much as an OOM simulator for club hardware.

🩹 The Fix: Boot the built ISO and confirm Steam actually launches and survives its client self-update on the lowest-RAM club machine before merging. If the client can't fit in the RAM overlay, this option needs a persistent writable partition (not just club accounts) to be anything but dead weight in the squashfs.

📏 Severity: warning


Reply with @kilocode-bot fix it to have Kilo Code address this issue.

@kilo-code-bot

kilo-code-bot Bot commented Sep 6, 2026

Copy link
Copy Markdown

Code Review Roast 🔥

Verdict: 1 Issue Found | Recommendation: Address before merge

Overview

Severity Count
🚨 critical 0
⚠️ warning 1
💡 suggestion 0
🤏 nitpick 0
Issue Details (click to expand)
File Line Roast
iso.nix 284 pkgs.steam is only a bootstrap; the full client re-downloads into a RAM-backed tmpfs every boot, and with zramSwap at 50% memory this is an OOM/ENOSPC lottery on club hardware

🏆 Best part: The config itself is correct — allowUnfree is already set, the comment about hardware.graphics.enable32Bit is accurate, and the tradeoffs are self-documented better than 95% of the PRs I see. I had to work surprisingly hard to find something to set on fire.

💀 Worst part: Shipping a launcher whose actual payload is a fresh multi-gigabyte download on an ephemeral, RAM-backed live CD. It's like selling someone a gym membership where the gym is rebuilt every morning and you have to re-sign-up at the door.

📊 Overall: The ingredients are right, but this is a first pancake — verify it actually runs from the live environment before you serve it to a room full of kids.

Files Reviewed (1 file)
  • iso.nix - 1 issue

Fix these issues in Kilo Cloud


Reviewed by efficient · Input: 31K · Output: 10K · Cached: 181K

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Install steam

1 participant