The Fedora Silverblue getting started guide misses 1 very important aspect of rpm-ostree:
If you run: rpm-ostree install pluma rpm-ostree install nemo
And reboot, you will only have Nemo. Not Pluma.
Similary I would like to understand if I can run these commands one by one, reboot and expect all of them to be persistent?
Or should I also combine this into 1 very long line?
Additionally, the documentation doesnât mention this, but should it be rpm-ostree override replace firefox? It seems rpm-ostree override remove is only meant for layered packages, not meant for packages that are part of the base image (all I need is to disable firefox, so I can use a different version) ?
This is not accurate. When you perform an operation, a pending deployment is created. Subsequent operations build upon that deployment
By default, every rpm-ostree operation is âofflineâ - it has no effect on your running system, and will only take effect when you reboot. This âpendingâ state is called the âpending deploymentâ. Operations can be chained; for example, if you invoke rpm-ostree upgrade after installing a package, your new root will upgraded with the package also installed.
HUH, ok that is good news ofcourse but what about this:
Specifically: If you run rpm-ostree install several times consecutively without rebooting or applying changes live, only the most recent command will take effect. If you install wget and strace consecutively and reboot afterwards, only strace will be present after reboot.
which is a copy-paste from the documentation here.
additionally: there are more topics here about people asking how to run multiple rpm-ostree commands at onceâŚ
To confirm, I just tried rpm-ostree install btop followed by rpm-ostree install strace. As expected, both appeared in the âAdded:â section for the latter command, and both appear in the pending deployment in rpm-ostree status.
I havenât read that whole page to see if Iâm missing some context, but it seems to simply be wrong. Itâs possible it was true for the ancient version of rpm-ostree in RHEL Atomic Host 7.
All rpm-ostree override subcommands apply to the base image. override remove simply removes a base package, whereas override replace lets you replace it with another.
rpm-ostree uninstall is the only way to remove a layered package.