diff --git a/usr/bin/archboot-x86_64-iso.sh b/usr/bin/archboot-x86_64-iso.sh index 2a3567363..18939f1a9 100755 --- a/usr/bin/archboot-x86_64-iso.sh +++ b/usr/bin/archboot-x86_64-iso.sh @@ -11,7 +11,7 @@ _config echo "Starting ISO creation ..." _prepare_kernel_initramfs_files || exit 1 _prepare_fedora_shim_bootloaders_x86_64 || exit 1 -_download_uefi_shell_tianocore || exit 1 +_prepare_uefi_shell_tianocore || exit 1 _prepare_efitools_uefi || exit 1 _prepare_uefi_X64_GRUB_USB_files || exit 1 _prepare_uefi_IA32_GRUB_USB_files || exit 1 diff --git a/usr/lib/archboot/iso_functions b/usr/lib/archboot/iso_functions index d7cd53712..b0cc79bce 100644 --- a/usr/lib/archboot/iso_functions +++ b/usr/lib/archboot/iso_functions @@ -98,7 +98,7 @@ _prepare_efitools_uefi () { cp "/usr/share/efitools/efi/KeyTool.efi" "${_ISODIR}/EFI/tools/KeyTool.efi" } -_download_uefi_shell_tianocore() { +_prepare_uefi_shell_tianocore() { echo "Prepare uefi shells ..." ## Install Tianocore UDK/EDK2 ShellBinPkg UEFI X64 "Full Shell" - For UEFI Spec. >=2.3 systems cp /usr/share/edk2-shell/x64/Shell.efi "${_ISODIR}/EFI/tools/shellx64_v2.efi" @@ -152,16 +152,16 @@ _grub_mkrescue() { #set date for reproducibility # --set_all_file_dates for all files # --modification-date= for boot.catalog - grub-mkrescue --set_all_file_dates 'Jan 1 00:00:00 UTC 1970' --modification-date=1970010100000000 --compress=xz --fonts="unicode" --locales="" --themes="" -o "${_IMAGENAME}.iso" "${_ISODIR}"/ "boot/grub/grub.cfg=${_GRUB_CONFIG}" &> "${_IMAGENAME}.log" + grub-mkrescue --set_all_file_dates 'Jan 1 00:00:00 UTC 1970' --modification-date=1970010100000000 --compress=xz --fonts="unicode" --locales="" --themes="" -o "${_IMAGENAME}.iso" "${_ISODIR}"/ "boot/grub/grub.cfg=${_GRUB_CONFIG}" &> "${_IMAGENAME}.log" } _reproducibility_iso() { echo "Create reproducable UUIDs on ${_IMAGENAME}.iso GPT ..." - sgdisk -u 1:1 "${_IMAGENAME}.iso" - sgdisk -u 2:2 "${_IMAGENAME}.iso" - sgdisk -u 3:3 "${_IMAGENAME}.iso" - sgdisk -u 4:4 "${_IMAGENAME}.iso" - sgdisk -U 1 "${_IMAGENAME}.iso" + sgdisk -u 1:1 "${_IMAGENAME}.iso" >/dev/null 2>&1 + sgdisk -u 2:2 "${_IMAGENAME}.iso" >/dev/null 2>&1 + sgdisk -u 3:3 "${_IMAGENAME}.iso" >/dev/null 2>&1 + sgdisk -u 4:4 "${_IMAGENAME}.iso" >/dev/null 2>&1 + sgdisk -U 1 "${_IMAGENAME}.iso" >/dev/null 2>&1 } _create_cksum() { diff --git a/usr/lib/archboot/repository_functions b/usr/lib/archboot/repository_functions index c2a0bffab..40b6c1861 100644 --- a/usr/lib/archboot/repository_functions +++ b/usr/lib/archboot/repository_functions @@ -15,14 +15,27 @@ _cachedir_check() { fi } +_download_packages() { + echo "Downloading packages base linux ${_LINUX_FIRMWARE} and ${_ARCHBOOT} to ${1} ..." + pacman --root "${1}" -Syw base linux "${_LINUX_FIRMWARE}" "${_ARCHBOOT}" --ignore systemd-resolvconf --noconfirm --cachedir "${_CACHEDIR}" >/dev/null 2>&1 +} + +_aarch64_download_packages() { + echo "Downloading packages base linux ${_LINUX_FIRMWARE} and ${_ARCHBOOT} to ${1} ..." + systemd-nspawn -q -D "${1}" /bin/bash -c "pacman -Syw base linux ${_LINUX_FIRMWARE} ${_ARCHBOOT} --ignore systemd-resolvconf --noconfirm" >/dev/null 2>&1 +} + _move_packages() { + echo "Mpving packages to ${2} ..." mv "${1}"/var/cache/pacman/pkg/./* "${2}" } _cleanup_repodir() { + echo "Remove ${1} ..." rm -r "${1}" } _create_archboot_db() { - repo-add "${1}"/archboot.db.tar.gz "${1}"/./*.{zst,xz} + echo "Creating archboot repository db ..." + repo-add "${1}"/archboot.db.tar.gz "${1}"/./*.{zst,xz} >/dev/null 2>&1 } diff --git a/usr/lib/archboot/server_functions b/usr/lib/archboot/server_functions index 46c5e1b31..1b62e3eb9 100644 --- a/usr/lib/archboot/server_functions +++ b/usr/lib/archboot/server_functions @@ -7,6 +7,7 @@ _BUILDDIR="$(mktemp -d "${_ISOHOME}"/server-release.XXX)" _SERVER="pkgbuild.com" _SERVER_HOME="/home/tpowa/" _SERVER_DIR="/home/tpowa/public_html/archboot-images" +_SOURCE_DIR="/home/tpowa/public_html/archboot-sources" _USER="tobias" _GROUP="users" _GPG="--detach-sign --no-armor --batch --passphrase-file /etc/archboot/gpg.passphrase --pinentry-mode loopback -u 7EDF681F" @@ -17,6 +18,7 @@ _PACMAN_AARCH64_CHROOT_SERVER="https://pkgbuild.com/~tpowa/archboot-helper/pacma _PACMAN_AARCH64_CHROOT="pacman-aarch64-chroot-latest.tar.zst" _ARCHBOOT_SOURCE="https://pkgbuild.com/~tpowa/archboot-sources" + _update_aarch64_pacman_chroot() { # update aarch64 pacman chroot cd "${_PACMAN_AARCH_BUILDDIR}" || exit 1 @@ -55,14 +57,20 @@ _update_aarch64_pacman_chroot() { } _update_source() { - [[ -d "${_SOURCEHOME}" ]] || mkdir -p "${_SOURCEHOME}" + if [[ -d "${_SOURCEHOME}" ]];then + rm -r "${_SOURCEHOME}" + mkdir -p "${_SOURCEHOME}" + else + mkdir -p "${_SOURCEHOME}" + fi + echo "Creating ${_ARCH} archboot repository ..." "archboot-${_ARCH}-create-repository.sh" "${_SOURCEHOME}" || exit 1 sudo -u "${_USER}" scp -r "${_SOURCEHOME}" "${_SERVER}":"${_SERVER_HOME}" || exit 1 sudo -u "${_USER}" ssh "${_SERVER}" <