Bazzite Buzz #12


ATTENTION CURRENT BAZZITE USERS:

Feral Game Mode has been removed from desktop images. Sorry if this causes any inconveniences. System76 scheduler and Joystickwake completely replace the functionality of it and do not require a launch option to function properly. This feature has always been removed from -deck, -ally, -framegame, and other handheld images, but was mistakenly never removed from the desktop images.

The Nix ujust script has also been removed due to conflicts with SELinux policies. Users can still install the Nix package manager manually if they so desire at their own risk.


Preface

Bazzite is a custom image of Fedora Atomic Linux 39 utilizing Universal Blue’s custom image framework designed to bring users the best in Linux gaming for their PCs, including the Steam Deck and other handhelds. Bazzite’s newsletters highlight all of the work we have been doing to bring our users the best features ready to go for their PCs, home theater setups, and handheld gaming devices.

If you are new to the project, then here’s how this technology works. Bazzite and other Universal Blue images follow the continuous delivery methodology of development, which means we’re constantly adding new features and squashing bugs to the image through updates. These updates also include anything directly from upstream (Fedora and Universal Blue) and upgrades from the packages we include. This newsletter is intended to inform current users what has changed since the last Bazzite Buzz which was released over a month ago.

Eight Months of Bazzite

It has been nearly eight months since the first proper public release of Bazzite! Over the last 3 months, there has been a recent spike in popularity and that means we received more feedback on bugs and suggestions for new features more than ever. Universal Blue images have had over 8 million pulls (This includes downloads & updates applied in total) for all of their images including Bazzite. Anyone who has stuck with the project for a while has already seen it evolve and change rapidly. It has really grown into its own identity now.

Website

No longer should curious users search for Bazzite to only find a Github README with bullet points with multiple links. We now have a proper website! There is now an “Image Picker” tool that is intended to guide users on what image they should download based on hardware setup and personal preference of desktop environment as well as the choice of including Game Mode (if supported with your hardware.)

New ISOs Released: A Better Installation Experience

We have new ISOs released with most previous issues that plagued the project now fixed. Each image has its own offline ISO. The new ISOs should install faster and fix issues where the installer would not boot among other issues. Ventoy is now supported with the new ISOs too.

We are confident that the new ISOs are in a much better state than the previous installation method, but as always report bugs with them as you encounter them. We will be adding enhancements and bug fixes to our new ISOs in the coming weeks.

The new ISOs have improved the user experience, but this only phase one of the “new installer.” Fedora’s new WebUI installer will be an even better user experience and allow pre-installed Flatpaks to be installed during installation as opposed to afterwards.

The new ISOs were created using our ISO generator utility.

Handheld Improvements

touch

Several handheld improvements have been made in the past month including working controls for many handhelds, and improved performance. We also fixed scaling and rotation on different hardware, and a ton of other quality of life features. Handhelds from the Lenovo Legion Go and ASUS ROG Ally to different GPD, AYN, and AYANEO hardware should now have proper support.

If you’re looking for an experience similar to SteamOS on a Windows handheld, then you should consider giving Bazzite a try on it. In a matter of fact, we can proudly say that the Lenovo Legion Go is now feature complete!

Here is a showcase of Bazzite on the Lenovo Legion Go:

Unfortunately, the Steam Deck OLED still suffers from audio and refresh rate issues, and since it’s related to the newer kernel versions, we are waiting to see how Valve approaches this when they decide to upgrade SteamOS’s kernel. Eventually the OLED models will have full Steam Deck compatibility like most of the LCD models since these are the last two remaining issues.

For the future, we will also include plans to support the MSI Claw and Orange Pi Neo as more people get their hands on them. We are truly living in the golden age of handheld PCs!


Image by Matt Schwartz

Also check this out! The ASUS ROG Ally running Bazzite with the Apple Vision Pro headset using Moonlight’s iPad port with Sunshine running on the Bazzite host. It’s really incredible to see how creative people can get with these devices.

Message of the Day Added

The terminal now shows a “message of the day” which will randomize tips and helpful information for Bazzite like list what image and update channel you are using, and link to external resources for the project like documentation.

BoxBuddy Pre-Installed for a Graphical Distrobox

We want users to dive in head-first into containers when they need applications that are not available as a Flatpak or as isolated development environments. One of the hurdles of containers for some users is how command-line driven it is, but this GUI can create new Distrobox containers and manage them from a graphical application.

AMD CUDA Support (ZLUDA)

We have added support for ZLUDA, which allows for a drop-in CUDA implementation. This change is not gaming related, but is part of the Bazzite installation if users are interested in this. The directory is present in /usr/lib64/zluda/.

The Phoronix article linked above goes into more detail about this change.

Changes Under The Hood

TuneD Added

TuneD is a service that optimizes battery life and improves performance by using specific profiles for certain workloads. It is an incredibly powerful utility and is best to read the functionality from the official documentation.

