remove wget

This commit is contained in:
Tobias Powalowski 2023-09-04 14:32:48 +02:00
parent 8a9fd4b797
commit 48e32497bf
13 changed files with 167 additions and 26 deletions

View file

@ -1 +0,0 @@
../lib/archboot/run/chroot-tarball.sh

View file

@ -0,0 +1,72 @@
#!/usr/bin/env bash
# SPDX-License-Identifier: GPL-3.0-or-later
# created by Tobias Powalowski <tpowa@archlinux.org>
. /etc/archboot/defaults
. /usr/lib/archboot/common.sh
. /usr/lib/archboot/container.sh
if echo "${_BASENAME}" | grep -qw aarch64; then
_PACMAN_ARCH_CHROOT="${_PACMAN_AARCH64_CHROOT}"
_PACMAN_ARCH="${_PACMAN_AARCH64}"
_ARCH_VERSION="ArchLinuxARM-aarch64-latest.tar.gz"
_SERVER_PACMAN_ARCH="${_SERVER_PACMAN_AARCH64}"
_LATEST_ARCH="http://os.archlinuxarm.org/os/${_ARCH_VERSION}"
_CAP_ARCH="AARCH64"
_ARCH="aarch64"
elif echo "${_BASENAME}" | grep -qw riscv64; then
_PACMAN_ARCH_CHROOT="${_PACMAN_RISCV64_CHROOT}"
_PACMAN_ARCH="${_PACMAN_RISCV64}"
_ARCH_VERSION="archriscv-20220727.tar.zst"
_SERVER_PACMAN_ARCH="${_SERVER_PACMAN_RISCV64}"
_LATEST_ARCH="https://archriscv.felixc.at/images/${_ARCH_VERSION}"
_CAP_ARCH="RISCV64"
_ARCH="riscv64"
fi
_usage () {
echo "CREATE ${_CAP_ARCH} PACMAN CHROOT"
echo "-----------------------------"
echo "This will create the ${_ARCH} pacman chroot tarball."
echo "usage: ${_BASENAME} <build-directory>"
exit 0
}
[[ -z "${1}" ]] && _usage
_root_check
echo "Starting container creation..."
# remove old files
[[ -f ${_PACMAN_ARCH_CHROOT} ]] && rm "${_PACMAN_ARCH_CHROOT}"{,.sig} 2>"${_NO_LOG}"
echo "Creating directory ${1}..."
mkdir -p "${1}"/"${_PACMAN_ARCH}"
echo "Downloading archlinux ${_ARCH}..."
! [[ -f ${_ARCH_VERSION} ]] && "${_DLPROG}" "${_LATEST_ARCH}" &>"${_NO_LOG}"
bsdtar -xf "${_ARCH_VERSION}" -C "${1}"
echo "Removing installation tarball..."
rm "${_ARCH_VERSION}"
sed -i -e '/^\[community\]/ { n ; s/^/#/ }' "${1}"/etc/pacman.conf
sed -i -e 's:^\[community\]:#\[community\]:g' "${1}"/etc/pacman.conf
_generate_keyring "${1}" || exit 1
_fix_network "${1}"
# update container to latest packages
echo "Installing pacman to container..."
mkdir -p "${1}/${_PACMAN_ARCH}/var/lib/pacman"
#shellcheck disable=SC2086
systemd-nspawn -D "${1}" pacman --root "/${_PACMAN_ARCH}" -Sy awk ${_KEYRING} --ignore systemd-resolvconf --noconfirm &>"${_NO_LOG}"
_generate_keyring "${1}/${_PACMAN_ARCH}" || exit 1
_fix_network "${1}/${_PACMAN_ARCH}"
_CLEANUP_CONTAINER="1" _clean_container "${1}/${_PACMAN_ARCH}" 2>"${_NO_LOG}"
_CLEANUP_CACHE="1" _clean_cache "${1}/${_PACMAN_ARCH}" 2>"${_NO_LOG}"
echo "Generating tarball..."
tar -acf "${_PACMAN_ARCH_CHROOT}" -C "${1}"/"${_PACMAN_ARCH}" . &>"${_NO_LOG}" || exit 1
echo "Removing ${1}..."
rm -r "${1}"
echo "Finished container tarball."
echo "Signing tarball..."
#shellcheck disable=SC2086
sudo -u "${_USER}" gpg ${_GPG} ${_PACMAN_ARCH_CHROOT} || exit 1
chown "${_USER}":"${_GROUP}" "${_PACMAN_ARCH_CHROOT}"{,.sig} || exit 1
echo "Uploading tarball to ${_SERVER}:${_SERVER_PACMAN_ARCH}..."
sudo -u "${_USER}" scp "${_PACMAN_ARCH_CHROOT}"{,.sig} "${_SERVER}:${_SERVER_PACMAN_ARCH}" || exit 1
echo "Finished."
# vim: set ft=sh ts=4 sw=4 et:

