11 Commits
Author SHA1 Message Date
Neal Gompa 5b42a8d15b Work around issues with filesystem package by preparing chroot skeleton
There are issues with the filesystem package in Mageia that lead to
unpredictable setup for the filesystem hierarchy when setting up
chroots. In order to work around this problem, let's create some
of the basic paths ourselves while we wait for the issue to be fixed.

Reference: https://bugs.mageia.org/show_bug.cgi?id=26044
2020-01-12 04:17:25 -05:00
Neal Gompa 57d9815a48 Drop copying qemu binaries and ensure qemu-user is configured on host
Since Mageia 6, it has not been necessary to copy the qemu binaries
and the binfmt files into the chroot to run ARM binaries inside a chroot.
This change finally stops doing that.

In order to make sure this works properly, we ensure that systemd-binfmt
is restarted to apply binfmt changes on the system. This ensures that
the host qemu-user-static is configured to execute binaries, even in
chroots.
2020-01-11 13:49:16 -05:00
Neal Gompa 04bd2398e4 Disable fetching DeltaRPMs as a preventative measure
While Mageia does not yet produce DeltaRPMs, it would never make
sense to fetch them for building ARM images, so we just turn it off
pre-emptively to simplify things for the future.
2020-01-06 21:39:26 -05:00
Neal Gompa 09d1218e22 Disable zchunk by default to make repodata fetching more reliable
Some mirrors have issues with ranged fetching of files, which is a
critical aspect of fetching zchunk-based repodata. In order to
to improve the reliability of fetching repodata and packages, disable
this.
2020-01-06 21:36:17 -05:00
Neal Gompa 036dc79d99 Small fixes to get basesystem chroot working 2020-01-05 19:33:28 -05:00
Neal Gompa 2bef753269 Install distribution-gpg-keys if it is not already installed
We need distribution-gpg-keys to provide us the Mageia GPG key file
in the distribution-agnostic location. As this package is available
on virtually every distribution that also has DNF, it's easily relied
upon.
2020-01-05 16:32:41 -05:00
Neal Gompa 3d71025331 Install u-boot only on armv7hl systems
U-Boot is not available for AArch64, so this causes basesystem setup
to fail when producing AArch64 images.
2020-01-05 14:11:26 -05:00
Neal Gompa e52a9a4871 Add my attribution to the script 2020-01-05 14:04:03 -05:00
Neal Gompa 9d2fe5306d Use self-contained config file for DNF with repos defined
With self-contained configuration, the repository definitions
will be predictable based on the target architecture and avoid
leaking anything from the host.
2020-01-05 14:04:03 -05:00
Neal Gompa b59ebbab15 Use the correct license file for the sources
The source code seems to be actually licensed GPLv2+, so
let's include the correct license file.
2020-01-05 11:18:48 -05:00
Neal Gompa b4da22f2cf Initial conversion to use DNF
This change makes it so that the ARM image creation script uses DNF
instead of urpmi. This affords several advantages:

1. Mageia images can be created from non-Mageia systems
2. Mageia images can be created from within Mock
3. ARM images can be created from x86_64 hosts
4. Image building can rely on pre-installed repo configurations

This also brings us in line with the Docker image creation process,
which also uses DNF.
2020-01-04 18:06:54 -05:00