The most important takeaway from this is that Bazzite ships with a default profile that should work well on most devices. There is a graphical application that is pre-installed if you plan to make changes of your own. Change TuneD’s settings at your own risk.

Hybrid Graphics Fix

We added this patched switcheroo-control to fix issues with users who have multiple GPUs in their system. Users with specific setups couldn’t launch Steam from the desktop shortcut. This is a known issue upstream, but now it is no longer an issue specifically for Bazzite.

Prompt Rebranded

Ptyxis

Due to trademark issues, Prompt had to be renamed, so it is now known as Ptyxis with a different icon.

It still retains the same functionality and goals as it did before the rebrand.

Solving Technical Debt

Both Bazzite and upstream Universal Blue repositories have been cleaned up lately in preparation for the new ISOs that are now released.

ujust has been reorganized with more cleanup and standardization to come with lots of scripts removed or hidden if they caused other issues.

Rescue & Emergency Mode

Rescue & Emergency Mode has been improved significantly. This should give flexibility if your system is having trouble booting your system among other issues. This change also made it upstream too.

New Stable Tag

bazzite:latest is now aliased to bazzite:stable.
:latest is the proper term technically, but :stable makes it clearer that this is the default channel and is intended for daily usage.

Updates Improved

Updates have been reworked using Topgrade which updates nearly everything installed on your system all at once. This is an improvement than how it was setup previously.

There is now an update application that shows an output of everything that is being updated with a verbose log called System Update.

This is useful for forcing updates and seeing everything accurately in real-time especially if you update in Game Mode, where information given to the user is not accurate.

updates

Upgrading

Desktop Images

Desktop images usually auto-update once per day and apply on a reboot, but if you are impatient and want the update now, then open the new System Update tool

Alternatively, open the terminal and enter:

ujust update

Wait for it to finish, then reboot to be on the latest Bazzite build.

Steam Deck/HTPC/Handheld-PC Images

In Game Mode, open the “Settings” > “System” and press the “Check for updates” button.

Alternatively, use the steps above for “Desktop Images” in Desktop Mode.

Conclusion

Atomic Breath

godzilla

Fedora Magazine wrote an article reintroducing Fedora Immutable as Fedora Atomic, which is an accurate name in comparison to the previous one. The now appropriately named Atomic branding for their OSTree operating systems may give a better first impression than “Immutable” ever did because the OS still allows for flexibility in comparison to other “immutable” systems.

They also gave the Universal Blue project a shout-out too! Thanks!

Eat the Label

All “immutable” Linux operating systems have their own implementation, and some do not allow for the same flexibility that we do. This gives the assumption that the user does not have control over their system and it’s completely locked down.

There are read-only files for stability purposes in Bazzite, but most every-day users should be able to get by without much of a fuss. It’s really only advanced users who may have issues performing tasks like changing the kernel without forking the project. Bazzite is as useful as a daily driver for your desktop computer as it is a “console-like” operating system for handhelds and HTPCs.

Container Ecosystem

While Flatpak is the primary package format for Bazzite, we also made sure that users can have access to universally every Linux package manager and repository with Distrobox and Toolbx. It solves the problem of application support by having access to nearly every application ever made for the Linux desktop ever. Bazzite tries to keep container management as user friendly as it possibly can.

Without deviation from the norm, progress is not possible” - Frank Zappa

Not even our final form

This is only the beginning!

We still need to get the new Fedora installer in the near future which should fix all of the issues left with our installer. Upstream plans to have updates only download new changes in your image rather than download the image all at once again for every upgrade. We want to look for better ways to integrate containers in the system than what we already have.

As always, the goal is to constantly fix issues that are expressed by our users and keep up with the latest Linux gaming trends that should be a Bazzite default. We’re still expanding the project, but the project is nearly feature complete, and it will only be improved upon from now on. The future is looking bright! :sun_with_face:

Branching Paths

bluebuild

Bazzite is one of the two end-user focused images under the Universal Blue family. Originally, the images were intended for users to create their own custom images using a base Fedora image for both personal usage or sharing with the community. This is how Bazzite exists, but Bazzite most likely grew to be the most popular custom based on these statistics.

Now a new way of creating your own custom Fedora Atomic image using the new custom image tooling. BlueBuild project. They are a separate organization from us and have different plans, but many of the images are based on Universal Blue’s old image tools and revamps it by having their own methodology. Read their blog post explaining their goals for the project.

There’s also our incomplete list of custom Fedora Atomic images by the community like Secureblue and Aurora for those who are interested in trying other images that are not Bazzite or Bluefin.

Installing Bazzite

New to the project?

Read our FAQ before proceeding.

Read the Information on Steam Deck, HTPC, and Handheld-PC Images documentation if you plan to use Game Mode with Bazzite.

Install the latest Bazzite here. Check out our installation guide on how to install it properly.

Report issues on our issue tracker if you experience any.

Thank you for giving Bazzite a try!

Community Resources

Contributing to Bazzite

