Bazzite Inital Setup and Installation for Handheld PCs

Note: Bazzite requires a stable internet connection with no bandwidth cap in place.

Installer Requirements

  • A USB flash drive with 10GB free space
    • Note: All data on this drive will be wiped when flashed
  • Software to flash the image:
  • Physical keyboard

Confirmed Supported Handhelds

Bazzite’s Handheld Wiki contains information on setting up your handheld after installing Bazzite and workarounds for known issues.

The following list is incomplete and more hardware will be added eventually. There may be other handhelds that are not listed and work well with Bazzite. Please add the handheld to the wiki linked above with post-installation setup with workarounds and known issues that you experienced.

This particular list has been verified by Bazzite maintainers and contributors.

Gaming Mode Requirements

  • Compatible graphics card
    • A modern AMD GPU
    • An Intel ARC GPU (Other Intel GPU series will not boot Steam Gaming Mode)
      • Intel Arc handhelds will currently have missing functionality (TDP limit, controls, etc.)

Handhelds will also benefit from also reading the Gaming Mode documentation.

Dual Boot Preliminary Setup

Two Methods: Method A or Method B

  • A) Manual partitioning on the same drive

  • B) Installing Bazzite on a separate drive (Recommended if handheld remains stationary)

A) Same Drive Method

Note: This must be done before installing Bazzite.

Note about dual booting with Windows specifically:

Create space for Bazzite with the Disk Management application in Windows.

Win + R to open Windows Run and enter:

diskmgmt.msc

Then, right-click your Windows partition and select “Shrink Volume” from the drop-down menu. Afterwards, select how much storage you want to allocate for Bazzite.

You will most likely have an EFI partition that already exists if you are dual booting with Windows, so you don’t need to make another one. However, you have to select it, then click the ‘cog’ icon, followed by “Set Mountpoint” in the drop-down menu. Set it to /boot/efi .

B) Separate Drive Method

Note: This method is ideal for desktops, and would be inconvenient for handhelds unless planned to keep stationary.

Install Bazzite on a separate internal or external drive.

  1. Install the other operating system on a drive (like Windows)
  2. Install Bazzite on a second drive
  3. Set Bazzite as the default in your boot order

You can also install Windows to an external drive with Windows-to-Go using Rufus to dual boot if you do not have an internal drive available.


Installation Guide

1. Download and Flash Bazzite

  • Download Bazzite after choosing the correct handheld hardware with our Image Picker tool.
  • Flash Bazzite to your bootable medium.
  • Eject drive.

2. Boot Installation Medium

You may need to research your handheld on how to boot from removable storage. It may be similar to the Steam Deck with holding down one of the “volume buttons” and pressing another button, but like for other general hardware, it highly dependent on your hardware.

3. Installer Setup

  • Select your language, region, keyboard layout, and time zone.
  • Select the drive that Bazzite is going to be installed on.
  • Optionally encrypt the drive with a password if desired.
    • If you lose this password, then it cannot be decrypted.
  • Setup a user account and begin the installation.
    • Give administrative privileges and set a user password. (required)
  • Begin the installation.
  • Reboot device after it has finished installing.

Dual Boot Guide

Two Methods: Method A or Method B

  • A) Manual partitioning on the same drive

  • B) Installing Bazzite on a separate drive (recommended for desktop/laptops)

A) Same Drive Method

If you do not have multiple drives or are using a device that will not be stationary, then you will have to manually partition on the same drive.

Note about dual booting with Windows specifically:

Note: This must be done before installing Bazzite. Dual booting Bazzite with Windows on the same drive works better with Windows already installed before Bazzite. However, this does not apply to devices that come pre-installed with a different operating system that is not Windows like the Steam Deck.

Create space for Bazzite with Disk Management in Windows.
Win + R to open Windows Run and enter:

diskmgmt.msc

Then, right-click your Windows partition and select “Shrink Volume” from the drop-down menu.

Afterwards, select how much storage you want to allocate for Bazzite.

You will likely have an EFI partition already if you are dual booting with Windows, so you don’t need to make another one.

However, you have to select it, then click the ‘cog’ icon, followed by “Set Mountpoint” in the drop-down menu. Set it to /boot/efi .

Manual Partitioning to the Same Drive

  1. Select Installation Destination

  2. Select Advanced Custom(Blivet-GUI) under Storage Configuration.

  3. Create partitions and devices:

    Manual Partitioning Scheme:
    
    mount point: /boot/efi  
    format:      EFI system partition
    size:        300MB  
    (optional: use existing system EFI partition)
    
    mount point: /boot
    format:      ext4
    size:        1GB
    
    mount point:
    format: btrfs
    size: [max]
    
    mount point: /
    format:      btrfs (subvolume)
    
    mount point: /var
    format:      btrfs (subvolume)
    
    mount point: /var/home
    format:      btrfs (subvolume)
    

