mirror of
https://gitlab.com/prism7/archery.git
synced 2026-04-28 01:17:35 +02:00
Add: Now, when in 'Auto-Navigation' the user can skip all Optimizations offered by installer
Change: Edit prompts for aesthetic reasons Change: Asking to set 'username' now defaults to lowercase, so issuing a warning will not be needed Change: Asking to set 'Wireless Regulatory Domain Country Code' now defaults to uppercase, so issuing a warning will not be needed Add: Verification has been added when setting the LUKS encryption password Change: Encrypted /Root Partition name now defaults to lowercase, so issuing a warning will not be needed Change: Encrypted /Home Partition name now defaults to lowercase, so issuing a warning will not be needed Change: Asking to enable Arch's 'Multilib' repo now defaults to 'No' Remove: Saving LUKS encryption password to '.log' file has been removed Add: User's LUKS password will be exported to user's /home directory
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
|
||||
# Amelia Installer
|
||||
# Source: https://gitlab.com/prism7/archery
|
||||
# Version: 9.5.0
|
||||
# Version: 9.5.1
|
||||
|
||||
set -euo pipefail
|
||||
###################################################################################################
|
||||
@@ -823,6 +823,8 @@ Enter a username: "
|
||||
==> " USERNAME
|
||||
echo
|
||||
|
||||
USERNAME="${USERNAME,,}"
|
||||
|
||||
if [[ -z "${USERNAME}" ]]; then
|
||||
sleep 0.2
|
||||
RED "
|
||||
@@ -831,14 +833,6 @@ Enter a username: "
|
||||
---------------------------------------------"
|
||||
reload
|
||||
return 1
|
||||
elif [[ "${USERNAME}" =~ [[:upper:]] ]]; then
|
||||
sleep 0.2
|
||||
RED "
|
||||
------------------------------------------------------
|
||||
### ${yellow}Uppercase is not allowed. Please try again.. ${red}###
|
||||
------------------------------------------------------"
|
||||
reload
|
||||
return 1
|
||||
fi
|
||||
|
||||
BLUE "
|
||||
@@ -2725,6 +2719,30 @@ Enter a number: "
|
||||
esac
|
||||
}
|
||||
###################################################################################################
|
||||
ask_optm() {
|
||||
|
||||
sleep 0.2
|
||||
YELLOW "
|
||||
|
||||
|
||||
> Display available Optimizations ? [y/N]"
|
||||
BLUE "
|
||||
|
||||
|
||||
Enter [y/N]: "
|
||||
read -r -p "
|
||||
==> " askoptm
|
||||
|
||||
askoptm="${askoptm:-n}"
|
||||
askoptm="${askoptm,,}"
|
||||
|
||||
if [[ "${askoptm}" == "n" ]]; then
|
||||
skip
|
||||
else
|
||||
return 0
|
||||
fi
|
||||
}
|
||||
###################################################################################################
|
||||
cust_kern_param() {
|
||||
|
||||
sleep 0.2
|
||||
@@ -2917,19 +2935,13 @@ Enter your Country Code, ie:${nc} ${cyan}US ${bwhite}(empty to skip)${blue}: "
|
||||
read -r -p "
|
||||
==> " REGDOM
|
||||
|
||||
REGDOM="${REGDOM^^}"
|
||||
|
||||
if [[ -z "${REGDOM}" ]]; then
|
||||
skip
|
||||
elif [[ "${REGDOM}" == "l" ]]; then
|
||||
sed 's|^#WIRELESS_REGDOM=||g' /etc/conf.d/wireless-regdom |sed 's|"||g'| less
|
||||
return 1
|
||||
elif [[ "${REGDOM}" =~ [[:lower:]] ]]; then
|
||||
sleep 0.2
|
||||
RED "
|
||||
------------------------------------------------------
|
||||
### ${yellow}Lowercase is not allowed. Please try again.. ${red}###
|
||||
------------------------------------------------------"
|
||||
reload
|
||||
return 1
|
||||
elif ! grep \""${REGDOM}"\" /etc/conf.d/wireless-regdom > "${void}" 2>&1 ; then
|
||||
invalid
|
||||
return 1
|
||||
@@ -4620,8 +4632,27 @@ Enter [Y/n]: "
|
||||
Enter password: "
|
||||
read -r -p "
|
||||
==> " CRYPTPASS
|
||||
line2
|
||||
sleep 0.2
|
||||
YELLOW "
|
||||
|
||||
> Verify your ${nc}LUKS ${yellow}encryption password: "
|
||||
BLUE "
|
||||
|
||||
|
||||
Re-enter password: "
|
||||
read -r -p "
|
||||
==> " CRYPTPASS2
|
||||
|
||||
if [[ "${CRYPTPASS}" != "${CRYPTPASS2}" ]]; then
|
||||
sleep 0.2
|
||||
RED "
|
||||
---------------------------------------------------
|
||||
### ${yellow}Passwords don't match. Please try again.. ${red}###
|
||||
---------------------------------------------------"
|
||||
reload
|
||||
return 1
|
||||
fi
|
||||
line2
|
||||
sleep 0.2
|
||||
YELLOW "
|
||||
> Enter a name for your Encrypted ${roottype} Partition: "
|
||||
@@ -4633,6 +4664,8 @@ Enter a name: "
|
||||
==> " ENCROOT
|
||||
echo
|
||||
|
||||
ENCROOT="${ENCROOT,,}"
|
||||
|
||||
if [[ -z "${ENCROOT}" ]]; then
|
||||
sleep 0.2
|
||||
RED "
|
||||
@@ -4641,14 +4674,6 @@ Enter a name: "
|
||||
-----------------------------------------"
|
||||
reload
|
||||
return 1
|
||||
elif [[ "${ENCROOT}" =~ [[:upper:]] ]]; then
|
||||
sleep 0.2
|
||||
RED "
|
||||
------------------------------------------------------
|
||||
### ${yellow}Uppercase is not allowed. Please try again.. ${red}###
|
||||
------------------------------------------------------"
|
||||
reload
|
||||
return 1
|
||||
elif [[ -n "${ENCROOT}" ]]; then
|
||||
sleep 0.2
|
||||
NC "
|
||||
@@ -4691,6 +4716,7 @@ Enter a name: "
|
||||
read -r -p "
|
||||
==> " ENCRHOME
|
||||
|
||||
ENCRHOME="${ENCRHOME,,}"
|
||||
echo
|
||||
if [[ -z "${ENCRHOME}" ]]; then
|
||||
sleep 0.2
|
||||
@@ -4700,14 +4726,6 @@ Enter a name: "
|
||||
-----------------------------------------"
|
||||
reload
|
||||
return 1
|
||||
elif [[ "${ENCRHOME}" =~ [[:upper:]] ]]; then
|
||||
sleep 0.2
|
||||
RED "
|
||||
------------------------------------------------------
|
||||
### ${yellow}Uppercase is not allowed. Please try again.. ${red}###
|
||||
------------------------------------------------------"
|
||||
reload
|
||||
return 1
|
||||
elif [[ -n "${ENCRHOME}" ]]; then
|
||||
sleep 0.2
|
||||
NC "
|
||||
@@ -4811,18 +4829,21 @@ instl() {
|
||||
if [[ -z "${set_optm_slct}" ]]; then
|
||||
local stage_prompt="Optimizations"
|
||||
completion_err
|
||||
until cust_kern_param; do : ; done
|
||||
until sys_watchdog; do : ; done
|
||||
until gen_optm; do : ; done
|
||||
if [[ "${hypervisor}" == "none" ]]; 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
|
||||
until tlp; do : ; done
|
||||
until ask_optm; do : ; done
|
||||
if [[ "${askoptm}" == "y" ]]; then
|
||||
until cust_kern_param; do : ; done
|
||||
until sys_watchdog; do : ; done
|
||||
until gen_optm; do : ; done
|
||||
if [[ "${hypervisor}" == "none" ]]; 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
|
||||
until tlp; do : ; done
|
||||
fi
|
||||
fi
|
||||
until instl_dsk; do : ; done
|
||||
until ask_crypt; do : ; done
|
||||
@@ -5761,7 +5782,7 @@ ${magenta}###${nc}-------------------------------${magenta}[ ${bwhite}Confirm In
|
||||
###################################################################################################
|
||||
revise() {
|
||||
|
||||
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_pkg="" web_aur="" web_slct="" set_optm_slct="" oomd="" irqbalance="" thermald="" rngd="" rtkit="" tlp="" CRYPTPASS="")
|
||||
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_pkg="" web_aur="" web_slct="" set_optm_slct="" oomd="" irqbalance="" thermald="" rngd="" rtkit="" tlp="" CRYPTPASS="" CRYPTPASS2="" askoptm="")
|
||||
export "${reset[@]}"
|
||||
gfxpkgs=()
|
||||
|
||||
@@ -5785,18 +5806,20 @@ revise() {
|
||||
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 [[ "${hypervisor}" == "none" ]]; then
|
||||
until ask_wireless_regdom; do : ; done
|
||||
fi
|
||||
if [[ "${hypervisor}" == "none" ]]; 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
|
||||
until tlp; do : ; done
|
||||
fi
|
||||
until instl_dsk; do : ; done
|
||||
until ask_crypt; do : ; done
|
||||
if [[ "${swapmode}" == "1" ]]; then
|
||||
@@ -5888,8 +5911,11 @@ luks() {
|
||||
|
||||
|
||||
${magenta}###${nc}-------------------------------------${magenta}[ ${bwhite}LUKS Encryption${nc} ${magenta}]${nc}-------------------------------------${magenta}###
|
||||
"
|
||||
YELLOW "
|
||||
|
||||
|
||||
> Initiating Encryption process:
|
||||
|
||||
"
|
||||
if echo -n "${CRYPTPASS}" | cryptsetup luksFormat --label CRYPTROOT "${root_dev}" > "${void}"; then
|
||||
@@ -6076,7 +6102,7 @@ ${magenta}###${nc}-------------------------------------${magenta}[ ${bwhite}LUKS
|
||||
#--------------------------------------------------------------------------------------------------
|
||||
sleep 0.2
|
||||
NC "
|
||||
==> [${green}Encryption OK${nc}]"
|
||||
==> [${green}Encryption Completed OK${nc}]"
|
||||
luks_encrypt="ok"
|
||||
sleep 0.2
|
||||
NC "
|
||||
@@ -6144,16 +6170,16 @@ Enter country name or country code ${bwhite}(Empty for Defaults)${blue}: "
|
||||
|
||||
|
||||
|
||||
> Enable Pacman's ${nc}'Multilib' ${yellow}repository in the installed system ? [Y/n] "
|
||||
> Enable Arch's ${nc}'Multilib' ${yellow}repository in the installed system ? [y/N] "
|
||||
BLUE "
|
||||
|
||||
|
||||
Enter [Y/n]: "
|
||||
Enter [y/N]: "
|
||||
read -r -p "
|
||||
==> " multilib
|
||||
|
||||
echo
|
||||
multilib="${multilib:-y}"
|
||||
multilib="${multilib:-n}"
|
||||
multilib="${multilib,,}"
|
||||
|
||||
if [[ "${multilib}" == "y" ]]; then
|
||||
@@ -7373,10 +7399,17 @@ CUSTOMSERV
|
||||
foreign
|
||||
optimizations
|
||||
secboot_sign
|
||||
completion
|
||||
if [[ -n "${CRYPTPASS}" ]]; then
|
||||
echo "Your LUKS password is: ${CRYPTPASS}" | tee -a "${log}" > "${void}"
|
||||
local stage_prompt="Saving LUKS logfile at /home"
|
||||
if arch-chroot /mnt <<-SAVEPASS > "${void}" 2>&1 2> "${log}" ; then
|
||||
echo "Your LUKS password is: ${CRYPTPASS}" | tee /home/${USERNAME}/Luks.log || exit
|
||||
SAVEPASS
|
||||
stage_ok
|
||||
else
|
||||
stage_fail
|
||||
fi
|
||||
fi
|
||||
completion
|
||||
installation="ok"
|
||||
umount -R /mnt
|
||||
reboot
|
||||
@@ -7392,7 +7425,7 @@ CUSTOMSERV
|
||||
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="" terminal="" efi_entr_del="" sanity="" install="" bootldr_pkgs="" devel="" REGDOM="" gfx_bootopts="" btrfs_bootopts="" trim="" swapmode="" homecrypt="" greeter="" 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="" mkinitcpio_bins="" 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_pkg="" web_aur="" web_slct="" printer="" print_pkgs="" shellnmbr="" shell="" shellname="" shellname2="" shell_pkgs="" genoptm="" set_optm="" ask_param="" desk_setup="" set_optm_slct="" irqbalance="" thermald="" rngd="" rtkit="" tlp="" CRYPTPASS="")
|
||||
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="" 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="" mkinitcpio_bins="" 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_pkg="" web_aur="" web_slct="" printer="" print_pkgs="" shellnmbr="" shell="" shellname="" shellname2="" shell_pkgs="" genoptm="" set_optm="" ask_param="" desk_setup="" set_optm_slct="" irqbalance="" thermald="" rngd="" rtkit="" tlp="" CRYPTPASS="" CRYPTPASS2="" askoptm="")
|
||||
export "${vars[@]}"
|
||||
sleep 0.2
|
||||
CYANBG "************************************************************************************************* "
|
||||
|
||||
Reference in New Issue
Block a user