If you are feeling ambitious then feel free to contribute to the project. Bazzite and other Universal Blue images are open source projects. Contributions of all kinds are welcome from pull requests to translations.

If you would like to contribute to Bazzite, then take a look at contribution ideas that you can help us out with! Take a look at our guide on how to make your fist contribution to the project.


Changelog

Desktop Images

Features

  • New System Update application to manually update using topgrade to unify updates
    • ujust update to manually update in the terminal
  • Added Message of the Day (MOTD) in the terminal
    • Shows what image you’re using
    • Warns users if their image hasn’t been updated for over 1 month
    • Generates random tips
  • latest builds are now aliased to :stable
    • Clarifying that these builds are stable
      • No manual intervention required for end users since :latest == :stable
  • NVK support
    • Enter: ujust toggle-nvk to switch use the NVK drivers
  • Added ZLUDA for CUDA support on AMD hardware
    • Present in /usr/lib64/zluda/*
  • Added support for REALTEK RTL8814AU devices (Thanks sradigan!)
  • Added tuned for improved performance and battery life
  • GNOME images now include File Roller
  • New rescue & emergency modes for boot issues
  • ujust reorganization and cleanup
    • More to come with this standardization PR
  • Added a number of useful Cockpit plugins
  • Allow MangoHUD and VkBasalt config on all flatpaks automatically
  • Supported Incus out of the box
  • Shipped new default Flatpak LibreOffice permissions for printing support
  • Added Vapor & VGUI2 themes for Prompt terminal
    • Support light theme in Prompt w/ Vapor theme applied on KDE Plasma
  • Added joystickwake to keep screen alive from controller input
  • Added BoxBuddy as a pre-installed application
  • Enabled hardware acceleration for XIV Launcher by default
  • Added nerd-fonts
  • Nvidia GNOME images enabled the supergfxctl-gex extension by default under GNOME
  • Updated to Mesa 23.3.6 with patches from Mesa 24
  • Added vdpau drivers with h264 support
  • Enabled Discord RPC for non-flatpak applications by default
  • Use automatic desktop sizing from nested desktop for Waydroid
  • Added patched switcheroo-control for multi-GPU systems
    • Fixes dGPU/iGPU swiching
  • Added DejaDup to the Bazzite Portal (Thanks dylanmtaylor!)
  • Fix MangoHud configuration typo that prevented the Flatpak version to function properly

Fixes

  • Fixed Flathub issues
    • Issues corrected when rebasing
    • Ensure the “user” Flathub repository has a higher priority than “system”
  • Fixed controller issues using modified xone that retains full support for xpad
  • Corrected sunshine-workaround service issue
  • Fixed Nvidia images missing supergfxctl-plasmoid
  • Fixed issues with GNOME themes applied to Firefox and Thunderbird
  • Restored patched XWayland for Nvidia images
  • Fixed audio issues
    • A different bug than what the Steam Deck OLED is suffering
  • Added a fix for LibreOffice Flatpak to correct a printing bug
  • Tailscale should have better integration
    • Controlled by default for users in the “wheel” group
  • Added memory limit to duperemove service
  • Added back ujust toggle-updates
  • Use X11 by default in SDDM (login screen) for Nvidia images
    • Fixes issues with logging in
  • Fix Waydroid launcher script
  • Added a fix for suspend with some Wi-Fi adapters
  • Added missing i2c-tools package
    • This dependency is required for OpenRGB functionality
  • General cleanup within the project

Steam Deck/HTPC/Handheld-PC Images

Features

  • All of the features from the Desktop images that apply
  • Added environment variable for 720p patch in Gamescope
  • Added swipe gestures to access the Steam and QAM
    • Script to disable can be found here if you find this change undesirable
  • Support multi-touch gestures in Waydroid (Thanks Aru!)
  • Added support for HHD’s DualSense Gyro
  • HHD is now supported on multiple hardware
    • GPD Win Mini
    • GPD Max 2
    • GPD Win 4
  • Added 60-120hz refresh rate for GPD Win Mini
  • Added support for the AYN Loki Max
    • Auto enabled handycon
  • Added support for the AYANEO AIR Plus
  • Add ujust commands to install various themes needed by ROG Ally & Legion Go
  • BMI260 gyro driver added for the ASUS ROG Ally (Thanks antheas!)
  • Added automatic nested desktop resolution handling for a number of handhelds.
  • ROG GUI is now installed on -ally images

Fixes

  • All of the fixes from the Desktop images that apply
  • Corrected the default display scale on KDE images
  • Fixed crash issues on certain home theater PC setups (Thanks nadiaholmquist!)
  • Added patch for Legion Go fixed display mode in Gamescope
  • Fixed an issue with updates not applying on -deck images.
  • Fixed rotation issues on several different handhelds
  • Waydroid scaling and DPI fixed for multiple handhelds
  • Corrected blacklist for undesirable gyro

Translations

Subscribe to Bazzite Buzz & Previous Buzzes

9 Likes