Note about dual booting other Fedora Atomic Desktop images on the same drive

If you want to dual boot another Fedora libostree image (like Bluefin) installed alongside Bazzite, then you would have to make an additional EFI partition and switch between them through the BIOS boot menu.

B) Separate Drive Method

Note: This method is ideal for desktops, and would be inconvenient for handhelds unless planned to keep stationary.

Install Bazzite on a separate internal or external drive.

  1. Install the other operating system on a drive (like Windows)
  2. Install Bazzite on a second drive
  3. Set Bazzite as the default in your boot order

You can install Windows to an external drive with Windows-to-Go using Rufus to dual boot if you do not have an internal drive available.

Important information for users with Secure Boot enabled:

Note: Skip this section if Secure Boot is not enabled or unsupported with your hardware.

WARNING: The Steam Deck does not come with secure boot enabled and does not ship with any keys enrolled by default. Do not enable this unless you absolutely know what you’re doing!

Method A) During Installation Method (See Image Above)

A blue screen will appear giving the option to enroll the signed keys after leaving the Bazzite installer.

Enroll MOK if you have secure boot enabled. If prompted to enter a password, then enter:

ublue-os

Otherwise Continue boot if you have Secure Boot disabled or if it is not supported with your hardware.

Method B) After Installation Method

ATTENTION: Disable Secure Boot before doing this, and then re-enable it after enrolling the key.

If you have already installed Bazzite then enter this command in a host terminal:

ujust enroll-secure-boot-key

If prompted to enroll the required key, then enter the password in the host terminal:

ublue-os

You can now turn Secure Boot back on in the BIOS.


Post-Installation

GRUB Menu

The first boot will show a screen showing your current and last deployment. It will automatically boot if nothing. It is important to note that the GRUB menu can be used to rollback Bazzite deployments if you encounter issues.

Read more about this in the Updates, Rollback, and Rebasing documentation.

Configuring System Settings for KDE Plasma and GNOME


KDE Plasma’s System Settings application


GNOME’s Settings application

After you have booted into the Desktop for the first-time configuration, then you can should adjust the settings to your liking. The most important setting that may need to be changed is the scaling setting in “Display(s) [and Monitor]” since it can be incorrect for the screen of your hardware on a fresh installation. Monitor orientation should also be corrected if it is rotated improperly.

First Boot Setup Utility: Bazzite Portal

Attention: This section requires a stable internet connection. Make sure you are connected to a network.

An application will pop up welcoming you to Bazzite when you boot into the desktop for the first time. This is a utility that allows you to tailor Bazzite to your liking by installing additional software.

  • Click “Next” to begin configuring Bazzite.
  • Press the toggle switch button next to the item to have the option enabled or disabled for your installation, some are already toggled on by default.
  • If you would like to customize any of the options, then press the arrow next to the toggle switch button if available.
  • Installing items from the portal may take a long time.

Note: If you only check a few items in a category, then it will only install those selected items. The switch is only toggled to install everything in that category.

Attention: There is a rare chance you will be asked to setup KDE Wallet or GNOME Keyring and set a password to continue installing items from the Bazzite Portal.

Installing additional software

The Installing and Managing Applications documentation is useful to learn how to install additional software on Bazzite outside of the Bazzite Portal.

Dual Boot Post Configuration

1. Optional: Show GRUB at boot on Handheld/HTPC images

Note: Handheld/HTPC images hide GRUB by default.

Open a host terminal and unhide it with this command:

ujust configure-grub

Select “unhide” to have GRUB appear on boot.

2. Regenerate GRUB to show Windows Entry

If you do not see your Windows boot in the GRUB menu, then open a host terminal and enter:

ujust regenerate-grub

Bazzite as Primary Boot

If the OS Boot Manager has set Windows Boot Manager to be the first boot priority, then this may result in booting directly into Windows after the install instead of Bazzite. You may have to fix this in your BIOS settings.

Login to Steam & Reboot Device

Login to Steam then reboot your device when you finish setting up your device during the first-boot process.

For users using Steam Gaming Mode

After completing all of the above, then your next boot will be in Steam Gaming Mode which requires additional setup for Steam.

Further information about Steam Gaming Mode:

Post-Setup and Known Issues for Verified Handhelds

Unverified Handhelds

If Bazzite does not have the required setup for unsupported handheld, then you may need to manually set your device up.

