I’m guessing @loulafg probably knows some of this already (for the extensions pack case), but here’s some detailed background for everyone and some suggestions on what @loulafg can do further down:
Background info
VirtualBox is in an RPM and can be installed with rpm-ostree
. However, VirtualBox’s extension pack (which is what @loulafg is asking about) is not in an RPM, so you cannot overlay it on Silverblue.
The filename is Oracle_VM_VirtualBox_Extension_Pack-6.1.12.vbox-extpack
, found from Downloads – Oracle VM VirtualBox
The reason why Oracle doesn’t include it in VirtualBox is due to licensing.
Explanation of the (intentional) license issues
VirtualBox is actually Open Core. VirtualBox itself is Open Source, but the extension pack adds “USB 2.0 and USB 3.0 devices, VirtualBox RDP, disk encryption, NVMe and PXE boot for Intel cards”. Yeah, a lot of what’s in the extension pack is actually useful and provided by default in other VMs (such as qemu and anything powered by libvirt).
The licensing? Oracle intentionally muddles with it. They release the extensions as personal use only and go after people (with lawyers) who use it for anything other than personal use. (So, do not use it unless it’s for 100% personal use only or if you pay Oracle for it under their terms.)
Back to the problem
As Silverblue’s OS partition is basically read-only, you cannot add software on top of the base except as RPMs using rpm-overlay. (Or you run it in containers with podman, toolbox, and Flatpak. It’s also possible to compile software an install it locally or in /usr/local/...
)
But the VirtualBox extension pack isn’t any of that.
The solution
VirtualBox
As far as I’m aware, there isn’t a solution to use VirtualBox extensions on Silverblue. If you really need the extensions, then I think you will have to use normal, non-Silverblue Fedora for now.
If the features in the VirtualBox extensions pack are just optional for your use, you can use VirtualBox still on Fedora Silverblue — but just with USB1 support and without the other features it provides. It’s not optimal, but it would still work for some uses.
Vagrant with libvirt
If you do need to use vagrant, then rpm-ostree install vagrant-libvirt
(and reboot).
Interactive alternatives
If you’re using virtual machines directly, I can highly recommend both GNOME Boxes and virt-manager. Both work fine with other OSes (for example: all Linux distros, Windows, Haiku, FreeDOS, and *cough* even macOS with a bit of fiddling), and don’t require adding any proprietary modules to work.
GNOME Boxes
GNOME Boxes is a nicer, simpler UI. You can install it with rpm-ostree install gnome-boxes
(and reboot) or use the Flatpak from Flathub. (If you want to connect to the VM from your host, you should use the overlay. The flatpak version has a different networking mode that prevents this.)
virt-manager
virt-manager is a more advanced UI. It’s not as simple, but provides many more options. Install it as an overlay with rpm-ostree install virt-manager
(and reboot). If you have GNOME Boxes and virt-manager