It is no longer necessary to include these as they are explicitly built
with --onlydeps in build_sysext_packages().
Signed-off-by: James Le Cuirot <jlecuirot@microsoft.com>
common-oem-files was a giant hack. oem-release can now be easily be
generated from metadata embedded in the sysext image itself. grub.cfg is
often just a couple of lines, so there's no point in having all this
complex logic around generating it, especially when that logic has some
exceptions anyway. It's far easier to just explicitly store each variant
under build_library/oem. The list of OEMs is now generated by looking
for coreos-base/oem-*/*.ebuild.
Signed-off-by: James Le Cuirot <jlecuirot@microsoft.com>
This allows the VirtualBox image to actually boot. It broke when
upstream Ignition changed how the VirtualBox support works.
VirtualBox supports arm64 these days, so we could enable this in the
common config, but we don't currently produce an arm64 VirtualBox image,
and I don't propose that we start now.
Signed-off-by: James Le Cuirot <jlecuirot@microsoft.com>
These extension-release.d fields are equivalent to their non-SYSEXT
os-release counterparts. SYSEXT_ID is taken from the sysext's name as
given to build_sysext. SYSEXT_NAME, SYSEXT_VERSION_ID, and
SYSEXT_HOME_URL are taken from the package if only one is given.
SYSEXT_NAME is the new name for the OEM_NAME variable.
Signed-off-by: James Le Cuirot <jlecuirot@microsoft.com>
Regenerate manifest of `sys-kernel/dracut` to fix build issues like
below that started happening since changes of the upstream repo name.
```
!!! Fetched file: dracut-109.tar.gz VERIFY FAILED!
!!! Reason: Filesize does not match recorded size
!!! Got: 556060
!!! Expected: 556054
```
Signed-off-by: Dongsu Park <dongsu@dpark.io>
containerd complains that erofs tools do not exist at startup,
adding these tools to the image.
Implements: https://github.com/flatcar/Flatcar/issues/2047.
Signed-off-by: Adrian Vladu <avladu@cloudbasesolutions.com>
update_sdk_container_image failed to update baselayout because it
touched /sys, which is not allowed in an unprivileged docker build
environment.
dumb-tmpfiles-proc.sh does not touch existing directories, but it was
modifying the staging directory rather than the live filesystem, causing
Portage to record /sys in the package's CONTENTS and then make changes
to it when merging.
We only need to create the directories in pkg_preinst because the other
file types are already created in src_install.
Signed-off-by: James Le Cuirot <jlecuirot@microsoft.com>
We don't include -g in the SDK CFLAGS, so don't waste time and space on
splitdebug. Other compilers like Rust still generate debug symbols, but
we don't need these either.
Signed-off-by: James Le Cuirot <jlecuirot@microsoft.com>
Gentoo starts with this directory being empty, and Portage complains if
you populate it with merge-usr symlinks.
Signed-off-by: James Le Cuirot <jlecuirot@microsoft.com>
A recent Portage fix should avoid any collisions by salting the debug
files with the package name and version. The fix inadvertently broke the
debuglink CRC, which gdb checks, but this went unnoticed in Gentoo
because gdb prefers looking up symbols with the build-id instead.
However, this was noticed in Flatcar because of the INSTALL_MASK! This
has now also been fixed in Gentoo. We can drop the INSTALL_MASK now to
rely on the build-id instead of the debuglink.
Signed-off-by: James Le Cuirot <jlecuirot@microsoft.com>
Loading config from the initrd with `oem://` was broken because Ignition
was still looking in /usr/share/oem, which is now moved to /oem by the
minimal initrd.
This also fixes mounting the OEM partition when /mnt does not already
exist. This fix is slightly academic, because this currently only
happens when PXE booting, where the OEM partition won't exist anyway,
but we should fail for the right reason.
Signed-off-by: James Le Cuirot <jlecuirot@microsoft.com>