Software Required:

  • Decky Loader
    • Community plugins for Steam Gaming Mode
    • Required dependency to install most software below
  • HHD
    • Full controller support for multiple handheld hardware
  • SimpleDeckyTDP
    • TDP limit for non-Deck handhelds
  • CSS Loader
    • Themes for button prompts and Steam Input integration

Enable HHD

You will need this command for functional HHD:

sudo systemctl enable --now hhd@$(whoami)

Controller Information

For most handheld hardware, besides the Steam Deck, we emulate a DualSense controller for full functionality. Double tap or hold the side menu button to access settings for controller emulation including switching to an Xbox controller with reduced functionality.

If your device has paddles, you will want to use the DualSense Edge controller (excluding the Ayn Loki). It’s disabled by default because some games do not map it correctly.

Some games and emulators may need Steam Input disabled to work correctly with your controls.

Desktop Controls

Desktop Mode Controller Layout: It may not exist by default if Steam doesn’t setup your handheld controller properly. This can be fixed in Steam’s controller settings.

Make sure to apply the desktop controls when you select them.


Video Tutorials

Note: Some of the information in a few of the video’s post-installation sections may be outdated, but the tutorial for the installer and first-boot setup portion should still be mostly relevant.

Lenovo Legion Go & ASUS ROG Ally (Dual Boot Guide):

Lenovo Legion Go (Dual Boot Guide):

ASUS ROG Ally

GPD Win 4 (Post-Setup Video):


ISO Workarounds / Alternative Installation Methods

Note: Ignore this part of the guide if Bazzite installed properly on your hardware.

Attention: Both workarounds may have scaling issues with the installer depending on the hardware.

Important: Also note that the workarounds are useful for downloading a smaller ISO.

Generic Installer Error Workarounds

Option 1: Rebasing from a Fedora Atomic Desktop Image (Recommended)

If you experience issues with installing our ISO or the bootable drive you have is too small for Bazzite, then download the Fedora Kinoite (KDE Plasma) or Fedora Silverblue (GNOME) depending on which desktop environment preferred.

The installation setup is similar to Bazzite and includes the same installer with the same instructions.

Once installed, you will not be on Bazzite until you enter the command found on our website that appears under “Existing Fedora Atomic Desktop Users” section when the download is ready.

Open the terminal and enter this command, and keep in mind this process has no progress indicator and will take a long time. Reboot when the rebase has finished. Bazzite should be installed after rebooting and your username as well as the user password will carry over from the upstream Fedora Atomic Desktop to Bazzite.

You will also be missing the default applications until you open a host terminal and enter:

ujust _install-system-flatpaks

Once everything is setup properly, then you need to rebase from the unsigned image to the signed image, so enter in a host terminal:

rpm-ostree rebase ostree-image-signed:docker://ghcr.io/ublue-os/<IMAGE>

Replace <IMAGE> with the image you’re using.

Video Tutorial

Option 2: Older & Buggy Net-Installer (Not Recommended)

Note: This is intended as a last resort!

This is not something we recommend at all, but an alternative solution is using our Github release of the last online ISO. This is extremely buggy and suffers from other issues that are now fixed in the offline ISO.

There is an older video showcasing how to install the Bazzite with this old online ISO.

IMPORTANT: The video guide does not mention this part of the process since this wasn’t a requirement previously:

  • After installing it and making it to the desktop, then you will have to rebase to our stable build.
  • The command can be found on the website appropriate for your hardware and specific image you downloaded under “Existing Fedora Atomic Desktop Users”, and keep in mind rebasing has no progress indicator and takes a long time.
  • Reboot when the rebasing process has finished, and you will know because it will tell you to reboot your device.

You will also be missing the default applications, so open a host terminal and enter:

ujust _install-system-flatpaks

Documentation Contributors: Kyle Gospodnetich, Nathaniel Warburton, Jorge Castro, Noel Miller, ChaiQi, Damian Korcz, and Justin Garrison

See also: Upstream Manual Partitioning Guide & Steam Gaming Mode Overview (Handheld/HTPC)

View all Bazzite documentation

Getting an bootloader error while trying to install Bazzite os 40 on my Rog Ally, my secure boot is turned off. I was able to install this in the past a month ago, decided to go back to windows but then wanted to revert to Bazzite. Not sure why I am receiving this message. I did swap ssd then put my original back in to make sure it was not the current ssd and received the same error message in the middle of installation.

Re-download the ISO at your convenience. Yesterday the new batch had issues that were fixed later on.

Could it be the version I downloaded? Is there previous versions I could try? Possibly version 39?

No, just re-download the ISO again. It is now fixed.

Thanks, it is working now. Appreciate it.

Desktop Mode is Broken , Game Mode works perfekt