Commit Graph
100 Commits
Author SHA1 Message Date
theupriser eadbdda271 docs: release branches (release/X.Y.Z, feature/ and bugfix/ branches into it, the release into main); CI builds release/** pushes 2026-09-28 10:14:20 +02:00
theupriser c4ec755a4a feat: --defaults --options <ids> (exactly these on) replaces --skip; steamify.sh --boot gamescope|desktop on its own switches where an installed conversion starts 2026-09-28 10:06:45 +02:00
theupriser 14aa7c0b54 fix: the app's progress screen says "Boot into desktop", not "Boot into Boot into" 2026-09-28 10:06:32 +02:00
theupriser 5bf9da411d fix: HDMI-CEC enables cec-audio-control.socket (the TV remote's volume keys); existing installs get it as an update 2026-09-28 10:06:23 +02:00
theupriser 4f6e6fd0aa feat: --defaults takes --skip <ids> and --boot gamescope|desktop, for the Steam Machine ISO's installer pages 2026-09-27 21:59:08 +02:00
theupriser a79eeedbc4 Merge pull request #32 from theupriser/feat/defaults-mode
feat: --defaults applies the default setup without the menu, also fro…
2026-09-27 21:25:03 +02:00
theupriser b948c2020b feat: --defaults applies the default setup without the menu, also from an installer (no session): the base for a Steam Machine ISO
systemctl --user goes through user_systemctl, which only changes unit files
without a session; the theme lets Plasma build Vapor's layout at the first
login when the layout is still /etc/skel's; a one-time first-login autostart
sets up single user's launcher and opens the app.
2026-09-27 19:21:28 +02:00
theupriser 0c96bed448 Merge pull request #31 from theupriser/docs/screenshot-2.5.2
docs: README screenshot at 2.5.2: everything on, nothing to update
2026-09-27 18:53:56 +02:00
theupriser e3f7cc9773 docs: README screenshot at 2.5.2: everything on, nothing to update 2026-09-27 18:53:23 +02:00
theupriser 353de489d7 Merge pull request #30 from theupriser/feat/apply-disabled
2.5.1: Add as non-Steam game, controller and apply button
2026-09-27 18:49:20 +02:00
theupriser d8b2e812c5 fix: Add as non-Steam game asks Steam to close again every 15 s (a Steam that was still starting ignored it) 2026-09-27 18:42:12 +02:00
theupriser 3a0692fdf2 docs: README screenshot at 2.5.1 with Add as non-Steam game 2026-09-27 18:17:41 +02:00
theupriser e86ddcc4af feat: Add as non-Steam game: Steamify in the Steam library, under the shortcut; controller works when started from Steam 2026-09-27 18:16:14 +02:00
theupriser 389bc3346e fix(ui): B never quits (Steam sends Esc for it), Ctrl+Q does; started from Steam, the hints show the Steam Controller's buttons 2026-09-27 17:56:57 +02:00
theupriser c6c1150836 fix(ui): Enter selects (a Steam Controller's A in Steam's desktop layout); Ctrl+Enter reviews and applies 2026-09-27 17:54:55 +02:00
theupriser 98e2effcff fix(ui): Started from Steam, the app runs without Steam's overlay (Qt aborted) and stays in the foreground, so Steam Input gives it the controller 2026-09-27 17:44:38 +02:00
theupriser 431515b60f feat(ui): Review & apply greyed out while nothing would change; the Done screen shows why a run stopped 2026-09-27 17:11:46 +02:00
theupriser 34c9cfdb32 Merge pull request #29 from theupriser/feat/update-notifier
Feat/update notifier
2026-09-27 17:02:15 +02:00
theupriser 8ddb7ebf3d docs: README: what the VRAM booster says with NVIDIA's closed driver; shorter unsupported text in the app 2026-09-27 17:00:07 +02:00
theupriser 32c33e4abf fix: An option left unticked stays off: it came back ticked as "new" on the next run (since 2.3.0) 2026-09-27 16:54:27 +02:00
theupriser 2dd0f3ac47 feat: VRAM booster with NVIDIA says what to do: update, switch to the open driver (chwd command), or not supported by the card 2026-09-27 16:31:39 +02:00
theupriser 57995bcd1f docs: VRAM booster works with NVIDIA's open kernel modules (driver 615+); only the closed driver is greyed out 2026-09-27 16:25:05 +02:00
theupriser d57e8d8448 docs: AGENTS.md and changelog for the vidmem detection 2026-09-27 16:20:57 +02:00
theupriser 5a34633986 feat: VRAM booster also for drivers that name their region vidmem (or numbered), NVIDIA included once its driver registers it 2026-09-27 16:20:36 +02:00
theupriser 479b70b337 feat: Everything in the home folder under steamify (state, scripts, icon), moved once from the old name 2026-09-27 16:11:32 +02:00
theupriser 2e0881b4fa fix: fill takes values literally; the notifier path is quoted in its unit 2026-09-27 16:05:20 +02:00
theupriser cce31e19c2 refactor: DKMS confs in patches/; an existing leds-valve DKMS override is kept and restored 2026-09-27 16:00:39 +02:00
theupriser bd4fa3a6f4 refactor: The session sync and kernel headers scripts in patches/ 2026-09-27 15:59:17 +02:00
theupriser 8ffa0f2449 refactor: systemd units in services/, read with service_file like patches/ 2026-09-27 15:58:41 +02:00
theupriser 8a2601d73d docs: README screenshot at 2.5.0 with Update notifications; AGENTS.md: retake it when rows change 2026-09-27 15:57:11 +02:00
theupriser 572417bd7b fix: Open Steamify from the notification starts the app (own scope), the same way it was last used (app or terminal) 2026-09-27 15:54:26 +02:00
theupriser cf73229756 feat: Update notifications: a notification and tray icon when there's a new Steamify 2026-09-27 14:06:48 +02:00
theupriser febdab5b53 Merge pull request #28 from theupriser/docs/readme-screenshot
2.4.1: Screenshot of the app's menu in the README
2026-09-27 13:53:41 +02:00
theupriser 90cdfd6666 chore: Version 2.4.1 2026-09-27 13:53:11 +02:00
theupriser 6f598d18fd docs: README screenshot shows every option 2026-09-27 13:52:59 +02:00
theupriser 9bbe5fa602 docs: Screenshot of the app's menu in the README 2026-09-27 13:52:59 +02:00
theupriser ceeb949e6b Merge pull request #27 from theupriser/refactor/qml-screens
2.4.0: One QML file per screen, HDMI setup removed
2026-09-27 13:49:43 +02:00
theupriser 03a8b8c4ba chore: Version 2.4.0 2026-09-27 13:48:13 +02:00
theupriser e699a3f8eb refactor(ui): One QML file per screen; the HDMI boost's setup screens and backend commands removed 2026-09-27 13:48:02 +02:00
theupriser 7bef834b16 Merge pull request #26 from theupriser/feat/vram-booster
2.3.0: VRAM booster, New badge
2026-09-27 13:05:19 +02:00
theupriser 86b9744227 feat: VRAM booster greyed out with an NVIDIA card, with why 2026-09-27 13:02:13 +02:00
theupriser b0947d7a2f feat: VRAM booster only for GPUs with at least 2 GB of their own VRAM 2026-09-27 12:55:40 +02:00
theupriser 3f97c85c3c feat: VRAM booster for every supported GPU, not only the Steam Machine 2026-09-27 12:51:47 +02:00
theupriser fd162c1e2e feat: New badge for default sub-options added in this version 2026-09-27 12:49:49 +02:00
theupriser 54ebddfe98 feat: VRAM booster for the Steam Machine 2026-09-27 12:48:01 +02:00
theupriser fe93dd3e67 Merge pull request #25 from theupriser/feat/fremont-poweroff
Feat/fremont poweroff
2026-09-27 12:41:38 +02:00
theupriser ef585c0db1 docs: Changelog entries per commit for 2.2.0 2026-09-27 12:36:25 +02:00
theupriser 32795bd5a5 feat(ui): Update badge on the progress screen 2026-09-27 12:35:40 +02:00
theupriser 3c8ca65902 fix(ui): Never write the sudo password to a file; Update label on the progress screen
The askpass helper reads the password from a named pipe that the app
feeds from memory each time sudo asks, instead of from a file.
2026-09-27 12:33:47 +02:00
theupriser 11a91ef85c feat: Update badge on components that get a newer version 2026-09-27 12:31:29 +02:00
theupriser 163f7908c4 feat: Feature versions are Steamify versions; Steam Machine support is 2.2.0 2026-09-27 12:27:55 +02:00
theupriser e121b06fd8 fix: Remove whatever is left of HDMI refresh boost, pin or no pin 2026-09-27 12:27:08 +02:00
theupriser 19ca966913 docs: Drop the kernel pin and HDMI refresh boost descriptions 2026-09-27 12:25:08 +02:00
theupriser 56fb9080a7 docs: Power-off fix texts cover every affected kernel, not just 7.2 2026-09-27 12:23:54 +02:00
theupriser 6df19eba3e feat: Power-off fix as its own sub-option, drop the kernel pin, feature versions
The power-off fix becomes an opt-out sub-option of Steam Machine
support. The kernel pin is no longer offered: an existing pin (and HDMI
refresh boost, which needs it) is unticked so a normal run removes it.
Components record a feature version on each successful run; installs
with an older version are ticked and updated, and new default
sub-options are ticked where their parent is on.
2026-09-27 12:20:56 +02:00
theupriser 7694c97d68 feat: Power-off fix for the Steam Machine; the kernel pin is optional
Kernels >= 7.2 keep the firmware's S4/S5 wake bit on GPIO pin 18, so the
Steam Machine starts again right after powering off. Steam Machine
support now builds a DKMS module (patches/steamify-fremont-poweroff.c)
that clears it before power-off, for every kernel. The kernel pin is no
longer ticked by default. Module sources and patches move to patches/,
embedded by the single-file build.
2026-09-27 12:13:23 +02:00
theupriser a5e644d71a Merge pull request #24 from theupriser/feat/hdmi-per-display
Feat/hdmi per display
2026-09-26 16:49:56 +02:00
theupriser 929ecfb349 feat(ui): Manage button for HDMI refresh boost
The item's switch becomes a Set up / Manage button. Manage lists the
saved displays, removes one with its Remove button, and sets up the
connected display when it has no saved rates.
2026-09-26 16:48:21 +02:00
theupriser 4cc87aaea6 feat: HDMI refresh boost per display, with a Saved displays screen
Rates are saved per display (EDID ID) and loaded by the hotplug script
for whichever display is connected. The item is on only while the
connected display is boosted; unticking removes just that one. The app
lists the saved displays and removes any of them (hdmi-forget).
2026-09-26 16:13:45 +02:00
theupriser 36d0a9d780 feat: HDMI refresh boost only for the display it was set up for
The EDID override moves off the kernel command line to a hotplug script
(boot unit + udev rule) that loads it only while the display it was
tested on is connected, identified over DDC; other displays get their
own EDID.
2026-09-26 16:04:02 +02:00
theupriser cb6361b49b Merge pull request #23 from theupriser/fix/fremont-cec
fix: HDMI-CEC on the Steam Machine
2026-09-26 11:30:29 +02:00
theupriser c510f9e2e5 fix: HDMI-CEC on the Steam Machine 2026-09-26 11:29:34 +02:00
theupriser 05a7d50c3f Merge pull request #22 from theupriser/docs/disclaimer
docs: Non-affiliation disclaimer in the README
2026-09-26 10:54:06 +02:00
theupriser badfd846d8 docs: Non-affiliation disclaimer in the README 2026-09-26 10:53:42 +02:00
theupriser ff364ffd69 Merge pull request #21 from theupriser/feat/app-shortcut
feat: The Steamify shortcut opens the app
2026-09-25 21:33:14 +02:00
theupriser 2b3f1de75a feat: The Steamify shortcut opens the app
Steamify CachyOS on the desktop and in the launcher starts the newest app
(in Konsole the first time, while PySide6 still has to be installed); the
terminal menu is Steamify Terminal in the launcher. A shortcut from before
2.0.1 is ticked in the menu, so a normal run replaces it. steamify-app.sh
leaves the shortcut's launcher entry (same id) alone.
2026-09-25 21:32:24 +02:00
theupriser 6d7d5861d6 Merge pull request #20 from theupriser/feat/v2-ui
Feat/v2 UI
2026-09-25 21:24:11 +02:00
theupriser 444ce29e57 Merge remote-tracking branch 'origin/main' into feat/v2-ui
# Conflicts:
#	AGENTS.md
#	CHANGELOG.md
#	lib/hdmi-refresh.sh
#	steamify.sh
2026-09-25 21:21:31 +02:00
theupriser 23ef5ef7ab feat(ui): HDMI refresh boost in the app
Set up… opens a screen with the display, its resolution and the rates on
offer. The display's own faster mode is switched to right away; the other
rates can each be tried live (wait for the picture, keep within 15 s or it
switches back) and ticked; Install installs the ticked ones through
apply --hdmi. All rates are loaded when the screen opens, so a try is only a
mode switch. Also fixes switching back to a rate like 59.97 Hz.
2026-09-25 21:21:13 +02:00
theupriser 178ee3405e fix(ui): The details panel scrolls instead of overflowing
Long texts (e.g. HDMI refresh boost) ran out of the card. The details are
in a Flickable now, which starts at the top for each item.
2026-09-25 20:42:08 +02:00
theupriser 601c05329d chore: Version 2.0.0 for the v2 app 2026-09-25 20:39:57 +02:00
theupriser 8ae9673eb2 Merge pull request #19 from theupriser/feat/hdmi-refresh-boost
Feat/hdmi refresh boost
2026-09-25 20:39:13 +02:00
theupriser dbafc43f2e feat(ui): HDMI refresh boost in the app, off only
The app gets its texts and the same rules as the menu: unticking Steam
Machine support or the kernel pin unticks it. It can't be turned on from
the app, as each step needs someone at the keyboard to confirm the picture.
2026-09-25 20:39:00 +02:00
theupriser ae8ed85fee feat: HDMI refresh boost and Update BIOS under Steam Machine support
Both are sub-options of Steam Machine support now, shown only while it is
ticked. Unticking it unticks them; unticking the kernel pin unticks the
HDMI refresh boost, which only works with the pinned kernel.
2026-09-25 20:37:56 +02:00
theupriser 00bcaea712 feat: HDMI refresh boost and Update BIOS under Steam Machine support
Both are sub-options of Steam Machine support now, shown only while it is
ticked. Unticking it unticks them; unticking the kernel pin unticks the
HDMI refresh boost, which only works with the pinned kernel.
2026-09-25 20:37:47 +02:00
theupriser a898d23b13 feat: HDMI refresh boost (Steam Machine, pinned kernel)
The pinned 7.1.6 kernel doesn't read the extra EDID block (HDMI Forum
EEODB) where monitors list their fast modes, and does no HDMI 2.1, so HDMI
displays often stay at 60 Hz. The new menu item reads the display's EDID
over DDC, calculates the highest rate that fits HDMI 2.0 at the desktop
resolution (rounded down to ten, plus the hundred below as a safe option),
tests each step live with a confirmation, and makes the confirmed ones
permanent through drm.edid_firmware (Limine, sdboot-manage or GRUB).
2026-09-25 20:33:46 +02:00
theupriser 3e53257fe2 feat: HDMI refresh boost (Steam Machine, pinned kernel)
The pinned 7.1.6 kernel doesn't read the extra EDID block (HDMI Forum
EEODB) where monitors list their fast modes, and does no HDMI 2.1, so HDMI
displays often stay at 60 Hz. The new menu item reads the display's EDID
over DDC, calculates the highest rate that fits HDMI 2.0 at the desktop
resolution (rounded down to ten, plus the hundred below as a safe option),
tests each step live with a confirmation, and makes the confirmed ones
permanent through drm.edid_firmware (Limine, sdboot-manage or GRUB).
2026-09-25 20:32:46 +02:00
theupriser a1eab9ac79 feat: Preview builds of feat/v2-ui; the app stretches to the window
Pushes to feat/v2-ui publish the pre-release v2-ui-preview (never latest);
its steamify-app.sh downloads that build (STEAMIFY_RELEASE). The app's
1280x720 layout now stretches to the window's shape, so the bars reach the
edges; re-apply resets when back on the menu.
2026-09-25 16:04:59 +02:00
theupriser c9c16b9eec fix(ui): Review and progress lists scroll; progress follows the running step 2026-09-25 16:02:19 +02:00
theupriser b17addd60f fix: Quote the backend's done event for shellcheck 2026-09-25 16:00:12 +02:00
theupriser ac613f05b3 feat: GitHub builds the app; run it with curl
steamify-app.tar.gz (ui/, steamify.sh, lib/, icon) and its launcher
steamify-app.sh in every release: it installs to ~/.local/share/steamify/app,
installs PySide6 if needed, adds a launcher entry and starts the app.
STEAMIFY_BRANCH=<branch> runs a branch before it's released.
2026-09-25 15:59:47 +02:00
theupriser 3a0eefab11 fix(ui): Applying got stuck: the ticked items came in as a JS value
Convert QML's array; if starting fails anyway, show the done screen with
the reason instead of staying on the progress screen.
2026-09-25 15:56:41 +02:00
theupriser 96558a9ca8 feat(ui): BIOS check runs invisibly, then the warnings, then the progress bar 2026-09-25 15:55:15 +02:00
theupriser 7c48b3d806 feat: BIOS update in the app, with both warnings
bios_enable split into bios_prepare (download, checksum, fwupd check) and
bios_flash; the terminal flow is unchanged. The app: check, warning 1,
warning 2 (type UPDATE, or hold A/OK for 5 seconds), flash, restart.
2026-09-25 15:53:30 +02:00
theupriser 396459b511 fix(ui): Controls aligned on the right, sub-items fold instead of the list jumping 2026-09-25 15:48:38 +02:00
theupriser 43a9541104 feat: Steamify app (v2 UI), first working version
ui/steamify-ui (PySide6 + QML): menu, review, password, applying and done
screens from the design, scaled to the window. Controller via evdev,
keyboard, TV remote (cecd). steamify.sh --backend status|apply (lib/backend.sh)
drives the same components; sudo asks through an askpass helper.
2026-09-25 15:46:02 +02:00
theupriser e09fe1609b Merge pull request #18 from theupriser/fix/no-lock-before-restart
fix: No lock screen in single user mode before a restart
2026-09-25 14:10:52 +02:00
theupriser 9dcac5cf08 fix: No lock screen in single user mode before a restart
The screen locker only read kscreenlockerrc at the next login, so the PC
still locked after idling until then. Reload it over D-Bus.
2026-09-25 14:01:00 +02:00
theupriser f91dd1f0b1 Merge pull request #16 from theupriser/fix/cec-steam-ui
Fix/cec steam UI
2026-09-25 13:18:52 +02:00
theupriser 0411429654 chore: Version 1.1.3 2026-09-25 13:17:02 +02:00
theupriser 1aa5e955fe fix: Repair HDMI-CEC set up by 1.1.0/1.1.1
It only counts as on with the steam-launcher drop-in; installed without it,
the menu ticks it, so a normal run adds it.
2026-09-25 13:16:48 +02:00
theupriser ce75e895c4 fix: Show the HDMI-CEC settings in Steam
CachyOS's gaming mode script sets STEAM_ENABLE_CEC=0. A drop-in for
steam-launcher.service overrides it with a later EnvironmentFile=.
2026-09-25 13:16:48 +02:00
theupriser 9aef0a986a Merge pull request #15 from theupriser/fix/cec-steam-settings
fix: Steam's HDMI-CEC settings reach cecd on a first run
2026-09-25 12:19:54 +02:00
theupriser f7aa2412df fix: Steam's HDMI-CEC settings reach cecd on a first run
HDMI-CEC runs before Steam Machine support, which installs steamos-manager,
so its configure-cecd unit couldn't be enabled. Link them from Steam Machine
support too.
2026-09-25 11:13:53 +02:00
theupriser 87162efaa2 Merge pull request #14 from theupriser/perf/pin-kernel-first
Perf/pin kernel first
2026-09-25 10:09:27 +02:00
theupriser c79a3bbda5 fix: No LED warnings when the kernel pin just replaced the running kernel 2026-09-25 10:08:06 +02:00
theupriser ba11f58d9e perf: Pinned kernel before the LED driver; steamos-manager after cecd
With the kernel pin ticked, install 7.1.6-1 before the LED driver, so DKMS
builds it once. steamos-manager checks for cecd only at its start: order it
after cecd.
2026-09-25 10:04:18 +02:00
theupriser 45ff036f09 Merge pull request #13 from theupriser/feat/hdmi-cec
Feat/hdmi cec
2026-09-25 09:53:29 +02:00
theupriser de02f267f4 docs: README's Steam Machine part lists its features, HDMI-CEC included 2026-09-25 09:50:55 +02:00
theupriser 0f123004d0 docs: CEC.md, which PCs have HDMI-CEC and how to add it 2026-09-25 09:47:22 +02:00