diskimage-builder/diskimage_builder/elements/zypper-minimal
Colleen Murphy 19b3586d08 Pre-install xz package in opensuse chroot
As of recently, opensuse-minimal images fail to build because of an
error installing the kernel-default package:

> Problem: kernel-default-5.6.12-1.3.x86_64 requires mkinitrd >= 2.7.1, but this requirement cannot be provided
>   not installable providers: dracut-050+suse.61.g0fe0e854-1.1.i586[repo-oss]
>                    dracut-050+suse.61.g0fe0e854-1.1.x86_64[repo-oss]

The problem is there is a recently added package `busybox-links` which
provides a subpackage `busybox-xz` which provides the /usr/bin/xz
utility. Since this is available, the `aaa_base` package installs it
during the root.d base installation phase to fulfill it's dependency on
/usr/bin/xz. On the other hand, the dracut package explicitly requires
the `xz` package, and this is not co-installable with the `busybox-xz`
package, so the dracut package is not installable during the install.d
phase. This change explicitly adds the `xz` package to the initial
chroot provisioning phase so that the /usr/bin/xz requirement is already
fulfilled and `busybox-xz` does not get installed.

Change-Id: Iba8c301eb496657873963e1aa99736aacf87cb00
2020-05-27 10:45:03 -07:00
..
post-install.d opensuse-minimal: install glibc-locale 2017-07-17 22:50:25 +02:00
pre-install.d Disable recommended package installations for zypper-minimal 2017-05-26 09:47:07 +02:00
root.d Pre-install xz package in opensuse chroot 2020-05-27 10:45:03 -07:00
README.rst Allow zypper repos to be overrideable 2019-12-02 16:25:53 -08:00
element-deps Run dib-run-parts out of /tmp 2017-04-05 13:11:22 +10:00
package-installs.yaml elements: zypper-minimal: Install tar package 2017-07-25 16:27:25 +01:00

README.rst

zypper-minimal

Base element for creating minimal SUSE-based images

This element is incomplete by itself so you probably want to use it along with the opensuse-minimal one. It requires 'zypper' to be installed on the host.

To create a zypper-based image with non-default repositories, set DIB_ZYPPER_REPOS to a mapping of repository names to URLs, for example:

DIB_ZYPPER_REPOS="update=>http://smt-mirror.example.com/SUSE:/SLE-15-SP1:/Update/standard/ "
DIB_ZYPPER_REPOS+="SLE-15-SP1=>http://smt-mirror.example.com/ibs/SUSE:/SLE-15-SP1:/GA/standard/ "
DIB_ZYPPER_REPOS+="SLE-15=>http://smt-mirror.example.com/ibs/SUSE:/SLE-15:/GA/standard/ "