Bazzite Documentation

repository·main·Indexed 26 days ago

https://github.com/ublue-os/bazzite

Bazzite is a specialized Linux distribution designed for gaming, optimized for desktop users, Steam Deck, and Home Theater PCs (HTPCs). Built on Fedora's atomic technologies as part of the Universal Blue ecosystem, it offers various images including Bazzite-Deck, GNOME variants, and NVIDIA proprietary driver support. The documentation covers system rebasing via rpm-ostree, configuration using ujust commands, Steam Deck hardware tuning, and bootloader restoration.

Tokens
16.5K
Snippets
65
Records
156
Agent score
89%

What's inside Bazzite

  1. Overview of Bazzite

    main

    Bazzite is an operating system designed for gaming and general use, offering specialized versions for different hardware and desktop environments. It is built upon Fedora Linux (specifically Kinoite and Silverblue) and is part of the Universal Blue ecosystem. Key deployment targets include:

    • Desktop: General-purpose desktop usage.
    • Steam Deck/Home Theater PCs (HTPCs): Optimized for handheld gaming devices and media center setups.
    • GNOME: A specific desktop environment flavor.

    Bazzite leverages features from upstream Fedora Linux (Kinoite and Silverblue) and the Universal Blue project to provide a stable, container-focused experience.

  2. Overview of Bazzite features and editions

    main

    Bazzite is an atomic, gaming-focused operating system. It provides specialized editions for different hardware and desktop environments:

    • Desktop: General-purpose desktop usage.
    • Steam Deck/Home Theater PCs (HTPCs): Optimized for handheld gaming devices and media center setups.
    • Alternative Handhelds: Specific optimizations for various handheld gaming hardware.
    • GNOME: An edition utilizing the GNOME desktop environment.

    Bazzite leverages features from upstream projects, including Universal Blue and Fedora Linux (Kinoite & Silverblue), to provide an immutable, container-focused experience.

  3. Identify the source of reported issues

    main
    Before reporting an issue to the Bazzite repository, verify if the problem originates from Fedora itself or a third-party package. If the issue is upstream in Fedora or a third-party component, you should report the problem directly to those respective maintainers.
  4. Rebase to Bazzite Deck/HTPC

    main

    To switch an existing Fedora Silverblue or Kinoite system to the Bazzite Deck/HTPC image (designed for Steam Deck or handhelds with modern AMD/Intel ARC GPUs), use the following command.

    Note: If you have Secure Boot enabled, consult the Secure Boot documentation before performing a rebase.

    rpm-ostree rebase ostree-unverified-registry:ghcr.io/ublue-os/bazzite-deck:stable
  5. Create a custom Bazzite image

    main

    You can create a custom version of Bazzite by forking the repository and using GitHub Actions for the build process.

    1. Fork the repository.
    2. Generate a new key pair using Cosign.
    3. Add your private key to your GitHub repository secrets as SIGNING_SECRET (Settings -> Secrets -> Actions).
    4. Place the public key in your public repository so users can verify the signatures.
    5. Enable GitHub Actions to trigger the build.

    To keep your fork synchronized with upstream, it is recommended to use the Pull App.

  6. Rebase to Bazzite Desktop (NVIDIA Proprietary Drivers)

    main

    For devices with NVIDIA GPUs that require the proprietary driver stack, rebase to the specific NVIDIA image.

    Note: For users with Secure Boot enabled, consult the secure boot documentation before rebasing.

    rpm-ostree rebase ostree-unverified-registry:ghcr.io/ublue-os/bazzite-nvidia:stable
  7. Rebase to Bazzite GNOME Desktop with Nvidia drivers

    main

    To switch to the GNOME desktop variant optimized for Nvidia graphics, use the following command.

    rpm-ostree rebase ostree-unverified-registry:ghcr.io/ublue-os/bazzite-gnome-nvidia:stable
  8. Rebase to Bazzite Desktop (NVIDIA Proprietary Drivers)

    main

    If you are currently running a Fedora Atomic installation and want to switch to the Bazzite desktop image specifically optimized for NVIDIA hardware with proprietary drivers, use the following command.

    rpm-ostree rebase ostree-unverified-registry:ghcr.io/ublue-os/bazzite-nvidia:stable
  9. Rebase to Bazzite Desktop (AMD/Intel)

    main

    If you are currently using a Fedora Silverblue or Kinoite system and want to switch to the Bazzite Desktop image for AMD or Intel GPUs, use the rpm-ostree rebase command.

    Note: If you have Secure Boot enabled, consult the Secure Boot documentation before performing a rebase.

    rpm-ostree rebase ostree-unverified-registry:ghcr.io/ublue-os/bazzite:stable
  10. Verify Bazzite digital signatures with cosign

    main

    Bazzite images are digitally signed using Sigstore's cosign. To manually verify the signature, download the cosign.pub key from the repository and run the cosign verify command against the Bazzite image path.

    cosign verify --key cosign.pub ghcr.io/ublue-os/bazzite
  11. Create a custom Bazzite fork

    main

    You can build your own custom version of Bazzite by forking this repository and configuring GitHub Actions.

    1. Fork the repository.
    2. Generate a new key pair using cosign.
    3. Place the public key in your public repository so users can verify signatures.
    4. Add your private key to your repository's GitHub Secrets (Settings -> Secrets -> Actions) using the name SIGNING_SECRET.
    5. Enable GitHub Actions to build and sign your images.

    To keep your fork synchronized with the upstream Bazzite repository, it is recommended to use the pull GitHub app.

  12. Rebase to Bazzite GNOME Steam Deck/HTPC Edition

    main

    To switch an existing Fedora Atomic installation to the Bazzite image that combines the Steam Deck/HTPC experience with the GNOME desktop environment, use this command.

    rpm-ostree rebase ostree-unverified-registry:ghcr.io/ublue-os/bazzite-deck-gnome:stable