Valve’s Steam Deck normalized the idea of a PC that boots straight into a controller-friendly, game-first interface. Three years later, that idea has outgrown Valve’s own hardware. Owners of the ASUS ROG Ally, ROG Ally X, and Lenovo Legion Go are wiping the Windows 11 install their handhelds shipped with and replacing it with SteamOS or its community-built cousin, Bazzite. Valve itself has leaned into that shift: the SteamOS page on the official Steam store got a full refresh on May 22, 2025, consolidating official install resources and recovery images in one place for the first time. Interest is climbing fast enough that the phrase “steam os download” alone pulls roughly 5,400 monthly searches in the US, according to DataForSEO keyword data pulled in mid-2026, with “how to install steamos on rog ally” and “how to install steamos on legion go” rising alongside it.
This guide walks through the entire process: picking between SteamOS and Bazzite, building a bootable installer, repartitioning a handheld or desktop drive without losing your Windows install, and fixing the handful of things that reliably go wrong the first time. It’s written around the ROG Ally, ROG Ally X, and Legion Go specifically, but the steps apply almost unchanged to any x86 handheld or desktop PC with a compatible AMD APU or GPU. Budget about 50 minutes if your Windows partition is already shrunk and your installer USB is ready, closer to 90 if you’re starting from a completely stock machine.
Two kinds of readers land on a guide like this. The first already knows they want SteamOS or Bazzite and just needs a clean, accurate walkthrough — skip straight to the prerequisites and step-by-step sections below. The second is still deciding whether to wipe a brand-new handheld’s factory install at all, and for that reader, the comparison section right after this one is the more useful starting point, since the “which OS” decision determines a handful of choices later in the process, including exactly which image you download and whether a full wipe or a dual-boot split makes more sense for how you actually use the device.
Don't miss new tech stories on Google
Add Tech Insider once in the Google app and our stories appear in your news suggestions.
Why Install SteamOS Yourself in 2026
Valve stopped treating SteamOS as Steam Deck-exclusive software in 2025, when Lenovo shipped a version of the Legion Go S with SteamOS pre-installed straight from the factory — the first non-Valve handheld to get that treatment officially. Valve went a step further that same June, when its own support FAQ added formal install steps for third-party AMD handhelds running SteamOS 3.7, a change Environment SA flagged as the first time Valve documented the process itself rather than leaving it entirely to community wikis. That combination did more to legitimize third-party SteamOS installs than years of community tinkering had managed on its own. If Valve trusted its own launcher-and-compositor stack on someone else’s silicon, plenty of ROG Ally and original Legion Go owners figured they could too, using community projects to get most of the way there on hardware Valve hasn’t formally certified.
The pitch is simple. Windows 11 was never designed around a joystick and two trigger buttons, and it shows: update prompts steal focus mid-game, background services chew through battery, and the Start menu is a genuinely bad experience at arm’s length on a 7-inch screen. SteamOS and Bazzite both boot into a Big Picture-style interface by default, suspend and resume in a couple of seconds instead of the 15-30 second wake-up that’s common on Windows handhelds, and hand TDP and fan control back to the user instead of burying them in vendor software. Our look at the June 2026 Steam Hardware Survey found Windows 11 still running on more than 70% of Steam accounts overall, but the handheld segment is where that number is softest — and where Steam Deck’s roughly 50% share of the category, which we covered in our ROG Xbox Ally sales report, keeps pulling switchers toward SteamOS-style setups.
There’s a practical angle too. Battery life on AMD’s Z1 Extreme and Z2-class APUs consistently runs longer under SteamOS or Bazzite than under stock Windows, mostly because the OS isn’t running background scans, telemetry, and a full desktop compositor while you play. None of that makes Windows bad — you’ll still want it for anti-cheat-heavy competitive titles, which we’ll get to further down — but for a device you mostly use to play your Steam library on a couch, SteamOS is the interface these handhelds were designed around, even the ones that don’t ship with it.
The smaller quality-of-life details add up too. Steam Input carries your controller layouts, per-game button remaps, and gyro settings across every device signed into the same account, so a layout you tune on a desktop shows up automatically on the handheld. Per-game TDP and fan curve profiles save automatically and reapply the moment you launch that title again, instead of resetting to a global default the way most OEM control panels handle it. And because both SteamOS and Bazzite use the same gamescope compositor Valve built for Steam Deck, docking a handheld to an external monitor drops you into a desktop-scaled version of the same interface rather than the awkward, sometimes broken scaling behavior Windows 11 still exhibits when a 7-inch panel suddenly outputs to a 27-inch display.
SteamOS vs Bazzite vs Windows: Which Should You Install?
The one-sentence version
If your handheld is on Valve’s short official-compatibility list, use SteamOS; if it isn’t — which covers most ROG Ally, ROG Ally X, and original Legion Go units — use Bazzite, because it ships newer kernel and Mesa graphics driver builds that third-party AMD hardware needs for working Wi-Fi, audio, and fan control.
SteamOS itself is Valve’s Arch Linux-based operating system, built around a read-only, A/B-partitioned root filesystem so updates can’t easily brick the device, with KDE Plasma running the desktop mode underneath the gaming interface. It’s tuned tightly to the exact hardware Valve validates it against, which is exactly why running it on unsupported silicon is hit-or-miss: a Wi-Fi chip or fingerprint sensor Valve never tested against simply may not have a driver in the image. Bazzite takes a different route. It’s built on Fedora Kinoite — the immutable, atomic-update variant of Fedora’s KDE Plasma 6 edition — and distributed as an OCI container image through the Universal Blue project. Because it inherits Fedora’s much broader hardware support and ships new kernel and driver builds continuously rather than waiting on Valve’s release cadence, it tends to “just work” on ROG Ally, Legion Go, and even ordinary gaming laptops far more reliably than a raw SteamOS install does.
| Criteria | SteamOS (Official) | Bazzite | Windows 11 (Stock) |
|---|---|---|---|
| Base system | Arch Linux, Valve-built | Fedora Kinoite (Universal Blue) | Windows NT |
| Desktop engine | KDE Plasma + Steam gamescope | KDE Plasma 6 + Steam gamescope | Xbox full-screen shell / Explorer |
| Officially validated hardware | Steam Deck, Legion Go S | None (community-supported) | All OEM handhelds |
| Driver freshness on 3rd-party APUs | Slower, Deck-focused | Fast, tracks Fedora/Mesa upstream | Vendor-dependent |
| Update model | Atomic, A/B image | Atomic, rpm-ostree image | Traditional, in-place |
| Native anti-cheat support | Partial (Proton-dependent) | Partial (Proton-dependent) | Full |
| Best suited for | Legion Go S, Steam Deck | ROG Ally, ROG Ally X, Legion Go, desktops | Competitive/anti-cheat titles |
Bazzite is the pick this guide focuses on for ROG Ally and original Legion Go owners, with notes throughout for where a stock SteamOS install differs. If you’re setting up a Legion Go S, you can substitute Valve’s own SteamOS recovery image in the same steps — HomeTheaterReview reported Valve shipping a dedicated recovery image for third-party AMD handhelds and PCs back on May 27, 2025, and Valve’s support site has kept pace with that push, updating its “Wipe Device & Install SteamOS” recovery workflow as recently as August 18, 2026. The installer flow is nearly identical either way, since Bazzite deliberately mirrors SteamOS’s gamescope session and Steam integration.
Prerequisites: Hardware, Downloads, and Versions You Need
Gather everything before you touch the BIOS. Switching operating systems on a handheld is not the moment to discover you’re missing a cable.
- A USB flash drive, 16GB or larger, that you can fully erase
- A separate PC (or the handheld itself, if you’re comfortable working from a live USB) to write the installer image
- balenaEtcher or Ventoy installed on that separate PC to build the bootable drive
- The Bazzite image for your device from bazzite.gg, or the SteamOS recovery image from Valve’s official SteamOS page if you’re on Legion Go S hardware
- At least 40-60GB of free space if you’re dual-booting; a full wipe needs no extra headroom beyond the OS itself
- Your Windows product key, if you plan to keep a dual-boot partition and might need to reactivate later
- A USB-C hub or dock if your handheld only has one port and you need power plus the installer drive connected at once
- Roughly 45-90 minutes uninterrupted, plus charge above 50% battery on a handheld
On the software side, Bazzite doesn’t follow a traditional version-number release schedule the way SteamOS does — as an rpm-ostree image built on Universal Blue’s continuous delivery pipeline, it ships new image builds on a rolling basis rather than discrete numbered releases, so “download the latest image” is the correct instruction rather than a specific version string. SteamOS, by contrast, is still on its 3.x branch: XDA Developers reported Valve’s SteamOS 3.7 preview, built on Arch Linux with kernel 6.11, back in March 2025, and Lowyat covered the general-release preview shortly after with updated Mesa graphics drivers and broader controller support. That build carries a hard requirement worth flagging if you’re converting a desktop rather than a handheld — Ars Technica noted in May 2025 that SteamOS 3.7 on generic PCs demands AMD hardware plus an NVMe SSD, so a SATA-only rig or an Intel/Nvidia box won’t boot it no matter how carefully you partition things. Always grab whatever build the official download page is currently serving rather than chasing an exact version number from an old guide.
| Device | Chip family | Official Valve support | Recommended path |
|---|---|---|---|
| Steam Deck (LCD/OLED) | Van Gogh / Phoenix APU | Yes | Stock SteamOS |
| Legion Go S | AMD Z2 Go | Yes (select SKUs) | Stock SteamOS |
| ROG Ally | AMD Z1 / Z1 Extreme | No | Bazzite |
| ROG Ally X | AMD Z1 Extreme | No | Bazzite |
| Legion Go (original) | AMD Z1 Extreme | No | Bazzite |
| Generic AMD desktop/laptop | Ryzen APU or Radeon GPU | No | Bazzite (desktop image) |
| Generic Intel/Nvidia desktop | Varies | No | Bazzite (limited Nvidia support) |
If you’re building a desktop rather than converting a handheld, it’s worth reading our gaming PC build guide first, since drive layout decisions made at assembly time make a dual-boot install significantly less painful later — a June 22, 2026 walkthrough on YouTube demonstrated the same full-wipe approach on a standard desktop PC using Valve’s official Steam Deck recovery image, confirming the process holds up well outside handheld hardware too. For the underlying chip landscape driving all of this AMD-versus-Intel hardware support, our hardware coverage hub tracks the broader picture.
Leave more storage headroom than the game library alone requires. Because rpm-ostree-based systems like Bazzite keep the previous system image around as a fallback deployment — the mechanism that lets you roll back a bad update in seconds instead of reinstalling from scratch — expect roughly 10-15GB of the drive reserved for that second deployment at any given time. It’s a worthwhile trade for the safety net, but it’s easy to forget when you’re calculating exactly how tight a dual-boot split can be. A dock, a spare Bluetooth or USB controller for testing, and a second USB drive as a backup installer are all optional, but they turn a stressful troubleshooting session into a minor inconvenience if something goes sideways mid-install.
5 Pitfalls to Avoid Before You Start
- Skipping the backup. A full wipe destroys local saves that haven’t synced to Steam Cloud, plus any screenshots, clips, or emulator save states stored outside the Steam folder. Copy anything irreplaceable to a separate drive before you begin.
- Leaving Secure Boot and Fast Startup enabled. Fast Startup hibernates Windows’ kernel session instead of fully shutting down, which can leave the NTFS partition in a “dirty” state that Linux refuses to mount read-write. Both settings need to be off before you boot the installer.
- Formatting the wrong drive on a multi-drive desktop. Handhelds only have one NVMe drive, so this mostly bites desktop users, but the installer’s partition tool doesn’t always label drives the way Windows’ Disk Management does. Check the drive’s size and model number twice before confirming a wipe.
- Installing on outdated firmware. ASUS and Lenovo have both shipped BIOS updates that fix Wi-Fi and audio behavior under Linux. Update firmware from Windows before you wipe it — you can’t easily flash a BIOS from inside the Bazzite installer environment.
- Assuming every Windows game will run. The vast majority of your Steam library will work through Proton, but games with kernel-level anti-cheat — certain competitive shooters and some anti-cheat-protected live-service titles — are a mixed bag. Check ProtonDB for your specific titles before you commit to a full wipe.
Step 1-3: Back Up Your Data and Build the Installer
Step 1: Back up saves, screenshots, and your Windows product key. Force a manual Steam Cloud sync for every game you care about (right-click the game in your library, Properties, Updates, and confirm Cloud saves are enabled), then copy anything else you need — emulator saves, capture footage, non-Steam launcher data — to an external drive or cloud storage. If you plan to reactivate Windows down the line, pull your digital product key while you still have a working Windows session:
# Run in an elevated PowerShell window on Windows 11
Confirm-SecureBootUEFI
(Get-CimInstance -ClassName SoftwareLicensingService).OA3xOriginalProductKey
Step 2: Update firmware and check for a BIOS update. On ROG Ally and ROG Ally X, open MyASUS and check the BIOS/driver tab; on Legion Go, use Lenovo Vantage. Install any pending BIOS update now, while you still have Windows, and reboot to confirm it applied.
Step 3: Download the image and build your installer USB. Grab the Bazzite image built for your specific device from bazzite.gg (there are separate handheld and desktop builds, so pick the one matching your hardware), or the SteamOS recovery image from Valve’s official SteamOS download page if you’re on validated hardware. Write it to your USB drive with balenaEtcher for a single-purpose installer, or Ventoy if you want a multi-boot USB you can reuse for other ISOs later — Windows Central walked through the equivalent process using Rufus back in June 2025, confirming the same recovery image works for full desktop and laptop builds, not just handhelds, and a June 18, 2026 tutorial on YouTube showed the same Bazzite-ISO-plus-balenaEtcher combination is still the fastest path to a working installer. Either tool handles the image-to-USB write in a few minutes; don’t eject the drive until it reports completion.
Step 4-6: Prepare the Drive and Boot the Installer
Step 4: Shrink your Windows partition (dual-boot only). In Windows, open Disk Management, right-click your main partition, and choose Shrink Volume. Leave at least 40-60GB unallocated for the new OS. Skip this step entirely if you’re doing a full wipe.
Step 5: Disable Secure Boot and Fast Startup. In Windows, go to Power Options, “Choose what the power buttons do,” and untick Fast Startup. Then reboot into the BIOS/UEFI menu — on ROG Ally, tap the volume-down button while powering on; on Legion Go, hold the two shoulder-button-adjacent keys or check your model’s specific combo — and disable Secure Boot under the Security or Boot tab. Set the USB drive as the first boot option, or note the one-time boot-menu key (typically Esc or F7 equivalent) so you can select it manually.
Step 6: Boot into the installer. Plug in the USB drive, power on, and select it from the boot menu. Bazzite and SteamOS both drop you into a live environment with a graphical installer (Bazzite uses Calamares). Before launching the installer proper, open a terminal from the live session and confirm the installer sees your drive correctly:
$ lsblk -o NAME,SIZE,TYPE,FSTYPE,MOUNTPOINT
NAME SIZE TYPE FSTYPE MOUNTPOINT
nvme0n1 1TB disk
├─nvme0n1p1 260M part vfat /boot/efi
├─nvme0n1p2 128M part
├─nvme0n1p3 700G part ntfs
└─nvme0n1p4 300G part
That output shows a Windows install occupying most of the drive with unallocated space at the end — exactly what you want to see if you shrank the partition correctly in Step 4.
Step 7-9: Install and First Boot
Step 7: Choose your partition layout. The graphical installer offers a guided option (“install alongside” for dual-boot, “erase disk” for a full wipe) and a manual partitioner for anyone who wants control over exact partition sizes. If you’re unsure, use the guided dual-boot option — it correctly detects the existing Windows install and free space nearly every time on ROG Ally and Legion Go hardware. Advanced users can check free space manually first:
sudo parted /dev/nvme0n1 print free
Step 8: Run the installation. Confirm your selections — this is the last point where you can back out before data starts writing — then let the installer copy the image to disk. On a handheld’s NVMe drive this typically takes 10-15 minutes. The installer will prompt you to remove the USB drive and reboot when it finishes.
Step 9: Complete the first-boot wizard. On first boot you’ll set your language and region, connect to Wi-Fi, and sign in with your Steam account. Bazzite and SteamOS both land you in the same gamescope-based Big Picture interface after this, with a desktop mode one button-press away if you need a traditional file manager or terminal.
Step 10-13: Post-Install Setup
Step 10: Pull driver and firmware updates. Bazzite’s rpm-ostree base means updates apply as a full new image rather than patching files in place, so your first update after install is worth running immediately — it typically bundles kernel and Mesa driver fixes for exactly the Wi-Fi, audio, and fan-control issues that hit brand-new installs on third-party hardware.
$ rpm-ostree status
State: idle
Deployments:
● ostree://bazzite:bazzite/stable/x86_64
Version: stable.20260604 (2026-06-04T09:12:31Z)
$ sudo rpm-ostree upgrade
$ systemctl reboot
Step 11: Pair controllers and calibrate gyro/trackpads. Built-in controls work immediately, but Bluetooth controllers need pairing through the Bluetooth settings panel in desktop mode. If you’re on a Legion Go, gyro and trackpad calibration lives in the Steam Input configuration screen, the same place you’d remap buttons for any other controller.
Step 12: Set up the dual-boot menu. If you kept Windows, the installer should have already added a GRUB boot menu that lets you pick an OS at startup. Confirm it’s working by rebooting once and checking both entries appear; if Windows is missing from the list, regenerate the boot configuration from desktop mode:
sudo nano /etc/default/grub
# set: GRUB_TIMEOUT=5
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
Step 13: Install your games and set Proton compatibility. Back in Big Picture mode, sign into Steam and start installing your library. For any title that doesn’t launch by default, right-click it, open Properties, go to Compatibility, and force a specific Proton version rather than “Proton Experimental” — check the game’s page on ProtonDB first to see which version other players report working.
Setting Up Dual-Boot With Windows 11
Dual-booting is the safer default for anyone who isn’t certain they’ll want to abandon Windows entirely, and it costs you almost nothing beyond storage space. The GRUB boot menu that Bazzite’s installer sets up during Step 12 detects Windows’ existing EFI boot entry automatically in the vast majority of cases, since both operating systems share the same EFI system partition rather than needing separate ones.
The one recurring snag is clock drift: Windows stores the system clock in local time by default, while Linux expects it in UTC, so you’ll sometimes see the wrong time after switching operating systems. Fix it from Linux by telling the system clock to use local time instead of assuming UTC, which keeps Windows happy without touching Windows itself:
sudo timedatectl set-local-rtc 1 --adjust-system-clock
Storage is the other consideration. A 512GB handheld split into a 260GB Windows partition and a 240GB Bazzite partition fills up fast once a handful of modern AAA titles are installed on each side. If you’re regularly juggling both operating systems, a microSD card (on ROG Ally and Legion Go, both support one) or an NVMe upgrade to 2TB is worth doing before you commit to a permanent dual-boot layout, since resizing partitions after the fact — while possible — is more fiddly than getting the split right up front.
One more Windows-side setting is worth checking before you shrink anything: BitLocker. Many OEM handhelds ship with device encryption enabled silently in the background, tied to your Microsoft account. An installer that can’t read an encrypted NTFS partition will sometimes report it as unallocated space or fail to detect Windows at all, which looks exactly like a shrink that didn’t take effect. Check encryption status from Windows before you touch partitioning, and either suspend BitLocker temporarily or note your recovery key, since resizing an encrypted volume without it can leave Windows unable to boot even though the files themselves are untouched.
# Run in an elevated PowerShell window on Windows 11
manage-bde -status C:
Configuring Proton and Game Compatibility
Proton is the compatibility layer — built on Wine, DXVK, and VKD3D-Proton — that translates Windows game calls into something Linux and AMD’s graphics stack can run natively. Valve maintains it, ships it with every SteamOS and Bazzite install, and updates it independently of the OS itself, so keeping Steam’s client updated is usually enough to get the latest Proton builds without any manual intervention.
For managing Proton versions beyond what Steam ships by default — including community builds like Proton-GE, which frequently patch specific game issues faster than Valve’s official releases — install ProtonUp-Qt from desktop mode:
flatpak install flathub net.davidotek.pupgui2
A note on anti-cheat and competitive games
Check ProtonDB before assuming any specific title will run. Games using kernel-level anti-cheat that hasn’t opted into Linux support — a shrinking but real list, mostly certain competitive shooters and battle royale titles — will not launch under Proton no matter what you try, because the anti-cheat driver itself refuses to initialize outside Windows. This is the single most common reason people keep a Windows dual-boot partition instead of wiping entirely: not because SteamOS or Bazzite can’t run their library, but because two or three specific multiplayer games can’t run anywhere else.
ProtonDB’s rating scale is worth understanding before you rely on it. A Platinum rating means a game runs perfectly out of the box with no tweaks needed; Gold means it runs well after minor adjustments, usually just picking the right Proton version; Silver means it’s playable but with visible issues like broken cutscene audio or occasional crashes; Bronze and Borked mean don’t count on it without real effort, if at all. Read a handful of recent reports rather than just the aggregate rating, since a Platinum score based on reports from a year ago can go stale if a game update introduces a new anti-cheat layer or breaks a previously-working workaround.
Optimizing Performance: TDP, FPS Caps, and VRR
One of the clearest wins of moving off stock Windows is direct access to power tuning that OEMs normally lock behind their own overlay software. Bazzite exposes TDP limits, GPU clock offsets, and fan curves through a built-in performance overlay (accessible via the Quick Access menu in gamescope, the same button combo Steam Deck uses), letting you drop a handheld from its default 25-30W ceiling down to 8-12W for less demanding 2D or older titles and stretch battery life meaningfully in the process.
Frame rate caps matter more on a handheld than most desktop setups, since running a game uncapped at whatever framerate the APU can push burns battery for visual smoothness you likely can’t perceive on a 120Hz panel anyway. Setting an explicit FPS limit slightly below your panel’s refresh rate, combined with enabling VRR (variable refresh rate) where the display supports it, cuts down on both power draw and frame pacing stutter simultaneously. If you also use a desktop PC and want frame generation on the Windows side of a dual-boot setup, our Lossless Scaling setup guide covers that separately, since it’s a Windows-only tool that doesn’t carry over to the Linux side.
# Check current GPU clocks and power draw from desktop mode
cat /sys/class/drm/card0/device/pp_dpm_sclk
sensors | grep -i edge
Advanced Tips for Power Users
Bazzite ships a set of custom setup scripts called ujust recipes — short for “just,” the command runner they’re built on — that automate tasks which would otherwise take a dozen manual steps. Two are worth running almost immediately after install: one sets up Sunshine, a self-hosted game-streaming host, so you can stream your handheld’s library to a Moonlight client on your phone, TV, or another PC; the other pulls in Decky Loader, the plugin framework that adds Steam Deck-style customization (custom themes, on-screen displays, per-game TDP profiles) to the gamescope interface.
ujust setup-sunshine
ujust setup-decky
If you’re coming from a console-emulation background, both SteamOS-style systems play nicely with EmuDeck, the automated emulator installer originally built for Steam Deck. It configures RetroArch and standalone emulator cores with sane default settings and a consistent ROM folder structure in one pass rather than setting each emulator up by hand. If you’ve already got console emulation dialed in elsewhere, our guides to PCSX2 for PS2 emulation and Dolphin for GameCube and Wii both run cleanly under Bazzite’s desktop mode using the same Flatpak builds you’d install on any Linux desktop.
For remote troubleshooting or headless management, enabling SSH access from another machine on your network saves a lot of back-and-forth plugging in a keyboard:
sudo systemctl enable --now sshd
ssh [email protected]
Two more habits are worth building in early. First, learn the rollback command before you need it under pressure — if an update leaves you with broken audio or a driver regression, booting into the previous deployment from the GRUB menu and running a single rollback command restores the last known-good image without touching your games, saves, or settings. Second, if you’re chasing a specific fix that hasn’t reached the stable channel yet, Bazzite offers a testing branch with newer packages at the cost of occasional rough edges; treat it the way you’d treat a beta channel on any other platform, useful for solving one specific problem, not something to run permanently on a device you rely on daily.
# Roll back to the previous working image
sudo rpm-ostree rollback
systemctl reboot
Display tuning is the last stop for most power users. Both systems expose HDR toggles and per-display refresh rate overrides in the desktop-mode display settings, which matter most when docking a handheld to an external monitor that supports higher refresh rates or wider color gamuts than the built-in panel. Gyro-aided aiming, a Steam Input feature that maps the handheld’s motion sensors to fine mouse-like camera control, is worth enabling for shooters even if you’ve never used it on a controller before — it’s configured per-game from the same Steam Input screen used for button remaps, and most players find it takes under an hour to feel natural.
Complete Working Project: A Full Dual-Boot ROG Ally Build
Putting every step above together, here’s what a complete, working dual-boot conversion looks like end to end on a ROG Ally X with a 1TB drive:
- Back up saves via Steam Cloud sync and pull the Windows product key with PowerShell
- Update ROG Ally X firmware and BIOS through MyASUS, reboot to confirm
- Download the Bazzite handheld image and write it to a 32GB USB drive with Ventoy
- Shrink the Windows partition in Disk Management, leaving 400GB free
- Disable Secure Boot and Fast Startup, set USB as first boot device in BIOS
- Boot the Ventoy USB, select the Bazzite image, confirm drive layout with
lsblk - Run the guided “install alongside Windows” option in the Calamares installer
- Wait roughly 12 minutes for the image to write, remove USB, reboot
- Complete first-boot setup: Wi-Fi, region, Steam sign-in
- Run
rpm-ostree upgradeand reboot once more to pick up day-one driver fixes - Pair a Bluetooth controller and confirm gyro calibration in Steam Input
- Confirm GRUB shows both Bazzite and Windows as boot options
- Install the Steam library, force Proton-GE via ProtonUp-Qt for two titles that needed it, and run
ujust setup-sunshineto enable streaming to a phone on the same Wi-Fi network
The end result: a ROG Ally X that boots into a Steam Deck-style interface by default, still has Windows one GRUB selection away for the two anti-cheat-protected multiplayer games that need it, streams to a phone over the local network via Sunshine, and delivers noticeably longer battery life on Bazzite’s default power profile than the same games got on stock Windows.
Realistically, budget an hour and a half for this exact sequence the first time through, most of it spent waiting on the image write and the post-install update rather than actively doing anything. The active, hands-on portion — backing up data, adjusting BIOS settings, clicking through the installer, pairing a controller — is closer to the 45-50 minutes quoted at the top of this guide. The gap between those two numbers is exactly why it’s worth starting this project with a charged handheld and no hard deadline: none of the individual steps are difficult, but a rushed partition step is the one mistake on this entire list that isn’t easily reversible.
Troubleshooting: 8 Common Issues and Fixes
Most first-install problems on ROG Ally, Legion Go, and similar hardware fall into a short, predictable list. Here’s what to check before assuming something is fundamentally broken. When a symptom doesn’t match anything below, pull the system log from the current boot before posting for help — it’s the first thing anyone troubleshooting with you will ask for, and it usually points straight at the failing service:
journalctl -b -p err --no-pager | tail -n 50
| Symptom | Likely cause | Fix |
|---|---|---|
| No Wi-Fi after install | Missing firmware blob for the wireless chip | Run rpm-ostree upgrade from a wired connection or tethered phone, then reboot |
| Installer USB won’t boot | Secure Boot still enabled, or wrong boot order | Re-enter BIOS, confirm Secure Boot is off and USB is prioritized |
| No sound or crackling audio | Outdated kernel audio driver for the specific APU | Update to the latest Bazzite image; audio fixes ship frequently |
| Black screen after install completes | GPU driver failed to initialize on first boot | Reboot into the previous rpm-ostree deployment from the GRUB menu, then update |
| Controller or gyro not detected | Steam Input not configured for the device profile | Open Steam Input settings and manually select the correct controller template |
| Game won’t launch at all | Wrong or missing Proton version | Check ProtonDB for the title, force the recommended Proton or Proton-GE build |
| Battery drains faster than expected | TDP limit not applied, or background updates running | Set an explicit TDP cap in the performance overlay; check for a stuck update |
| External display or dock not working | DisplayPort alt-mode not negotiating over USB-C | Try a different cable/dock; confirm dock firmware is current |
| System won’t resume from sleep | Suspend/resume regression in a specific kernel build | Roll back one rpm-ostree deployment or wait for the next image update |
If none of these match what you’re seeing, the Bazzite and SteamOS communities are active enough that a search for your exact device model plus the symptom almost always turns up someone who hit the same thing within the past few weeks — these are rolling-release systems, so issues get fixed fast, but they also appear fast when a new image ships.
Frequently Asked Questions
Will installing SteamOS or Bazzite void my ROG Ally or Legion Go warranty?
No. Both ASUS and Lenovo sell these devices as general-purpose Windows PCs, and installing a different operating system doesn’t void hardware warranty coverage on its own. Physical damage or BIOS tampering beyond a standard OS install is a separate matter.
Can I still play Windows-only games with anti-cheat after switching?
Only by keeping a Windows dual-boot partition. Games with kernel-level anti-cheat that hasn’t added Linux support won’t run under Proton, full stop — there’s no workaround beyond booting into Windows for those specific titles.
Do I need to fully wipe Windows, or can I dual-boot?
Dual-boot is supported and recommended for most people. It costs you drive space but keeps Windows available for anti-cheat titles, software you haven’t tested on Linux, and as a fallback if you decide SteamOS-style computing isn’t for you.
Is Bazzite the same as SteamOS?
No, though they look and feel similar. SteamOS is Valve’s own Arch-based system, officially validated only for Steam Deck and Legion Go S. Bazzite is a community-built, Fedora-based alternative designed to replicate the SteamOS experience on hardware Valve hasn’t certified, with broader driver support as a result.
How much free storage do I need for the installer and dual-boot?
A 16GB USB drive comfortably fits the installer image. For the OS itself, budget at least 40-60GB free if dual-booting, though 100GB or more is more realistic once you start installing games on both partitions.
Will my save files transfer automatically?
Steam Cloud saves sync automatically once you sign in on the new OS, provided the game supports Cloud saves and syncing was enabled before you wiped or repartitioned. Local-only saves need to be backed up and restored manually.
Can I go back to Windows if I don’t like it?
Yes, provided you didn’t fully wipe your Windows license and activation state. With a dual-boot setup, Windows is still sitting on its own partition, unaffected. With a full wipe, you’d need to reinstall Windows from a separate installer using the product key you saved in Step 1.
Does SteamOS or Bazzite support Xbox Game Pass or Epic Games Store?
Not natively, but both run through Proton via community tools like Heroic Games Launcher for Epic and GOG titles, and Game Pass’s PC app runs under Proton with mixed but generally workable results. Neither is as seamless as launching from Steam directly.
Related Coverage
- ROG Xbox Ally Sales Stall; Steam Deck Owns 50% [2026]
- How to Build a Gaming PC in 12 Steps, 90 Min [2026]
- PCSX2 Setup: PS2 Emulation in 10 Steps, 45 Min [2026]
- Dolphin Emulator: GameCube & Wii in 12 Steps, 40 Min [2026]
- Steam Hardware Survey: AMD 46%, Windows 11 Tops 70% [2026]
- Backbone Pro vs Kishi V3 vs GameSir G8: $80-$170 [2026]


