I borked my Linux install so I was interested in trying out Fedora Silverblue as a more immutable operating system that I’m less likely to mess up. I’m starting this thread to collect my thoughts as I try and figure out how to make Silverblue usable on the Framework Laptop and to see if anyone else in the wilderness is doing this.
- Follow most of the notes on the Fedora wiki in this forum. Remember that out-of-the-box, your installation will have issues including no WiFi support. Plug in ethernet, run a full system upgrade with
rpm-ostree upgrade and once you’re on the latest Silverblue, WiFi will work.
So far these are issues I’m experiencing:
- Cannot add fingerprints to login to GNOME through the fingerprint reader.
- The workaround to save battery life by enabling deep sleep doesn’t work.
- Installing Flatpak apps that use the camera like ‘Cheese’ do not work.
Update: The fingerprint reader now works a little more by doing an upgrade to Fedora 35 Silverblue. Libfprintd is bumped in that release to a version compatible with Framework.
rpm-ostree rebase fedora:fedora/35/x86_64/silverblue
Any attempt to enroll fingerprints closes abruptly with
Enroll result: enroll-disconnected, but at least the reader is recognized now.
Getting Deep Sleep Working
- The instructions in this post will not work because adding kernel arguments on Fedora Silverblue involves using rpm-ostree. See this wiki.
- To enable deep sleep, run the following command in terminal and then reboot.
sudo rpm-ostree kargs --append='mem_sleep_default=deep'
Then confirm that deep sleep is now enabled by running
Timothée Ravier for helping me with this on the Fedora Forum.
I’m an avid wireguard user, but Mullvad app does not install correctly on Silverblue. The solution is to download a dump of your VPN configuration files from your Wireguard VPN provider, and then mass import them into
for i in find mullvad*.conf; do echo nmcli connection import type wireguard file $i; done
Then you can connect to wireguard through
nmcli connection up $YOUR_CONNECTION_NAME_HERE
GNOME is not very WireGuard friendly now. Tracking an open ticket for applet Wireguard support and for support in Network Control Center.
Further discussion on this Silverblue forums thread.
There are several ways you can go about getting codecs working. The first one is to layer non-free codecs on-top of rpm-ostree. The advantage here is that your System Firefox install will work flawlessly. The issue here is that upgrading between Fedora versions can be difficult and rpm-ostree layering is discouraged.
I’ve settled on using the FlatHub Firefox version, which bundles codecs with the browser. I can then use a video player like VLC to play video locally. This satisfies all the use-cases for non-free codecs for me.
flatpak install firefox
Specify the version from FlatHub.
After installation completes, if you have fractional scaling enabled, you’ll notice that it is not working well on Firefox FlatHub version. I solved this by installing FlatSeal and enabling Wayland for Firefox.
Finally, now that you have the FlatHub version installed, you could remove confusion by deleting the system Fedora Firefox by running:
rpm-ostree override remove firefox
Thus you have a Firefox build that supports fractional scaling and has support for non-free codecs.
The beta version of Silverblue 36 is out. May be this will fix some issues.
I’m rebasing to Fedora Silverblue 36 now to try it out. I’ll keep this thread updated.
Fedora 36 is out today! For those of us with rpmfusion enabled, I was able to rebase onto 36 with this command:
rpm-ostree rebase fedora:fedora/36/x86_64/silverblue --uninstall rpmfusion-nonfree-release-35-1.noarch --uninstall rpmfusion-free-release-35-1.noarch --install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-36.noarch.rpm --install https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-36.noarch.rpm
Fingerprint reader login for me is now working out-of-the-box!
This is one of the final things for me to sort out before Silverblue can be my daily driver. I resolutely recommend it now.
There’s a better way to handle rpmfusion when trying to rebase to Fedora 36. Replace them with the non-versioned repo. This way, you won’t have to go through this when 37 is released:
sudo rpm-ostree update \
--uninstall rpmfusion-nonfree-release-35-1.noarch \
--uninstall rpmfusion-free-release-35-1.noarch \
--install rpmfusion-free-release \
After that, rebase to 36 and you should be good to go.
That’s amazing, thank you!
I am going to try this, I have been an ubuntu server user for a long time, but it seems the internet concurs that the new hotness is fedora, and frankly an immutable filesystem does seem like a thing worth supporting. I wasn’t excited about dnf, but seeing that toolbox will let me create an ubuntu server commandline, I feel confident this can work well for me.
Proper HiDPI Support for Certain Electron Apps
- I have desktop scaling set at 150%, which is my personal sweet spot.
- Electron apps do not play nicely with this scaling, which is very annoying.
The one work around I have found is to edit the .desktop file to force the Electron Apps to run with Wayland instead of X11. I’ve only had success with Signal Desktop so far. Todoist, Spotify and VS Code all do not work.
To make this work,
sudo vi /var/lib/flatpak/app/org.signal.Signal/current/active/export/share/applications/org.signal.Signal.desktop
and then locate the Exec line and append this at the end:
-enable-features=UseOzonePlatform -ozone-platform=wayland --enable-features=WaylandWindowDecorations
This makes Signal app look nice and beautiful.
If anyone has any ideas to get other Electron apps playing nicely with fractional scaling, I’m all ears!
Thanks for this @treehouse_clown
Just got set up on Fedora 38 and getting Signal looking better with scaling is one of the first tasks I’ve been attempting.
Do you know if there is a way to set the window decoration to dark mode?
@treehouse_clown thanks for this. I’d arrived at the same conclusion as you, though I’ve run into a slight problem. There is a 1-pixel sized space between the titlebar and the Signal app itself. There is some tearing, esp when changing workspaces in GNOME. Also, the app always launches in the tray minimized with Windows Decorations enabled.
I did have success with vscode though, I added this to Exec in a local .desktop file:
Exec=/usr/share/code/code --enable-features=UseOzonePlatform,WaylandWindowDecorations --ozone-platform=wayland --unity-launch %F