Bluefin/Bazzite for Framework laptops

Bluefin/Bazzite are now community supported options for Framework laptops

If you’re on a Framework 13 or 16 you might have noticed this Framework icon in the top left of your screen. This isn’t just for show, it means that we’ve detected that you’re on a Framework laptop and that it’s ready to rock!

image

Fedora is an officially supported option for the Framework, and since Universal Blue images are an atomic extension of that, it means that we can start with a solid base. About a year ago I purchased a Framework 13:

And while the FW13 supported Linux out of the box, there was still some adjustments that needed to be made to make it work perfectly. You know, the “usual Linux stuff”. So ten months ago we got to work prototyping what it would take to have a user experience with as many things automated out of the box as possible.

This led to regular meetings with Matt Hartley, the “Linux guru” at Framework. We’ve used the term desktop devops to describe our images before, and thus our mission was clear: We were going to take Matt’s expertise of Fedora and Framework, and capture that knowledge and ship it as an image.

And today, we’re one step closer! Bluefin and Bazzite now have all of that goodness in the image. - These are built fresh from Fedora. You get all the benefits of Fedora’s partnership with Framework, and some additional tweaks via the Framework team and our direct usage of these awesome laptops:

Features

  • Patched Switcheroo (FW16 only)
    • Applications will automatically use the dGPU. This is defined by their .desktop file, so applications like Steam & Lutris will do this automatically. No more need to add DRI_PRIME.
  • Power Profile Switcher. By default power save is used when on battery and balanced when connected to power.
  • Fractional scaling enabled out of the box
  • Fingerprint service installed and enabled out of the box
  • VRR supported on the Framework 16 (Bazzite only)
  • Steam Deck MicroSD cards are automounted and loaded into Steam when used with the Framework MicroSD module
    • With the Framework MicroSD card module, MicroSD cards can be shared with Steam Deck, Ally, Legion GO, and other handheld gaming hardware running Steam OS or Bazzite.
  • ujust setup-luks-tpm-unlock to enable TPM unlock for LUKS
    • Users can now get the full benefit of LUKS encryption while only needing to unlock with a fingerprint.
  • ujust check-idle-power-draw to check idle power draw with powerstat
  • Automatic karg application for Frameworks with Intel hardware to support keyboard shortcuts
  • Framework logo is automatically applied to the Logo menu shell extension in GNOME when running on Framework hardware
    • Immediately obvious to the end user they’re getting specialized support for their hardware.

Future Work

  • XWayland Fractional Scaling in GNOME
    • Tested draft MR, current state is buggy but we’re hoping it matures quickly and we’ll try to ship it sooner than GNOME merges it.

Support Expectations

We have a framework tag in github if you want to report issues. Please remember that these are community supported, so we do the best we can, and we’re looking pretty good right now and it’ll only get better. Aurora is “Bluefin with KDE” and should work fine as well, it’s just not as well documented/tested, so if you want to dive in and help that’d be appreciated!

  • We’ll do our best, but are always looking for help
  • We may mark things as out of scope for us based on what we provide. Some things are better handled in Fedora directly
  • We will pull in things as appropriate from other sources. In the past we did things like pull in AMD’s patches to the gnome ppd, and may include things based on feedback from the Framework team, and engineers at AMD and Intel.

And also a reminder that our images are defined in bash, if you find an issue and know how to linux, it’s much easier when we do it together. Enjoy!

Final Thoughts

This past year I’ve taken my FW13 on the road, two KubeCons, OSS Summit, Container Days in Hamburg, and RH Summit. This is the best Linux setup I’ve ever had, an OS installed for the life of the hardware, with every linux package at your fingertips. Zero maintenance. Let us know how you like it!

Also thanks to Matt Hartley for starting this journey with us, and a big shout out to Mario Limonciello @ AMD, whose dedication in the Framework forum has been an inspiration to get this out the door!

Wallpapers

We haven’t put these on the image yet but we’ll get them on there eventually, in the meantime here are the dark/light ones:


20 Likes

