explaingit

ublue-os/bazzite

8,415JustAudience · generalComplexity · 3/5Setup · moderate

TLDR

Bazzite is a custom Linux operating system built for gaming that comes pre-loaded with gaming drivers, Steam, controller support, and a Game Mode interface for desktops, handhelds, and home theater PCs.

Mindmap

mindmap
  root((bazzite))
    What it does
      Gaming-ready Linux OS
      Atomic updates
      Rollback support
    Target hardware
      Desktop PCs
      Gaming handhelds
      Home theater PCs
    Pre-loaded tools
      MangoHud overlay
      OBS game capture
      Xbox controller support
    App install methods
      Flatpak sandboxed
      Distrobox container
      Bazzite Portal GUI
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Install Bazzite on a handheld gaming PC to get a Steam Deck-style Game Mode interface out of the box on third-party hardware.

USE CASE 2

Switch a desktop gaming PC to Bazzite to get pre-configured HDR support, MangoHud performance overlay, and OBS game capture.

USE CASE 3

Set up a home theater PC with Bazzite's couch-friendly Game Mode interface without manual driver configuration.

USE CASE 4

Install standard desktop apps on Bazzite via Flatpak or run a traditional Linux environment using the built-in Distrobox tool.

Tech stack

JustFedora AtomicFlatpakDistroboxOCI

Getting it running

Difficulty · moderate Time to first run · 1h+

Requires downloading and flashing a full OS image ISO, this replaces or dual-boots your existing operating system.

In plain English

Bazzite is a custom Linux operating system built specifically for gaming. It is based on Fedora Atomic, a version of Fedora Linux that uses a read-only system design where the core OS is delivered as a single image and updates are applied atomically, meaning the whole system updates at once and you can roll back if something goes wrong. Bazzite takes that foundation and layers on a large collection of gaming-related software and drivers that would otherwise require manual setup. The project targets several different types of hardware. For desktop PCs it ships with a standard desktop environment and includes tools like MangoHud for performance monitoring, vkBasalt for post-processing effects, and OBS VkCapture for recording gameplay. For Steam Deck-style handhelds it replicates the Steam Deck's Game Mode interface, including Valve's own KDE themes, so handheld users get an experience similar to an official Steam Deck even on third-party devices. It also targets home theater PCs, where the same Game Mode interface makes sense for couch use. Out of the box, Bazzite includes drivers for Xbox controllers, DisplayLink docks, AMD's compute libraries, and hardware video decoding acceleration. It uses a custom Linux kernel with patches for HDR support and broader hardware compatibility. A tool called Bazzite Portal provides a graphical way to install additional applications and apply system tweaks after the initial setup. Because the system image is immutable, installing extra software works differently than on a traditional Linux distribution. Regular desktop applications go through Flatpak, a sandboxed packaging format. For cases where you need a traditional Linux environment, a tool called Distrobox is preinstalled, which lets you run a separate mutable container alongside the main system. Bazzite is available as a downloadable ISO that you install like any other operating system. It is an open-source community project under the Universal Blue umbrella, and the README is available in ten languages.

Copy-paste prompts

Prompt 1
I installed Bazzite on a handheld gaming PC. How do I install additional apps using Flatpak and how is that different from installing software on a normal Linux distro?
Prompt 2
How do I use Distrobox on Bazzite to run a development environment or apps that are not available as Flatpaks?
Prompt 3
Bazzite uses atomic updates. How do I roll back to the previous OS version if an update breaks something?
Prompt 4
I want to contribute to Bazzite. How is a custom Fedora Atomic OS image structured and what does the build process look like?
Open on GitHub → Explain another repo

← ublue-os on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.