Silverblue
Fedora Silverblue's immutable design.
ostree
Basic Commands
Update to latest
rpm-ostree upgrade
Get system status. Installed rpm:s are defined as LayeredPackages
rpm-ostree status
Find available updates
rpm-ostree upgrade --check
Find suitable repository.
ostree remote refs fedora | grep silverblue | grep x86_64
Set repository. Switch os. Upgrade/downgrade
rpm-ostree rebase fedora:fedora/rawhide/x86_64/silverblue rpm-ostree rebase fedora:fedora/41/x86_64/silverblue
Replace
rpm-ostree override remove nfs-utils-coreos --install nfs-utils
list installed rpm-ostree installed packages
rpm-ostree status --json | jq -r '.deployments[0].packages|flatten[]' | xargs
add repo
sudo curl https://copr.fedorainfracloud.org/coprs/ojab/openvpn3/repo/fedora-40/ojab-openvpn3-fedora-40.repo -o /etc/yum.repos.d/openvpn3.repo dnf copr enable dsommers/openvpn3-devsnapshots
Remotes
Add a remote
ostree remote add <REMOTE> <URL>
Remove a remote
ostree remote delete <REMOTE>
List configured remotes
ostree remote list
List remote contents
ostree remote refs <REMOTE>
Layered Packages
Uninstall a layered package
rpm-ostree uninstall <PACKAGE>
Install a layered package
rpm-ostree install <PACKAGE>
Debugging and Rollback
Remove the previous deployment
rpm-ostree cleanup --rollback
Download older commits
ostree pull --commit-metadata-only --depth=<n> <REMOTE> <BRANCH>
Make the previous deployment the default boot entry
rpm-ostree rollback
List downloaded commits
ostree log <REMOTE>:<BRANCH>
Replace rpm
rpm-ostree override replace <path to package>
pin a deployment so that you do not lose it
ostree admin pin 0
Unpin
ostree admin pin --unpin 0