Installing Fedora Silverblue 30

This post is intended to be more of a How-To with tips and things I’ve found since playing with Silverblue. I decided to post this as a separate thread to focus on the installation and usage and less on general discussion. I will be updating it as I add more information to it and will post when I’ve made edits.

DISCLAIMER! This OS is still being developed, and while it works well, there may be bugs. The information I’m posting here may also be out of date by the time you read this, and also may not work on your system like it does on mine. This post is for information and for those who are willing to be adventurous and possibly help out with providing info and future tips.

For a video run-through of Silverblue which includes a brief explanation of how it works, as well as an install and usage demo, see my video here : https://youtu.be/BkrGij4LNC0

Install methods

NOTE on hard drives

In all cases below, this distro on an SSD drive is significantly faster to process major OS system upgrades. This is due to how the image layers work. When a new layer is applied, there are MANY hard links that are added wherever a file has been updated. It’s quite fast on an SSD but slow on traditional mechanical hard drives.

— On a Virtual Machine

The install in a VM seems to give different performance results from different people. I’m not sure if this has to do with the version of VirtualBox used, or if VMWare perhaps yields better performance… I personally found very slow performance during the initial setups and upgrades using VirtualBox 6 on a new and powerful computer. This was in comparison to my 10-year old PC which ran much faster on hardware.

— Installer black screen or blinking cursor

If you boot your live USB and see the text scroll by, followed by your system landing at black screen or a blinking cursor, and after some time you never reach the Anaconda installer GUI, you may have a finicky ACPI system like I do. A workaround for this is to boot your live USB, and when you see the GRUB options to install, or check media and install, select the top option and press ‘e’ on your keyboard. You will then see the grub options. Find the line that has the word ‘quiet’ in it, and add the following after it:
acpi_osi=! aspi_osi='Windows 2009'
And then press F10 to continue booting. If your bootup is successful, carry on and read the paragraph below on changing kernel arguments.

— As single OS

There are no issues installing this on a formatted empty drive. In both BIOS and UEFI system, the installer sets up everything it needs to boot and run without issues.

— Dual/Multibooting on a BIOS system.

I installed it on hardware with an existing Arch Linux installation by leaving free space on the disk. During the installation, I allowed the Fedora installer (Anaconda) to automatically create the needed partitions and write the bootloader. After rebooting, the Silverblue GRUB menu appeared and gave me the option to boot into either Silverblue or Arch Linux. Success.

— Dual/Multibooting on a UEFI system.

This is a known issue with Silverblue, but I found a workaround.
Silverblue requires 3 partitions for UEFI

  1. UEFI (esp) partition (fat32)
  2. /boot partition (ext4)
  3. LMV partition

Within the LVM group, you will have a root and /home partition. SB sets this up for you.

The issue is that the installer fails to use a pre-existing UEFI partition. And you cannot have more than one partition with the esp flag set. This bug is known and is being fixed.

The workaround is to create a new 1GB fat32 partition, and then a 1GB ext4 partition. Set up fedora but instead of choosing “Automatic” at the partitioning section, choose “Custom”. Here you will set your /boot to be the 1GB ext4 partition you created, and set /boot/efi to be the fat32 partition. The rest can be automatically configured by the installer for the LVM group.

After doing this, you can set your system to boot into the Fedora UEFI by either pressing your “boot options” key for your system or setting it as default in your motherboard settings. You will then be presented with Silverblue’s GRUB menu which should include your other distros. If it does not show your other distros, it should do so after the first system updates are installed.

— Changing kernel arguments

At this point if you’ve booted up and would like to make changes to you kernel arguments, you can do this through the terminal. If you ended up having to use the acpi_osi tricks from earlier on, you will need to do this to be able to boot normally every time.

Open a terminal and type rpm-ostree kargs --editor

You will now see a vi editor with text that looks like this:

# Please enter the kernel arguments. Each kernel argument# should be in the form of key=value.
# Lines starting with '#' will be ignored. Each key=value pair should be
# separated by spaces, and multiple value associated with one key is allowed.
# Also, please note that any changes to the ostree argument will not be
# effective as they are usually regenerated when bootconfig changes.
resume=UUID=54a86682-a3aa-4d1e-b5f7-3b8dce107dd2 rd.lvm.lv=Fedora/sysroot rd.lvm.lv=Fedora/swap rhgb quiet root=/dev/mapper/Fedora-sysroot acpi_osi=! acpi_osi='Windows 2009' snd_hda_intel.power_save=0

The bottom line is your kernel arguments. As you can see in the example above (mine), I needed to add the acpi_osi arguments in order to boot properly. I also added the snd_hda_intel argument to stop my sound card from going to sleep because it would make a popping noise whenever my system played a sound as it was being turned back on.

To make your changes, use your keyboard arrows to scroll to the end of the line, and press i on your keyboard to insert text. Type your text and press ESC to stop inserting.
Type :wr! [enter] to save changes
Then :q [enter] to quit.

Conclusion

This should get you up and running. My video has more info on upgrading etc. I wlil be editing this and adding more in the future and will try to answer questions here as best I can. Good luck to you!

-dorian

2 Likes

Hey sorry I didn’t get the notification right away. You can install gparted with

rpm-ostree install gparted

Thanks, Dorian, I figured it out myself after paying more attention to your video. So far I’m liking it! I look forward to more vids from you on Silverblue!

1 Like

