From a053cfd9e224ef714569a3081c0a1787bfe88b53 Mon Sep 17 00:00:00 2001 From: Jane Doe Date: Fri, 15 Aug 2025 21:20:53 +0300 Subject: [PATCH] Change: Simplified how the 'term_offer()' function adds the 'gnome-terminal' package to the 'deskpkgs' array. Add: The 'first_check()' function now issues an extra warning when the installer runs in 'DEMO' mode. Change: 'connection_check()' function: The installer now pings 'google.com' instead of 'archlinux.org' to verify internet connection. Change: 'slct_kbd()' function: Now, when selecting keyboard layout, if the installer cannot detect a 'tty' (linux console) session, the layout defaults to 'us'. Add: Created 2 variables to minimize repetition ( ${void},${log} ) --- Amelia.sh | 403 ++++++++++++++++++++++++++++-------------------------- 1 file changed, 212 insertions(+), 191 deletions(-) diff --git a/Amelia.sh b/Amelia.sh index 5b0e65c..36c89e8 100644 --- a/Amelia.sh +++ b/Amelia.sh @@ -2,7 +2,7 @@ # Amelia Installer # Source: https://gitlab.com/prism7/archery -# Version: 9.2.3 +# Version: 9.3.0 set -euo pipefail ################################################################################################### @@ -150,7 +150,7 @@ unmount() { ${magenta}###${nc}-----------------------------------${magenta}[ ${bwhite}Unmount Filesystems${nc} ${magenta}]${nc}-----------------------------------${magenta}### " - if umount -R /mnt > /dev/null 2>&1 ; then + if umount -R /mnt > ${void} 2>&1 ; then sleep 0.2 NC " @@ -258,14 +258,13 @@ term_offer() { Enter [Y/n]: " read -r -p " -==> " console +==> " terminal - console="${console:-y}" - console="${console,,}" + terminal="${terminal:-y}" + terminal="${terminal,,}" - case "${console}" in + case "${terminal}" in y) - terminal="gnome-terminal" sleep 0.2 NC " @@ -350,7 +349,7 @@ failure() { REDBG " " REDBG "************************************************************************************************* " line3 - umount -R /mnt > /dev/null 2>&1 + umount -R /mnt > ${void} 2>&1 if [[ "${luks_root}" == "ok" || "${luks_swap}" == "ok" || "${luks_home}" == "ok" ]] && [[ "${installation}" != "ok" ]]; then force_reboot fi @@ -383,6 +382,8 @@ first_check() { YELLOWBG " ---------------------------------------- " YELLOWBG " ### The Installer Runs In DEMO Mode ### " YELLOWBG " ---------------------------------------- " + line2 + REDBG " ${yellow}### Some actions requiring Root access will terminate the demo with a 'FAILED' warning ### " fi } ################################################################################################### @@ -456,7 +457,7 @@ connection_check() { ${magenta}###${nc}--------------------------------${magenta}[ ${bwhite}Internet Connection Check${nc} ${magenta}]${nc}--------------------------------${magenta}### " - if ping -c 3 archlinux.org > /dev/null 2>&1; then + if ping -c 3 google.com > ${void} 2>&1; then ok else RED " @@ -732,6 +733,21 @@ slct_kbd() { ${magenta}###${nc}--------------------------------${magenta}[ ${bwhite}Keyboard Layout Selection${nc} ${magenta}]${nc}--------------------------------${magenta}### " + if [[ "${tty}" == *"pts"* ]]; then + SETKBD="us" + sleep 0.2 + RED " + + ------------------------------------------- + ### ${yellow}No ${nc}'tty' ${yellow}(Linux console) detected ${red}### + -------------------------------------------" + YELLOW " + + ### Default Keyboard Layout ('us') selected + " + ok + return 0 + fi YELLOW " > Select your Keyboard Layout @@ -752,7 +768,7 @@ Enter your keyboard layout ${bwhite}(empty for 'us')${blue}: " sleep 0.2 YELLOW " - ### us Keyboard Layout has been selected + ### 'us' Keyboard Layout has been selected " elif [[ "${SETKBD}" == "l" ]]; then localectl list-keymaps | less @@ -766,7 +782,7 @@ Enter your keyboard layout ${bwhite}(empty for 'us')${blue}: " ### ${SETKBD} Keyboard Layout has been selected " - loadkeys "${SETKBD}" > /dev/null 2> amelia_log.txt || stage_fail + loadkeys "${SETKBD}" > ${void} 2> ${log} || stage_fail fi ok } @@ -1138,7 +1154,7 @@ Enter [Y/n]: " if [[ "${sb_sign}" == "y" ]]; then local prompt="Secure Boot 'Setup' Mode Verification" - SB_Status="$(bootctl status 2> /dev/null | grep -E 'Secure Boot' | awk "{print \$4}")" + SB_Status="$(bootctl status 2> ${void} | grep -E 'Secure Boot' | awk "{print \$4}")" if [[ ${SB_Status} == "(setup)" ]]; then ok else @@ -2082,7 +2098,7 @@ ${magenta}###${nc}------------------------------------${magenta}[ ${bwhite}Deskt " deskpkgs="" custompkgs="" - console="" + terminal="" local prompt="Desktop Selection" sleep 0.2 YELLOW " @@ -2806,7 +2822,7 @@ ${magenta}###${nc}----------------------------------${magenta}[ ${bwhite}General BLUE " -Enter [Y/n]: " +Enter [Y/n/v]: " read -r -p " ==> " genoptm @@ -2882,7 +2898,7 @@ Enter your Country Code, ie:${nc} ${cyan}US ${bwhite}(empty to skip)${blue}: " ------------------------------------------------------" reload return 1 - elif ! grep \""${REGDOM}"\" /etc/conf.d/wireless-regdom > /dev/null 2>&1 ; then + elif ! grep \""${REGDOM}"\" /etc/conf.d/wireless-regdom > ${void} 2>&1 ; then invalid return 1 else @@ -3635,11 +3651,11 @@ partitioner() { fi if [[ "${preset}" == "1" ]]; then - wipefs -af "${sgdrive}" > /dev/null 2> amelia_log.txt || stage_fail - sgdisk -o "${sgdrive}" > /dev/null 2> amelia_log.txt || stage_fail - sgdisk -I -n1:0:+512M -t1:ef00 -c1:ESP "${sgdrive}" > /dev/null 2> amelia_log.txt || stage_fail - sgdisk -I -n2:0:0 -t2:8304 -c2:ROOT "${sgdrive}" > /dev/null 2> amelia_log.txt || stage_fail - partprobe -s "${sgdrive}" > /dev/null 2> amelia_log.txt || stage_fail + wipefs -af "${sgdrive}" > ${void} 2> ${log} || stage_fail + sgdisk -o "${sgdrive}" > ${void} 2> ${log} || stage_fail + sgdisk -I -n1:0:+512M -t1:ef00 -c1:ESP "${sgdrive}" > ${void} 2> ${log} || stage_fail + sgdisk -I -n2:0:0 -t2:8304 -c2:ROOT "${sgdrive}" > ${void} 2> ${log} || stage_fail + partprobe -s "${sgdrive}" > ${void} 2> ${log} || stage_fail if [[ "${install}" == "yes" ]]; then until sanity_check; do : ; done else @@ -3647,38 +3663,38 @@ partitioner() { fi elif [[ "${preset}" == "2" ]]; then until set_swapsize; do : ; done - wipefs -af "${sgdrive}" > /dev/null 2> amelia_log.txt || stage_fail - sgdisk -o "${sgdrive}" > /dev/null 2> amelia_log.txt || stage_fail - sgdisk -I -n1:0:+512M -t1:ef00 -c1:ESP "${sgdrive}" > /dev/null 2> amelia_log.txt || stage_fail - sgdisk -I -n2:0:+"${swapsize}"G -t2:8200 -c2:SWAP "${sgdrive}" > /dev/null 2> amelia_log.txt || stage_fail - sgdisk -I -n3:0:0 -t3:8304 -c3:ROOT "${sgdrive}" > /dev/null 2> amelia_log.txt || stage_fail - partprobe -s "${sgdrive}" > /dev/null 2> amelia_log.txt || stage_fail + wipefs -af "${sgdrive}" > ${void} 2> ${log} || stage_fail + sgdisk -o "${sgdrive}" > ${void} 2> ${log} || stage_fail + sgdisk -I -n1:0:+512M -t1:ef00 -c1:ESP "${sgdrive}" > ${void} 2> ${log} || stage_fail + sgdisk -I -n2:0:+"${swapsize}"G -t2:8200 -c2:SWAP "${sgdrive}" > ${void} 2> ${log} || stage_fail + sgdisk -I -n3:0:0 -t3:8304 -c3:ROOT "${sgdrive}" > ${void} 2> ${log} || stage_fail + partprobe -s "${sgdrive}" > ${void} 2> ${log} || stage_fail if [[ "${install}" == "yes" ]]; then until sanity_check; do : ; done else ok fi elif [[ "${preset}" == "3" ]]; then - wipefs -af "${sgdrive}" > /dev/null 2> amelia_log.txt || stage_fail - sgdisk -o "${sgdrive}" > /dev/null 2> amelia_log.txt || stage_fail - sgdisk -I -n1:0:+512M -t1:ef00 -c1:ESP "${sgdrive}" > /dev/null 2> amelia_log.txt || stage_fail - sgdisk -I -n2:0:+"${rootsize}"G -t2:8304 -c2:ROOT "${sgdrive}" > /dev/null 2> amelia_log.txt || stage_fail - sgdisk -I -n3:0:0 -t3:8302 -c3:HOME "${sgdrive}" > /dev/null 2> amelia_log.txt || stage_fail - partprobe -s "${sgdrive}" > /dev/null 2> amelia_log.txt || stage_fail + wipefs -af "${sgdrive}" > ${void} 2> ${log} || stage_fail + sgdisk -o "${sgdrive}" > ${void} 2> ${log} || stage_fail + sgdisk -I -n1:0:+512M -t1:ef00 -c1:ESP "${sgdrive}" > ${void} 2> ${log} || stage_fail + sgdisk -I -n2:0:+"${rootsize}"G -t2:8304 -c2:ROOT "${sgdrive}" > ${void} 2> ${log} || stage_fail + sgdisk -I -n3:0:0 -t3:8302 -c3:HOME "${sgdrive}" > ${void} 2> ${log} || stage_fail + partprobe -s "${sgdrive}" > ${void} 2> ${log} || stage_fail if [[ "${install}" == "yes" ]]; then until sanity_check; do : ; done else ok fi elif [[ "${preset}" == "4" ]]; then - wipefs -af "${sgdrive}" > /dev/null 2> amelia_log.txt || stage_fail + wipefs -af "${sgdrive}" > ${void} 2> ${log} || stage_fail until set_swapsize; do : ; done - sgdisk -o "${sgdrive}" > /dev/null 2> amelia_log.txt || stage_fail - sgdisk -I -n1:0:+512M -t1:ef00 -c1:ESP "${sgdrive}" > /dev/null 2> amelia_log.txt || stage_fail - sgdisk -I -n2:0:+"${swapsize}"G -t2:8200 -c2:SWAP "${sgdrive}" > /dev/null 2> amelia_log.txt || stage_fail - sgdisk -I -n3:0:+"${rootsize}"G -t3:8304 -c3:ROOT "${sgdrive}" > /dev/null 2> amelia_log.txt || stage_fail - sgdisk -I -n4:0:0 -t4:8302 -c4:HOME "${sgdrive}" > /dev/null 2> amelia_log.txt || stage_fail - partprobe -s "${sgdrive}" > /dev/null 2> amelia_log.txt || stage_fail + sgdisk -o "${sgdrive}" > ${void} 2> ${log} || stage_fail + sgdisk -I -n1:0:+512M -t1:ef00 -c1:ESP "${sgdrive}" > ${void} 2> ${log} || stage_fail + sgdisk -I -n2:0:+"${swapsize}"G -t2:8200 -c2:SWAP "${sgdrive}" > ${void} 2> ${log} || stage_fail + sgdisk -I -n3:0:+"${rootsize}"G -t3:8304 -c3:ROOT "${sgdrive}" > ${void} 2> ${log} || stage_fail + sgdisk -I -n4:0:0 -t4:8302 -c4:HOME "${sgdrive}" > ${void} 2> ${log} || stage_fail + partprobe -s "${sgdrive}" > ${void} 2> ${log} || stage_fail if [[ "${install}" == "yes" ]]; then until sanity_check; do : ; done else @@ -3751,7 +3767,7 @@ Enter a disk number ${bwhite}(empty to skip)${blue}: " cgdisk "${cgdrive}" clear ok - partprobe -s "${cgdrive}" > /dev/null + partprobe -s "${cgdrive}" > ${void} else invalid return 1 @@ -4803,7 +4819,7 @@ swappart() { NC " ${magenta}###${nc}----------------------------------${magenta}[ ${bwhite}Swap Partition Setup${nc} ${magenta}]${nc}----------------------------------${magenta}### " - if mkswap "${swap_dev}" > /dev/null 2> amelia_log.txt ; then + if mkswap "${swap_dev}" > ${void} 2> ${log} ; then stage_ok else stage_fail @@ -4905,9 +4921,9 @@ ${magenta}###${nc}----------------------------------------${magenta}[ ${bwhite}A " if [[ "${fs}" == "1" ]]; then - if mkfs.ext4 -F -L Root "${root_dev}" > /dev/null 2> amelia_log.txt ; then - tune2fs -O fast_commit "${root_dev}" > /dev/null 2> amelia_log.txt || err_abort - mount "${root_dev}" /mnt > /dev/null 2> amelia_log.txt || err_abort + if mkfs.ext4 -F -L Root "${root_dev}" > ${void} 2> ${log} ; then + tune2fs -O fast_commit "${root_dev}" > ${void} 2> ${log} || err_abort + mount "${root_dev}" /mnt > ${void} 2> ${log} || err_abort sleep 0.2 NC " ==> [${green}/Root OK${nc}] @@ -4919,27 +4935,27 @@ ${magenta}###${nc}----------------------------------------${magenta}[ ${bwhite}A fi #-------------------------------------------------------------------------------------------------- elif [[ "${fs}" == "2" ]]; then - if mkfs.btrfs -f -L Root "${root_dev}" > /dev/null 2> amelia_log.txt ; then - mount "${root_dev}" /mnt > /dev/null 2> amelia_log.txt || err_abort - btrfs subvolume create /mnt/@ > /dev/null 2> amelia_log.txt || err_abort - btrfs subvolume create /mnt/@home > /dev/null 2> amelia_log.txt || err_abort - btrfs subvolume create /mnt/@cache > /dev/null 2> amelia_log.txt || err_abort - btrfs subvolume create /mnt/@log > /dev/null 2> amelia_log.txt || err_abort - btrfs subvolume create /mnt/@tmp > /dev/null 2> amelia_log.txt || err_abort - btrfs subvolume create /mnt/@snapshots > /dev/null 2> amelia_log.txt || err_abort + if mkfs.btrfs -f -L Root "${root_dev}" > ${void} 2> ${log} ; then + mount "${root_dev}" /mnt > ${void} 2> ${log} || err_abort + btrfs subvolume create /mnt/@ > ${void} 2> ${log} || err_abort + btrfs subvolume create /mnt/@home > ${void} 2> ${log} || err_abort + btrfs subvolume create /mnt/@cache > ${void} 2> ${log} || err_abort + btrfs subvolume create /mnt/@log > ${void} 2> ${log} || err_abort + btrfs subvolume create /mnt/@tmp > ${void} 2> ${log} || err_abort + btrfs subvolume create /mnt/@snapshots > ${void} 2> ${log} || err_abort if [[ "${swapmode}" == "2" ]]; then - btrfs subvolume create /mnt/@swap > /dev/null 2> amelia_log.txt || err_abort + btrfs subvolume create /mnt/@swap > ${void} 2> ${log} || err_abort fi - umount /mnt > /dev/null 2> amelia_log.txt || err_abort - mount -o "${sbvl_mnt_opts}",subvol=@ "${root_dev}" /mnt > /dev/null 2> amelia_log.txt || err_abort + umount /mnt > ${void} 2> ${log} || err_abort + mount -o "${sbvl_mnt_opts}",subvol=@ "${root_dev}" /mnt > ${void} 2> ${log} || err_abort if [[ "${swapmode}" == "2" ]]; then - mount --mkdir -o rw,nodatacow,subvol=@swap "${root_dev}" /mnt/swap > /dev/null 2> amelia_log.txt || err_abort + mount --mkdir -o rw,nodatacow,subvol=@swap "${root_dev}" /mnt/swap > ${void} 2> ${log} || err_abort fi - mount --mkdir -o "${sbvl_mnt_opts}",subvol=@cache "${root_dev}" /mnt/var/cache > /dev/null 2> amelia_log.txt || err_abort - mount --mkdir -o "${sbvl_mnt_opts}",subvol=@home "${root_dev}" /mnt/home > /dev/null 2> amelia_log.txt || err_abort - mount --mkdir -o "${sbvl_mnt_opts}",subvol=@log "${root_dev}" /mnt/var/log > /dev/null 2> amelia_log.txt || err_abort - mount --mkdir -o "${sbvl_mnt_opts}",subvol=@snapshots "${root_dev}" /mnt/"${snapname}" > /dev/null 2> amelia_log.txt || err_abort - mount --mkdir -o "${sbvl_mnt_opts}",subvol=@tmp "${root_dev}" /mnt/var/tmp > /dev/null 2> amelia_log.txt || err_abort + mount --mkdir -o "${sbvl_mnt_opts}",subvol=@cache "${root_dev}" /mnt/var/cache > ${void} 2> ${log} || err_abort + mount --mkdir -o "${sbvl_mnt_opts}",subvol=@home "${root_dev}" /mnt/home > ${void} 2> ${log} || err_abort + mount --mkdir -o "${sbvl_mnt_opts}",subvol=@log "${root_dev}" /mnt/var/log > ${void} 2> ${log} || err_abort + mount --mkdir -o "${sbvl_mnt_opts}",subvol=@snapshots "${root_dev}" /mnt/"${snapname}" > ${void} 2> ${log} || err_abort + mount --mkdir -o "${sbvl_mnt_opts}",subvol=@tmp "${root_dev}" /mnt/var/tmp > ${void} 2> ${log} || err_abort sleep 0.2 NC " ==> [${green}/@ OK${nc}] @@ -4953,8 +4969,8 @@ ${magenta}###${nc}----------------------------------------${magenta}[ ${bwhite}A sleep 0.2 #-------------------------------------------------------------------------------------------------- if [[ "${multibooting}" == "n" ]]; then - if mkfs.fat -F 32 -n ESP "${esp_dev}" > /dev/null 2> amelia_log.txt ; then - mount --mkdir "${esp_dev}" "${esp_mount}" > /dev/null 2> amelia_log.txt || err_abort + if mkfs.fat -F 32 -n ESP "${esp_dev}" > ${void} 2> ${log} ; then + mount --mkdir "${esp_dev}" "${esp_mount}" > ${void} 2> ${log} || err_abort sleep 0.2 NC " ==> [${green}/ESP OK${nc}] @@ -4966,7 +4982,7 @@ ${magenta}###${nc}----------------------------------------${magenta}[ ${bwhite}A until mount_esp; do : ; done fi elif [[ "${multibooting}" == "y" && "${espfs}" == "vfat" ]]; then - if mount --mkdir "${esp_dev}" "${esp_mount}" > /dev/null 2> amelia_log.txt ; then + if mount --mkdir "${esp_dev}" "${esp_mount}" > ${void} 2> ${log} ; then sleep 0.2 NC " ==> [${green}Unformatted /ESP OK${nc}] @@ -4977,8 +4993,8 @@ ${magenta}###${nc}----------------------------------------${magenta}[ ${bwhite}A until mount_esp; do : ; done fi elif [[ "${multibooting}" == "y" && "${espfs}" != "vfat" ]]; then - if mkfs.fat -F 32 -n ESP "${esp_dev}" > /dev/null 2> amelia_log.txt ; then - mount --mkdir "${esp_dev}" "${esp_mount}" > /dev/null 2> amelia_log.txt || err_abort + if mkfs.fat -F 32 -n ESP "${esp_dev}" > ${void} 2> ${log} ; then + mount --mkdir "${esp_dev}" "${esp_mount}" > ${void} 2> ${log} || err_abort sleep 0.2 NC " ==> [${green}/ESP OK${nc}] @@ -4993,8 +5009,8 @@ ${magenta}###${nc}----------------------------------------${magenta}[ ${bwhite}A sleep 0.2 #-------------------------------------------------------------------------------------------------- if [[ ${xbootloader} == "yes" ]]; then - if mkfs.fat -F 32 -n XBOOTLDR "${xboot_dev}" > /dev/null 2> amelia_log.txt ; then - mount --mkdir "${xboot_dev}" /mnt/boot > /dev/null 2> amelia_log.txt || err_abort + if mkfs.fat -F 32 -n XBOOTLDR "${xboot_dev}" > ${void} 2> ${log} ; then + mount --mkdir "${xboot_dev}" /mnt/boot > ${void} 2> ${log} || err_abort sleep 0.2 NC " ==> [${green}/XBOOTLDR OK${nc}] @@ -5030,9 +5046,9 @@ ${magenta}###${nc}----------------------------------------${magenta}[ ${bwhite}A fi if [[ "${homeform}" == "y" ]]; then - if mkfs.ext4 -F -L Home "${home_dev}" > /dev/null 2> amelia_log.txt ; then - tune2fs -O fast_commit "${home_dev}" > /dev/null 2> amelia_log.txt || err_abort - mount --mkdir "${home_dev}" /mnt/home > /dev/null 2> amelia_log.txt || err_abort + if mkfs.ext4 -F -L Home "${home_dev}" > ${void} 2> ${log} ; then + tune2fs -O fast_commit "${home_dev}" > ${void} 2> ${log} || err_abort + mount --mkdir "${home_dev}" /mnt/home > ${void} 2> ${log} || err_abort sleep 0.2 NC " ==> [${green}/Home OK${nc}] @@ -5108,7 +5124,7 @@ Enter a partition number ${bwhite}(empty to skip and proceed)${blue}: " manespfs="$(lsblk -dno FSTYPE "${esppart}")" if [[ -e "${esppart}" ]]; then if [[ "${multibooting}" == "n" ]]; then - if mkfs.fat -F 32 -n ESP "${esppart}" > /dev/null 2> amelia_log.txt ; then + if mkfs.fat -F 32 -n ESP "${esppart}" > ${void} 2> ${log} ; then sleep 0.2 NC " @@ -5127,7 +5143,7 @@ Enter a partition number ${bwhite}(empty to skip and proceed)${blue}: " ==> [${green}/Unformatted ESP OK${nc}] " return 0 elif [[ "${multibooting}" == "y" && "${manespfs}" != "vfat" ]]; then - if mkfs.fat -F 32 -n ESP "${esppart}" > /dev/null 2> amelia_log.txt ; then + if mkfs.fat -F 32 -n ESP "${esppart}" > ${void} 2> ${log} ; then sleep 0.2 NC " @@ -5181,7 +5197,7 @@ Enter a partition number ${bwhite}(empty to skip and proceed)${blue}: " if [[ -n "${form_xboot_nmbr}" ]]; then xbootpart="$(echo "${volumes}" | awk "\$1 == ${form_xboot_nmbr} {print \$2}")" if [[ -e "${xbootpart}" ]]; then - if mkfs.fat -F 32 -n XBOOTLDR "${xbootpart}" > /dev/null 2> amelia_log.txt ; then + if mkfs.fat -F 32 -n XBOOTLDR "${xbootpart}" > ${void} 2> ${log} ; then sleep 0.2 NC " @@ -5236,8 +5252,8 @@ Enter a partition number ${bwhite}(empty to skip and proceed)${blue}: " if [[ -e "${rootpart}" ]]; then #-------------------------------------------------------------------------------------------------- if [[ "${fs}" == "1" ]]; then - if mkfs.ext4 -F "${rootpart}" > /dev/null 2> amelia_log.txt ; then - tune2fs -O fast_commit "${rootpart}" > /dev/null 2> amelia_log.txt || err_abort + if mkfs.ext4 -F "${rootpart}" > ${void} 2> ${log} ; then + tune2fs -O fast_commit "${rootpart}" > ${void} 2> ${log} || err_abort sleep 0.2 NC " @@ -5251,18 +5267,18 @@ Enter a partition number ${bwhite}(empty to skip and proceed)${blue}: " fi #-------------------------------------------------------------------------------------------------- elif [[ "${fs}" == "2" ]]; then - if mkfs.btrfs -f "${rootpart}" > /dev/null 2> amelia_log.txt ; then - mount "${rootpart}" /mnt > /dev/null 2> amelia_log.txt || err_abort - btrfs subvolume create /mnt/@ > /dev/null 2> amelia_log.txt || err_abort - btrfs subvolume create /mnt/@home > /dev/null 2> amelia_log.txt || err_abort - btrfs subvolume create /mnt/@cache > /dev/null 2> amelia_log.txt || err_abort - btrfs subvolume create /mnt/@log > /dev/null 2> amelia_log.txt || err_abort - btrfs subvolume create /mnt/@tmp > /dev/null 2> amelia_log.txt || err_abort - btrfs subvolume create /mnt/@snapshots > /dev/null 2> amelia_log.txt || err_abort + if mkfs.btrfs -f "${rootpart}" > ${void} 2> ${log} ; then + mount "${rootpart}" /mnt > ${void} 2> ${log} || err_abort + btrfs subvolume create /mnt/@ > ${void} 2> ${log} || err_abort + btrfs subvolume create /mnt/@home > ${void} 2> ${log} || err_abort + btrfs subvolume create /mnt/@cache > ${void} 2> ${log} || err_abort + btrfs subvolume create /mnt/@log > ${void} 2> ${log} || err_abort + btrfs subvolume create /mnt/@tmp > ${void} 2> ${log} || err_abort + btrfs subvolume create /mnt/@snapshots > ${void} 2> ${log} || err_abort if [[ "${swapmode}" == "2" ]]; then - btrfs subvolume create /mnt/@swap > /dev/null 2> amelia_log.txt || err_abort + btrfs subvolume create /mnt/@swap > ${void} 2> ${log} || err_abort fi - umount /mnt > /dev/null 2> amelia_log.txt || err_abort + umount /mnt > ${void} 2> ${log} || err_abort sleep 0.2 NC " @@ -5292,7 +5308,7 @@ Enter a name ${bwhite}(empty to skip and proceed)${blue}: " if [[ -n "${rootpartname}" ]]; then if [[ "${fs}" == "1" ]]; then - if e2label "${rootpart}" "${rootpartname}" > /dev/null 2> amelia_log.txt ; then + if e2label "${rootpart}" "${rootpartname}" > ${void} 2> ${log} ; then sleep 0.2 NC " @@ -5304,7 +5320,7 @@ Enter a name ${bwhite}(empty to skip and proceed)${blue}: " fi elif [[ "${fs}" == "2" ]]; then mount "${rootpart}" /mnt || err_abort - btrfs filesystem label /mnt "${rootpartname}" > /dev/null 2> amelia_log.txt || err_abort + btrfs filesystem label /mnt "${rootpartname}" > ${void} 2> ${log} || err_abort umount /mnt || err_abort sleep 0.2 NC " @@ -5350,9 +5366,9 @@ ask_homepart_form() { fi if [[ "${homeform}" == "y" ]]; then - if mkfs.ext4 -F -L Home "${home_dev}" > /dev/null 2> amelia_log.txt ; then - tune2fs -O fast_commit "${home_dev}" > /dev/null 2> amelia_log.txt || err_abort - mount --mkdir "${home_dev}" /mnt/home > /dev/null 2> amelia_log.txt || err_abort + if mkfs.ext4 -F -L Home "${home_dev}" > ${void} 2> ${log} ; then + tune2fs -O fast_commit "${home_dev}" > ${void} 2> ${log} || err_abort + mount --mkdir "${home_dev}" /mnt/home > ${void} 2> ${log} || err_abort sleep 0.2 NC " ==> [${green}/Home OK${nc}] @@ -5405,8 +5421,8 @@ Enter a partition number ${bwhite}(empty to skip and proceed)${blue}: " if [[ -n "${form_home_nmbr}" ]]; then homepart="$(echo "${volumes}" | awk "\$1 == ${form_home_nmbr} {print \$2}")" if [[ -e "${homepart}" ]]; then - if mkfs.ext4 -F "${homepart}" > /dev/null 2> amelia_log.txt ; then - tune2fs -O fast_commit "${homepart}" > /dev/null 2> amelia_log.txt || err_abort + if mkfs.ext4 -F "${homepart}" > ${void} 2> ${log} ; then + tune2fs -O fast_commit "${homepart}" > ${void} 2> ${log} || err_abort sleep 0.2 NC " @@ -5433,7 +5449,7 @@ Enter a name ${bwhite}(empty to skip and proceed)${blue}: " ==> " homepartname if [[ -n "${homepartname}" ]]; then - if e2label "${homepart}" "${homepartname}" > /dev/null 2> amelia_log.txt ;then + if e2label "${homepart}" "${homepartname}" > ${void} 2> ${log} ;then sleep 0.2 NC " @@ -5486,7 +5502,7 @@ Enter your${nc} ${cyan}${roottype} ${blue}partition number: " if [[ -e "${rootpart}" ]]; then #-------------------------------------------------------------------------------------------------- if [[ "${fs}" == "1" ]]; then - if mount "${rootpart}" /mnt > /dev/null 2> amelia_log.txt ; then + if mount "${rootpart}" /mnt > ${void} 2> ${log} ; then sleep 0.2 ok return 0 @@ -5496,15 +5512,15 @@ Enter your${nc} ${cyan}${roottype} ${blue}partition number: " fi #-------------------------------------------------------------------------------------------------- elif [[ "${fs}" == "2" ]]; then - if mount -o "${sbvl_mnt_opts}",subvol=@ "${rootpart}" /mnt > /dev/null 2> amelia_log.txt ; then + if mount -o "${sbvl_mnt_opts}",subvol=@ "${rootpart}" /mnt > ${void} 2> ${log} ; then if [[ "${swapmode}" == "2" ]]; then - mount --mkdir -o rw,nodatacow,subvol=@swap "${rootpart}" /mnt/swap > /dev/null 2> amelia_log.txt || err_abort + mount --mkdir -o rw,nodatacow,subvol=@swap "${rootpart}" /mnt/swap > ${void} 2> ${log} || err_abort fi - mount --mkdir -o "${sbvl_mnt_opts}",subvol=@cache "${rootpart}" /mnt/var/cache > /dev/null 2> amelia_log.txt || err_abort - mount --mkdir -o "${sbvl_mnt_opts}",subvol=@home "${rootpart}" /mnt/home > /dev/null 2> amelia_log.txt || err_abort - mount --mkdir -o "${sbvl_mnt_opts}",subvol=@log "${rootpart}" /mnt/var/log > /dev/null 2> amelia_log.txt || err_abort - mount --mkdir -o "${sbvl_mnt_opts}",subvol=@snapshots "${rootpart}" /mnt/"${snapname}" > /dev/null 2> amelia_log.txt || err_abort - mount --mkdir -o "${sbvl_mnt_opts}",subvol=@tmp "${rootpart}" /mnt/var/tmp > /dev/null 2> amelia_log.txt || err_abort + mount --mkdir -o "${sbvl_mnt_opts}",subvol=@cache "${rootpart}" /mnt/var/cache > ${void} 2> ${log} || err_abort + mount --mkdir -o "${sbvl_mnt_opts}",subvol=@home "${rootpart}" /mnt/home > ${void} 2> ${log} || err_abort + mount --mkdir -o "${sbvl_mnt_opts}",subvol=@log "${rootpart}" /mnt/var/log > ${void} 2> ${log} || err_abort + mount --mkdir -o "${sbvl_mnt_opts}",subvol=@snapshots "${rootpart}" /mnt/"${snapname}" > ${void} 2> ${log} || err_abort + mount --mkdir -o "${sbvl_mnt_opts}",subvol=@tmp "${rootpart}" /mnt/var/tmp > ${void} 2> ${log} || err_abort sleep 0.2 ok return 0 @@ -5551,7 +5567,7 @@ Enter your${nc} ${cyan}/ESP ${blue}partition number: " if [[ -n "${mntesp_nmbr}" ]]; then esppart="$(echo "${volumes}" | awk "\$1 == ${mntesp_nmbr} {print \$2}")" if [[ -e "${esppart}" ]]; then - if mount --mkdir "${esppart}" "${esp_mount}" > /dev/null 2> amelia_log.txt ; then + if mount --mkdir "${esppart}" "${esp_mount}" > ${void} 2> ${log} ; then ok return 0 else @@ -5596,7 +5612,7 @@ Enter your${nc} ${cyan}/XBOOTLDR ${blue}partition number: " if [[ -n "${mntxboot_nmbr}" ]]; then xbootpart="$(echo "${volumes}" | awk "\$1 == ${mntxboot_nmbr} {print \$2}")" if [[ -e "${xbootpart}" ]]; then - if mount --mkdir "${xbootpart}" /mnt/boot > /dev/null 2> amelia_log.txt ; then + if mount --mkdir "${xbootpart}" /mnt/boot > ${void} 2> ${log} ; then ok return 0 else @@ -5642,7 +5658,7 @@ Enter your${nc} ${cyan}/Home ${blue}partition number: " if [[ -n "${mnthome_nmbr}" ]]; then homepart="$(echo "${volumes}" | awk "\$1 == ${mnthome_nmbr} {print \$2}")" if [[ -e "${homepart}" ]]; then - if mount --mkdir "${homepart}" /mnt/home > /dev/null 2> amelia_log.txt ; then + if mount --mkdir "${homepart}" /mnt/home > ${void} 2> ${log} ; then ok return 0 else @@ -5708,7 +5724,7 @@ ${magenta}###${nc}-------------------------------${magenta}[ ${bwhite}Confirm In revise() { revision="yes" - reset=(xbootloader="" gfxconf="" vendor_slct="" vendor="" desktop="" custompkgs="" customservices="" cust_bootopts="" REGDOM="" autoroot="" autoxboot="" autohome="" autoswap="" vendors="" lowlat="" nogsp="" sanity="" smartpart="" partok="" preset="" presetpart="" set_optm="" ask_param="" kill_watchdog="" genoptm="" desk_setup="" devel="" web="" web_browser="" web_slct="" set_optm_slct="" oomd="" irqbalance="" thermald="" rngd="" rtkit="" tlp="") + reset=(xbootloader="" gfxconf="" vendor_slct="" vendor="" desktop="" terminal="" custompkgs="" customservices="" cust_bootopts="" REGDOM="" autoroot="" autoxboot="" autohome="" autoswap="" vendors="" lowlat="" nogsp="" sanity="" smartpart="" partok="" preset="" presetpart="" set_optm="" ask_param="" kill_watchdog="" genoptm="" desk_setup="" devel="" web="" web_browser="" web_slct="" set_optm_slct="" oomd="" irqbalance="" thermald="" rngd="" rtkit="" tlp="") export "${reset[@]}" gfxpkgs=() @@ -5847,9 +5863,9 @@ ${magenta}###${nc}-------------------------------------${magenta}[ ${bwhite}LUKS fi #------------------------------------------------------------------------------------------ if [[ "${fs}" == "1" ]]; then - mkfs.ext4 -F -L Root /dev/mapper/"${ENCROOT}" > /dev/null 2> amelia_log.txt || err_abort - tune2fs -O fast_commit /dev/mapper/"${ENCROOT}" > /dev/null 2> amelia_log.txt || err_abort - mount /dev/mapper/"${ENCROOT}" /mnt > /dev/null 2> amelia_log.txt || err_abort + mkfs.ext4 -F -L Root /dev/mapper/"${ENCROOT}" > ${void} 2> ${log} || err_abort + tune2fs -O fast_commit /dev/mapper/"${ENCROOT}" > ${void} 2> ${log} || err_abort + mount /dev/mapper/"${ENCROOT}" /mnt > ${void} 2> ${log} || err_abort sleep 0.2 NC " ==> [${green}Encrypted /Root OK${nc}] @@ -5857,27 +5873,27 @@ ${magenta}###${nc}-------------------------------------${magenta}[ ${bwhite}LUKS luks_root="ok" #------------------------------------------------------------------------------------------ elif [[ "${fs}" == "2" ]]; then - mkfs.btrfs -f -L Root /dev/mapper/"${ENCROOT}" > /dev/null 2> amelia_log.txt || err_abort - mount /dev/mapper/"${ENCROOT}" /mnt > /dev/null 2> amelia_log.txt || err_abort - btrfs subvolume create /mnt/@ > /dev/null 2> amelia_log.txt || err_abort - btrfs subvolume create /mnt/@home > /dev/null 2> amelia_log.txt || err_abort - btrfs subvolume create /mnt/@cache > /dev/null 2> amelia_log.txt || err_abort - btrfs subvolume create /mnt/@log > /dev/null 2> amelia_log.txt || err_abort - btrfs subvolume create /mnt/@snapshots > /dev/null 2> amelia_log.txt || err_abort - btrfs subvolume create /mnt/@tmp > /dev/null 2> amelia_log.txt || err_abort + mkfs.btrfs -f -L Root /dev/mapper/"${ENCROOT}" > ${void} 2> ${log} || err_abort + mount /dev/mapper/"${ENCROOT}" /mnt > ${void} 2> ${log} || err_abort + btrfs subvolume create /mnt/@ > ${void} 2> ${log} || err_abort + btrfs subvolume create /mnt/@home > ${void} 2> ${log} || err_abort + btrfs subvolume create /mnt/@cache > ${void} 2> ${log} || err_abort + btrfs subvolume create /mnt/@log > ${void} 2> ${log} || err_abort + btrfs subvolume create /mnt/@snapshots > ${void} 2> ${log} || err_abort + btrfs subvolume create /mnt/@tmp > ${void} 2> ${log} || err_abort if [[ "${swapmode}" == "2" ]]; then - btrfs subvolume create /mnt/@swap > /dev/null 2> amelia_log.txt || err_abort + btrfs subvolume create /mnt/@swap > ${void} 2> ${log} || err_abort fi - umount /mnt > /dev/null 2> amelia_log.txt || err_abort - mount -o "${sbvl_mnt_opts}",subvol=@ /dev/mapper/"${ENCROOT}" /mnt > /dev/null 2> amelia_log.txt || err_abort + umount /mnt > ${void} 2> ${log} || err_abort + mount -o "${sbvl_mnt_opts}",subvol=@ /dev/mapper/"${ENCROOT}" /mnt > ${void} 2> ${log} || err_abort if [[ "${swapmode}" == "2" ]]; then - mount --mkdir -o rw,nodatacow,subvol=@swap /dev/mapper/"${ENCROOT}" /mnt/swap > /dev/null 2> amelia_log.txt || err_abort + mount --mkdir -o rw,nodatacow,subvol=@swap /dev/mapper/"${ENCROOT}" /mnt/swap > ${void} 2> ${log} || err_abort fi - mount --mkdir -o "${sbvl_mnt_opts}",subvol=@cache /dev/mapper/"${ENCROOT}" /mnt/var/cache > /dev/null 2> amelia_log.txt || err_abort - mount --mkdir -o "${sbvl_mnt_opts}",subvol=@home /dev/mapper/"${ENCROOT}" /mnt/home > /dev/null 2> amelia_log.txt || err_abort - mount --mkdir -o "${sbvl_mnt_opts}",subvol=@log /dev/mapper/"${ENCROOT}" /mnt/var/log > /dev/null 2> amelia_log.txt || err_abort - mount --mkdir -o "${sbvl_mnt_opts}",subvol=@snapshots /dev/mapper/"${ENCROOT}" /mnt/"${snapname}" > /dev/null 2> amelia_log.txt || err_abort - mount --mkdir -o "${sbvl_mnt_opts}",subvol=@tmp /dev/mapper/"${ENCROOT}" /mnt/var/tmp > /dev/null 2> amelia_log.txt || err_abort + mount --mkdir -o "${sbvl_mnt_opts}",subvol=@cache /dev/mapper/"${ENCROOT}" /mnt/var/cache > ${void} 2> ${log} || err_abort + mount --mkdir -o "${sbvl_mnt_opts}",subvol=@home /dev/mapper/"${ENCROOT}" /mnt/home > ${void} 2> ${log} || err_abort + mount --mkdir -o "${sbvl_mnt_opts}",subvol=@log /dev/mapper/"${ENCROOT}" /mnt/var/log > ${void} 2> ${log} || err_abort + mount --mkdir -o "${sbvl_mnt_opts}",subvol=@snapshots /dev/mapper/"${ENCROOT}" /mnt/"${snapname}" > ${void} 2> ${log} || err_abort + mount --mkdir -o "${sbvl_mnt_opts}",subvol=@tmp /dev/mapper/"${ENCROOT}" /mnt/var/tmp > ${void} 2> ${log} || err_abort sleep 0.2 NC " ==> [${green}Encrypted /@ OK${nc}] @@ -5899,7 +5915,7 @@ ${magenta}###${nc}-------------------------------------${magenta}[ ${bwhite}LUKS else cryptsetup luksOpen "${swap_dev}" swap || err_abort fi - mkswap /dev/mapper/swap > /dev/null 2> amelia_log.txt || err_abort + mkswap /dev/mapper/swap > ${void} 2> ${log} || err_abort sleep 0.2 NC " ==> [${green}Encrypted /Swap OK${nc}] @@ -5921,9 +5937,9 @@ ${magenta}###${nc}-------------------------------------${magenta}[ ${bwhite}LUKS else cryptsetup luksOpen "${home_dev}" "${ENCRHOME}" || err_abort fi - mkfs.ext4 -F -L Home /dev/mapper/"${ENCRHOME}" > /dev/null 2> amelia_log.txt || err_abort - tune2fs -O fast_commit /dev/mapper/"${ENCRHOME}" > /dev/null 2> amelia_log.txt || err_abort - mount --mkdir /dev/mapper/"${ENCRHOME}" /mnt/home > /dev/null 2> amelia_log.txt || err_abort + mkfs.ext4 -F -L Home /dev/mapper/"${ENCRHOME}" > ${void} 2> ${log} || err_abort + tune2fs -O fast_commit /dev/mapper/"${ENCRHOME}" > ${void} 2> ${log} || err_abort + mount --mkdir /dev/mapper/"${ENCRHOME}" /mnt/home > ${void} 2> ${log} || err_abort sleep 0.2 NC " ==> [${green}Encrypted /Home OK${nc}] @@ -5949,9 +5965,9 @@ ${magenta}###${nc}-------------------------------------${magenta}[ ${bwhite}LUKS homeform="${homeform,,}" if [[ "${homeform}" == "y" ]]; then - if mkfs.ext4 -F -L Home "${home_dev}" > /dev/null 2> amelia_log.txt ; then - tune2fs -O fast_commit "${home_dev}" > /dev/null 2> amelia_log.txt || err_abort - mount --mkdir "${home_dev}" /mnt/home > /dev/null 2> amelia_log.txt || err_abort + if mkfs.ext4 -F -L Home "${home_dev}" > ${void} 2> ${log} ; then + tune2fs -O fast_commit "${home_dev}" > ${void} 2> ${log} || err_abort + mount --mkdir "${home_dev}" /mnt/home > ${void} 2> ${log} || err_abort sleep 0.2 NC " ==> [${green}/Home OK${nc}] @@ -5971,8 +5987,8 @@ ${magenta}###${nc}-------------------------------------${magenta}[ ${bwhite}LUKS fi #-------------------------------------------------------------------------------------------------- if [[ "${multibooting}" == "n" ]]; then - if mkfs.fat -F 32 -n ESP "${esp_dev}" > /dev/null 2> amelia_log.txt ; then - mount --mkdir "${esp_dev}" "${esp_mount}" > /dev/null 2> amelia_log.txt || err_abort + if mkfs.fat -F 32 -n ESP "${esp_dev}" > ${void} 2> ${log} ; then + mount --mkdir "${esp_dev}" "${esp_mount}" > ${void} 2> ${log} || err_abort sleep 0.2 NC " ==> [${green}/ESP OK${nc}] @@ -5982,7 +5998,7 @@ ${magenta}###${nc}-------------------------------------${magenta}[ ${bwhite}LUKS until luks; do : ; done fi elif [[ "${multibooting}" == "y" && "${espfs}" == "vfat" ]]; then - if mount --mkdir "${esp_dev}" "${esp_mount}" > /dev/null 2> amelia_log.txt ; then + if mount --mkdir "${esp_dev}" "${esp_mount}" > ${void} 2> ${log} ; then sleep 0.2 NC " ==> [${green}Unformatted /ESP OK${nc}] @@ -5994,8 +6010,8 @@ ${magenta}###${nc}-------------------------------------${magenta}[ ${bwhite}LUKS return 1 fi elif [[ "${multibooting}" == "y" && "${espfs}" != "vfat" ]]; then - if mkfs.fat -F 32 -n ESP "${esp_dev}" > /dev/null 2> amelia_log.txt ; then - mount --mkdir "${esp_dev}" "${esp_mount}" > /dev/null 2> amelia_log.txt || err_abort + if mkfs.fat -F 32 -n ESP "${esp_dev}" > ${void} 2> ${log} ; then + mount --mkdir "${esp_dev}" "${esp_mount}" > ${void} 2> ${log} || err_abort sleep 0.2 NC " ==> [${green}/ESP OK${nc}] @@ -6007,8 +6023,8 @@ ${magenta}###${nc}-------------------------------------${magenta}[ ${bwhite}LUKS fi #-------------------------------------------------------------------------------------------------- if [[ "${xbootloader}" == "yes" ]] ; then - if mkfs.fat -F 32 -n XBOOTLDR "${xboot_dev}" > /dev/null 2> amelia_log.txt ; then - mount --mkdir "${xboot_dev}" /mnt/boot > /dev/null 2> amelia_log.txt || err_abort + if mkfs.fat -F 32 -n XBOOTLDR "${xboot_dev}" > ${void} 2> ${log} ; then + mount --mkdir "${xboot_dev}" /mnt/boot > ${void} 2> ${log} || err_abort sleep 0.2 NC " ==> [${green}/XBOOTLDR OK${nc}] @@ -6153,6 +6169,9 @@ ${magenta}###${nc}-------------------------------------${magenta}[ ${bwhite}Pacs if [[ ! "${desktop}" =~ ^(11|12)$ ]]; then basepkgs+=(7zip alsa-utils exfatprogs git glibc-locales gst-libav gst-plugin-libcamera gst-plugin-pipewire gst-plugins-bad gst-plugins-good gst-plugins-ugly libfido2 man-db man-pages mesa-utils nano-syntax-highlighting pacman-contrib pipewire-libcamera pipewire-pulse pipewire-zeroconf reflector xdg-user-dirs) fi + if [[ "${terminal}" == "y" ]]; then + basepkgs+=(gnome-terminal) + fi if [[ -n "${ukify}" ]]; then basepkgs+=("${ukify}") fi @@ -6201,7 +6220,7 @@ ${magenta}###${nc}-------------------------------------${magenta}[ ${bwhite}Pacs displaymanager="lightdm" ;; 6) # Cinnamon Desktop: - deskpkgs="${basepkgs[*]} blueman cinnamon ffmpegthumbnailer gnome-color-manager gnome-keyring lightdm-slick-greeter touchegg wget ${terminal}" + deskpkgs="${basepkgs[*]} blueman cinnamon ffmpegthumbnailer gnome-color-manager gnome-keyring lightdm-slick-greeter touchegg wget" displaymanager="lightdm" ;; 7) # Deepin Desktop: @@ -6209,7 +6228,7 @@ ${magenta}###${nc}-------------------------------------${magenta}[ ${bwhite}Pacs displaymanager="lightdm" ;; 8) # Budgie Desktop: - deskpkgs="${basepkgs[*]} blueman budgie gnome-user-share lightdm-gtk-greeter nautilus network-manager-applet openssh papirus-icon-theme power-profiles-daemon rygel ${terminal}" + deskpkgs="${basepkgs[*]} blueman budgie gnome-user-share lightdm-gtk-greeter nautilus network-manager-applet openssh papirus-icon-theme power-profiles-daemon rygel" displaymanager="lightdm" ;; 9) # Lxqt Desktop: @@ -6301,7 +6320,7 @@ swapfile() { ${magenta}###${nc}-------------------------------------${magenta}[ ${bwhite}Swapfile Setup${nc} ${magenta}]${nc}-------------------------------------${magenta}### " - if arch-chroot /mnt <<-SWAPFILE > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-SWAPFILE > ${void} 2>&1 2> ${log} ; then mkswap -U clear --size ${swapsize}G --file /swapfile || exit SWAPFILE cat >> /mnt/etc/fstab <<-FSTAB || err_abort @@ -6322,7 +6341,7 @@ swapfile_btrfs() { ${magenta}###${nc}----------------------------------${magenta}[ ${bwhite}Btrfs Swapfile Setup${nc} ${magenta}]${nc}----------------------------------${magenta}### " - if arch-chroot /mnt <<-SWAPFILE > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-SWAPFILE > ${void} 2>&1 2> ${log} ; then btrfs filesystem mkswapfile --size ${swapsize}g --uuid clear /swap/swapfile || exit SWAPFILE cat >> /mnt/etc/fstab <<-FSTAB || err_abort @@ -6353,7 +6372,7 @@ ${magenta}###${nc}--------------------------${magenta}[ ${bwhite}Setting Up Wire main_chroot() { local stage_prompt="Base System Configuration" - if arch-chroot /mnt <<-CONF > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-CONF > ${void} 2>&1 2> ${log} ; then sed -i "/^#${SETLOCALE}/s/^#//" /etc/locale.gen || exit locale-gen || exit echo LANG=${SETLOCALE} > /etc/locale.conf || exit @@ -6390,7 +6409,7 @@ btldrcfg() { if [[ "${bootloader}" == "1" ]]; then local stage_prompt="Systemd-boot Configuration" if [[ "${xbootloader}" == "no" ]]; then - if arch-chroot /mnt <<-BOOTCTL > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-BOOTCTL > ${void} 2>&1 2> ${log} ; then bootctl install || exit sed -i "/^#timeout 3/s/^#//" ${btldr_esp_mount}/loader/loader.conf || exit systemctl enable systemd-boot-update || exit @@ -6400,7 +6419,7 @@ BOOTCTL stage_fail fi elif [[ "${xbootloader}" == "yes" ]]; then - if arch-chroot /mnt <<-XBOOTCTL > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-XBOOTCTL > ${void} 2>&1 2> ${log} ; then bootctl --esp-path=/efi --boot-path=/boot install || exit sed -i "/^#timeout 3/s/^#//" ${btldr_esp_mount}/loader/loader.conf || exit systemctl enable systemd-boot-update || exit @@ -6412,7 +6431,7 @@ XBOOTCTL fi elif [[ "${bootloader}" == "2" ]]; then local stage_prompt="Grub Configuration" - if arch-chroot /mnt <<-GRUB > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-GRUB > ${void} 2>&1 2> ${log} ; then cp /etc/default/grub /etc/default/grub.bak || exit cat <<-CFG > /etc/default/grub || exit GRUB_DEFAULT=0 @@ -6437,7 +6456,7 @@ GRUB local stage_prompt="Grub Installation" if [[ "${sb_sign}" == "y" ]]; then - if arch-chroot /mnt <<-SBGRUBINST > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-SBGRUBINST > ${void} 2>&1 2> ${log} ; then grub-install --target=${uefimode} --efi-directory=${btldr_esp_mount} --bootloader-id=GRUB --modules="tpm" --disable-shim-lock --recheck || exit sed -i 's/SecureBoot/SecureB00t/' ${btldr_esp_mount}/EFI/GRUB/grubx64.efi || exit grub-mkconfig -o /boot/grub/grub.cfg || exit @@ -6447,7 +6466,7 @@ SBGRUBINST stage_fail fi elif [[ "${sb_sign}" == "n" ]]; then - if arch-chroot /mnt <<-GRUBINST > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-GRUBINST > ${void} 2>&1 2> ${log} ; then grub-install --target=${uefimode} --efi-directory=${btldr_esp_mount} --bootloader-id=GRUB --recheck || exit grub-mkconfig -o /boot/grub/grub.cfg || exit GRUBINST @@ -6459,7 +6478,7 @@ GRUBINST if [[ "${fs}" == "2" ]]; then local stage_prompt="Grub-Btrfsd Service Activation" - if arch-chroot /mnt <<-GRUB_BTRFSD > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-GRUB_BTRFSD > ${void} 2>&1 2> ${log} ; then systemctl enable grub-btrfsd || exit GRUB_BTRFSD stage_ok @@ -6470,7 +6489,7 @@ GRUB_BTRFSD if [[ "${gfxconf}" == "y" && "${vendor}" == "Nvidia" ]]; then local stage_prompt="Grub/Nvidia Configuration" - if arch-chroot /mnt <<-NVGRUB > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-NVGRUB > ${void} 2>&1 2> ${log} ; then sed -i "/^#GRUB_TERMINAL_OUTPUT=console/s/^#//" /etc/default/grub || exit grub-mkconfig -o /boot/grub/grub.cfg || exit NVGRUB @@ -6486,7 +6505,7 @@ trimcfg() { if [[ -n "${trim}" ]]; then local stage_prompt="Trim Service Activation" - if arch-chroot /mnt <<-TRIM > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-TRIM > ${void} 2>&1 2> ${log} ; then systemctl enable ${trim} || exit TRIM stage_ok @@ -6500,7 +6519,7 @@ vm_serv() { if [[ -n "${vm_services}" ]]; then local stage_prompt="VM Service(s) Activation" - if arch-chroot /mnt <<-VM > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-VM > ${void} 2>&1 2> ${log} ; then systemctl enable ${vm_services} || exit VM stage_ok @@ -6515,7 +6534,7 @@ zramcfg() { if [[ -n "${zram}" ]]; then local stage_prompt="Zram Swap Activation" zram_service="systemd-zram-setup@zram0.service" - if arch-chroot /mnt <<-ZRAMCONF > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-ZRAMCONF > ${void} 2>&1 2> ${log} ; then mkdir -p /etc/systemd/zram-generator.conf.d || exit cat <<-ZCONF > /etc/systemd/zram-generator.conf.d/zram.conf || exit [zram0] @@ -6543,7 +6562,7 @@ nvidia_hook() { if [[ "${gfxconf}" == "y" && "${vendor}" == "Nvidia" ]] || [[ "${gfxconf}" == "y" && "${vendors}" =~ "Nvidia" ]]; then if [[ "${nvname}" =~ ^(nvidia-open|nvidia|nvidia-lts)$ ]]; then local stage_prompt="Nvidia Hook Creation" - if arch-chroot /mnt <<-NVIDIAHOOK > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-NVIDIAHOOK > ${void} 2>&1 2> ${log} ; then mkdir -p /etc/pacman.d/hooks/ || exit cat <<-HOOK > /etc/pacman.d/hooks/nvidia.hook || exit [Trigger] @@ -6578,7 +6597,7 @@ mkinitcpio_preset() { if [[ ! -e "${esp_mount}"/EFI/Linux ]]; then mkdir -p "${esp_mount}"/EFI/Linux || exit fi - if arch-chroot /mnt <<-UKI > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-UKI > ${void} 2>&1 2> ${log} ; then mkdir /etc/cmdline.d || exit echo "rw ${boot_opts[*]}" | tee /etc/cmdline.d/cmdlined.conf || exit cp /etc/mkinitcpio.d/${kernel}.preset /etc/mkinitcpio.d/${kernel}.preset.bak || exit @@ -6603,7 +6622,7 @@ UKI fi elif [[ "${uki}" == "n" ]]; then - if arch-chroot /mnt <<-NOUKI > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-NOUKI > ${void} 2>&1 2> ${log} ; then cp /etc/mkinitcpio.d/${kernel}.preset /etc/mkinitcpio.d/${kernel}.preset.bak || exit cat <<-MKINITPRESET > /etc/mkinitcpio.d/${kernel}.preset || exit ALL_config="/etc/mkinitcpio.conf.d/mkinitcpiod.conf" @@ -6625,7 +6644,7 @@ var_opts() { if [[ ${sb_sign} == "y" && "${setrescue}" == "y" ]]; then local stage_prompt="Rescue Entry Creation" if [[ "${bootloader}" == "1" ]]; then - if arch-chroot /mnt <<-RESCUE > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-RESCUE > ${void} 2>&1 2> ${log} ; then echo "systemd.unit=rescue.target rw ${boot_opts[*]}" | tee /etc/cmdline.d/rescue.conf || exit cat <<-PRESET > /etc/mkinitcpio.d/${kernel}.preset || exit ALL_config="/etc/mkinitcpio.conf.d/mkinitcpiod.conf" @@ -6643,7 +6662,7 @@ RESCUE stage_fail fi elif [[ "${bootloader}" == "2" ]]; then - if arch-chroot /mnt <<-RESCUE > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-RESCUE > ${void} 2>&1 2> ${log} ; then touch /boot/grub/custom.cfg grep -E -A 11 "'Arch Linux'" /boot/grub/grub.cfg > /boot/grub/custom.cfg || exit sed -i 's/Arch Linux/Rescue Environment/' /boot/grub/custom.cfg || exit @@ -6658,7 +6677,7 @@ RESCUE if [[ "${multilib}" == "y" ]]; then local stage_prompt="Multilib Configuration" - if arch-chroot /mnt <<-MULTILIB > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-MULTILIB > ${void} 2>&1 2> ${log} ; then sed -i "/\[multilib\]/,/Include/"'s/^#//' /etc/pacman.conf || exit pacman -Syy || exit MULTILIB @@ -6670,7 +6689,7 @@ MULTILIB if [[ "${CPU}" == *"GenuineIntel"* && "${kill_watchdog}" == "y" ]]; then local stage_prompt="Intel Watchdog Configuration" - if arch-chroot /mnt <<-INTEL_WATCHDOG > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-INTEL_WATCHDOG > ${void} 2>&1 2> ${log} ; then echo "blacklist iTCO_wdt" | tee /etc/modprobe.d/blacklist.conf || exit INTEL_WATCHDOG stage_ok @@ -6679,7 +6698,7 @@ INTEL_WATCHDOG fi elif [[ "${CPU}" == *"AuthenticAMD"* && "${kill_watchdog}" == "y" ]]; then local stage_prompt="AMD Watchdog Configuration" - if arch-chroot /mnt <<-AMD_WATCHDOG > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-AMD_WATCHDOG > ${void} 2>&1 2> ${log} ; then echo "blacklist sp5100_tco" | tee /etc/modprobe.d/blacklist.conf || exit AMD_WATCHDOG stage_ok @@ -6690,8 +6709,8 @@ AMD_WATCHDOG if [[ "${oomd}" == "y" ]]; then local stage_prompt="Systemd-oomd Service Activation" - if arch-chroot /mnt <<-OOMD > /dev/null 2>&1 2> amelia_log.txt ; then - mkdir -p /etc/systemd/system.conf.d > /dev/null 2>&1 || exit + if arch-chroot /mnt <<-OOMD > ${void} 2>&1 2> ${log} ; then + mkdir -p /etc/systemd/system.conf.d > ${void} 2>&1 || exit cat <<-OOMD_CONF > /etc/systemd/system.conf.d/00-oomd.conf || exit [Manager] DefaultMemoryAccounting=yes @@ -6706,7 +6725,7 @@ OOMD if [[ "${irqbalance}" == "y" ]]; then local stage_prompt="Irqbalance Service Activation" - if arch-chroot /mnt <<-IRQBALANCE > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-IRQBALANCE > ${void} 2>&1 2> ${log} ; then pacman -S --noconfirm irqbalance || exit systemctl enable irqbalance || exit IRQBALANCE @@ -6718,7 +6737,7 @@ IRQBALANCE if [[ "${thermald}" == "y" ]]; then local stage_prompt="Thermald Service Activation" - if arch-chroot /mnt <<-THERMALD > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-THERMALD > ${void} 2>&1 2> ${log} ; then pacman -S --noconfirm thermald || exit systemctl enable thermald || exit THERMALD @@ -6730,7 +6749,7 @@ THERMALD if [[ "${rngd}" == "y" ]]; then local stage_prompt="Rngd Service Activation" - if arch-chroot /mnt <<-RNGD > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-RNGD > ${void} 2>&1 2> ${log} ; then pacman -S --noconfirm rng-tools || exit systemctl enable rngd || exit RNGD @@ -6742,7 +6761,7 @@ RNGD if [[ "${rtkit}" == "y" ]]; then local stage_prompt="Rtkit Service Activation" - if arch-chroot /mnt <<-RTKIT > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-RTKIT > ${void} 2>&1 2> ${log} ; then pacman -S --noconfirm realtime-privileges rtkit || exit systemctl enable rtkit-daemon || exit usermod -aG realtime ${USERNAME} @@ -6756,7 +6775,7 @@ RTKIT if [[ "${tlp}" == "y" ]]; then local stage_prompt="Power-profiles-daemon Removal" if [[ -e usr/lib/power-profiles-daemon ]]; then - if arch-chroot /mnt <<-PPD > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-PPD > ${void} 2>&1 2> ${log} ; then pacman -Rns --noconfirm power-profiles-daemon || exit PPD stage_ok @@ -6766,7 +6785,7 @@ PPD fi local stage_prompt="Tlp Service Activation" - if arch-chroot /mnt <<-TLP > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-TLP > ${void} 2>&1 2> ${log} ; then pacman -S --noconfirm tlp || exit systemctl enable tlp systemctl mask systemd-rfkill.service systemd-rfkill.socket || exit @@ -6779,7 +6798,7 @@ TLP if [[ "${printer}" == "y" ]]; then local stage_prompt="Print & Scan Services Activation" - if arch-chroot /mnt <<-PRINT_CONF > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-PRINT_CONF > ${void} 2>&1 2> ${log} ; then systemctl enable avahi-daemon.socket cups.socket cups-browsed ipp-usb || exit sed -i 's|^hosts.*|hosts: mymachines mdns_minimal resolve [!UNAVAIL=return] files myhostname dns|g' /etc/nsswitch.conf || exit sed -i 's/ interface = [^ ]*/ interface = all/g' /etc/ipp-usb/ipp-usb.conf || exit @@ -6795,7 +6814,7 @@ optimizations() { if [[ "${genoptm}" == "y" ]]; then local stage_prompt="General System Optimizations" - if arch-chroot /mnt <<-GENOPTM > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-GENOPTM > ${void} 2>&1 2> ${log} ; then pacman -S --noconfirm ccache ntfs-3g pbzip2 pigz || exit sed -i 's/^#Color/Color\nILoveCandy/' /etc/pacman.conf || exit update-pciids || exit @@ -6883,12 +6902,12 @@ SYSCTL } }); POLKIT - mkdir -p /etc/systemd/journald.conf.d > /dev/null 2>&1 || exit + mkdir -p /etc/systemd/journald.conf.d > ${void} 2>&1 || exit cat <<-JOURNAL > /etc/systemd/journald.conf.d/00-journald.conf || exit [Journal] SystemMaxUse=100M JOURNAL - mkdir -p /etc/systemd/user.conf.d > /dev/null 2>&1 || exit + mkdir -p /etc/systemd/user.conf.d > ${void} 2>&1 || exit cat <<-TIMEOUT > /etc/systemd/user.conf.d/00-timeout.conf || exit [Manager] DefaultTimeoutStopSec=5s @@ -6913,7 +6932,7 @@ GENOPTM if [[ -d /mnt/etc/udisks2 ]]; then local stage_prompt="Udisks2 Mount Options" - if arch-chroot /mnt <<-UDISKS2 > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-UDISKS2 > ${void} 2>&1 2> ${log} ; then cat <<-UDISKS_CONF > /etc/udisks2/mount_options.conf || exit [defaults] ntfs_drivers=ntfs3,ntfs @@ -6930,7 +6949,7 @@ UDISKS2 if [[ -n ${REGDOM} ]]; then local stage_prompt="Wpa_Supplicant Configuration" - if arch-chroot /mnt <<-WPA > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-WPA > ${void} 2>&1 2> ${log} ; then cat <<-SUPPLICANT > /etc/wpa_supplicant/wpa_supplicant.conf || exit country=${REGDOM} wps_cred_add_sae=1 @@ -6957,7 +6976,7 @@ secboot_sign() { if [[ ${sb_sign} == "y" ]]; then local stage_prompt="Secure-Boot Signing" if [[ ${bootloader} == "1" ]]; then - if arch-chroot /mnt <<-SECSIGN > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-SECSIGN > ${void} 2>&1 2> ${log} ; then systemctl disable systemd-boot-update || exit pacman -S --noconfirm sbctl || exit sbctl create-keys || exit @@ -6974,7 +6993,7 @@ SECSIGN fi if [[ ${setrescue} == "y" ]]; then local stage_prompt="Rescue Entry Secure-Boot Signing" - if arch-chroot /mnt <<-SECSIGN > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-SECSIGN > ${void} 2>&1 2> ${log} ; then sbctl sign -s ${btldr_esp_mount}/EFI/Linux/rescue.efi || exit SECSIGN stage_ok @@ -6983,7 +7002,7 @@ SECSIGN fi fi elif [[ ${bootloader} == "2" ]]; then - if arch-chroot /mnt <<-SECSIGN > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-SECSIGN > ${void} 2>&1 2> ${log} ; then pacman -S --noconfirm sbctl || exit sbctl create-keys || exit sbctl enroll-keys -m || exit @@ -7150,7 +7169,7 @@ ${magenta}###${nc}--------------------------------${magenta}[ ${bwhite}Chroot & if [[ -f /mnt/etc/lightdm/lightdm.conf ]]; then if [[ "${desktop}" == "7" ]]; then local stage_prompt="Deepin Greeter Configuration" - if arch-chroot /mnt <<-DEEPIN > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-DEEPIN > ${void} 2>&1 2> ${log} ; then sed -i 's|^#greeter-session=example-gtk-gnome|greeter-session=lightdm-deepin-greeter|g' /etc/lightdm/lightdm.conf || exit DEEPIN stage_ok @@ -7159,7 +7178,7 @@ DEEPIN fi elif [[ "${desktop}" =~ ^(5|8|10)$ ]]; then local stage_prompt="GTK Greeter Configuration" - if arch-chroot /mnt <<-GTK > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-GTK > ${void} 2>&1 2> ${log} ; then sed -i 's|^#greeter-session=example-gtk-gnome|greeter-session=lightdm-gtk-greeter|g' /etc/lightdm/lightdm.conf || exit GTK stage_ok @@ -7168,7 +7187,7 @@ GTK fi elif [[ "${desktop}" == "6" ]]; then local stage_prompt="Slick Greeter Configuration" - if arch-chroot /mnt <<-SLICK > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-SLICK > ${void} 2>&1 2> ${log} ; then sed -i 's|^#greeter-session=example-gtk-gnome|greeter-session=lightdm-slick-greeter|g' /etc/lightdm/lightdm.conf || exit SLICK stage_ok @@ -7181,7 +7200,7 @@ SLICK if [[ "${vendor}" != "Virtual Machine" ]]; then if [[ ! "${desktop}" =~ ^(11|12|13)$ ]]; then local stage_prompt="Bluetooth Service Activation" - if arch-chroot /mnt <<-BLUETOOTH > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-BLUETOOTH > ${void} 2>&1 2> ${log} ; then systemctl enable bluetooth || exit BLUETOOTH stage_ok @@ -7193,7 +7212,7 @@ BLUETOOTH if [[ -n "${displaymanager}" ]]; then local stage_prompt="Display Manager Service Activation" - if arch-chroot /mnt <<-DMSERVICE > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-DMSERVICE > ${void} 2>&1 2> ${log} ; then systemctl enable ${displaymanager} || exit DMSERVICE stage_ok @@ -7204,7 +7223,7 @@ DMSERVICE if [[ "${desktop}" != "12" ]]; then local stage_prompt="Network Manager Service Activation" - if arch-chroot /mnt <<-NETWORK > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-NETWORK > ${void} 2>&1 2> ${log} ; then systemctl enable NetworkManager || exit NETWORK stage_ok @@ -7222,7 +7241,7 @@ NETWORK if [[ -f /mnt/etc/lightdm/lightdm.conf ]]; then if [[ "${greeternmbr}" == "1" ]]; then local stage_prompt="GTK Greeter Configuration" - if arch-chroot /mnt <<-GTK > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-GTK > ${void} 2>&1 2> ${log} ; then sed -i 's|^#greeter-session=example-gtk-gnome|greeter-session=lightdm-gtk-greeter|g' /etc/lightdm/lightdm.conf || exit GTK stage_ok @@ -7231,7 +7250,7 @@ GTK fi elif [[ "${greeternmbr}" == "2" ]]; then local stage_prompt="Slick Greeter Configuration" - if arch-chroot /mnt <<-SLICK > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-SLICK > ${void} 2>&1 2> ${log} ; then sed -i 's|^#greeter-session=example-gtk-gnome|greeter-session=lightdm-slick-greeter|g' /etc/lightdm/lightdm.conf || exit SLICK stage_ok @@ -7240,7 +7259,7 @@ SLICK fi elif [[ "${greeternmbr}" == "3" ]]; then local stage_prompt="Deepin Greeter Configuration" - if arch-chroot /mnt <<-DEEPIN > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-DEEPIN > ${void} 2>&1 2> ${log} ; then sed -i 's|^#greeter-session=example-gtk-gnome|greeter-session=lightdm-deepin-greeter|g' /etc/lightdm/lightdm.conf || exit DEEPIN stage_ok @@ -7252,7 +7271,7 @@ DEEPIN if [[ -n "${customservices}" ]]; then local stage_prompt="Custom Service(s) Activation" - if arch-chroot /mnt <<-CUSTOMSERV > /dev/null 2>&1 2> amelia_log.txt ; then + if arch-chroot /mnt <<-CUSTOMSERV > ${void} 2>&1 2> ${log} ; then systemctl enable ${customservices} || exit CUSTOMSERV stage_ok @@ -7281,9 +7300,11 @@ CUSTOMSERV run_as="$(whoami)" tty="$(tty)" + void="/dev/null" + log="Amelia_log.txt" disks="$(lsblk --nodeps --paths --noheadings --output=name,size,model | cat --number)" trg="" - vars=(LOCALESET="" SETLOCALE="" lcl_slct="" USERNAME="" kernelnmbr="" fs="" gfxcount="" gfxcard="" intelcount="" intelcards="" nvidiacount="" nvidiacards="" amdcount="" amdcards="" gfxconf="" gfx_conf="" gfx_setup="" vendor="" vendor1="" vendor2="" vendor3="" vendor_slct="" desktop="" efi_entr_del="" sanity="" install="" bootldr_pkgs="" devel="" REGDOM="" gfx_bootopts="" btrfs_bootopts="" trim="" swapmode="" homecrypt="" greeter="" revision="" greeternmbr="" cust_bootopts="" vmpkgs="" vm_services="" perf_stream="" displaymanager="" wireless_reg="" bitness="" bootloader="" gfx_slct="" espsize="" autoroot="" autoesp="" autoxboot="" autohome="" autoswap="" rootprt="" espprt="" xbootprt="" homeprt="" swapprt="" partok="" instl_drive="" sgdsk_nmbr="" part_mode="" preset="" capacity="" cap_gib="" rootsize="" sgdrive="" cgdrive="" smartpart="" presetpart="" prcnt="" roottype="" stage_prompt="" zram="" zram_bootopts="" xbootloader="" multibooting="" hypervisor="" mkinitcpio_mods="" uki="" ukify="" cng_espmnt="" sep_home="" encr_swap_bootopts="" uefimode="" luks_encrypt="" nrg_plc="" multilib="" nvname="" nogsp="" luks_root="" luks_swap="" luks_home="" installation="" kill_watchdog="" oomd="" setrescue="" lowlat="" vendors="" dev="" web="" web_browser="" printer="" print_pkgs="" shellnmbr="" shell="" shellname="" shellname2="" shell_pkgs="" genoptm="" set_optm="" ask_param="" desk_setup="" web_slct="" set_optm_slct="" irqbalance="" thermald="" rngd="" rtkit="" tlp="") + vars=(LOCALESET="" SETLOCALE="" lcl_slct="" USERNAME="" kernelnmbr="" fs="" gfxcount="" gfxcard="" intelcount="" intelcards="" nvidiacount="" nvidiacards="" amdcount="" amdcards="" gfxconf="" gfx_conf="" gfx_setup="" vendor="" vendor1="" vendor2="" vendor3="" vendor_slct="" desktop="" terminal="" efi_entr_del="" sanity="" install="" bootldr_pkgs="" devel="" REGDOM="" gfx_bootopts="" btrfs_bootopts="" trim="" swapmode="" homecrypt="" greeter="" revision="" greeternmbr="" cust_bootopts="" vmpkgs="" vm_services="" perf_stream="" displaymanager="" wireless_reg="" bitness="" bootloader="" gfx_slct="" espsize="" autoroot="" autoesp="" autoxboot="" autohome="" autoswap="" rootprt="" espprt="" xbootprt="" homeprt="" swapprt="" partok="" instl_drive="" sgdsk_nmbr="" part_mode="" preset="" capacity="" cap_gib="" rootsize="" sgdrive="" cgdrive="" smartpart="" presetpart="" prcnt="" roottype="" stage_prompt="" zram="" zram_bootopts="" xbootloader="" multibooting="" hypervisor="" mkinitcpio_mods="" uki="" ukify="" cng_espmnt="" sep_home="" encr_swap_bootopts="" uefimode="" luks_encrypt="" nrg_plc="" multilib="" nvname="" nogsp="" luks_root="" luks_swap="" luks_home="" installation="" kill_watchdog="" oomd="" setrescue="" lowlat="" vendors="" dev="" web="" web_browser="" printer="" print_pkgs="" shellnmbr="" shell="" shellname="" shellname2="" shell_pkgs="" genoptm="" set_optm="" ask_param="" desk_setup="" web_slct="" set_optm_slct="" irqbalance="" thermald="" rngd="" rtkit="" tlp="") export "${vars[@]}" clear first_check