mkosi: Use globs instead of prepare script to install extra packages

This allows us to install everything in the same dnf command instead
of having to use a prepare script to run dnf from within the image.

This is a hack until mkosi supports release specific dropin files.
This commit is contained in:
Daan De Meyer 2023-02-10 15:33:31 +01:00
parent a4d7819d15
commit 39a6a5169b
2 changed files with 11 additions and 16 deletions

View file

@ -3,6 +3,10 @@
# This is a settings file for OS image generation using mkosi (https://github.com/systemd/mkosi).
# Symlink this file to mkosi.default in the project root directory and invoke "mkosi" to build an OS image.
# We use python3*dist() throughout this file because we need to make sure the python3.9dis() packages are
# installed on CentOS Stream 8. mkosi doesn't support release specific configuration yet so we use the globs
# to get the necessary packages on both CentOS Stream 8 and CentOS Stream 9.
[Distribution]
Distribution=centos
Repositories=epel
@ -37,7 +41,10 @@ Packages=
polkit
popt
procps-ng
python3dist(pefile)
python3*dist(pefile)
python3*dist(pluggy) # python39-pluggy is a pytest dependency that's not installed for some reason.
python3*dist(pytest)
python39
quota
tpm2-tss
vim-common
@ -91,7 +98,6 @@ BuildPackages=
pkgconfig(tss2-rc)
pkgconfig(valgrind)
pkgconfig(xkbcommon)
python3dist(docutils)
python3dist(jinja2)
python3dist(lxml)
python3dist(pytest)
python3*dist(docutils)
python3*dist(jinja2)
python3*dist(lxml)

View file

@ -3,17 +3,6 @@
set -e
if [ "$(grep '^ID=' /etc/os-release)" = "ID=\"centos\"" ] && [ "$(grep '^VERSION=' /etc/os-release)" = "VERSION=\"8\"" ]; then
# python39-pluggy is a pytest dependency that's not installed for some reason.
dnf \
-y \
--enablerepo=powertools \
--setopt=powertools.module_hotfixes=true \
install \
python39 \
python39-pefile \
python39-jinja2 \
python39-pytest \
python39-pluggy
alternatives --install /usr/bin/python3 python3 /usr/bin/python3.9 1
alternatives --set python3 /usr/bin/python3.9
fi