Great video and post Dorian, glad to see it getting some hits. Your slides and diagrams explained ostree and atomic OS concepts better than anything else I’ve come across.

I can’t find that much talk about it online and registered here to ask if you’ve kept Silverblue running since making the video in July?

I’ve been testing smaller, compressed live distros of the Slackware and Puppy ilk where the use of bundles or modules kind of achieves the same. Appealing since the base image can be kept very very small and any changes and modules can be loaded on the fly (without rebooting). Silverblue’s 2.1gb base image is 8-10x larger, I don’t know how lean it can be trimmed.

https://fedoramagazine.org/what-is-silverblue/ claims
From our point of view the future of the desktop involves the immutable OS. It’s safest for the user, and Android, ChromeOS, and the last macOS Catalina all use this method under the hood. - hard to argue against and while all the distro enthusiast corners are having much fun re-spinning and theming and re-mastering to their hearts content most of it seems like a lot of effort involved that’s…perhaps kind of a waste of time as it could be done so much simpler.

Envision an atomic OS base for your desktop where you plug-in whatever DE or WM and programs you need for a particular task. Same for your /home user data. All of them can be tossed or re-used, up- or downgraded at any time. While not in use they are only taking up disk space, no system resources nor dependency or update hooks to the base.

Or a ‘distro app store’ where you pick and match whatever you want and download a config file that takes care of setting all that up during first boot.

I think that’s the future of the ‘people’s linux desktop’, with tech derived from the commercial vendors dev work (to drive their customers cloud and containers) and yet scalable down to personal user plug-n-almost-play.

Newcomer vendors like endless and system76 may streamline it even more for their customers and contribute as well for everyone’s benefit but they’ll not be selling the OS alone, its just part of their ecosystem.

It’ll be the Uber-ization of the Mom and Pop PC store where getting your desktop PC setup and good to go will be as trivial as buying and fixing your phone today. Maybe :).

2 Likes

Hi there! Thank you, and yes I am still using it and still enjoy it very much! It runs really well and is solid as a rock. I am using Arch as well, but that’s mostly for tinkering around.

Currently, Silverblue runs Gnome, but you CAN install a few other desktops as well. Your vision of an atomic base system might just be possible eventually, where you would be able to add on whichever DE you like. That is sort of how it works now if you were to install Cinnamon for example. You still get the base OS, plus the Cinnamon package as an individual package layer on top of it. The only thing is that the base OS already includes Gnome. If it didn’t, then it might make the base OS significantly smaller.

Running all my installed applications as Flatpaks has also been very very good. Much better than I thought it would be.

I look forward to experiencing the evolution of this kind of OS setup, and I’m much looking forward to the anticipation of having the updates take place in situ without requiring a reboot. It’s already possible now, but still buggy and experimental.

I hope you gave it a try, it’s definitely nice. Thanks for the comment!

1 Like

-thanks for the quick reply Dorian and interesting to hear about your exp so far. With a 2.1gb base iso, how much space does it need? Can it be stripped down at all or are there any minimal isos around?

https://nixos.org/nixos/about.html is in the same category though I don’t really get how that thing works.

I’ve been obsessing on these tiny squashed ones, sub 500mb, that can boot to ram if needed and atomize updates and added installations into modules, sort of similar to the Silverblue podman toolbox, but not in a separate runtime. Looking fw to try Flatpaks on them.

Future is atomic in any case, shape or form, and it will relieve the devs of many tedious tasks and loads of bandwith. Maybe Google’s Stadia will kick start an era of thin clients, enabled by ultra compressed high bandwidth cloud distribution. TBC. Sorry to hijack your info thread, just super excited about these OSTree distros!

It doesn’t take much more than other distros installed. Updates only download changes to the image, and only the last working image is saved, anything older is merged. But there is the option to pin deployments to be able to keep them forever. I did that with the initial install so that I can always rollback to the beginning if I wanted to.

NixOS is different, and confusing. But it still uses a package manager and packages are still individual entities (also multiple versions can exist), whereas Silverblue has the entire OS image as one and treats updates like a Git repo update instead of redownloading individual packages.

Thanks for clarifying NixOS. I pulled down their OVA, there’s a 3.4gb instance inside, with 3.3 of those inside /nix/store, I guess many of those packages could be trimmed away but need to dig more into it and ask at their IRC/matrix channel first. Their minimal iso is 520mb.

Fedora CoreOS may be what I’m looking for as a slim base (vs. 2gb Silverblue gnome), also more to learn there.

Coming from the Slackware compressed packaging regime I’m obsessing about the small footprint and boot to ram options. Idea being to use the same distro base on any hardware from servers and 2gb RAM netbooks and tablets or smartphones to larger desktops while all other daily usage apps are kept in containers or toolboxes or modules or whatever it’s called by the diff. distros.

Some other bits popped up while duckduckgoing further ahead:
LINUX Unplugged 310 10 minutes Silverblue explainer, Drew couldn’t get a audio toolbox to talk with the host sound system but still deems it a sys admin’s dream come through.
They cover CoreOS in episode 312 and describes immutable OS concepts in further futuristic details.

Kinvolk in Berlin forked Container Linux to Flatcar Linux (after Red Hat brought it in as CoreOS I guess). Apparently only with docker and rkt as container runtimes out of the box.

Container commandos - Hilarious superheroed colorbook intro to podman, cri-o and buildah

1 Like