Split excluded and arch packages into "package text file"
Aiming to have the main container build not use rpm-ostree. Signed-off-by: Colin Walters <walters@verbum.org>
This commit is contained in:
1 parent
3addf4c691
commit
176ede2332
11 files changed
+56
-78
No files matched your search
+28
-5
@@ -2,18 +2,41 @@
|
||||
|
||||
# This is a local reference by default because we haven't shipped this image yet.
|
||||
FROM localhost/fedora-bootc:base as rootfs
|
||||
# Drop this into /usr/share/doc, so that other things can parse it
|
||||
COPY packages-recommended.txt /usr/share/doc/fedora-bootc/packages-recommended.txt
|
||||
# Drop our package sets into /usr/share/doc, so that other things can parse it
|
||||
COPY packages-*.txt /usr/share/doc/fedora-bootc/
|
||||
# Overlay our defaults
|
||||
COPY tier-1/usr/ /usr/
|
||||
RUN <<EORUN
|
||||
set -xeuo pipefail
|
||||
grep -E -v '^#' /usr/share/doc/fedora-bootc/packages-recommended.txt | xargs dnf -y install
|
||||
set -euo pipefail
|
||||
dnf_args=()
|
||||
echo "Loading packages-excluded"
|
||||
for x in $(grep -E -v '^#' /usr/share/doc/fedora-bootc/packages-excluded.txt); do
|
||||
dnf_args+=(--exclude ${x})
|
||||
done
|
||||
echo "Loading packages-recommended"
|
||||
base_pkgs=$(grep -E -v '^#' /usr/share/doc/fedora-bootc/packages-recommended.txt)
|
||||
pkgfile_for_arch=/usr/share/doc/fedora-bootc/packages-$(arch).txt
|
||||
arch_pkgs=
|
||||
if test -f ${pkgfile_for_arch}; then
|
||||
echo "Loading ${pkgfile_for_arch}"
|
||||
arch_pkgs=$(grep -E -v '^#' ${pkgfile_for_arch})
|
||||
fi
|
||||
|
||||
dnf -y ${dnf_args[@]} install $base_pkgs $arch_pkgs
|
||||
|
||||
# Ensure we regenerate the initramfs with new content
|
||||
# https://docs.fedoraproject.org/en-US/bootc/initramfs/
|
||||
kver=$(cd /usr/lib/modules && echo *); dracut -vf /usr/lib/modules/$kver/initramfs.img $kver
|
||||
|
||||
# Undo RPM scripts enabling units; we want the presets to be canonical for the base image.
|
||||
# https://github.com/projectatomic/rpm-ostree/issues/1803
|
||||
rm -rf /etc/systemd/system/*
|
||||
systemctl preset-all
|
||||
rm -rf /etc/systemd/user/*
|
||||
systemctl --user --global preset-all
|
||||
|
||||
dnf clean all
|
||||
rm -vf /var/log/dnf*
|
||||
rm -vrf /var/log/*
|
||||
bootc container lint
|
||||
EORUN
|
||||
|
||||
|
||||
Reference in new issue
Block a user