diff --git a/dockerfile/anaconda-iso-creator/Dockerfile b/dockerfile/anaconda-iso-creator/Dockerfile index 98e32b9b7a0..27bc24ad800 100644 --- a/dockerfile/anaconda-iso-creator/Dockerfile +++ b/dockerfile/anaconda-iso-creator/Dockerfile @@ -43,6 +43,7 @@ RUN set -ex; \ COPY ["lorax-build", "/"] COPY ["lorax-build-webui", "/"] COPY ["adjust-templates-for-webui.patch", "/"] +COPY ["adjust-templates-for-weston.patch", "/"] RUN mkdir /lorax /anaconda-rpms /images diff --git a/dockerfile/anaconda-iso-creator/adjust-templates-for-weston.patch b/dockerfile/anaconda-iso-creator/adjust-templates-for-weston.patch new file mode 100644 index 00000000000..0a0642bb9e6 --- /dev/null +++ b/dockerfile/anaconda-iso-creator/adjust-templates-for-weston.patch @@ -0,0 +1,56 @@ +From 3b6fcfc755ee9b2a5b4de7965ee2e3fc41045379 Mon Sep 17 00:00:00 2001 +From: Neal Gompa +Date: Thu, 18 Jan 2024 11:59:00 -0500 +Subject: [PATCH] templates.d/99-generic/runtime-cleanup: Do not purge sound + packages + +These cause the build to fail when adding Weston to the boot.iso. +--- + share/templates.d/99-generic/runtime-cleanup.tmpl | 10 +--------- + 1 file changed, 1 insertion(+), 9 deletions(-) + +diff --git a/share/templates.d/99-generic/runtime-cleanup.tmpl b/share/templates.d/99-generic/runtime-cleanup.tmpl +index aad31f77..e4148b7c 100644 +--- a/share/templates.d/99-generic/runtime-cleanup.tmpl ++++ b/share/templates.d/99-generic/runtime-cleanup.tmpl +@@ -9,8 +9,6 @@ remove usr/share/i18n + ## perl needed for powerpc-utils + ## perl is needed by /usr/bin/rxe_cfg from libibverbs + +-## no sound support, thanks +-removepkg flac-libs libsndfile pipewire pulseaudio* rtkit sound-theme-freedesktop wireplumber* + ## we don't create new initramfs/bootloader conf inside anaconda + ## (that happens inside the target system after we install dracut/grubby) + removepkg dracut-network grubby anaconda-dracut +@@ -52,7 +50,6 @@ removepkg mtools glibc-gconv-extra + + ## various other things we remove to save space + removepkg diffutils file +-removepkg libasyncns + removepkg lvm2-libs + removepkg mobile-broadband-provider-info + removepkg rmt rpcbind squashfs-tools +@@ -196,7 +193,6 @@ removefrom libidn2 /usr/share/locale/* + removefrom libnotify /usr/bin/* + removefrom libsemanage /etc/selinux/* + removefrom libstdc++ /usr/share/* +-removefrom libvorbis /usr/${libdir}/libvorbisenc.* + removefrom libxml2 /usr/bin/* + removefrom linux-firmware /usr/lib/firmware/dvb* + removefrom linux-firmware /usr/lib/firmware/*_12mhz* +@@ -365,11 +361,7 @@ removefrom gstreamer1-plugins-base --allbut \ + removepkg geoclue2 + + ## And remove the packages that those extra libraries pulled in +-removepkg cdparanoia-libs opus libtheora libvisual flac-libs gsm avahi-glib avahi-libs \ +- ModemManager-glib +- +-## metacity requires libvorbis and libvorbisfile, but enc/dec are no longer needed +-removefrom libvorbis --allbut /usr/${libdir}/libvorbisfile.* /usr/${libdir}/libvorbis.* ++removepkg cdparanoia-libs libvisual avahi-glib avahi-libs ModemManager-glib + + ## Remove build-id links, they are used with debuginfo + remove /usr/lib/.build-id +-- +2.43.0 + diff --git a/dockerfile/anaconda-iso-creator/lorax-build b/dockerfile/anaconda-iso-creator/lorax-build index 8deb0affb86..2bd251ea274 100755 --- a/dockerfile/anaconda-iso-creator/lorax-build +++ b/dockerfile/anaconda-iso-creator/lorax-build @@ -36,12 +36,16 @@ mkdir -p $REPO_DIR cp -a $INPUT_RPMS/* $REPO_DIR || echo "RPM files can't be copied!" # We could just do the build with official repositories only createrepo_c $REPO_DIR +cp -r /usr/share/lorax/templates.d/ /lorax/ +patch -p2 -i /adjust-templates-for-weston.patch + # build boot.iso with our rpms . /etc/os-release # The download.fedoraproject.org automatic redirector often selects download-ib01.f.o. for GitHub's cloud, which is too unreliable; use a mirror # The --volid argument can cause different network interface naming: https://github.com/rhinstaller/kickstart-tests/issues/448 lorax -p Fedora -v "$VERSION_ID" -r "$VERSION_ID" \ --volid Fedora-S-dvd-x86_64-rawh \ + --sharedir ./templates.d/99-generic/ \ -s http://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/ \ -s file://$REPO_DIR/ \ "$@" \ diff --git a/dockerfile/anaconda-iso-creator/lorax-build.j2 b/dockerfile/anaconda-iso-creator/lorax-build.j2 index b568c8468ce..d3bc7ef83c1 100755 --- a/dockerfile/anaconda-iso-creator/lorax-build.j2 +++ b/dockerfile/anaconda-iso-creator/lorax-build.j2 @@ -29,6 +29,9 @@ mkdir -p $REPO_DIR cp -a $INPUT_RPMS/* $REPO_DIR || echo "RPM files can't be copied!" # We could just do the build with official repositories only createrepo_c $REPO_DIR +cp -r /usr/share/lorax/templates.d/ /lorax/ +patch -p2 -i /adjust-templates-for-weston.patch + # build boot.iso with our rpms . /etc/os-release # The download.fedoraproject.org automatic redirector often selects download-ib01.f.o. for GitHub's cloud, which is too unreliable; use a mirror @@ -40,6 +43,7 @@ lorax -p Fedora -v "$VERSION_ID" -r "$VERSION_ID" \ {% else %} --volid Fedora-S-dvd-x86_64-f{$ distro_release $} \ {% endif %} + --sharedir ./templates.d/99-generic/ \ -s http://dl.fedoraproject.org/pub/fedora/linux/development/{$ distro_release $}/Everything/x86_64/os/ \ {% elif distro_name == "rhel" and distro_release == 10 %} MAJOR_VERSION=${VERSION_ID%%.*}