diff options
author | Erich Eckner <git@eckner.net> | 2020-01-15 10:49:01 +0100 |
---|---|---|
committer | Erich Eckner <git@eckner.net> | 2020-01-15 10:51:20 +0100 |
commit | 9ac3b1e2a36e74bf532d55743a798a9e6e565125 (patch) | |
tree | c31b85afdf539a12717a9a0ce9e2bc8813eeb606 | |
parent | 89d34440b427b7e24453dd10126a62ad554b0b28 (diff) | |
download | archiso32-9ac3b1e2a36e74bf532d55743a798a9e6e565125.tar.xz |
configs/releng/build.sh: use alias for `uname` to set $arch inside mkarchroot correctlyi686-v43.3
mkarchiso calls `uname -m` *solely* to get the architecture to use the
correct directory, configs, etc. - instead of patching mkarchiso, we use
this hack to set ${arch} correctly inside mkarchiso
-rwxr-xr-x | configs/releng/build.sh | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/configs/releng/build.sh b/configs/releng/build.sh index b5bdc27..61ad4ad 100755 --- a/configs/releng/build.sh +++ b/configs/releng/build.sh @@ -73,18 +73,27 @@ make_pacman_conf() { # Base installation, plus needed packages (airootfs) make_basefs() { + # mkarchiso calls `uname -m` *solely* to get the architecture to use + # the correct directory, configs, etc. - instead of patching + # mkarchiso, we use this hack to set ${arch} correctly inside mkarchiso + alias uname="echo ${arch} #" mkarchiso ${verbose} -w "${work_dir}/${arch}" -C "${work_dir}/pacman-${arch}.conf" -D "${install_dir}" init mkarchiso ${verbose} -w "${work_dir}/${arch}" -C "${work_dir}/pacman-${arch}.conf" -D "${install_dir}" -p "haveged intel-ucode amd-ucode memtest86+ mkinitcpio-nfs-utils nbd zsh efitools" install + unalias uname } # Additional packages (airootfs) make_packages() { + alias uname="echo ${arch} #" mkarchiso ${verbose} -w "${work_dir}/${arch}" -C "${work_dir}/pacman-${arch}.conf" -D "${install_dir}" -p "$(grep -h -v ^# ${script_path}/packages.{both,${arch}})" install + unalias uname } # Needed packages for x86_64 EFI boot make_packages_efi() { + alias uname="echo ${arch} #" mkarchiso ${verbose} -w "${work_dir}/${arch}" -C "${work_dir}/pacman-${arch}.conf" -D "${install_dir}" -p "efitools" install + unalias uname } # Copy mkinitcpio archiso hooks and build initramfs (airootfs) @@ -105,7 +114,9 @@ make_setup_mkinitcpio() { gpg --export ${gpg_key} >${work_dir}/gpgkey exec 17<>${work_dir}/gpgkey fi + alias uname="echo ${arch} #" ARCHISO_GNUPG_FD=${gpg_key:+17} mkarchiso ${verbose} -w "${work_dir}/${arch}" -C "${work_dir}/pacman-${arch}.conf" -D "${install_dir}" -r 'mkinitcpio -c /etc/mkinitcpio-archiso.conf -k /boot/vmlinuz-linux -g /boot/archiso.img' run + unalias uname if [[ ${gpg_key} ]]; then exec 17<&- fi @@ -121,7 +132,9 @@ make_customize_airootfs() { lynx -dump -nolist 'https://wiki.archlinux.org/index.php/Installation_Guide?action=render' >> ${work_dir}/${arch}/airootfs/root/install.txt + alias uname="echo ${arch} #" mkarchiso ${verbose} -w "${work_dir}/${arch}" -C "${work_dir}/pacman-${arch}.conf" -D "${install_dir}" -r '/root/customize_airootfs.sh' run + unalias uname rm ${work_dir}/${arch}/airootfs/root/customize_airootfs.sh } @@ -225,15 +238,19 @@ make_efiboot() { # Build airootfs filesystem image make_prepare() { cp -a -l -f ${work_dir}/${arch}/airootfs ${work_dir} + alias uname="echo ${arch} #" mkarchiso ${verbose} -w "${work_dir}" -D "${install_dir}" pkglist mkarchiso ${verbose} -w "${work_dir}" -D "${install_dir}" ${gpg_key:+-g ${gpg_key}} prepare + unalias uname rm -rf ${work_dir}/airootfs # rm -rf ${work_dir}/${arch}/airootfs (if low space, this helps) } # Build ISO make_iso() { + alias uname="echo ${arch} #" mkarchiso ${verbose} -w "${work_dir}" -D "${install_dir}" -L "${iso_label}" -P "${iso_publisher}" -A "${iso_application}" -o "${out_dir}" iso "${iso_name}-${iso_version}-i686.iso" + unalias uname } if [[ ${EUID} -ne 0 ]]; then |