rpm-ostree
Module for Startingpoint¶
The rpm-ostree
module offers pseudo-declarative package and repository management using rpm-ostree
.
The module first downloads the repository files from repositories declared under repos:
into /etc/yum.repos.d/
. The magic string %OS_VERSION%
is substituted with the current VERSION_ID (major Fedora version), which can be used, for example, for pulling correct versions of repositories from Fedora's Copr.
Then the module installs the packages declared under install:
using rpm-ostree install
, it removes the packages declared under remove:
using rpm-ostree override remove
. If there are packages declared under both install:
and remove:
a hybrid command rpm-ostree remove <packages> --install <packages>
is used, which should allow you to switch required packages for other ones.
Additionally, the rpm-ostree
module supports a temporary (waiting for rpm-ostree
issue #233) fix for packages that install into /opt/
. Installation for packages that install into folder names declared under optfix:
are fixed using some symlinks.
Example Configuration¶
type: rpm-ostree
repos:
- https://copr.fedorainfracloud.org/coprs/atim/starship/repo/fedora-%OS_VERSION%/atim-starship-fedora-%OS_VERSION%.repo # when including COPR repos, use the %OS_VERSION% magic string
- https://pkgs.tailscale.com/stable/fedora/tailscale.repo
install:
- python3-pip
- libadwaita
remove:
- firefox
- firefox-langpacks
Known issues¶
When removing certain packages, some problem probably in upstream rpm-ostree
causes a depsolve
issue similar to below. Removed packages are still present in the underlying ostree repository, what remove
does is "hide" them from the system, it doesn't reclaim disk space.
Resolving dependencies...done
error: Could not depsolve transaction; 1 problem detected:
Problem: conflicting requests