mirror of
https://gitlab.com/prism7/archery.git
synced 2026-04-28 01:17:35 +02:00
Change: If 'Multi-booting' has been selected, then the 'Manual Mode' will no longer offer to format the EFI partition.
Change: If a seperate Ext4 /Home partition is set to be re-used, then the 'Manual Mode' will skip the Ext4 partition formatting prompt.
Change: Code cleanup for efficiency (Functions {'revise' 'confirm_status' 'instl'} have been edited)
Remove: Code cleanup for efficiency (Function 'ask_homepart_form' has been removed)
Change: BTRFS > The subvolumes mounting options to be passed in the 'fstab' have been re-defined.
Change: A few prompts have been edited for aesthetic reasons.
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
|
||||
# Amelia Installer
|
||||
# Source: https://gitlab.com/prism7/archery
|
||||
# Version: 1.1.0
|
||||
# Version: 1.1.1
|
||||
|
||||
set -euo pipefail
|
||||
###################################################################################################
|
||||
@@ -639,7 +639,7 @@ Enter a number: "
|
||||
3)
|
||||
until dsks_submn; do : ; done ;;
|
||||
4)
|
||||
until instl; do : ; done ;;
|
||||
instl ;;
|
||||
"")
|
||||
sleep 0.2
|
||||
RED "
|
||||
@@ -3472,7 +3472,7 @@ ${magenta}###${nc}------------------------------------${magenta}[ ${bwhite}Multi
|
||||
YELLOW "
|
||||
|
||||
|
||||
### ${nc}If ${bwhite}[y]es${nc} then:${cyan}
|
||||
### If ${bwhite}[y]${nc}es ${yellow}then:${cyan}
|
||||
|
||||
|
||||
>> ${nc}Your ${yellowl}EFI ${nc}System Partition (ESP) will stay ${yellowl}intact${nc}${cyan}
|
||||
@@ -4812,7 +4812,7 @@ instl() {
|
||||
until slct_shell; do : ; done
|
||||
fi
|
||||
|
||||
if [[ -z "${kernelnmbr}" ]]; then
|
||||
if [[ -z "${kernelnmbr}" || "${revision}" == "y" ]]; then
|
||||
local stage_prompt="Kernel, Secureboot Signing, Bootloader & ESP Mountpoint"
|
||||
completion_err
|
||||
until slct_krnl; do : ; done
|
||||
@@ -4821,40 +4821,40 @@ instl() {
|
||||
until slct_espmnt; do : ; done
|
||||
fi
|
||||
|
||||
if [[ -z "${fs}" ]]; then
|
||||
if [[ -z "${fs}" || "${revision}" == "y" ]]; then
|
||||
local stage_prompt="Filesystem & Swap Setup"
|
||||
completion_err
|
||||
until slct_fs; do : ; done
|
||||
until slct_swap; do : ; done
|
||||
fi
|
||||
|
||||
if [[ "${vendor}" != "Virtual Machine" && -z "${gfx_slct}" ]]; then
|
||||
if [[ "${vendor}" != "Virtual Machine" && -z "${gfx_slct}" ]] || [[ "${vendor}" != "Virtual Machine" && "${revision}" == "y" ]]; then
|
||||
local stage_prompt="Graphics Setup"
|
||||
completion_err
|
||||
until dtct_gfx; do : ; done
|
||||
fi
|
||||
|
||||
if [[ -z "${desktop}" ]]; then
|
||||
if [[ -z "${desktop}" || "${revision}" == "y" ]]; then
|
||||
local stage_prompt="Desktop Setup"
|
||||
completion_err
|
||||
until dsktp_slct; do : ; done
|
||||
fi
|
||||
if [[ -z "${dev}" ]]; then
|
||||
if [[ -z "${dev}" || "${revision}" == "y" ]]; then
|
||||
until base_devel; do : ; done
|
||||
fi
|
||||
if [[ -z "${web_slct}" ]]; then
|
||||
if [[ -z "${web_slct}" || "${revision}" == "y" ]]; then
|
||||
if [[ ! "${desktop}" =~ ^(11|12)$ ]]; then
|
||||
until web_browser; do : ; done
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ "${vendor}" != "Virtual Machine" ]]; then
|
||||
if [[ -z "${printer}" ]]; then
|
||||
if [[ -z "${printer}" || "${revision}" == "y" ]]; then
|
||||
if [[ ! "${desktop}" =~ ^(11|12)$ ]]; then
|
||||
until print_scan; do : ; done
|
||||
fi
|
||||
fi
|
||||
if [[ -z "${efi_entr_del}" ]]; then
|
||||
if [[ -z "${efi_entr_del}" || "${revision}" == "y" ]]; then
|
||||
local stage_prompt="EFI Boot Entries Deletion"
|
||||
completion_err
|
||||
until boot_entr; do : ; done
|
||||
@@ -4895,6 +4895,7 @@ instl() {
|
||||
elif [[ "${encrypt}" == "yes" ]]; then
|
||||
until sec_erase; do : ; done
|
||||
until luks; do : ; done
|
||||
fi
|
||||
until opt_pcmn; do : ; done
|
||||
until pacstrap_system; do : ; done
|
||||
if [[ "${swapmode}" == "2" ]]; then
|
||||
@@ -4905,7 +4906,6 @@ instl() {
|
||||
fi
|
||||
set_vars
|
||||
chroot_conf
|
||||
fi
|
||||
}
|
||||
###################################################################################################
|
||||
swappart() {
|
||||
@@ -4977,6 +4977,7 @@ Enter a Mode number: "
|
||||
2)
|
||||
until manual_mode; do : ; done ;;
|
||||
"")
|
||||
sleep 0.2
|
||||
RED "
|
||||
------------------------------------------
|
||||
### ${nc}Please select a Mode to continue ${red}###
|
||||
@@ -5160,9 +5161,6 @@ ${magenta}###${nc}----------------------------------------${magenta}[ ${bwhite}A
|
||||
NC "
|
||||
==> [${green}Unformatted /Home Mounted OK${nc}]
|
||||
"
|
||||
else
|
||||
y_n
|
||||
until ask_homepart_form; do : ; done
|
||||
fi
|
||||
fi
|
||||
}
|
||||
@@ -5171,12 +5169,14 @@ manual_mode() {
|
||||
|
||||
volumes="$(fdisk -l | grep '^/dev' | cat --number)"
|
||||
|
||||
if [[ "${multibooting}" == "no" ]]; then
|
||||
until form_esp; do : ; done
|
||||
fi
|
||||
if [[ "${xbootloader}" == "yes" ]]; then
|
||||
until form_xboot; do : ; done
|
||||
fi
|
||||
until form_root; do : ; done
|
||||
if [[ -e "${home_dev}" && "${sep_home}" == "y" ]]; then
|
||||
if [[ "${sep_home}" == "y" && "${hometype}" == "1" ]]; then
|
||||
until form_home; do : ; done
|
||||
fi
|
||||
until mount_mnt; do : ; done
|
||||
@@ -5184,7 +5184,7 @@ manual_mode() {
|
||||
if [[ "${xbootloader}" == "yes" ]]; then
|
||||
until mount_xboot; do : ; done
|
||||
fi
|
||||
if [[ -e "${home_dev}" && "${sep_home}" == "y" ]]; then
|
||||
if [[ "${sep_home}" == "y" ]]; then
|
||||
until mount_home; do : ; done
|
||||
fi
|
||||
}
|
||||
@@ -5432,51 +5432,6 @@ Enter a name: "
|
||||
done
|
||||
}
|
||||
###################################################################################################
|
||||
ask_homepart_form() {
|
||||
|
||||
if [[ "${fs}" == "1" && -e "${home_dev}" && "${sep_home}" == "y" ]]; then
|
||||
if [[ "${smartpart}" == "y" ]]; then
|
||||
homeform="y"
|
||||
elif [[ "${preset}" =~ ^(3|4)$ ]]; then
|
||||
homeform="y"
|
||||
elif [[ "${hometype}" == "1" ]]; then
|
||||
homeform="y"
|
||||
elif [[ "${hometype}" == "2" ]]; then
|
||||
homeform="n"
|
||||
fi
|
||||
|
||||
if [[ "${homeform}" == "y" ]]; then
|
||||
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}]
|
||||
"
|
||||
else
|
||||
umount_manual
|
||||
until manual_part; do : ; done
|
||||
until form_home; do : ; done
|
||||
until mount_mnt; do : ; done
|
||||
until mount_esp; do : ; done
|
||||
if [[ "${xbootloader}" == "yes" ]]; then
|
||||
until mount_xboot; do : ; done
|
||||
fi
|
||||
until mount_home; do : ; done
|
||||
fi
|
||||
elif [[ "${homeform}" == "n" ]]; then
|
||||
mount --mkdir "${home_dev}" /mnt/home > "${void}" 2> "${log}" || err_abort
|
||||
sleep 0.2
|
||||
NC "
|
||||
==> [${green}Unformatted /Home Mounted OK${nc}]
|
||||
"
|
||||
else
|
||||
y_n
|
||||
return 1
|
||||
fi
|
||||
fi
|
||||
}
|
||||
###################################################################################################
|
||||
form_home() {
|
||||
|
||||
sleep 0.2
|
||||
@@ -5792,16 +5747,7 @@ ${magenta}###${nc}-------------------------------${magenta}[ ${bwhite}Confirm In
|
||||
|
||||
if [[ "${agree}" == "yes" ]]; then
|
||||
ok
|
||||
until opt_pcmn; do : ; done
|
||||
until pacstrap_system; do : ; done
|
||||
if [[ "${swapmode}" == "2" ]]; then
|
||||
until "${swaptype}"; do : ; done
|
||||
fi
|
||||
if [[ -n "${REGDOM}" ]]; then
|
||||
until set_wireless_regdom; do : ; done
|
||||
fi
|
||||
set_vars
|
||||
chroot_conf
|
||||
return 0
|
||||
elif [[ "${agree}" == "no" ]]; then
|
||||
unmount
|
||||
until revise; do : ; done
|
||||
@@ -5813,66 +5759,12 @@ ${magenta}###${nc}-------------------------------${magenta}[ ${bwhite}Confirm In
|
||||
###################################################################################################
|
||||
revise() {
|
||||
|
||||
revision="y"
|
||||
reset=(xbootloader="" desktop="" terminal="" custompkgs="" customservices="" cust_bootopts="" REGDOM="" autoroot="" autoxboot="" autohome="" autoswap="" lowlat="" nogsp="" sanity="" partok="" preset="" set_optm="" ask_param="" kill_watchdog="" genoptm="" desk_setup="" devel="" web="" web_pkg="" web_aur="" web_slct="" oomd="" irqbalance="" thermald="" rngd="" rtkit="" tlp="" CRYPTPASS="" CRYPTPASS2="" askoptm="" gptslct="" gptok="" gptabort="" nvdprop="" nowarning="" hometype="" homeform="" smartpart="" LuksParts="")
|
||||
export "${reset[@]}"
|
||||
gfxpkgs=()
|
||||
instl
|
||||
|
||||
until slct_krnl; do : ; done
|
||||
until ask_sign; do : ; done
|
||||
until slct_bootldr; do : ; done
|
||||
until slct_espmnt; do : ; done
|
||||
until slct_fs; do : ; done
|
||||
until slct_swap; do : ; done
|
||||
if [[ "${vendor}" != "Virtual Machine" ]]; then
|
||||
until dtct_gfx; do : ; done
|
||||
fi
|
||||
until dsktp_slct; do : ; done
|
||||
until base_devel; do : ; done
|
||||
if [[ ! "${desktop}" =~ ^(11|12)$ ]]; then
|
||||
until web_browser; do : ; done
|
||||
fi
|
||||
if [[ "${vendor}" != "Virtual Machine" ]]; then
|
||||
until print_scan; do : ; done
|
||||
until boot_entr; do : ; done
|
||||
fi
|
||||
if [[ "${askoptm}" == "y" ]]; then
|
||||
until cust_kern_param; do : ; done
|
||||
until sys_watchdog; do : ; done
|
||||
until gen_optm; do : ; done
|
||||
if [[ "${vendor}" != "Virtual Machine" ]]; then
|
||||
until ask_wireless_regdom; do : ; done
|
||||
fi
|
||||
until systemd_oomd; do : ; done
|
||||
until irqbalance; do : ; done
|
||||
until thermald; do : ; done
|
||||
until rngd; do : ; done
|
||||
until rtkit; do : ; done
|
||||
if [[ "${vendor}" != "Virtual Machine" ]]; then
|
||||
until tlp; do : ; done
|
||||
fi
|
||||
fi
|
||||
until instl_dsk; do : ; done
|
||||
until ask_crypt; do : ; done
|
||||
if [[ "${swapmode}" == "1" ]]; then
|
||||
until "${swaptype}"; do : ; done
|
||||
fi
|
||||
if [[ "${encrypt}" == "no" ]]; then
|
||||
until set_mode; do : ; done
|
||||
until confirm_status; do : ; done
|
||||
elif [[ "${encrypt}" == "yes" ]]; then
|
||||
until sec_erase; do : ; done
|
||||
until luks; do : ; done
|
||||
until opt_pcmn; do : ; done
|
||||
until pacstrap_system; do : ; done
|
||||
if [[ "${swapmode}" == "2" ]]; then
|
||||
until "${swaptype}"; do : ; done
|
||||
fi
|
||||
if [[ -n "${REGDOM}" ]]; then
|
||||
until set_wireless_regdom; do : ; done
|
||||
fi
|
||||
set_vars
|
||||
chroot_conf
|
||||
fi
|
||||
}
|
||||
###################################################################################################
|
||||
sec_erase() {
|
||||
@@ -6215,9 +6107,9 @@ pkg_validation() {
|
||||
local stage_prompt="Arch Packages Validation"
|
||||
sleep 0.2
|
||||
YELLOWL "
|
||||
-------------------------------------------
|
||||
### ${bwhite}Validating installation packages: ${yellowl}###
|
||||
-------------------------------------------
|
||||
------------------------------------------
|
||||
### ${bwhite}Validating Installation Packages ${yellowl}###
|
||||
------------------------------------------
|
||||
|
||||
|
||||
"
|
||||
@@ -6358,7 +6250,7 @@ ${magenta}###${nc}-------------------------------------${magenta}[ ${bwhite}Pacs
|
||||
local stage_prompt="Fstab"
|
||||
genfstab -t PARTUUID /mnt >> /mnt/etc/fstab 2> "${log}" || stage_fail
|
||||
arch-chroot /mnt <<-FSTAB_SBVL_MNT_OPTS > "${void}" 2>&1 2> "${log}" || stage_fail
|
||||
sed -i 's/rw,noatime,compress=zstd:3,discard=async,space_cache=v2/${sbvl_mnt_opts}/' /etc/fstab || exit
|
||||
sed -i 's/^rw.*/${sbvl_mnt_opts}/' /etc/fstab || exit
|
||||
FSTAB_SBVL_MNT_OPTS
|
||||
ok
|
||||
fi
|
||||
|
||||
Reference in New Issue
Block a user