Interview with Michael Tunnell
I had the pleasure of sitting down with Michael Tunnell to discuss Aurora, Bazzite, Bluefin, cloud-native Linux desktops, and the future of the project.
Check out TuxDigital and This Week in Linux.
I had the pleasure of sitting down with Michael Tunnell to discuss Aurora, Bazzite, Bluefin, cloud-native Linux desktops, and the future of the project.
Check out TuxDigital and This Week in Linux.
Flatpak support in Brewfiles is here! You can now manage your Flatpak applications alongside your Homebrew formulae, casks, and other dependencies in a single Brewfile. This is thanks to the amazing work by Ahmed Adan (Donate), who worked with upstream to land this feature.
Homebrew Bundle now supports Flatpak packages on Linux. This means you can declare your Flatpak applications in your Brewfile and have them installed automatically with brew bundle.
Note from Jorge: I haven't played with this feature yet but announcing it so we can get feedback right away.
Add Flatpak packages to your Brewfile using the flatpak directive:
# Brewfile
brew "neovim"
flatpak "com.spotify.Client"
flatpak "com.visualstudio.code"
Then run:
brew bundle
Homebrew Bundle supports three ways to interact with Flatpak remotes:
For packages from Flathub (the default), just specify the app ID. Most of us will use it this way:
flatpak "com.spotify.Client"
For packages from other repositories, specify the remote URL:
flatpak "org.godotengine.Godot", remote: "https://dl.flathub.org/beta-repo/"
For shared remotes that you want to reuse across multiple packages:
flatpak "org.godotengine.Godot", remote: "flathub-beta", url: "https://dl.flathub.org/beta-repo/"
flatpak "io.github.dvlv.boxbuddyrs", remote: "flathub-beta"
All the standard brew bundle commands work with Flatpak:
brew bundle - Install Flatpak packages from your Brewfilebrew bundle dump - Export your installed Flatpak packages to a Brewfilebrew bundle cleanup - Remove Flatpak packages not in your Brewfilebrew bundle check - Verify all Flatpak packages are installedbrew bundle list --flatpak - List Flatpak packages in your BrewfileCheck out the brew bundle documentation for more information.
# Include Flatpak packages when dumping (default on Linux)
brew bundle dump
# Exclude Flatpak packages
brew bundle dump --no-flatpak
# List only Flatpak packages
brew bundle list --flatpak
This feature allows Bluefin users to maintain a single Brewfile that manages:
The huge community benefit is the shareability of a list-o-files. You can give your friend the hookup, and in fact many of Bluefin's "features" are just us shipping our own Brewfiles. For you experts out there this likely just simplifies something you probably already have. And for those of you just starting your command line spec tree it's a nice milestone to hit: "I can get a new install up and running in 10 minutes". There's lots of ways to do this, but this is an easy one. 😄
Woo! We feel that this is a nice complement to devcontainers, providing even more flexibility to your workflows!
You're going to have to tell me, I am on holiday in the German countryside, but this feature is super exciting and I'm looking forward to hearing your feedback!
Refer to the Homebrew Bundle documentation for more!
Speaking about "Easiest way to get a clean install in 10 minutes", SaveDesktop is the nice GUI way to do this. You'll always find it in Bluefin's Curated section in the Bazaar app store. (Tell your friends!)
Greetings guardians!
A few minor updates today, you'll receive these updates either today or tomorrow depending on the build you're on. Our first is some updates to our usage of just. Just is a task runner that we use to ship community aliases. Our justfiles are ancient, some going back to the beginning of the project. We are consolidating most parts of what you call "Bluefin" into a common repository. These are all mostly scripts, there's nothing distribution specific about them.
We wanted to centralize this because keeping Bluefin and Bluefin LTS configs in sync is too problematic. In this manner we can make the Bluefin parts easily plop onto any image no matter what the image is.
It also means we cleaned out some broken stuff, and are down to just 34 just recipes, which makes all of this sustainable, especially since we're sharing the maintenance with Aurora. All the recipes now include confirmation dialogs and have been refined. I am glad we got this done because this part of Bluefin was really starting to show its age! Thanks to @tullilirockz for working on this! Thanks to @hanthor for implementing it in Bluefin LTS! Run ujust or ujust --choose to get started!
We now have a nice way for the community to contribute to Bluefin's Brewfiles.
We workshopped some ideas on how to make this nicer for users. We approached bold-brew with the idea of presenting Brewfiles to users in a dedicated view. Vito was very accomodating and implemented the idea, kudos to him! Now let me show you how it works:
ujust bbrew is the entry point, we will generate a little menu for you for every Brewfile in Bluefin. So if we add more they just show up here. Then after you choose one bbrew will open up showing you that Brewfile. You can then select and choose what you want to install, or hit Ctrl-A to grab everything.
This is awesome because we can now curate app bundles of CLI tools to users. We're starting off with AI tools, k8s tools, and monospace fonts. Feel free to send PRs to these Brewfiles, since users can pick and choose we can ship the tools you depend on the most. You'll also notice some color improvements in bbrew, make sure you check out the repo and give them a star!
And lastly, we now have ujust cncf, which will show you all of the projects that are part of the CNCF. Many of you work with these tools every day, the hope is to show you all of the cool things you can play with in cloud native!
Ultimately this consolidation of all of our config will lead to better Bluefins and has been a primary source of parity issues between Bluefin and Bluefin LTS. Bluefin continutes to actively shrink over time!
We still have work to do, like the motd, bling, and all that other stuff but we'll keep you up to date!
Guardians, today Bluefin GTS switched its base from Fedora 41 to Fedora 42. The gathering of raptors has begun. In a two weeks Bluefin (aka bluefin:stable) releases on Fedora 43 and we will start the cycle all over again!
Looking for Fedora 43? That's here too in bluefin:latest, and will roll out to bluefin:stable users in 2 weeks. It's tough to write two of these, so we'll likely just move to spring/autumn announcements and whenever major things land. When bluefin:stable upgrades I will post it as an addenum in the discussion thread for this post.
As it ends up F43 will be coming to bluefin:stable while we're in Atlanta, GA, for KubeCon + CloudNativeCon, come say hello! As a bootc reference architecture we tend to align with the release cadence of other projects. This usually means that I'm on the road when there's a Bluefin release happening, so we do status reports like this depending on where we are in the world at the time, and to ensure transparency. It's also our chance to gather with attendees and get feedback on how we can make Bluefin better and gather feedback.
You'll receive this update during your next update window, or you can run an update manually by clicking on this icon:
If you've never experienced a Bluefin upgrade before, McPhail has a full writeup. Here's the major release information:
Bluefin is an operating system for your computer. It is designed to be installed on a device upgrade for the life of the hardware – we accomplish this by sharing the maintenance and care of our systems together as a community. It is designed to be as “zero touch” as possible by providing a curated GNOME experience.
Bluefin GTS (aka bluefin:gts) is our standard release, designed to be one cycle behind the most current Fedora release. This one's been in the oven for about six months and is ready to go. In a few weeks the bluefin:stable branch will move on to Fedora 43. If you're brand new you can use the website to pick the right image or select from the grid below:
| Version | GPU | Download | Checksum |
|---|---|---|---|
| Bluefin GTS | AMD/Intel | 📥 bluefin-gts-x86_64.iso | 🔐 Verify |
| Bluefin GTS | Nvidia | 📥 bluefin-nvidia-open-gts-x86_64.iso | 🔐 Verify |
| Version | GPU | Download | Checksum |
|---|---|---|---|
| Bluefin | AMD/Intel | 📥 bluefin-stable-x86_64.iso | 🔐 Verify |
| Bluefin | Nvidia | 📥 bluefin-nvidia-open-stable-x86_64.iso | 🔐 Verify |
This unidentified Dromeasaur is by Dr. Natalia Jagielska, a world renowned expert paleontologist and paleoartist! We reached out to work with her on bringing her artwork and style to Bluefin, and she said yes! This rendition will be revealed in November, or you can just manually pick it in the wallpaper chooser.
I am so stoked about this, an actual scientist! We're retconning that this is just Bluefin enjoying a nice day at the lake. We have two more wallpapers from her coming soon. I have come to really appreciate the world of flying reptiles. They are terrifying.
Natalia's artwork was vectorized and remastered by Delphic Melody, please consider donating so that the collaboration can continue!
There are a few major changes from a Bluefin perspective that we've been looking forward to:
Bazaar makes its debut in Bluefin GTS! All Bluefins are now just using the Bazaar flatpak. You're in for a treat:
It's been super awesome seeing Bazaar move from a random project we found on r/gnome to what is effectively now the premier app store experience for FlatHub and Linux. You can help out tremendously by sponsoring the author.
This is also a major milestone for Bluefin since we've effectively done our part for the GNOME and FlatHub ecosystems and can now consider application installation a solved problem, we can introduce new things into Bluefin as a flatpak to begin with and move us away from distribution specific formats.
I am finding more applications now than I ever have. It's also a milestone for all Linuxes since flatpak's upcoming release gives us the flexibility to do this in a proper way with full lifecycle management. We can now be more flexible with the applications we can ship mid-cycle by plopping a file in /etc/preinstall.d. Those of you making custom images will really take advantage of this!
Shoutout to Sebastian Wick for this work in Flatpak and working on the next release of this cool tech!
We're committed to a future where authors deliver their applications how they see fit. This should be decoupled from the operating system.
Speaking of packages, we've been doing more work engaging with Homebrew developers, check out this interview I did with Workbrew talking about our hopes and dreams:
Let us know if you're interested in working on Homebrew for Linux, we have opened a homebrew tap so that we can interate on bringing cool new things to you. A huge shoutout goes to Yulian Kuncheff and Ahmed Adan for spearheading this effort, please consider donating!
The fonts have been a disaster for a long time, we're finally ripping the bandaid off and removing a bunch of fonts from the image. For you command line nerds you can install any of the fonts listed in Homebrew or use a tool like Embellish to install more fonts.
If you're in developer mode you can bring the monospace fonts back with ujust bluefin-fonts.
We've dropped the GNOME Quick Settings extension for tailscale in favor of the upstream system tray implementation. For more information, check the docs, this requires manual set up.
The tailscale experience is still not where it needs to be, but now that Tailscale has started work on an official system tray implementation we expect this to solidify over the next few upstream releases.
ujust commands returningAfter a hiatus we've finally refactored the Homebrew management in Bluefin. We're adding back some convenience commands:
ujust bluefin-ai to install them.
ujust bluefin-k8s to install them.
ujust bluefin-fonts to install them.
Extinction is a natural part of life. After a deprecation cycle the following images are now removed:
nvidia-open images or move to a stock image to use the built in kernel drivers.As usual most of the changes we do in GitHub to deliver Bluefin and not so much in the image itself. Major parts of the Bluefin repository have been cleaned up to align with the improvements and lessons learned from building Bluefin LTS earlier in the year. This has been the bulk of the work in the past few weeks.
Bluefin has significantly been simplified, now would be a great time to contribute as we've brought the repository up to the state of more modern bootc projects like Bluefin LTS.
bluefin:gts and bluefin:stable will be publishing on Tuesdays from now on instead of Saturdays. Publishing on Saturday nights is an artifact of pre-automation "reserved time" for testing before a weekly release. This matches the same release schedule as Bluefin LTS.Bluefin is a deinonychus, and may snap at you occasionally. Four year olds can get feisty of so there might be issues that you discover that we haven't seen before. Filing issues is always appreciated.
We also accept donations to sponsor the infrastructure and artwork.
Sometimes starting in open source can be a real barrier if you don't know where to start. Don't have the skills to do cloud native things yet? Here's a good way to help out FlatHub. Flatpaks rely on what we call "runtimes" to ensure that the application has the dependencies it needs to run. Do a flatpak list to check them out:
Flatpak Tracker is a site we made that will check all of the applications we ship in Bluefin and see which runtimes need to be updated. We label them by image, here's the the list of applications that need to be updated.
This is important work because we want applications to be updated to the latest runtimes for security reasons. As it turns out, many of these applications have OPEN PULL REQUESTS already with people updating the runtime, you just need to find the app, run the updated version by following the instructions, and then report back to the Flatpak maintainer that the new app is working great (or broken!). Since GNOME 49 just released, there's plenty to do, so feel free to dive in and get started! Also remember, this work helps all of FlatHub, we're explictly sending new volunteers to help upstream.
We choose to help move application development forward via FlatHub instead of fragmenting the ecosystem with distribution-specific packaging. This includes shipping a premier FlatHub experience out of the box. You do not have to worry about misconfigured and low-quality Fedora flatpak remotes and packages on Bluefin systems.
Find your favorite app and see if there's a test build available for a new runtime. And if you have the skills to port applications to new runtimes, now is the time to flex. 😄
Check out store.projectbluefin.io and pick up some dino merch. Thanks to John Johnson for ensuring our coffee mug game is up to snuff:
Nothing makes ops people happier than uneventful things.
Today is really like any other, we just updated a few tags, you always have the option to go to any version we support at any time. Wether you like the chill vibe of bluefin:gts or the refined aggresiveness of bluefin:stable , the raptor abides.
Here's the current lay of the land:
gts (default) | stable or stable-daily | latest | |
|---|---|---|---|
| Fedora Version: | 42 | 43 | 43 |
| GNOME Version: | 48 | 49 | 49 |
| Target User: | Most users | Enthusiasts | Advanced users and testers |
| System Updates: | Weekly | Weekly or Daily | Daily |
| Application Updates: | Twice a Day | Twice a Day | Twice a Day |
| Kernel: | Gated | Gated | Ungated |
NOTE: The stable and stable-daily branches will move to F43 in two weeks.
Bluefin is an active predator and is constantly hungry. You can help keep Bluefin healthy by becoming a contributor! We are an open source project and accept contributions:
As a cloud native project we are always looking for contributors with skills in Podman, Docker, CI/CD, GitHub Actions, and good ole bash.
Let's take a look at our contributor health, and celebrate the amazing folks who have come together to bring you Bluefin! We use LFX Insights to measure our project health. First note that my results here are skewed, since I am either usually just merging or telling a bot it's ok to do something. This also does not include the rest of Universal Blue. Yes, Aurora people basically maintain both, haha.
This next one surprised me, I was expecting 20 or 30ish at best. Nice work ya'll!
Haha yep, I can't hide from the data though, free me from this!
Feel free to browse around and learn cool things about Bluefin's creators.
After KubeCon we head into the holidays, where things will slow down significantly. We've been in the lab with mad doctor Timothée Ravier and have been cooking up something. We expect that this will change the course of Bluefin for the better, forever. We can't wait to show you, until then, enjoy!
I was thrilled at the opportunity to team up with Pragyan Poudal from Red Hat to showcase Bootc along with Bluefin's vision for desktop Linux to a packed house at IndiaFOSS 2025 in Bangalore this past weekend. I managed to make only a handful of Linux users mad. It was a great chance to spread the word about image-based bliss.
Achillobator giganticus
After nine months of development Bluefin LTS and Bluefin GDX are now Generally Available(GA). The reign of Achillobator has begun. Find the download links on the website, or snag them below.
Bluefin LTS is a workstation designed for people who prefer Long Term Support but desire a modern desktop. This species of raptor is for users who prefer a slower release cadence, about a three-to-five year lifespan on a single release. Like other Bluefins it features first-class support for Flathub via Bazaar, Homebrew, ZFS, and all the other goodies.
Bluefin LTS is composed of:
Bluefin LTS also offers a hardware enablement branch (bluefin:lts-hwe) with:
ujust rebase-helper.Bluefin LTS ships with Linux 6.12.0, which is the kernel for the lifetime of release. An optional hwe branch with new kernels is available, offering the same modern kernel you'll find in Bluefin and Bluefin GTS. Both vanilla and HWE ISOs are available, and you can always choose to switch back and forth after installation.
I have been dogfooding Bluefin LTS for most of this year. This is the most "work focused" image and is suitable for "set it and forget it" style desktops. We are proud of this one!
Here's how I pitched the idea earlier this year:
Bluefin LTS provides a backported GNOME desktop so that you are not left behind. This is an important thing for us. James has been diligenlty working on GNOME backports with the upstream CentOS community, and we feel bringing modern GNOME desktops to an LTS makes sense. I may be old but I'm not dead!
A very special thanks to Jordan Petridis from GNOME for technical advice and review.
Installation is via a live session with the new Anaconda webui. This installer is miles better than the ones we used to ship, thanks to the Anaconda team.
Secure boot and all those goodies are available:
Updates will come as often as we need them for now and will settle into weekly releases on Tuesdays. Follow updates on changelogs.projectbluefin.io.
There are a few lingering issues that will take more time:
Bluefin GDX is designed to be an AI Workstation by providng Nvidia drivers and CUDA in one image. It combines Bluefin LTS with the Bluefin Developer Experience. There's no cool expansion of GDX: GPU Developer Experience I guess. Maybe someday we'll call it Bluefin CUDA Edition. (Jensen call me!)
The reason we brand it differently is that it is designed for AI and Machine Learning professionals. Instead of a multitude of Nvidia images like Bluefin we will concentrate on this one image to focus on one thing: this is our platform for open source AI. Improvements made in GDX will make it's way into Bluefin's developer mode. GDX gives us a place to rev fast with some new friends:
We are happy to announce that we've formed a community partnership with the Red Hat Enterprise Linux Command Line Assistant team. We are collaborating on upstream and open source AI and ML tools to provide system-wide inference and an enhanced experience for Bluefin LTS and GDX users.
This will be the lab that will keep Bluefin on the leading edge of open source AI. Here's Mo Duffy on Destination Linux to give you an idea of what we're thinking about.
You can find Bluefin GDX on the conference circuit!
Bluefin LTS will end up being way more sustainable than Bluefin and Bluefin GTS from a developer perspective. It's more of an initial setup and then we don't touch it as often. We have had periods in beta development where we didn't need to touch it for weeks. If you look changelogs.projectbluefin.io you'll soon notice the pattern, mostly minor version bumps. Nice.
It's also much more advantageous for us to derive off of a base image that ends up being a commercial product -- there is no doubt that CentOS and Red Hat have their weight behind these base images, whereas we are unable to get that level of commitment from Fedora. And as Steven Rosenberg pointed out, Fedora isn't really improving in this area, and with bootc's composefs work coming along nicely we now have multiple base images to choose from. It will be an interesting year!
As it turns out, Bluefin LTS HWE is in the exact same ecological niche as GTS. They will end up being competitors. There's no death knell or anything like that, once development moves on it doesn't cost us much to keep it running. And we do love our pets. Check out the awesome brand new image by Delphic Melody and ahmedadan:
As you can see, it's getting a bit crowded. We'll see how people react to LTS, and I expect we'd hide the GTS option from the website but continue to offer it.
With bootc we can deliver a desktop experience with the latest GNOME, and a new kernel -- but on a solid base with less regressions. The previous generation of thinking kept CentOS in a very locked set of use cases. The old boring ones. Now with bootc + containers + flathub + homebrew, we feel that this less churny base makes for a compelling desktop. We'll see how they compete!
Since Bluefin LTS is "bootc natural" and not a transplant, it comes with less compromises out of the box. Bluefin LTS doesn't support local layering at all and AppImages don't work either. (Told ya'll those things were not gonna make it lol.) Bluefin LTS also does not support older machines with v2 CPU instructions.
This also lets us be less strict in Bluefin. We've decided to leave local layering enabled by default in Bluefin and Bluefin GTS. There are users who use that ecosystem, so no worries there. Savages. The Fedora based images will continue to serve these use cases. James also has his own tunaOS, which offers a wide variety of Bluefin-derived variants, including an AlmaLinux based sister to Bluefin LTS. That covers just about everybody - The bootc community around CentOS is quite diverse, and offers a variety of options.
The downloads page is looking pretty good these days but I am very interested to see what you decide since we do measure everything, so feel free to peruse that list. 😄
Now let's get on to the good stuff. store.projectbluefin.io will take you to the new Bluefin store, which has a ton of awesome items!
We celebrate this release with this T-shirt, the "Reign of Achillobator", signifying Bluefin LTS's role in this ecosystem as a top predator, along with some other goodies:
And of course we've got stuff for the kids, and some other weird things! Currently this store is US only for now.
Proceeds from the store items will go towards paying for more paleoartwork. I think this is a fair deal, Bluefin would have never gotten this far without the work of these fine artists. Having a way for the community to sponsor the artwork in return for the awesome comfort of an Achillobator giganticus hoodie? Peak Linux.
Bluefin is brought to you by Tulip Blossom and James Reilly. The team grew this cycle with some fantastic new folks helping out to finish Bluefin LTS:
Yulian Kuncheff (Daegalus) hopped in to help with the GitHub actions and the lts-hwe branch. Ahmed Adan and M. Gopal (Delphic Melody) round out the new team with fantastic work on the artwork, website, documentation, and testing. And don't forget to check out the new coloring book!
Special thanks to Carl George, Laura Santamaria, Shaun McCance, and the entire bootc team for their (continuing) support of this project! The game has started. The clue is: Gardener
And lastly, there is some missing functionality compared to the Fedora build as there are some creature comforts that are missing. We call these parity bugs, so if find them, file them. There are some things that won't be coming with; CentOS Stream's focus is on long term support, so we may choose to drop a feature if it's not straightforward to bring to Bluefin LTS.
Imagine choosing between LTS, GTS, and stable with just a slider on an update page in a control panel. They should feel and act the same as each other. I'm pretty much there with my personal machines, sometimes I have to check which machine is which because it doesn't really matter. I feel the pain on the infrastructure side instead. 😄
Two new soundtracks accompany this release, enjoy!
Remember you cannot rebase between CentOS and Fedora Bluefins, ain't no one testing that. Beware. Also this is the new installer -- you'll love it.
The long term support experience.
📖 Read the documentation to learn about features and differences.
| Version | GPU | Download | Checksum |
|---|---|---|---|
| Bluefin LTS | AMD/Intel | 📥 bluefin-lts-x86_64.iso | 🔐 Verify |
| Bluefin LTS | ARM (aarch64) | 📥 bluefin-lts-aarch64.iso | 🔐 Verify |
| Bluefin LTS HWE | AMD/Intel | 📥 bluefin-lts-hwe-x86_64.iso | 🔐 Verify |
| Bluefin LTS HWE | ARM (aarch64) | 📥 bluefin-lts-hwe-aarch64.iso | 🔐 Verify |
The AI workstation with Nvidia and CUDA.
📖 Read the documentation to learn about features and differences.
| Version | GPU | Download | Checksum |
|---|---|---|---|
| Bluefin GDX | AMD/Intel + Nvidia | 📥 bluefin-gdx-x86_64.iso | 🔐 Verify |
| Bluefin GDX | ARM (aarch64) + Nvidia | 📥 bluefin-gdx-lts-aarch64.iso | 🔐 Verify |
Today we're happy to announce that Bluefin was one of the 71 projects selected for Github's Secure Open Source Fund. We applied for and were selected earlier this year, with tulilirockz representing the team and working with GitHub -- getting some awesome training and some funding to work on improving our security posture. Also awesome to see CNCF Projects like bootc and fluxcd. We're in excellent company. 😄
This has led to us publishing our SBOMs and in general giving everything a once over. p5 also dove in to ensure we're rocking and rolling to secure our supply chain. Though we still depend on many third party sources for our software, we've severely cut that down, bringing things inhouse when necessary or removing a dependency alltogether. Thanks to p5's automation work the project is constantly rebuilding when there's a new base image, ensuring that you're getting those timely security updates!
This was also a good time for us to work with Alan Pope and the rest of the crew at Anchore. The team deployed Syft across our important repos and got to work.
This work is of course, always ongoing. I am still green in this field myself, if you're looking to learn more start here with the OpenSSF
A little over four years ago some of my fellow ex-Ubuntu friends helped me complete the first prototype for Bluefin. It was our pocket vision of a "what if we could start over and make exactly what we want?". For you archaeologists, here's the first version.
Technically a day early but we intend to make this a weekend long celebration. Eighteen months later we would form a community ... Universal Blue, with the goal to provide modern Linux operating systems for the next generation of open source users and contributors.
Now we have Bazzite, Aurora, and Cayo. Finally, the tools to make our own fate. 😈 I don't have anything especially insightful to say other than thanks! Let's take a quick look at where we stand:
We're sitting at about ~25,000 weekly checkins of Universal Blue systems, and now that we have sort of functional installers, who knows how fast we can grow!
As Kyle mentioned in the Bazzite update our communities continute to grow as well! We're now well over 30 million pulls of our images (we kind of stopped counting that). Here's the contributor stats:
Here's our rolling totals:
And as we can see, the amount of contributions since Bazzite started to gain traction has really improved. I'm particularly proud of our contributor distribution here - it proves that non-code contributions around support can help keep our project healthy:
(This chart is measuring the partial month of July, ignore that drop off we're not collapsing. 😃 )
You have my thanks, you've made my operating system invisible, it has been a pleasure destroying the Linux desktop with you. 💙
Today is also Bluefin's fourth birthday. I suppose as the first product she was the one who would push the hardest, and will always strive for the pure bootc experience. The dinosaurs remind us that we need to force change in order to achieve the best possible desktop we can. Here's a peek at something special:
I was unfortunately unable to find out the lifespan of a Deinonychus, so we'll have to just roll with it.
Things are pretty calm right now, Bazaar is in and once that gets put into Flathub we can chill more. There's plenty of folks on what we call "chillops": they rotate out and relax while the automation hums along for a while.
But also now is the time when the new folks start to step up, so it's encouraging to see people come in and drive for a while. Bluefin LTS is looking pretty good, probably on track for fall GA but we're not in a rush. Next major effort will be adding F43 as beta channels and cycling back into release mode. The game has not started. The clue is: Winnower
This work wouldn't be possible without Timothée Ravier and the bootc team! You have our thanks.
Guardians, today Bluefin switched its base from Fedora 41 to Fedora 42. The gathering of raptors is over, Bluefin GTS remains with F41 while Bluefin stretches her legs with the latest Fedora goodies.
As a bootc derived project we tend to align with the cadence of the rest of cloud native. That means we do status reports like this depending on where we are in the world at the time, and to ensure transparency. Previous status update: KubeCon US 2024 Project Report
[
First things first, here’s the Bluefin Spring 2025 playlist – like previous playlists, each song was picked for a certain reason, the interpretation is up to you. Rock out while you read this update and refresh yourself up on the docs!
You’ll receive this update during your next update window, or you can run an update manually by clicking on this icon:
[
Here’s the major Fedora release information:
This time Jacob Schnurr takes us to the Triassic:
[
Note that composefs is now enabled via upstream Fedora!
Bluefin is an operating system for your computer. It is designed to be installed on a device upgrade for the life of the hardware – we accomplish this by sharing the maintenance and care of our systems together as a community. It is designed to be as “zero touch” as possible by providing a curated GNOME experience.
Bluefin (aka bluefin:stable) is our leading edge desktop, designed to bring you the newest version of Fedora and GNOME. It follows the CoreOS release schedule and comes ~2-3 weeks after Fedora has done it’s major upgrade. This is a great buffer without being overly tardy. This one came a bit later but it’s ready now!
Here’s a bit of a rundown with Alan Pope! Special thanks to Anchore, makers of Syft and Grype - which we use as our security scanners when making our builds and their advice has been invaluable to our project this cycle!
Universal Blue revolutionizes the Linux desktop experience
We fiercely invest in automation and distributed work, which is one of the many reasons why Linux and Open Source have devoured the industry. We strive to bring these cloud native features to the desktop.
If you’re brand new you can use the website to pick the right image or use one of the direct DL links:
There are a few major changes from a Bluefin perspective that we’ve been looking forward to, let’s roll!
Let’s get this out of the way … our installation experience continues to be the bane of our existence. Most of this project is automated, but the installation experience takes a disproportionate amount of time, most of the last two months have been us scrambling to make ISOs work. As of today there are no bootc installers that are production ready for end users, this has been a problem for years so we’re exploring multiple options. I’m kinda done with snakes.
This cycle we will be producing two sets of ISOs for installation. One is the the older Anaconda installer, and one is Fyra Labs’ new readymade installer. Both sets are listed on this download page. Production of both ISOs is automated so we can kick the tyres on both and take a closer look in October for the next set of releases. The website will default to the Anaconda installers.
Refreshed Anaconda ISOs - Thanks to a herculean effort by Jason Naggin and Noel Miller we have refreshed ISOs on the website, based on the Fedora Anaconda installer.
New Readymade Installation Media - thanks to our friends at Fyra we have a new installer that we’re making available.
And for some color (if it’s not obvious), there’s no future for legacy installers in the new world. We plan to aggressively pursue aligning our installation methods with the rest of the cloud native ecosystem so we don’t have to deal with this. I’d like to take a moment to shout out the intergration work @tulilirockz has been doing to deliver this. Without her there would be no ISOs, or Bluefin. Much love.
We are not out of the woods yet, but we’re making significant progress so this might take a few weeks still.
ComposeFS information for F42 upgrades - this is the biggest heads up, if you move to stable there’s no going back to GTS. James has added guards and warnings to ujust rebase-helper to remind you. This is a one time migration, it sucks that it’s a one way trip. On the plus side someday in the future your base OS, containers, and flatpaks will all be consuming composefs for some great efficiency wins. More to follow on this as we learn more from upstream.
As usual most of the changes are the work we do in GitHub to deliver Bluefin and not so much in the image itself. This took up the bulk of the work this cycle. Here’s a huge changelog of the package updates. You can also check out the release notes or use ujust changelogs to keep track of what’s going on.
We really, really made some efficiency gains across Universal Blue this cycle, we were able to grow the team while getting faster.
Some packages have moved to flatpaks: Upcoming changes to Bluefin packages for the F42 release
This cycle has also been all about being more up front about our project metrics:
[
Bluefin GTS users will also get this documentation update.
We really spent a ton of time on the docs this cycle. I consider them mostly feature complete now. docs.project.bluefin is always linked from your terminal motd too. 😄
Thanks to the magic of princexml we’re able to generate a pretty amazing offline PDF of the Bluefin docs:
[
Note that we will replace the Yelp help application with a link to this doc, which will open in the Papers PDF reader automatically. Yelp’s had some problems, so it’s time to say goodbye.
We will also replace the Documentation shortcut in the logo menu with this instead so that documentation will always be browsable when offline. The blue u shortcut to the online docs will remain in the menu unchanged. We hope to finish this up soon.
The PDF is built every time we update the docs and is copied over as part of the build process, so your offline documentation will always be up to date.
We are currently not producing an ARM build of Bluefin or Bluefin GTS. However we do have an ARM image of Bluefin LTS, which is in Beta, you can select it from the this list.
It’s very good and on track to GA sometime this summer, so help there is appreciated. We’re still working on ARM builds for Bluefin and Bluefin GTS.
Extinction is a natural part of life. These will take effect when we migrate to Fedora 43 this fall so we’re giving you a full release cycle heads up.
Due to Nvidia’s software support changes we can no longer support the older closed modules for Nvidia cards.
nvidia-open images automatically during an upgrade if your hardware supports it. So any GTX 16XX+ and RTX Series cards will be migrated over with no action needed from you.If you are using one of the old hwe images for Surface/Asus, this is the last cycle that we will be generating them. We haven’t linked to their ISOs in a long time but there’s a handful of you still rocking these. If you’re using one of these images you’ll see hwe in your bootc status or fastfetch output.
ujust rebase-helper and select the latest stream.Bluefin is a deinonychus, and may snap at you occasionally. Three year olds can get feisty of so there might be issues that you discover that we haven’t seen before. Filing issues is always appreciated.
We also accept donations to sponsor the infrastructure and artwork. If there’s a piece of software in Bluefin that makes you happy, consider donating to the upstream organization and/or authors. Thanks to the present (and past!) supporters for helping out.
Check the docs for all the available version options:
Nothing makes ops people happier than uneventful things.
Today is really like any other, we just updated a few tags, you always have the option to go to any version we support at any time. Wether you like the chill vibe of bluefin:gts, the refined aggresiveness of bluefin:stable, the raptor abides.
Here’s the current lay of the land:
gts (default) | stable or stable-daily | latest | |
|---|---|---|---|
| Fedora Version: | 41 | 42 | 42 |
| GNOME Version: | 47 | 48 | 48 |
| Target User: | Most users | Enthusiasts | Advanced users and testers |
| System Updates: | Weekly | Weekly or Daily | Daily |
| Application Updates: | Twice a Day | Twice a Day | Twice a Day |
| Kernel: | Gated | Gated | Ungated |
M2 has moved ublue-os/main to use one justfile for builds. This means that you can just now git clone and build images on the spot. This also makes it straightforward to build our images on any infrastructure (Gitlab, etc.). Bluefin is already set up this way, so go nuts!
Bluefin is an active predator and is constantly hungry. You can help keep Bluefin healthy by becoming a contributor! We are an open source project and accept contributions:
As a cloud native project we are always looking for contributors with skills in Podman, Docker, CI/CD, GitHub Actions, and good ole bash.
And lastly let’s take a look at how we’re doing. This year started off nice and boring but soon our community experienced some amazing growth. Let’s start off with our conversations on Discord, Discourse, GitHub, and Reddit. This is a measure of just how active our community is in helping each other out.
[
Lots of growth here, we’re proud to announce that we just crossed 16,000 folks on the Discord. Contributions have experienced the same level of growth.
[
And here are where people are submitting pull requests in GitHub. 123 individual people have contributed a pull request to Universal Blue in the last six months. As you can see we have a nice even spread of contributions across the board, this is a good thing!
[
Keep those great numbers in mind because we have a correction to make to one of our most important metrics. Timothee Ravier at Fedora was preparing his talk for Flock and noticed a problem with the countme metrics. Fedora and Universal Blue have been counting devices twice, doh! Here is the corrected chart.
[
The chart is the same, all the numbers are cut in half though. If we look at the number of machines checking in with Fedora every week:
It’s fine, I mean sure, it sucks to know your userbase is half of what you thought it was, but let’s look at what the team principal at Williams F1 has to say:
Data, for me, is the foundation of F1. There's no human judgment involved. You've got to get your foundation right in data.
-- James Vowles
So error corrected, and the big takeaway from this is to remember, the contribution metrics are the key to our success. The Atomic universe is half the size we thought it was, but at least we’re consistent with each other and understanding that measuring this stuff is the key to long term success, despite the occasional bummer. We’ve always been about the slow burn, and you probably know how much we thrive under the radar anyway.
We are of course, inevitable.
Let’s look at image pulls. Note that image pulls aren’t indicative of users, instead we use it as a gauge of how many successful upgrades we’ve had. Here are all the images with more than 1 million pulls:
[
And lastly, let’s take a look at the last 90 days of homebrew analytics
[
All of our images are represented well here considering how small we are. 😄
We’ll see everyone this summer to talk about Bluefin LTS — meanwhile enjoy the release!
Feel free to ask questions!
[
Hi ya’ll!
I thought it’d be a good time to post a quick “State of the Blue” as we wrap up 2024. We’ve had the excitement around bootc ramp up over the holiday and we’ve crossed over 11,186 members on the Discord. There’s always something to do in the land of the blue!
First up, Happy Birthday to Bazzite! Bazzite continues to find it’s place:

An Asus ROG Ally X running Bazzite has all but replaced the Steam Deck in my life.
Almost exactly a year ago the Bazzite rocket took off when it was featued on Hacker News for New Year’s Eve. The rest is explosive! Let’s look at Fedora’s countme stats:
[
As you can see, we’re all living in Bazzite’s world right now! And overall the Fedora Atomic community is growing!
Right now the project is mostly in maintenance mode, accepting PRs in akmods, config, etc. Most of the rest of the main components are complete, there hasn’t been much reason to do a ton of work here.
We’re remaining pretty firm on our scope focus, and continue to concentrate on removing technical debt and sustainability. From a contributor perspective, we’re getting more and more pull requests and new people, so please continue to file issues and send fixes if you have the skills!
There’s a ton of videos on Bazzite already so let’s talk about the others for a minute. Aurora split out into it’s own repo at the end of this year, allowing for it rev on it’s own by people who care and use it the most! This has led to RealVishy joining in as an aurora maintainer.
But before that m2 rewrote the build system so both of those are running really smoothly right now.
@tulilirockz has been ramping up this break, and has been consolidating and modularizing the universal blue components in the packages repo. This is a huge efficiency win since we can now centralize common components instead of copying them from image to image.
Right now the pain point with these two are the future of our Asus and Surface support, which is not in a good state right now. Additionally Broadcom wireless continues to be a plague on humanity. Help in these areas is appreciated!
We have had some interest in making CentOS-based builds since Stream10 was announced.
and @hanthor are working on a Bluefin LTS prototypeSpeaking of uCore, there’s not much to report. Builds keep happening as intended, and it’s mostly pretty boring over there, as intended.
We’ve also been able to collaborate with HeliumOS, which is also CentOS based - this has led to some knowledge sharing across the board.
bootc’s submission into the CNCF is really making an impact on us as development continues to march forward. Features that we have needed are landing or being scoped to land throughout this next quarter. In many ways we’re getting exactly what we want and we can continue to become more efficient.
There’s not much to say here other than we’ll be working more closely with them as we provide feedback. Antheas has also been submitting pull requests to bootc over the year, so if you want to get involved, this is the time to step up!
Additionally we have been playing with bootc-image-builder: GitHub - osbuild/bootc-image-builder: A container for deploying bootable container images. - so far the results have been very promising. It’s missing a few things we need, like flatpak support, but there are open pull requests in flatpak itself that are being looked at.
This is exciting for us because the ISOs can go on a diet, but more importantly when we make a GitHub action out of this it’ll make it much easier for people making custom images to have ISOs with waaaaaaay less work.
Right now things are humming along. Most of the things we need are a matter of waiting for features to land upstream, such as the ISO builder, zstd:chunked support for more efficient update size, and consuming Fedora 42 and 43 as they come out next year.
A good number of the team will be attending SCaLE this year in March in Pasadena, California: Home | SCALE 22x - hope to see you there, I will be bringing dinosaur stickers!
Members of the team will also be at KubeCon + CloudNativeCon in London, UK. I haven’t been to London in years, I’m really looking forward to this one!
And a quick easter egg to round it out, if you’ve enabled bluefin-cli, bazzite-cli, or aurora-cli you’ll have the atuin command enabled. Run atuin wrapped to get your CLI stats for the year! Flex with your friends!
With that, I hope everyone had a safe and happy holidays, and a happy new year!
[