Things on this page are fragmentary and immature notes/thoughts of the author. Please read with your own judgement!
Universal Blue is a manufacturing process that focuses on community-driven sharing of best practices via automation to make awesome desktop and server operating systems (based on Fedora Atomic distributions).
I’ve built a Gemini App - Aurora Linux Assistant which makes it easy to learn and use Universal Blue Linux distributions.
Good Images¶
Universal Blue vs Fedora Atomic¶
Universal Blue Linux distributions are recommened.
Universal Blue Linux distributions have “batteries included”.
provide ISO images with Nvidia drivers pre-installed
flatpak is ready to use out-of-the-box
ujust devmodto switch to development mode
Universal Blue Linux distributions provide an exclusive tooling
ujustwhich makes it easy to managing the operating system.Universal Blue Linux distributions manage update automatically.
Generally speaking, you should NOT manually enable or use RPM Fusion on Universal Blue Linux distributions (Bluefin, Bazzite, or Aurora).
For more discussions, please refer to chat with Gemini .
Switch to the Fish Shell¶
Please see discussion in Change the Default Shell in Linux .
Install Docker¶
It is suggested that you switch to the development mode using the following command.
ujust devmodThe development mode has lots of development tools (including Docker) installed.
Update the Operating System¶
ujust upgradeConfigure Grub¶
You can use the command
ujust configure-grubto configure
Do not edit /etc/default/grub to add kernel parameters (like nomodeset or nvidia-drm.modeset=1).
Changes there for kernel args will be ignored or overwritten.
Use rpm-ostree kargs instead.
Show kernel arguments.
rpm-ostree kargsAppend kernel arguments.
rpm-ostree kargs --append=“your-argument-here”
rpm-ostree¶
Homebrew, flatpaks and containers are preferred to rpm-ostree. Use rpm-ostree only when absolutely necessary.
Check System Status¶
See which deployment you are booted into, which one is pending, and what packages you have layered.
rpm-ostree statusUpdate the System¶
This downloads the latest base image updates and keeps your layered packages on top.
rpm-ostree upgrade # ujust upgrade is preferred for Universal BlueSearch for a Package¶
rpm-ostree search <query>Install a Package (Layering)¶
To install a package directly into the OS (e.g., zsh or neovim):
rpm-ostree install <package_name>Apply Changes Live (Experimental but useful)¶
If you don’t want to reboot immediately, you can try to apply changes to the live filesystem. This works for many packages but not all (e.g., not kernels). rpm-ostree rollback
rpm-ostree install --apply-live <package_name>Remove a Package¶
rpm-ostree uninstall <package_name>Rollback to the Previous Version¶
rpm-ostree rollbackPinning a Deployment¶
If you have a perfectly working system state and want to save it so it never gets deleted by future updates,
rpm-ostree admin pin 0Replacing Base Packages¶
Sometimes you need to replace a package that comes with the base OS (e.g., swapping a driver).
rpm-ostree override replace <path_to_rpm>Or to reset a package to the default version provided by the OS image:
rpm-ostree override reset <package_name>Deploy a Commit¶
rpm-ostree deploy <digest_id>