diff --git a/AGENTS.md b/AGENTS.md index 92d31a4..754af59 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -314,7 +314,8 @@ gamescope and the Plasma desktop. Primary target: the Valve Steam Machine - What Steam's System settings show (SteamOS conversion, 2.9.0): the OS name stays CachyOS's everywhere (legal clarity; Steam reads `lsb_release -d`, not touched). `/etc/os-release` gets only `VARIANT="Steamify "`, - `VARIANT_ID`, `VERSION_ID` and `VERSION_CODENAME=steamos-X.Y` (Valve's + `VARIANT_ID` and `VERSION_CODENAME=steamos-X.Y` (no `VERSION_ID`: KDE's About + this System shows it after the name, "CachyOS Linux 2.9.0") (Valve's newest jupiter repo), refreshed by `os_version_refresh` after every run that changes something; a pacman hook (`zz-steamify-os-release`) runs after cachyos-hooks. Never `NAME` or `PRETTY_NAME`: limine-snapper-sync finds the diff --git a/CHANGELOG.md b/CHANGELOG.md index 413c9f9..e73449f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,7 +8,8 @@ one per merged pull request. ## 2.9.0 - 2026-09-28 - `d30d505` **chore: Version 2.9.0** -- **feat: Steam's System settings: the OS name stays CachyOS (no renaming, also not in About this System), Steamify as the variant, the SteamOS release it follows as the codename (steamos-3.9)** +- **fix: No VERSION_ID in os-release: About this System said "CachyOS Linux 2.9.0"; the version is in VARIANT ("Steamify 2.9.0")** +- `435f69c` **feat: Steam's System settings: the OS name stays CachyOS (no renaming, also not in About this System), Steamify as the variant, the SteamOS release it follows as the codename (steamos-3.9)** - `ce71b34` **feat: Steam's System settings and About this System like on SteamOS: OS name "CachyOS with Steamify" (lsb-release, kept through CachyOS updates by a pacman hook), Steamify as OS variant and version (os-release VARIANT/VERSION_ID; NAME/PRETTY_NAME stay CachyOS's for limine, TARGET_OS_NAME pinned), "CachyOS Linux with Steamify" in About this System; on a Steam Machine the serial number and Steam's Wi-Fi backend setting (existing installs get it as an update)** - `07a94cd` **fix(ui): The progress screen's ✓ and ! stand upright: only a dot on the circle spins while a step runs (they kept the spinner's last angle)** diff --git a/lib/login-manager.sh b/lib/login-manager.sh index 510da38..579c66b 100644 --- a/lib/login-manager.sh +++ b/lib/login-manager.sh @@ -21,7 +21,8 @@ gaming_status() { # What Steam shows in its System settings besides the OS name (which stays # CachyOS's, for legal clarity and because limine-snapper-sync finds the boot # entries by it): Steamify as the variant and version, the SteamOS release it -# follows as the codename (os-release VARIANT/VERSION_ID/VERSION_CODENAME). +# follows as the codename (os-release VARIANT/VERSION_CODENAME; no +# VERSION_ID, which About this System would show after CachyOS's name). OS_NAME_SCRIPT=/usr/local/libexec/steamify-os-release OS_NAME_HOOK=/etc/pacman.d/hooks/zz-steamify-os-release.hook # limine's tools take the OS name from TARGET_OS_NAME, else os-release's @@ -81,7 +82,7 @@ os_version_refresh() { # OS version follows Steamify's, not just the one that set it up. Silent: # the app reads the backend's stdout as JSON. gaming_status 2>/dev/null || return 0 - grep -qx "VERSION_ID=$VERSION" /etc/os-release 2>/dev/null && return 0 + grep -qx "VARIANT=\"Steamify $VERSION\"" /etc/os-release 2>/dev/null && return 0 os_name_enable > /dev/null 2>&1 return 0 } diff --git a/patches/README.md b/patches/README.md index a96e31d..e5d4c80 100644 --- a/patches/README.md +++ b/patches/README.md @@ -13,5 +13,5 @@ read and reviewed on their own. `lib/*.sh` reads them with `patch_file | `steamify-fremont-poweroff.dkms.conf`, `steamify-cros-ec-cec.dkms.conf` | `lib/fremont-poweroff.sh`, `lib/cec.sh` | The DKMS modules' `dkms.conf` (`fill NAME=... VERSION=...`) | | `steam-shortcuts.py` | `lib/steam-game.sh` (Add as non-Steam game) | Reads and writes Steam's binary `shortcuts.vdf` (find, add or update, remove) | | `steamify-notifier.py` | `lib/update-notifier.sh` (Update notifications) | The daily check: notification and tray icon when there's a new release | -| `steamify-os-release.sh`, `steamify-os-release.hook` | `lib/login-manager.sh` (SteamOS conversion) | Steamify as the OS variant and version, and the SteamOS release it follows as the codename, for Steam's System settings (`VARIANT`, `VERSION_ID`, `VERSION_CODENAME` in `/etc/os-release`; the OS name stays CachyOS's); the pacman hook runs it again after cachyos-hooks (`fill SCRIPT=... VERSION=... CODENAME=...`) | +| `steamify-os-release.sh`, `steamify-os-release.hook` | `lib/login-manager.sh` (SteamOS conversion) | Steamify as the OS variant and version, and the SteamOS release it follows as the codename, for Steam's System settings (`VARIANT`, `VERSION_CODENAME` in `/etc/os-release`, no `VERSION_ID`; the OS name stays CachyOS's); the pacman hook runs it again after cachyos-hooks (`fill SCRIPT=... VERSION=... CODENAME=...`) | | `cros-ec-cec-single-port.patch` | `lib/cec.sh` (HDMI-CEC) | Makes Valve's Steam Machine CEC driver find amdgpu's HDMI port | diff --git a/patches/steamify-os-release.sh b/patches/steamify-os-release.sh index 5a35ad4..db9e280 100644 --- a/patches/steamify-os-release.sh +++ b/patches/steamify-os-release.sh @@ -1,11 +1,12 @@ #!/bin/sh # Installed by Steamify CachyOS (SteamOS conversion): what Steam shows in its # System settings besides the OS name, which stays CachyOS's: Steamify as the -# variant and version, and the SteamOS release it follows as the codename -# (/etc/os-release's VARIANT, VERSION_ID, VERSION_CODENAME). NAME and +# variant with its version, and the SteamOS release it follows as the +# codename (/etc/os-release's VARIANT, VERSION_CODENAME). No VERSION_ID: KDE's +# About this System would show it after CachyOS's name ("CachyOS Linux 2.9.0"). NAME and # PRETTY_NAME are never touched: limine-snapper-sync finds the boot entries by # the OS name. The zz-steamify-os-release hook runs this after cachyos-hooks. sed -i -e '/^VARIANT=/d' -e '/^VARIANT_ID=/d' -e '/^VERSION_ID=/d' -e '/^VERSION_CODENAME=/d' /etc/os-release -printf '%s\n' 'VARIANT="Steamify @VERSION@"' 'VARIANT_ID=steamify' 'VERSION_ID=@VERSION@' >> /etc/os-release +printf '%s\n' 'VARIANT="Steamify @VERSION@"' 'VARIANT_ID=steamify' >> /etc/os-release [ -n "@CODENAME@" ] && echo 'VERSION_CODENAME=@CODENAME@' >> /etc/os-release exit 0