mirror of
https://gitlab.com/prism7/archery.git
synced 2026-04-28 01:17:35 +02:00
Change: Refined script logic.
Now, when in 'Auto-Navigation', a few repetitive stages are omitted, to provide a more streamlined user experience. Add: A few prompts have been edited/added for enhanced aesthetics.
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.6.0
|
# Version: 9.7.0
|
||||||
|
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
###################################################################################################
|
###################################################################################################
|
||||||
@@ -3310,10 +3310,11 @@ Enter a disk number ${bwhite}(empty to skip)${blue}: "
|
|||||||
ok
|
ok
|
||||||
if [[ "${install}" == "yes" ]]; then
|
if [[ "${install}" == "yes" ]]; then
|
||||||
until instl_dsk; do : ; done
|
until instl_dsk; do : ; done
|
||||||
|
return 0
|
||||||
else
|
else
|
||||||
until dsks_submn; do : ; done
|
until dsks_submn; do : ; done
|
||||||
|
return 0
|
||||||
fi
|
fi
|
||||||
return 0
|
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -3351,9 +3352,9 @@ Enter a disk number ${bwhite}(empty to skip)${blue}: "
|
|||||||
> Make a Selection: "
|
> Make a Selection: "
|
||||||
NC "
|
NC "
|
||||||
|
|
||||||
[1] Create new GPT table on selected disk [Destroy any existing GPT/MBR structures]
|
[1] Create new GPT on selected disk [Destroy any existing GPT/MBR structures]
|
||||||
|
|
||||||
[2] Use the program interactively [Expert Mode]
|
[2] Use the 'gdisk' program interactively [Expert Mode]
|
||||||
|
|
||||||
[ ] Return to Previous Menu "
|
[ ] Return to Previous Menu "
|
||||||
BLUE "
|
BLUE "
|
||||||
@@ -3373,8 +3374,15 @@ Enter a number: "
|
|||||||
sleep 0.2
|
sleep 0.2
|
||||||
NC "
|
NC "
|
||||||
|
|
||||||
==> [${green}GPT Entries OK${nc}]
|
==> [${green}GPT OK${nc}] "
|
||||||
"
|
|
||||||
|
if [[ "${install}" == "yes" ]]; then
|
||||||
|
until instl_dsk; do : ; done
|
||||||
|
return 0
|
||||||
|
else
|
||||||
|
until dsks_submn; do : ; done
|
||||||
|
return 0
|
||||||
|
fi
|
||||||
else
|
else
|
||||||
gptok="no"
|
gptok="no"
|
||||||
sleep 0.2
|
sleep 0.2
|
||||||
@@ -3401,8 +3409,15 @@ ______________________________________________
|
|||||||
sleep 0.2
|
sleep 0.2
|
||||||
NC "
|
NC "
|
||||||
|
|
||||||
==> [${green}GPT Entries OK${nc}]
|
==> [${green}GPT OK${nc}] "
|
||||||
"
|
|
||||||
|
if [[ "${install}" == "yes" ]]; then
|
||||||
|
until instl_dsk; do : ; done
|
||||||
|
return 0
|
||||||
|
else
|
||||||
|
until dsks_submn; do : ; done
|
||||||
|
return 0
|
||||||
|
fi
|
||||||
else
|
else
|
||||||
gptok="no"
|
gptok="no"
|
||||||
sleep 0.2
|
sleep 0.2
|
||||||
@@ -3417,9 +3432,12 @@ ______________________________________________
|
|||||||
fi
|
fi
|
||||||
elif [[ -z "${gptslct}" ]]; then
|
elif [[ -z "${gptslct}" ]]; then
|
||||||
if [[ -n "${instl_drive}" ]]; then
|
if [[ -n "${instl_drive}" ]]; then
|
||||||
|
gptabort="yes"
|
||||||
skip
|
skip
|
||||||
ok
|
ok
|
||||||
|
line2
|
||||||
until instl_dsk; do : ; done
|
until instl_dsk; do : ; done
|
||||||
|
return 0
|
||||||
elif [[ -z "${instl_drive}" ]]; then
|
elif [[ -z "${instl_drive}" ]]; then
|
||||||
reload
|
reload
|
||||||
return 1
|
return 1
|
||||||
@@ -3545,33 +3563,28 @@ auto_part() {
|
|||||||
|
|
||||||
${magenta}###${nc}---------------------------------${magenta}[ ${bwhite}Automatic Partitioning${nc} ${magenta}]${nc}---------------------------------${magenta}###
|
${magenta}###${nc}---------------------------------${magenta}[ ${bwhite}Automatic Partitioning${nc} ${magenta}]${nc}---------------------------------${magenta}###
|
||||||
"
|
"
|
||||||
|
if [[ -e "${instl_drive}" ]]; then
|
||||||
sleep 0.2
|
sleep 0.2
|
||||||
line2
|
line2
|
||||||
REDBG " ------------------------------------------------------------ "
|
REDBG " ------------------------------------------------------------ "
|
||||||
REDBG " [!] WARNING: All data on selected disk will be destroyed [!] "
|
REDBG " [!] WARNING: All data on selected disk will be destroyed [!] "
|
||||||
REDBG " ------------------------------------------------------------ "
|
REDBG " ------------------------------------------------------------ "
|
||||||
line2
|
line2
|
||||||
if [[ -e "${instl_drive}" ]]; then
|
|
||||||
sgdsk_nmbr="${instl_dsk_nmbr}"
|
sgdsk_nmbr="${instl_dsk_nmbr}"
|
||||||
sgdrive="$(echo "${disks}" | awk "\$1 == ${sgdsk_nmbr} {print \$2}")"
|
sgdrive="$(echo "${disks}" | awk "\$1 == ${sgdsk_nmbr} {print \$2}")"
|
||||||
if [[ -e "${sgdrive}" ]]; then
|
capacity="$(fdisk -l "${sgdrive}" | grep -E 'bytes' | grep -E 'Disk' | awk "{print \$5}")"
|
||||||
capacity="$(fdisk -l "${sgdrive}" | grep -E 'bytes' | grep -E 'Disk' | awk "{print \$5}")"
|
cap_gib="$((capacity/1024000000))"
|
||||||
cap_gib="$((capacity/1024000000))"
|
rootsize="$((capacity*25/100/1024000000))"
|
||||||
rootsize="$((capacity*25/100/1024000000))"
|
if [[ "${run_as}" != "root" ]]; then
|
||||||
if [[ "${run_as}" != "root" ]]; then
|
sleep 0.2
|
||||||
sleep 0.2
|
RED "
|
||||||
RED "
|
|
||||||
-----------------------------------
|
-----------------------------------
|
||||||
### ${yellow}Root Privileges Missing.. ${red}###
|
### ${yellow}Root Privileges Missing.. ${red}###
|
||||||
-----------------------------------"
|
-----------------------------------"
|
||||||
reload
|
reload
|
||||||
until dsks_submn; do : ; done
|
until dsks_submn; do : ; done
|
||||||
fi
|
return 0
|
||||||
else
|
|
||||||
invalid
|
|
||||||
return 1
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
sleep 0.2
|
sleep 0.2
|
||||||
NC "
|
NC "
|
||||||
-----------------------------------------------------------
|
-----------------------------------------------------------
|
||||||
@@ -3589,11 +3602,13 @@ ${magenta}###${nc}---------------------------------${magenta}[ ${bwhite}Automati
|
|||||||
until smart_presets; do : ; done
|
until smart_presets; do : ; done
|
||||||
until set_partsize; do : ; done
|
until set_partsize; do : ; done
|
||||||
until partitioner; do : ; done
|
until partitioner; do : ; done
|
||||||
|
return 0
|
||||||
elif [[ "${smartpart}" == "n" ]]; then
|
elif [[ "${smartpart}" == "n" ]]; then
|
||||||
alternatives
|
alternatives
|
||||||
until manual_presets; do : ; done
|
until manual_presets; do : ; done
|
||||||
until set_partsize; do : ; done
|
until set_partsize; do : ; done
|
||||||
until partitioner; do : ; done
|
until partitioner; do : ; done
|
||||||
|
return 0
|
||||||
else
|
else
|
||||||
y_n
|
y_n
|
||||||
return 1
|
return 1
|
||||||
@@ -3627,22 +3642,26 @@ Enter a disk number ${bwhite}(empty to skip)${blue}: "
|
|||||||
-----------------------------------"
|
-----------------------------------"
|
||||||
reload
|
reload
|
||||||
until dsks_submn; do : ; done
|
until dsks_submn; do : ; done
|
||||||
|
return 0
|
||||||
fi
|
fi
|
||||||
until manual_presets; do : ; done
|
until manual_presets; do : ; done
|
||||||
until set_partsize; do : ; done
|
until set_partsize; do : ; done
|
||||||
until partitioner; do : ; done
|
until partitioner; do : ; done
|
||||||
|
return 0
|
||||||
else
|
else
|
||||||
invalid
|
invalid
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
skip
|
skip
|
||||||
reload
|
local prompt="Partition Manager"
|
||||||
|
ok
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ -z "${sanity}" ]]; then
|
if [[ -z "${sanity}" ]]; then
|
||||||
until dsks_submn; do : ; done
|
until dsks_submn; do : ; done
|
||||||
|
return 0
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
###################################################################################################
|
###################################################################################################
|
||||||
@@ -3709,11 +3728,14 @@ Enter a Preset number ${bwhite}(empty to skip)${blue}: "
|
|||||||
|
|
||||||
if [[ "${preset}" =~ ^(1|2|3|4)$ ]]; then
|
if [[ "${preset}" =~ ^(1|2|3|4)$ ]]; then
|
||||||
presetpart="y"
|
presetpart="y"
|
||||||
|
return 0
|
||||||
elif [[ -z "${preset}" && "${partok}" == "n" ]]; then
|
elif [[ -z "${preset}" && "${partok}" == "n" ]]; then
|
||||||
alternatives
|
alternatives
|
||||||
manual_part
|
manual_part
|
||||||
|
return 0
|
||||||
elif [[ -z "${preset}" ]]; then
|
elif [[ -z "${preset}" ]]; then
|
||||||
skip
|
skip
|
||||||
|
return 0
|
||||||
else
|
else
|
||||||
invalid
|
invalid
|
||||||
return 1
|
return 1
|
||||||
@@ -3784,6 +3806,13 @@ partitioner() {
|
|||||||
|
|
||||||
if [[ "${partok}" == "y" ]]; then
|
if [[ "${partok}" == "y" ]]; then
|
||||||
return 0
|
return 0
|
||||||
|
elif [[ -z "${preset}" && "${install}" == "yes" ]]; then
|
||||||
|
until sanity_check; do : ; done
|
||||||
|
return 0
|
||||||
|
elif [[ -z "${preset}" ]]; then
|
||||||
|
local prompt="Partition Manager"
|
||||||
|
ok
|
||||||
|
return 0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "${smartpart}" == "y" ]]; then
|
if [[ "${smartpart}" == "y" ]]; then
|
||||||
@@ -3825,7 +3854,9 @@ partitioner() {
|
|||||||
if [[ "${install}" == "yes" ]]; then
|
if [[ "${install}" == "yes" ]]; then
|
||||||
until sanity_check; do : ; done
|
until sanity_check; do : ; done
|
||||||
else
|
else
|
||||||
ok
|
if [[ -n "${preset}" ]]; then
|
||||||
|
ok
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
###################################################################################################
|
###################################################################################################
|
||||||
@@ -3890,6 +3921,8 @@ Enter a disk number ${bwhite}(empty to skip)${blue}: "
|
|||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
skip
|
skip
|
||||||
|
local prompt="Partition Manager"
|
||||||
|
ok
|
||||||
|
|
||||||
if [[ -z "${sanity}" ]]; then
|
if [[ -z "${sanity}" ]]; then
|
||||||
until dsks_submn; do : ; done
|
until dsks_submn; do : ; done
|
||||||
@@ -3902,6 +3935,7 @@ Enter a disk number ${bwhite}(empty to skip)${blue}: "
|
|||||||
###################################################################################################
|
###################################################################################################
|
||||||
instl_dsk() {
|
instl_dsk() {
|
||||||
|
|
||||||
|
if [[ ! -e "${instl_drive}" ]]; then
|
||||||
sleep 0.2
|
sleep 0.2
|
||||||
NC "
|
NC "
|
||||||
|
|
||||||
@@ -3921,6 +3955,7 @@ Enter a disk number: "
|
|||||||
read -r -p "
|
read -r -p "
|
||||||
==> " instl_dsk_nmbr
|
==> " instl_dsk_nmbr
|
||||||
echo
|
echo
|
||||||
|
fi
|
||||||
|
|
||||||
if [[ -n "${instl_dsk_nmbr}" ]]; then
|
if [[ -n "${instl_dsk_nmbr}" ]]; then
|
||||||
instl_drive="$(echo "${disks}" | awk "\$1 == ${instl_dsk_nmbr} {print \$2}")"
|
instl_drive="$(echo "${disks}" | awk "\$1 == ${instl_dsk_nmbr} {print \$2}")"
|
||||||
@@ -3943,7 +3978,16 @@ Enter a disk number: "
|
|||||||
sbvl_mnt_opts="rw,compress=zstd"
|
sbvl_mnt_opts="rw,compress=zstd"
|
||||||
fi
|
fi
|
||||||
parttable="$(fdisk -l "${instl_drive}" | grep '^Disklabel type' | awk "{print \$3}")"
|
parttable="$(fdisk -l "${instl_drive}" | grep '^Disklabel type' | awk "{print \$3}")"
|
||||||
if [[ "${parttable}" != "gpt" ]]; then
|
if [[ "${parttable}" != "gpt" && -n "${gptabort}" ]]; then
|
||||||
|
sleep 0.2
|
||||||
|
RED "
|
||||||
|
---------------------------------------
|
||||||
|
### ${yellow}Please create GPT to continue ${red}###
|
||||||
|
---------------------------------------"
|
||||||
|
reload
|
||||||
|
until gpt_mngr; do : ; done
|
||||||
|
return 0
|
||||||
|
elif [[ "${parttable}" != "gpt" ]]; then
|
||||||
sleep 0.2
|
sleep 0.2
|
||||||
RED "
|
RED "
|
||||||
---------------------------------------
|
---------------------------------------
|
||||||
@@ -3953,6 +3997,7 @@ Enter a disk number: "
|
|||||||
until gpt_mngr; do : ; done
|
until gpt_mngr; do : ; done
|
||||||
return 0
|
return 0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ -z "${multibooting}" ]]; then
|
if [[ -z "${multibooting}" ]]; then
|
||||||
until ask_multibooting; do : ; done
|
until ask_multibooting; do : ; done
|
||||||
fi
|
fi
|
||||||
@@ -5860,7 +5905,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="" CRYPTPASS2="" askoptm="" gptslct="" gptok="")
|
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="" gptslct="" gptok="" gptabort="")
|
||||||
export "${reset[@]}"
|
export "${reset[@]}"
|
||||||
gfxpkgs=()
|
gfxpkgs=()
|
||||||
|
|
||||||
@@ -7493,7 +7538,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="" CRYPTPASS2="" askoptm="" gptslct="" gptok="")
|
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="" gptslct="" gptok="" gptabort="")
|
||||||
export "${vars[@]}"
|
export "${vars[@]}"
|
||||||
sleep 0.2
|
sleep 0.2
|
||||||
CYANBG "************************************************************************************************* "
|
CYANBG "************************************************************************************************* "
|
||||||
|
|||||||
Reference in New Issue
Block a user