Fantastic!! So now i only have to wait until Framework ships to my lovely little country :upside_down_face:

6 Likes

Looks like a perfect match, Framework will be my next laptop, since you’ve had one for a year what do you think of it overall?

2 Likes

It’s the best Linux setup I’ve ever used!

I am on it right now (FW 16) and I have made Bluefin my daily desktop for work and Bazzite my gaming rig (my other FW16). It’s sooooooooo good.

2 Likes

Little something I am testing. Background logo extension.

Bottom right. Might be fun for the Framework images.

For Framework, is this something you would be interested by chance?

  • Yes, as long as I can disable it.
  • Yes, I want this.
  • No thank you.
0 voters
1 Like

Annnnnnd landing page is updated and live.

9 Likes

This is awesome! I love it

2 Likes

I’ve got “Framework wallpaper pack” on my sysext idea list since that’s static content, would love to give this a shot in the fall.

3 Likes

Congratulations. I just installed it last week and the integration seems amazing. I have a 11th gen one, which does not show as “supported” at the article linked here, but everything seems in place. I still did not have time to test things like mic, headphone jack and battery life.

But, I got confused by tpm unlock and luks (first time I enable it).
I was expecting to be asked for my fingerprint at boot time (before login screen).
But, what I see is that it just auto decrypt and boots straight to gdm .
I understand that that’s what you mean by fingerprint, right ?
Which means that encryption now is only a “block” if someone removes the disk from the laptop .

Just wanted to confirm that understood it right.

1 Like

I haven’t used the fingerprint reader yet, but I did a quick web search and it seems that the main use case for the fingerprint reader is to interact with PAM. That is, you can log in via the fingerprint reader when logging in at gdm or when you use sudo on the terminal.

ujust setup-luks-tpm-unlock is for setting up automatic system disk decryption (protected by the TPM and measured boot) which happens long before PAM has a chance to run.

1 Like

I understand. Just as I thought then .
Thank you .

1 Like

As final confirmation: all other things are working quite well, thanks for the great work :slight_smile: .

Only problem: when I had silverblue (then rebased to bluefin) in the past, I did enable hibernation on my machine.

Now that I’m back in a “default” install, I forgot how awful is the suspend on the framework :frowning: . I left it on suspend for 1 hour and it drained 5% of the battery .

As it seems the only option for now (unless I decide to go for the hassle of configuring hibernate again) is to shutdown the laptop all the time, I ask you: is there a “save-session” in gnome ? I tried the gsettings key on SessionManager for auto-save-session, but it seems it’s not working .

1 Like

I just installed Bazzite Gnome 40 on my FW13 AMD. Curious as to why I am not seeing the Framework logo?

EDIT: NM, I believe that customization is only for the dockerized Bazzite installs?

I installed on the FW13 hardware using the Framework/AMD ISO from Bazzite.

Hi @mono , what is the output of rpm-ostree status on your system?

Hi @stego

State: idle
Deployments:
● ostree-image-signed:docker://ghcr.io/ublue-os/bazzite-gnome:stable
                   Digest: sha256:e7d73879b80cef2a6bd07e549b7ed29514dcd80ad2275a7c93cd364ccc8ea209
                  Version: 40.20240528.0 (2024-05-28T16:59:41Z)
          LayeredPackages: snapd
            LocalPackages: lact-libadwaita-0.5.4-0.x86_64

  ostree-image-signed:docker://ghcr.io/ublue-os/bazzite-gnome:stable
                   Digest: sha256:e7d73879b80cef2a6bd07e549b7ed29514dcd80ad2275a7c93cd364ccc8ea209
                  Version: 40.20240528.0 (2024-05-28T16:59:41Z)
            LocalPackages: lact-libadwaita-0.5.4-0.x86_64

If you go into the extensions manager and click on the settings for it you can also manually set the icon.

Where can I find the blue and purple framework wallpaper in the initial post?

Oh, an oversight on our part, I added them to the end of the original post for now!

1 Like

Thanks, I did notice that. Was just curious why it didn’t detect the framework automagically, but not a big deal.