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
|
# Amelia Installer
|
||||||
# Source: https://gitlab.com/prism7/archery
|
# Source: https://gitlab.com/prism7/archery
|
||||||
# Version: 9.5.0
|
# Version: 9.5.1
|
||||||
|
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
###################################################################################################
|
###################################################################################################
|
||||||
@@ -823,6 +823,8 @@ Enter a username: "
|
|||||||
==> " USERNAME
|
==> " USERNAME
|
||||||
echo
|
echo
|
||||||
|
|
||||||
|
USERNAME="${USERNAME,,}"
|
||||||
|
|
||||||
if [[ -z "${USERNAME}" ]]; then
|
if [[ -z "${USERNAME}" ]]; then
|
||||||
sleep 0.2
|
sleep 0.2
|
||||||
RED "
|
RED "
|
||||||
@@ -831,14 +833,6 @@ Enter a username: "
|
|||||||
---------------------------------------------"
|
---------------------------------------------"
|
||||||
reload
|
reload
|
||||||
return 1
|
return 1
|
||||||
elif [[ "${USERNAME}" =~ [[:upper:]] ]]; then
|
|
||||||
sleep 0.2
|
|
||||||
RED "
|
|
||||||
------------------------------------------------------
|
|
||||||
### ${yellow}Uppercase is not allowed. Please try again.. ${red}###
|
|
||||||
------------------------------------------------------"
|
|
||||||
reload
|
|
||||||
return 1
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
BLUE "
|
BLUE "
|
||||||
@@ -2725,6 +2719,30 @@ Enter a number: "
|
|||||||
esac
|
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() {
|
cust_kern_param() {
|
||||||
|
|
||||||
sleep 0.2
|
sleep 0.2
|
||||||
@@ -2917,19 +2935,13 @@ Enter your Country Code, ie:${nc} ${cyan}US ${bwhite}(empty to skip)${blue}: "
|
|||||||
read -r -p "
|
read -r -p "
|
||||||
==> " REGDOM
|
==> " REGDOM
|
||||||
|
|
||||||
|
REGDOM="${REGDOM^^}"
|
||||||
|
|
||||||
if [[ -z "${REGDOM}" ]]; then
|
if [[ -z "${REGDOM}" ]]; then
|
||||||
skip
|
skip
|
||||||
elif [[ "${REGDOM}" == "l" ]]; then
|
elif [[ "${REGDOM}" == "l" ]]; then
|
||||||
sed 's|^#WIRELESS_REGDOM=||g' /etc/conf.d/wireless-regdom |sed 's|"||g'| less
|
sed 's|^#WIRELESS_REGDOM=||g' /etc/conf.d/wireless-regdom |sed 's|"||g'| less
|
||||||
return 1
|
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
|
elif ! grep \""${REGDOM}"\" /etc/conf.d/wireless-regdom > "${void}" 2>&1 ; then
|
||||||
invalid
|
invalid
|
||||||
return 1
|
return 1
|
||||||
@@ -4620,8 +4632,27 @@ Enter [Y/n]: "
|
|||||||
Enter password: "
|
Enter password: "
|
||||||
read -r -p "
|
read -r -p "
|
||||||
==> " CRYPTPASS
|
==> " 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
|
sleep 0.2
|
||||||
YELLOW "
|
YELLOW "
|
||||||
> Enter a name for your Encrypted ${roottype} Partition: "
|
> Enter a name for your Encrypted ${roottype} Partition: "
|
||||||
@@ -4633,6 +4664,8 @@ Enter a name: "
|
|||||||
==> " ENCROOT
|
==> " ENCROOT
|
||||||
echo
|
echo
|
||||||
|
|
||||||
|
ENCROOT="${ENCROOT,,}"
|
||||||
|
|
||||||
if [[ -z "${ENCROOT}" ]]; then
|
if [[ -z "${ENCROOT}" ]]; then
|
||||||
sleep 0.2
|
sleep 0.2
|
||||||
RED "
|
RED "
|
||||||
@@ -4641,14 +4674,6 @@ Enter a name: "
|
|||||||
-----------------------------------------"
|
-----------------------------------------"
|
||||||
reload
|
reload
|
||||||
return 1
|
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
|
elif [[ -n "${ENCROOT}" ]]; then
|
||||||
sleep 0.2
|
sleep 0.2
|
||||||
NC "
|
NC "
|
||||||
@@ -4691,6 +4716,7 @@ Enter a name: "
|
|||||||
read -r -p "
|
read -r -p "
|
||||||
==> " ENCRHOME
|
==> " ENCRHOME
|
||||||
|
|
||||||
|
ENCRHOME="${ENCRHOME,,}"
|
||||||
echo
|
echo
|
||||||
if [[ -z "${ENCRHOME}" ]]; then
|
if [[ -z "${ENCRHOME}" ]]; then
|
||||||
sleep 0.2
|
sleep 0.2
|
||||||
@@ -4700,14 +4726,6 @@ Enter a name: "
|
|||||||
-----------------------------------------"
|
-----------------------------------------"
|
||||||
reload
|
reload
|
||||||
return 1
|
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
|
elif [[ -n "${ENCRHOME}" ]]; then
|
||||||
sleep 0.2
|
sleep 0.2
|
||||||
NC "
|
NC "
|
||||||
@@ -4811,6 +4829,8 @@ instl() {
|
|||||||
if [[ -z "${set_optm_slct}" ]]; then
|
if [[ -z "${set_optm_slct}" ]]; then
|
||||||
local stage_prompt="Optimizations"
|
local stage_prompt="Optimizations"
|
||||||
completion_err
|
completion_err
|
||||||
|
until ask_optm; do : ; done
|
||||||
|
if [[ "${askoptm}" == "y" ]]; then
|
||||||
until cust_kern_param; do : ; done
|
until cust_kern_param; do : ; done
|
||||||
until sys_watchdog; do : ; done
|
until sys_watchdog; do : ; done
|
||||||
until gen_optm; do : ; done
|
until gen_optm; do : ; done
|
||||||
@@ -4824,6 +4844,7 @@ instl() {
|
|||||||
until rtkit; do : ; done
|
until rtkit; do : ; done
|
||||||
until tlp; do : ; done
|
until tlp; do : ; done
|
||||||
fi
|
fi
|
||||||
|
fi
|
||||||
until instl_dsk; do : ; done
|
until instl_dsk; do : ; done
|
||||||
until ask_crypt; do : ; done
|
until ask_crypt; do : ; done
|
||||||
|
|
||||||
@@ -5761,7 +5782,7 @@ ${magenta}###${nc}-------------------------------${magenta}[ ${bwhite}Confirm In
|
|||||||
###################################################################################################
|
###################################################################################################
|
||||||
revise() {
|
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[@]}"
|
export "${reset[@]}"
|
||||||
gfxpkgs=()
|
gfxpkgs=()
|
||||||
|
|
||||||
@@ -5785,6 +5806,7 @@ revise() {
|
|||||||
until print_scan; do : ; done
|
until print_scan; do : ; done
|
||||||
until boot_entr; do : ; done
|
until boot_entr; do : ; done
|
||||||
fi
|
fi
|
||||||
|
if [[ "${askoptm}" == "y" ]]; then
|
||||||
until cust_kern_param; do : ; done
|
until cust_kern_param; do : ; done
|
||||||
until sys_watchdog; do : ; done
|
until sys_watchdog; do : ; done
|
||||||
until gen_optm; do : ; done
|
until gen_optm; do : ; done
|
||||||
@@ -5797,6 +5819,7 @@ revise() {
|
|||||||
until rngd; do : ; done
|
until rngd; do : ; done
|
||||||
until rtkit; do : ; done
|
until rtkit; do : ; done
|
||||||
until tlp; do : ; done
|
until tlp; do : ; done
|
||||||
|
fi
|
||||||
until instl_dsk; do : ; done
|
until instl_dsk; do : ; done
|
||||||
until ask_crypt; do : ; done
|
until ask_crypt; do : ; done
|
||||||
if [[ "${swapmode}" == "1" ]]; then
|
if [[ "${swapmode}" == "1" ]]; then
|
||||||
@@ -5888,8 +5911,11 @@ luks() {
|
|||||||
|
|
||||||
|
|
||||||
${magenta}###${nc}-------------------------------------${magenta}[ ${bwhite}LUKS Encryption${nc} ${magenta}]${nc}-------------------------------------${magenta}###
|
${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
|
if echo -n "${CRYPTPASS}" | cryptsetup luksFormat --label CRYPTROOT "${root_dev}" > "${void}"; then
|
||||||
@@ -6076,7 +6102,7 @@ ${magenta}###${nc}-------------------------------------${magenta}[ ${bwhite}LUKS
|
|||||||
#--------------------------------------------------------------------------------------------------
|
#--------------------------------------------------------------------------------------------------
|
||||||
sleep 0.2
|
sleep 0.2
|
||||||
NC "
|
NC "
|
||||||
==> [${green}Encryption OK${nc}]"
|
==> [${green}Encryption Completed OK${nc}]"
|
||||||
luks_encrypt="ok"
|
luks_encrypt="ok"
|
||||||
sleep 0.2
|
sleep 0.2
|
||||||
NC "
|
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 "
|
BLUE "
|
||||||
|
|
||||||
|
|
||||||
Enter [Y/n]: "
|
Enter [y/N]: "
|
||||||
read -r -p "
|
read -r -p "
|
||||||
==> " multilib
|
==> " multilib
|
||||||
|
|
||||||
echo
|
echo
|
||||||
multilib="${multilib:-y}"
|
multilib="${multilib:-n}"
|
||||||
multilib="${multilib,,}"
|
multilib="${multilib,,}"
|
||||||
|
|
||||||
if [[ "${multilib}" == "y" ]]; then
|
if [[ "${multilib}" == "y" ]]; then
|
||||||
@@ -7373,10 +7399,17 @@ CUSTOMSERV
|
|||||||
foreign
|
foreign
|
||||||
optimizations
|
optimizations
|
||||||
secboot_sign
|
secboot_sign
|
||||||
completion
|
|
||||||
if [[ -n "${CRYPTPASS}" ]]; then
|
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
|
||||||
|
fi
|
||||||
|
completion
|
||||||
installation="ok"
|
installation="ok"
|
||||||
umount -R /mnt
|
umount -R /mnt
|
||||||
reboot
|
reboot
|
||||||
@@ -7392,7 +7425,7 @@ CUSTOMSERV
|
|||||||
log="Amelia_log.txt"
|
log="Amelia_log.txt"
|
||||||
disks="$(lsblk --nodeps --paths --noheadings --output=name,size,model | cat --number)"
|
disks="$(lsblk --nodeps --paths --noheadings --output=name,size,model | cat --number)"
|
||||||
trg=""
|
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[@]}"
|
export "${vars[@]}"
|
||||||
sleep 0.2
|
sleep 0.2
|
||||||
CYANBG "************************************************************************************************* "
|
CYANBG "************************************************************************************************* "
|
||||||
|
|||||||
Reference in New Issue
Block a user