View file

@ -86,7 +86,7 @@ _check
_SET_TIME=""
# automatic setup
if ping -c1 www.google.com &>"${_NO_LOG}"; then
_ZONE="$(curl -s "http://ip-api.com/csv/?fields=timezone")"
_ZONE="$("${_DLPROG}" "http://ip-api.com/csv/?fields=timezone")"
_auto_clock | _dialog --title " Clock Configuration " --no-mouse --gauge "Using ${_ZONE} and enable NTP timesyncd..." 6 70 0
_SET_TIME="1"
fi

View file

@ -20,7 +20,7 @@ _download_mirror() {
_select_mirror() {
# Download updated mirrorlist, if possible (only on x86_64)
if [[ "${_RUNNING_ARCH}" == "x86_64" ]]; then
_COUNTRY="$(curl -s "http://ip-api.com/csv/?fields=countryCode")"
_COUNTRY="$("${_DLPROG}" "http://ip-api.com/csv/?fields=countryCode")"
_DOWNLOAD="Downloading latest mirrorlist for Region ${_COUNTRY}..."
_download_mirror | _dialog --title " Pacman Configuration " --no-mouse --gauge "${_DOWNLOAD}" 6 70 0
if grep -q '#Server = https:' /tmp/pacman_mirrorlist.txt; then

View file

@ -1 +0,0 @@
../lib/archboot/run/chroot-tarball.sh

View file

@ -0,0 +1,72 @@
#!/usr/bin/env bash
# SPDX-License-Identifier: GPL-3.0-or-later
# created by Tobias Powalowski <tpowa@archlinux.org>
. /etc/archboot/defaults
. /usr/lib/archboot/common.sh
. /usr/lib/archboot/container.sh
if echo "${_BASENAME}" | grep -qw aarch64; then
_PACMAN_ARCH_CHROOT="${_PACMAN_AARCH64_CHROOT}"
_PACMAN_ARCH="${_PACMAN_AARCH64}"
_ARCH_VERSION="ArchLinuxARM-aarch64-latest.tar.gz"
_SERVER_PACMAN_ARCH="${_SERVER_PACMAN_AARCH64}"
_LATEST_ARCH="http://os.archlinuxarm.org/os/${_ARCH_VERSION}"
_CAP_ARCH="AARCH64"
_ARCH="aarch64"
elif echo "${_BASENAME}" | grep -qw riscv64; then
_PACMAN_ARCH_CHROOT="${_PACMAN_RISCV64_CHROOT}"
_PACMAN_ARCH="${_PACMAN_RISCV64}"
_ARCH_VERSION="archriscv-20220727.tar.zst"
_SERVER_PACMAN_ARCH="${_SERVER_PACMAN_RISCV64}"
_LATEST_ARCH="https://archriscv.felixc.at/images/${_ARCH_VERSION}"
_CAP_ARCH="RISCV64"
_ARCH="riscv64"
fi
_usage () {
echo "CREATE ${_CAP_ARCH} PACMAN CHROOT"
echo "-----------------------------"
echo "This will create the ${_ARCH} pacman chroot tarball."
echo "usage: ${_BASENAME} <build-directory>"
exit 0
}
[[ -z "${1}" ]] && _usage
_root_check
echo "Starting container creation..."
# remove old files
[[ -f ${_PACMAN_ARCH_CHROOT} ]] && rm "${_PACMAN_ARCH_CHROOT}"{,.sig} 2>"${_NO_LOG}"
echo "Creating directory ${1}..."
mkdir -p "${1}"/"${_PACMAN_ARCH}"
echo "Downloading archlinux ${_ARCH}..."
! [[ -f ${_ARCH_VERSION} ]] && "${_DLPROG}" "${_LATEST_ARCH}" &>"${_NO_LOG}"
bsdtar -xf "${_ARCH_VERSION}" -C "${1}"
echo "Removing installation tarball..."
rm "${_ARCH_VERSION}"
sed -i -e '/^\[community\]/ { n ; s/^/#/ }' "${1}"/etc/pacman.conf
sed -i -e 's:^\[community\]:#\[community\]:g' "${1}"/etc/pacman.conf
_generate_keyring "${1}" || exit 1
_fix_network "${1}"
# update container to latest packages
echo "Installing pacman to container..."
mkdir -p "${1}/${_PACMAN_ARCH}/var/lib/pacman"
#shellcheck disable=SC2086
systemd-nspawn -D "${1}" pacman --root "/${_PACMAN_ARCH}" -Sy awk ${_KEYRING} --ignore systemd-resolvconf --noconfirm &>"${_NO_LOG}"
_generate_keyring "${1}/${_PACMAN_ARCH}" || exit 1
_fix_network "${1}/${_PACMAN_ARCH}"
_CLEANUP_CONTAINER="1" _clean_container "${1}/${_PACMAN_ARCH}" 2>"${_NO_LOG}"
_CLEANUP_CACHE="1" _clean_cache "${1}/${_PACMAN_ARCH}" 2>"${_NO_LOG}"
echo "Generating tarball..."
tar -acf "${_PACMAN_ARCH_CHROOT}" -C "${1}"/"${_PACMAN_ARCH}" . &>"${_NO_LOG}" || exit 1
echo "Removing ${1}..."
rm -r "${1}"
echo "Finished container tarball."
echo "Signing tarball..."
#shellcheck disable=SC2086
sudo -u "${_USER}" gpg ${_GPG} ${_PACMAN_ARCH_CHROOT} || exit 1
chown "${_USER}":"${_GROUP}" "${_PACMAN_ARCH_CHROOT}"{,.sig} || exit 1
echo "Uploading tarball to ${_SERVER}:${_SERVER_PACMAN_ARCH}..."
sudo -u "${_USER}" scp "${_PACMAN_ARCH_CHROOT}"{,.sig} "${_SERVER}:${_SERVER_PACMAN_ARCH}" || exit 1
echo "Finished."
# vim: set ft=sh ts=4 sw=4 et:

View file

@ -48,8 +48,8 @@ if [[ -n "${_DIR}" ]]; then
${NAME}
EOF
# download MS Certificates, else EFI might get broken!
curl -s -L -O https://www.microsoft.com/pkiops/certs/MicWinProPCA2011_2011-10-19.crt
curl -s -L -O https://www.microsoft.com/pkiops/certs/MicCorUEFCA2011_2011-06-27.crt
"${_DLPROG}" -L -O https://www.microsoft.com/pkiops/certs/MicWinProPCA2011_2011-10-19.crt
"${_DLPROG}" -L -O https://www.microsoft.com/pkiops/certs/MicCorUEFCA2011_2011-06-27.crt
sbsiglist --owner 77fa9abd-0359-4d32-bd60-28f4e78f784b --type x509 --output MS_Win_db.esl MicWinProPCA2011_2011-10-19.crt
sbsiglist --owner 77fa9abd-0359-4d32-bd60-28f4e78f784b --type x509 --output MS_UEFI_db.esl MicCorUEFCA2011_2011-06-27.crt
cat MS_Win_db.esl MS_UEFI_db.esl > MS_db.esl

View file

@ -15,9 +15,9 @@ _GRUB_ISO="/usr/share/archboot/grub/archboot-iso-grub.cfg"
_prepare_shim_files () {
# download packages from fedora server
echo "Downloading fedora shim..."
curl -s --create-dirs -L -O --output-dir "${_SHIM}" ${_SHIM_URL}/${_SHIM_RPM} || exit 1
curl -s --create-dirs -L -O --output-dir "${_SHIM32}" ${_SHIM_URL}/${_SHIM32_RPM} || exit 1
curl -s --create-dirs -L -O --output-dir "${_SHIMAA64}" ${_SHIM_URL}/${_SHIM_AA64_RPM} || exit 1
"${_DLPROG}" --create-dirs -L -O --output-dir "${_SHIM}" ${_SHIM_URL}/${_SHIM_RPM} || exit 1
"${_DLPROG}" --create-dirs -L -O --output-dir "${_SHIM32}" ${_SHIM_URL}/${_SHIM32_RPM} || exit 1
"${_DLPROG}" --create-dirs -L -O --output-dir "${_SHIMAA64}" ${_SHIM_URL}/${_SHIM_AA64_RPM} || exit 1
# unpack rpm
echo "Unpacking rpms..."
bsdtar -C "${_SHIM}" -xf "${_SHIM}"/*.rpm

View file

@ -8,7 +8,7 @@ _LOG="/dev/tty11"
_NO_LOG="/dev/null"
_ANSWER="/.${_BASENAME}"
_LABEL="Exit"
_DLPROG="wget -q"
_DLPROG="curl -s"
_MIRRORLIST="/etc/pacman.d/mirrorlist"
_KERNELPKG="linux"
_KEYRING="archlinux-keyring"

View file

@ -43,7 +43,7 @@ _clean_cache() {
_pacman_chroot() {
if ! [[ -f ${3} && -f ${3}.sig ]]; then
echo "Downloading ${3}..."
wget "${2}"/"${3}"{,.sig} &>"${_NO_LOG}"
"${_DLPROG} ""${2}"/"${3}"{,.sig} &>"${_NO_LOG}"
else
echo "Using local ${3}..."
fi

View file

@ -47,8 +47,8 @@ _create_iso() {
# generate local iso in container
#if [[ "${_ARCH}" == "x86_64" ]]; then
# echo "Adding custom grub..."
# wget -q "https://archboot.com/src/grub/grub-2:2.06.r533.g78bc9a9b2-1-x86_64.pkg.tar.zst" -P "${_W_DIR}/var/cache/pacman/pkg"
# wget -q "https://archboot.com/src/grub/grub-2:2.06.r533.g78bc9a9b2-1-x86_64.pkg.tar.zst.sig" -P "${_W_DIR}/var/cache/pacman/pkg"
# "${_DLPROG} ""https://archboot.com/src/grub/grub-2:2.06.r533.g78bc9a9b2-1-x86_64.pkg.tar.zst" -P "${_W_DIR}/var/cache/pacman/pkg"
# "${_DLPROG} ""https://archboot.com/src/grub/grub-2:2.06.r533.g78bc9a9b2-1-x86_64.pkg.tar.zst.sig" -P "${_W_DIR}/var/cache/pacman/pkg"
#fi
${_NSPAWN} "${_W_DIR}" /bin/bash -c "umount /tmp;rm -rf /tmp/*;archboot-${_ARCH}-iso.sh -g -s \
-c=${_CONFIG_LOCAL} -i=${_ISONAME}-local-${_ARCH}" || exit 1

View file

@ -40,7 +40,7 @@ echo "Starting container creation..."
echo "Creating directory ${1}..."
mkdir -p "${1}"/"${_PACMAN_ARCH}"
echo "Downloading archlinux ${_ARCH}..."
! [[ -f ${_ARCH_VERSION} ]] && wget "${_LATEST_ARCH}" &>"${_NO_LOG}"
! [[ -f ${_ARCH_VERSION} ]] && "${_DLPROG} ""${_LATEST_ARCH}" &>"${_NO_LOG}"
bsdtar -xf "${_ARCH_VERSION}" -C "${1}"
echo "Removing installation tarball..."
rm "${_ARCH_VERSION}"

View file

@ -22,7 +22,7 @@ _update_pacman_chroot() {
[[ -d "${_ARCH_DIR}" ]] || mkdir "${_ARCH_DIR}"
echo "Downloading pacman ${_ARCH} chroot..."
[[ -f pacman-${_ARCH}-chroot-latest.tar.zst ]] && rm pacman-"${_ARCH}"-chroot-latest.tar.zst{,.sig} 2>"${_NO_LOG}"
wget "${_ARCH_CHROOT_PUBLIC}"/"${_PACMAN_CHROOT}"{,.sig} &>"${_NO_LOG}"
"${_DLPROG} ""${_ARCH_CHROOT_PUBLIC}"/"${_PACMAN_CHROOT}"{,.sig} &>"${_NO_LOG}"
# verify download
#shellcheck disable=SC2024
sudo -u "${_USER}" gpg --verify "${_PACMAN_CHROOT}.sig" &>"${_NO_LOG}" || exit 1

View file

@ -137,36 +137,36 @@ _create_initramfs() {
_download_latest_task() {
# config
wget -q "${_SOURCE}${_ETC}/defaults?inline=false" -O "${_ETC}/defaults"
"${_DLPROG} ""${_SOURCE}${_ETC}/defaults?inline=false" -O "${_ETC}/defaults"
# helper binaries
# main binaries
_SCRIPTS="quickinst setup clock launcher localize network pacsetup update copy-mountpoint rsync-backup restore-usbstick"
for i in ${_SCRIPTS}; do
[[ -e "${_BIN}/${i}" ]] && wget -q "${_SOURCE}${_BIN}/archboot-${i}.sh?inline=false" -O "${_BIN}/${i}"
[[ -e "${_BIN}/${i}" ]] && "${_DLPROG} ""${_SOURCE}${_BIN}/archboot-${i}.sh?inline=false" -O "${_BIN}/${i}"
done
_SCRIPTS="binary-check.sh not-installed.sh secureboot-keys.sh mkkeys.sh hwsim.sh cpio,sh"
for i in ${_SCRIPTS}; do
[[ -e "${_BIN}/${i}" ]] && wget -q "${_SOURCE}${_BIN}/archboot-${i}?inline=false" -O "${_BIN}/${i}"
[[ -e "${_BIN}/archboot-${i}" ]] && wget -q "${_SOURCE}${_BIN}/archboot-${i}?inline=false" -O "${_BIN}/archboot-${i}"
[[ -e "${_BIN}/${i}" ]] && "${_DLPROG} ""${_SOURCE}${_BIN}/archboot-${i}?inline=false" -O "${_BIN}/${i}"
[[ -e "${_BIN}/archboot-${i}" ]] && "${_DLPROG} ""${_SOURCE}${_BIN}/archboot-${i}?inline=false" -O "${_BIN}/archboot-${i}"
done
_TXT="guid-partition.txt guid.txt luks.txt lvm2.txt mbr-partition.txt md.txt"
for i in ${_TXT}; do
[[ -e "${_HELP}/${i}" ]] && wget -q "${_SOURCE}${_HELP}/${i}?inline=false" -O "${_HELP}/${i}"
[[ -e "${_HELP}/${i}" ]] && "${_DLPROG} ""${_SOURCE}${_HELP}/${i}?inline=false" -O "${_HELP}/${i}"
done
# main libs
LIBS="common.sh container.sh release.sh iso.sh login.sh cpio.sh"
for i in ${LIBS}; do
wget -q "${_SOURCE}${_LIB}/${i}?inline=false" -O "${_LIB}/${i}"
"${_DLPROG} ""${_SOURCE}${_LIB}/${i}?inline=false" -O "${_LIB}/${i}"
done
# update libs
LIBS="update.sh manage.sh desktop.sh xfce.sh gnome.sh plasma.sh sway.sh"
for i in ${LIBS}; do
wget -q "${_SOURCE}${_UPDATE}/${i}?inline=false" -O "${_UPDATE}/${i}"
"${_DLPROG} ""${_SOURCE}${_UPDATE}/${i}?inline=false" -O "${_UPDATE}/${i}"
done
# run libs
LIBS="container.sh release.sh"
for i in ${LIBS}; do
wget -q "${_SOURCE}${_RUN}/${i}?inline=false" -O "${_RUN}/${i}"
"${_DLPROG} ""${_SOURCE}${_RUN}/${i}?inline=false" -O "${_RUN}/${i}"
done
# setup libs
LIBS="autoconfiguration.sh quicksetup.sh base.sh blockdevices.sh bootloader.sh \
@ -175,7 +175,7 @@ _download_latest_task() {
bootloader_systemd_services.sh bootloader_uboot.sh btrfs.sh common.sh \
configuration.sh mountpoints.sh network.sh pacman.sh partition.sh storage.sh"
for i in ${LIBS}; do
wget -q "${_SOURCE}${_INST}/${i}?inline=false" -O "${_INST}/${i}"
"${_DLPROG} ""${_SOURCE}${_INST}/${i}?inline=false" -O "${_INST}/${i}"
done
rm /.archboot
}

View file

@ -5,11 +5,10 @@
build ()
{
add_all_modules -f '_cs|b44|broadcom/bnx2x|brocade|cavium|chelsio|cisco|netronome|mellanox|myricom|qlogic|qualcomm' '/drivers/net/ethernet|/net/ipv4|/net/ipv6|/drivers/net/usb'
map add_binary ip getent ping wget
map add_binary ip getent ping
add_file /usr/bin/archboot-network.sh /usr/bin/network
# start dhcpcd on startup
add_file "/usr/share/archboot/net/etc/systemd/network/10-wired-auto-dhcp.network" "/etc/systemd/network/10-wired-auto-dhcp.network"
add_file /etc/wgetrc
}
help ()