mirror of
https://gitlab.com/prism7/archery.git
synced 2025-02-15 08:29:17 +01:00
Change: 'Hypervisor Detection' stage ('dtct_hyper' function) has been moved to the "Machine Detection' stage ('machine_dtct' function)
to avoid unnecessary repetition. Change: A few prompts have been edited/added for enhanced clarity. Fix: 'Graphics Setup' stage: > A bug has been fixed, that was mistakenly adding a specific kernel parameter when 'No Graphics Configuration' was selected. Add: Now, for the majority of the installation process, an 'error_log.txt' file will be created if a critical error occurs.
This commit is contained in:
513
Amelia.sh
513
Amelia.sh
@@ -2,78 +2,75 @@
|
||||
|
||||
# Amelia Installer
|
||||
# https://gitlab.com/prism7/archery
|
||||
# Version: 8.2.1
|
||||
# Version: 8.2.2
|
||||
|
||||
set -euo pipefail
|
||||
###################################################################################################
|
||||
# COLOR FUNCTIONS
|
||||
|
||||
redbg="\e[1;41m"
|
||||
red="\e[31m"
|
||||
greenbg="\e[1;42m"
|
||||
green="\e[32m"
|
||||
yellowbg="\e[1;43m"
|
||||
yellow="\e[33m"
|
||||
yellowl="\e[93m"
|
||||
bluebg="\e[1;44m"
|
||||
blue="\e[94m"
|
||||
magentabg="\e[1;45m"
|
||||
yellowbg="\e[1;43m"
|
||||
yellowl="\e[93m"
|
||||
greenbg="\e[1;42m"
|
||||
magenta="\e[35m"
|
||||
yellow="\e[33m"
|
||||
bluebg="\e[1;44m"
|
||||
cyanbg="\e[1;46m"
|
||||
cyan="\e[36m"
|
||||
bwhite="\e[0;97m"
|
||||
green="\e[32m"
|
||||
redbg="\e[1;41m"
|
||||
blue="\e[94m"
|
||||
cyan="\e[36m"
|
||||
red="\e[31m"
|
||||
nc="\e[0m"
|
||||
|
||||
REDBG() {
|
||||
echo -e "${redbg} $1${nc}"
|
||||
}
|
||||
RED() {
|
||||
echo -e "${red} $1${nc}"
|
||||
}
|
||||
GREENBG() {
|
||||
echo -e "${greenbg} $1${nc}"
|
||||
}
|
||||
GREEN() {
|
||||
echo -e "${green} $1${nc}"
|
||||
}
|
||||
YELLOWBG() {
|
||||
echo -e "${yellowbg} $1${nc}"
|
||||
}
|
||||
YELLOW() {
|
||||
echo -e "${yellow} $1${nc}"
|
||||
}
|
||||
YELLOWL() {
|
||||
echo -e "${yellowl} $1${nc}"
|
||||
}
|
||||
BLUEBG() {
|
||||
echo -e "${bluebg} $1${nc}"
|
||||
}
|
||||
BLUE() {
|
||||
echo -e "${blue} $1${nc}"
|
||||
}
|
||||
MAGENTABG() {
|
||||
echo -e "${magentabg} $1${nc}"
|
||||
}
|
||||
MAGENTA() {
|
||||
YELLOWBG() {
|
||||
echo -e "${yellowbg} $1${nc}"
|
||||
}
|
||||
YELLOWL() {
|
||||
echo -e "${yellowl} $1${nc}"
|
||||
}
|
||||
GREENBG() {
|
||||
echo -e "${greenbg} $1${nc}"
|
||||
}
|
||||
MAGENTA() {
|
||||
echo -e "${magenta} $1${nc}"
|
||||
}
|
||||
CYANBG() {
|
||||
YELLOW() {
|
||||
echo -e "${yellow} $1${nc}"
|
||||
}
|
||||
BLUEBG() {
|
||||
echo -e "${bluebg} $1${nc}"
|
||||
}
|
||||
CYANBG() {
|
||||
echo -e "${cyanbg} $1${nc}"
|
||||
}
|
||||
CYAN() {
|
||||
echo -e "${cyan} $1${nc}"
|
||||
}
|
||||
NC() {
|
||||
echo -e "${nc} $1${nc}"
|
||||
}
|
||||
WHITEB() {
|
||||
WHITEB() {
|
||||
echo -e "${bwhite} $1${nc}"
|
||||
}
|
||||
GREEN() {
|
||||
echo -e "${green} $1${nc}"
|
||||
}
|
||||
REDBG() {
|
||||
echo -e "${redbg} $1${nc}"
|
||||
}
|
||||
BLUE() {
|
||||
echo -e "${blue} $1${nc}"
|
||||
}
|
||||
CYAN() {
|
||||
echo -e "${cyan} $1${nc}"
|
||||
}
|
||||
RED() {
|
||||
echo -e "${red} $1${nc}"
|
||||
}
|
||||
NC() {
|
||||
echo -e "${nc} $1${nc}"
|
||||
}
|
||||
# END COLOR FUNCTIONS
|
||||
|
||||
###################################################################################################
|
||||
# PROMPT FUNCTIONS
|
||||
|
||||
skip() {
|
||||
sleep 0.2
|
||||
YELLOW "
|
||||
@@ -254,11 +251,23 @@ completion_err() {
|
||||
"
|
||||
fi
|
||||
}
|
||||
amd() {
|
||||
line2
|
||||
REDBG " ------------------------------- "
|
||||
REDBG " ### AMD Graphics detected ### "
|
||||
REDBG " ------------------------------- "
|
||||
NC "
|
||||
|
||||
|
||||
* ${vgacard}
|
||||
|
||||
"
|
||||
}
|
||||
intel() {
|
||||
line2
|
||||
BLUEBG " --------------------------------- "
|
||||
BLUEBG " ### INTEL Graphics detected ### "
|
||||
BLUEBG " --------------------------------- "
|
||||
BLUEBG " --------------------------------- "
|
||||
BLUEBG " ### INTEL Graphics detected ### "
|
||||
BLUEBG " --------------------------------- "
|
||||
NC "
|
||||
|
||||
|
||||
@@ -274,18 +283,6 @@ nvidia() {
|
||||
NC "
|
||||
|
||||
|
||||
* ${vgacard}
|
||||
|
||||
"
|
||||
}
|
||||
amd() {
|
||||
line2
|
||||
REDBG " ------------------------------- "
|
||||
REDBG " ### AMD Graphics detected ### "
|
||||
REDBG " ------------------------------- "
|
||||
NC "
|
||||
|
||||
|
||||
* ${vgacard}
|
||||
|
||||
"
|
||||
@@ -293,11 +290,11 @@ amd() {
|
||||
arch() {
|
||||
sleep 0.2
|
||||
line3
|
||||
BLUEBG "************************************************************************************************* "
|
||||
BLUEBG " "
|
||||
BLUEBG " ##### Archlinux Installation ##### "
|
||||
BLUEBG " "
|
||||
BLUEBG "************************************************************************************************* "
|
||||
BLUEBG "************************************************************************************************* "
|
||||
BLUEBG " "
|
||||
BLUEBG " ##### Archlinux Installation ##### "
|
||||
BLUEBG " "
|
||||
BLUEBG "************************************************************************************************* "
|
||||
line2
|
||||
}
|
||||
cnfg() {
|
||||
@@ -311,27 +308,26 @@ cnfg() {
|
||||
completion() {
|
||||
sleep 0.2
|
||||
line3
|
||||
GREENBG "************************************************************************************************* "
|
||||
GREENBG " "
|
||||
GREENBG " ### Installation Completed ### "
|
||||
GREENBG " "
|
||||
GREENBG "************************************************************************************************* "
|
||||
GREENBG "************************************************************************************************* "
|
||||
GREENBG " "
|
||||
GREENBG " ### Installation Completed ### "
|
||||
GREENBG " "
|
||||
GREENBG "************************************************************************************************* "
|
||||
line3
|
||||
}
|
||||
failure() {
|
||||
sleep 0.2
|
||||
line3
|
||||
REDBG "************************************************************************************************* "
|
||||
REDBG " "
|
||||
REDBG " ### Installation Aborted ### "
|
||||
REDBG " "
|
||||
REDBG "************************************************************************************************* "
|
||||
REDBG "************************************************************************************************* "
|
||||
REDBG " "
|
||||
REDBG " ### Installation Aborted ### "
|
||||
REDBG " "
|
||||
REDBG "************************************************************************************************* "
|
||||
line3
|
||||
umount -R /mnt > /dev/null 2>&1
|
||||
exit
|
||||
}
|
||||
# END PROMPT FUNCTIONS
|
||||
|
||||
###################################################################################################
|
||||
# FUNCTIONS
|
||||
first_check() {
|
||||
@@ -341,10 +337,10 @@ first_check() {
|
||||
until slct_font; do : ; done
|
||||
else
|
||||
if [[ -e /usr/bin/pv ]]; then
|
||||
MAGENTABG " 'Terminus Font' detected ==> Log in as 'ROOT' in console & re-run to enable "| pv -qL 70
|
||||
MAGENTABG " 'Terminus Font' detected ==> Log in as 'ROOT' in a tty & re-run to enable "| pv -qL 70
|
||||
echo
|
||||
else
|
||||
MAGENTABG " 'Terminus Font' detected ==> Log in as 'ROOT' in console & re-run to enable "
|
||||
MAGENTABG " 'Terminus Font' detected ==> Log in as 'ROOT' in a tty & re-run to enable "
|
||||
echo
|
||||
fi
|
||||
fi
|
||||
@@ -460,8 +456,33 @@ ${magenta}###${nc}-----------------------------------${magenta}[ ${bwhite}System
|
||||
ok
|
||||
}
|
||||
###################################################################################################
|
||||
dtct_hyper() {
|
||||
|
||||
hypervisor="$(systemd-detect-virt)"
|
||||
if [[ "${hypervisor}" != "none" ]]; then
|
||||
vendor="Virtual Machine"
|
||||
vgaconf="n"
|
||||
vgapkgs=""
|
||||
fi
|
||||
case "${hypervisor}" in
|
||||
kvm)
|
||||
vmpkgs="spice spice-vdagent spice-protocol spice-gtk qemu-guest-agent swtpm"
|
||||
vm_services="qemu-guest-agent" ;;
|
||||
vmware)
|
||||
vmpkgs="open-vm-tools"
|
||||
vm_services="vmtoolsd vmware-vmblock-fuse" ;;
|
||||
oracle)
|
||||
vmpkgs="virtualbox-guest-utils"
|
||||
vm_services="" ;;
|
||||
microsoft)
|
||||
vmpkgs="hyperv"
|
||||
vm_services="hv_fcopy_daemon hv_kvp_daemon hv_vss_daemon" ;;
|
||||
esac
|
||||
}
|
||||
###################################################################################################
|
||||
machine_dtct() {
|
||||
|
||||
until dtct_hyper; do : ; done
|
||||
local prompt="Machine Detection"
|
||||
sleep 0.2
|
||||
NC "
|
||||
@@ -475,6 +496,10 @@ ${magenta}###${nc}------------------------------------${magenta}[ ${bwhite}Machi
|
||||
hardw_vendor="$(hostnamectl | grep -E 'Hardware Vendor' | awk "{print \$3}")"
|
||||
machine="$(hostnamectl | grep -E 'Chassis' | awk "{print \$2}")"
|
||||
|
||||
if [[ "${hypervisor}" != "none" ]]; then
|
||||
vm
|
||||
fi
|
||||
|
||||
if [[ "${CPU}" == *"GenuineIntel"* ]]; then
|
||||
microcode="intel-ucode"
|
||||
nrg_plc="x86_energy_perf_policy"
|
||||
@@ -665,6 +690,7 @@ Enter your Locale ${bwhite}(empty for 'en_US')${blue}: "
|
||||
slct_kbd() {
|
||||
|
||||
local prompt="Keyboard Layout"
|
||||
local stage_prompt="Setting Keyboard Layout"
|
||||
sleep 0.2
|
||||
NC "
|
||||
|
||||
@@ -704,7 +730,7 @@ Enter your keyboard layout ${bwhite}(empty for 'us')${blue}: "
|
||||
|
||||
### ${SETKBD} Keyboard Layout has been selected
|
||||
"
|
||||
loadkeys "${SETKBD}" > /dev/null 2>&1
|
||||
loadkeys "${SETKBD}" > /dev/null 2> error_log.txt || stage_fail
|
||||
fi
|
||||
ok
|
||||
}
|
||||
@@ -893,7 +919,6 @@ Enter a number: "
|
||||
|
||||
case "${sysmenu}" in
|
||||
1)
|
||||
until dtct_hyper; do : ; done
|
||||
until slct_krnl; do : ; done
|
||||
until ask_bootldr; do : ; done
|
||||
until slct_espmnt; do : ; done
|
||||
@@ -923,30 +948,6 @@ Enter a number: "
|
||||
esac
|
||||
}
|
||||
###################################################################################################
|
||||
dtct_hyper() {
|
||||
|
||||
hypervisor="$(systemd-detect-virt)"
|
||||
if [[ "${hypervisor}" != "none" ]]; then
|
||||
vendor="Virtual Machine"
|
||||
vgaconf="n"
|
||||
vgapkgs=""
|
||||
fi
|
||||
case "${hypervisor}" in
|
||||
kvm)
|
||||
vmpkgs="spice spice-vdagent spice-protocol spice-gtk qemu-guest-agent swtpm"
|
||||
vm_services="qemu-guest-agent" ;;
|
||||
vmware)
|
||||
vmpkgs="open-vm-tools"
|
||||
vm_services="vmtoolsd vmware-vmblock-fuse" ;;
|
||||
oracle)
|
||||
vmpkgs="virtualbox-guest-utils"
|
||||
vm_services="" ;;
|
||||
microsoft)
|
||||
vmpkgs="hyperv"
|
||||
vm_services="hv_fcopy_daemon hv_kvp_daemon hv_vss_daemon" ;;
|
||||
esac
|
||||
}
|
||||
###################################################################################################
|
||||
slct_krnl() {
|
||||
|
||||
local prompt="Kernel"
|
||||
@@ -1014,7 +1015,6 @@ Enter a number: "
|
||||
if [[ "${vga_slct}" == "yes" ]]; then
|
||||
local stage_prompt="Graphics Setup"
|
||||
completion_err
|
||||
until dtct_hyper; do : ; done
|
||||
until dtct_vga; do : ; done
|
||||
fi
|
||||
}
|
||||
@@ -1139,11 +1139,11 @@ ${magenta}###${nc}-------------------------------------${magenta}[ ${bwhite}Secu
|
||||
if [[ "${bootloader}" == "1" ]]; then
|
||||
YELLOW "
|
||||
|
||||
> Sign Unified Kernel Image(s) for use with ${nc}Secure Boot ${nc}${yellow}? [Y/n]"
|
||||
> Sign Unified Kernel Image(s) & binaries for use with ${nc}Secure Boot ${nc}${yellow}? [Y/n]"
|
||||
elif [[ "${bootloader}" == "2" ]]; then
|
||||
YELLOW "
|
||||
|
||||
> Sign Kernel for use with ${nc}Secure Boot ${nc}${yellow}? [Y/n]"
|
||||
> Sign Kernel & binaries for use with ${nc}Secure Boot ${nc}${yellow}? [Y/n]"
|
||||
fi
|
||||
BLUE "
|
||||
|
||||
@@ -1370,7 +1370,6 @@ Enter a number: "
|
||||
if [[ "${vga_slct}" == "yes" ]]; then
|
||||
local stage_prompt="Graphics Setup"
|
||||
completion_err
|
||||
until dtct_hyper; do : ; done
|
||||
until dtct_vga; do : ; done
|
||||
fi
|
||||
}
|
||||
@@ -1776,7 +1775,7 @@ Enter a number: "
|
||||
--------------------------------------------"
|
||||
CYAN "
|
||||
|
||||
(*) ${nc}Nvidia's ${yellowl}'Suspend/Resume' ${nc}feature needs a valid ${yellowl}swapping ${nc}mechanism to work
|
||||
(*) ${nc}Nvidia's ${yellowl}'Suspend/Resume' ${nc}feature is incompatible with current ${yellowl}Swap ${nc}settings
|
||||
"
|
||||
reload
|
||||
until ask_swap; do : ; done
|
||||
@@ -1816,11 +1815,11 @@ ${magenta}###${nc}--------------------------------------${magenta}[ ${bwhite}Des
|
||||
|
||||
[1] Plasma
|
||||
|
||||
[2] Minimal Plasma & Desktop Apps & System Optimizations
|
||||
[2] Minimal Plasma + Desktop Apps + System Optimizations
|
||||
|
||||
[3] Gnome
|
||||
|
||||
[4] Minimal Gnome & Desktop Apps & System Optimizations
|
||||
[4] Minimal Gnome + Desktop Apps + System Optimizations
|
||||
|
||||
[5] Xfce
|
||||
|
||||
@@ -2710,10 +2709,10 @@ Enter a Custom Percentage number ${nc}e.g. 30 ${bwhite}(empty to skip)${blue}: "
|
||||
|
||||
case "${preset}" in
|
||||
1)
|
||||
sgdisk -o "${sgdrive}" > /dev/null 2>&1 || stage_fail
|
||||
sgdisk -I -n1:0:+512M -t1:ef00 -c1:ESP "${sgdrive}" > /dev/null 2>&1 || stage_fail
|
||||
sgdisk -I -n2:0:0 -t2:8304 -c2:ROOT "${sgdrive}" > /dev/null 2>&1 || stage_fail
|
||||
partprobe -s "${sgdrive}" > /dev/null 2>&1 || stage_fail
|
||||
sgdisk -o "${sgdrive}" > /dev/null 2> error_log.txt || stage_fail
|
||||
sgdisk -I -n1:0:+512M -t1:ef00 -c1:ESP "${sgdrive}" > /dev/null 2> error_log.txt || stage_fail
|
||||
sgdisk -I -n2:0:0 -t2:8304 -c2:ROOT "${sgdrive}" > /dev/null 2> error_log.txt || stage_fail
|
||||
partprobe -s "${sgdrive}" > /dev/null 2> error_log.txt || stage_fail
|
||||
if [[ "${install}" == "yes" ]]; then
|
||||
until sanity_check; do : ; done
|
||||
else
|
||||
@@ -2721,22 +2720,22 @@ Enter a Custom Percentage number ${nc}e.g. 30 ${bwhite}(empty to skip)${blue}: "
|
||||
fi ;;
|
||||
2)
|
||||
until set_swapsize; do : ; done
|
||||
sgdisk -o "${sgdrive}" > /dev/null 2>&1 || stage_fail
|
||||
sgdisk -I -n1:0:+512M -t1:ef00 -c1:ESP "${sgdrive}" > /dev/null 2>&1 || stage_fail
|
||||
sgdisk -I -n2:0:+"${swapsize}"G -t2:8200 -c2:SWAP "${sgdrive}" > /dev/null 2>&1 || stage_fail
|
||||
sgdisk -I -n3:0:0 -t3:8304 -c3:ROOT "${sgdrive}" > /dev/null 2>&1 || stage_fail
|
||||
partprobe -s "${sgdrive}" > /dev/null 2>&1 || stage_fail
|
||||
sgdisk -o "${sgdrive}" > /dev/null 2> error_log.txt || stage_fail
|
||||
sgdisk -I -n1:0:+512M -t1:ef00 -c1:ESP "${sgdrive}" > /dev/null 2> error_log.txt || stage_fail
|
||||
sgdisk -I -n2:0:+"${swapsize}"G -t2:8200 -c2:SWAP "${sgdrive}" > /dev/null 2> error_log.txt || stage_fail
|
||||
sgdisk -I -n3:0:0 -t3:8304 -c3:ROOT "${sgdrive}" > /dev/null 2> error_log.txt || stage_fail
|
||||
partprobe -s "${sgdrive}" > /dev/null 2> error_log.txt || stage_fail
|
||||
if [[ "${install}" == "yes" ]]; then
|
||||
until sanity_check; do : ; done
|
||||
else
|
||||
ok
|
||||
fi ;;
|
||||
3)
|
||||
sgdisk -o "${sgdrive}" > /dev/null 2>&1 || stage_fail
|
||||
sgdisk -I -n1:0:+512M -t1:ef00 -c1:ESP "${sgdrive}" > /dev/null 2>&1 || stage_fail
|
||||
sgdisk -I -n2:0:+"${rootsize}"G -t2:8304 -c2:ROOT "${sgdrive}" > /dev/null 2>&1 || stage_fail
|
||||
sgdisk -I -n3:0:0 -t3:8302 -c3:HOME "${sgdrive}" > /dev/null 2>&1 || stage_fail
|
||||
partprobe -s "${sgdrive}" > /dev/null 2>&1 || stage_fail
|
||||
sgdisk -o "${sgdrive}" > /dev/null 2> error_log.txt || stage_fail
|
||||
sgdisk -I -n1:0:+512M -t1:ef00 -c1:ESP "${sgdrive}" > /dev/null 2> error_log.txt || stage_fail
|
||||
sgdisk -I -n2:0:+"${rootsize}"G -t2:8304 -c2:ROOT "${sgdrive}" > /dev/null 2> error_log.txt || stage_fail
|
||||
sgdisk -I -n3:0:0 -t3:8302 -c3:HOME "${sgdrive}" > /dev/null 2> error_log.txt || stage_fail
|
||||
partprobe -s "${sgdrive}" > /dev/null 2> error_log.txt || stage_fail
|
||||
if [[ "${install}" == "yes" ]]; then
|
||||
until sanity_check; do : ; done
|
||||
else
|
||||
@@ -2744,12 +2743,12 @@ Enter a Custom Percentage number ${nc}e.g. 30 ${bwhite}(empty to skip)${blue}: "
|
||||
fi ;;
|
||||
4)
|
||||
until set_swapsize; do : ; done
|
||||
sgdisk -o "${sgdrive}" > /dev/null 2>&1 || stage_fail
|
||||
sgdisk -I -n1:0:+512M -t1:ef00 -c1:ESP "${sgdrive}" > /dev/null 2>&1 || stage_fail
|
||||
sgdisk -I -n2:0:+"${swapsize}"G -t2:8200 -c2:SWAP "${sgdrive}" > /dev/null 2>&1 || stage_fail
|
||||
sgdisk -I -n3:0:+"${rootsize}"G -t3:8304 -c3:ROOT "${sgdrive}" > /dev/null 2>&1 || stage_fail
|
||||
sgdisk -I -n4:0:0 -t4:8302 -c4:HOME "${sgdrive}" > /dev/null 2>&1 || stage_fail
|
||||
partprobe -s "${sgdrive}" > /dev/null 2>&1 || stage_fail
|
||||
sgdisk -o "${sgdrive}" > /dev/null 2> error_log.txt || stage_fail
|
||||
sgdisk -I -n1:0:+512M -t1:ef00 -c1:ESP "${sgdrive}" > /dev/null 2> error_log.txt || stage_fail
|
||||
sgdisk -I -n2:0:+"${swapsize}"G -t2:8200 -c2:SWAP "${sgdrive}" > /dev/null 2> error_log.txt || stage_fail
|
||||
sgdisk -I -n3:0:+"${rootsize}"G -t3:8304 -c3:ROOT "${sgdrive}" > /dev/null 2> error_log.txt || stage_fail
|
||||
sgdisk -I -n4:0:0 -t4:8302 -c4:HOME "${sgdrive}" > /dev/null 2> error_log.txt || stage_fail
|
||||
partprobe -s "${sgdrive}" > /dev/null 2> error_log.txt || stage_fail
|
||||
if [[ "${install}" == "yes" ]]; then
|
||||
until sanity_check; do : ; done
|
||||
else
|
||||
@@ -2820,21 +2819,21 @@ ${magenta}###${nc}-----------------------------------${magenta}[ ${bwhite}Manual
|
||||
line3
|
||||
NC " SUPPORTED PARTITION TYPES & MOUNTPOINTS: "
|
||||
line2
|
||||
REDBG " ------------------------------------------------------------------------------------------- "
|
||||
REDBG " ### Linux Root x86-64 Partition [ GUID Code: 8304 ] Mountpoint: / ### "
|
||||
REDBG " ------------------------------------------------------------------------------------------- "
|
||||
REDBG " ------------------------------------------------------------------------------------------- "
|
||||
REDBG " ### Linux Root x86-64 Partition [ GUID Code: 8304 ] Mountpoint: / ### "
|
||||
REDBG " ------------------------------------------------------------------------------------------- "
|
||||
echo
|
||||
BLUEBG " ------------------------------------------------------------------------------------------- "
|
||||
BLUEBG " ### EFI System Partition [ GUID Code: ef00 ] Mountpoint: /efi or /boot ### "
|
||||
BLUEBG " ------------------------------------------------------------------------------------------- "
|
||||
BLUEBG " ------------------------------------------------------------------------------------------- "
|
||||
BLUEBG " ### EFI System Partition [ GUID Code: ef00 ] Mountpoint: /efi or /boot ### "
|
||||
BLUEBG " ------------------------------------------------------------------------------------------- "
|
||||
echo
|
||||
GREENBG " ------------------------------------------------------------------------------------------- "
|
||||
GREENBG " ### Linux Home Partition [ GUID Code: 8302 ] Mountpoint: /home ### "
|
||||
GREENBG " ------------------------------------------------------------------------------------------- "
|
||||
GREENBG " ------------------------------------------------------------------------------------------- "
|
||||
GREENBG " ### Linux Home Partition [ GUID Code: 8302 ] Mountpoint: /home ### "
|
||||
GREENBG " ------------------------------------------------------------------------------------------- "
|
||||
echo
|
||||
YELLOWBG " ------------------------------------------------------------------------------------------- "
|
||||
YELLOWBG " ### Linux Swap Partition [ GUID Code: 8200 ] Mountpoint: /swap ### "
|
||||
YELLOWBG " ------------------------------------------------------------------------------------------- "
|
||||
YELLOWBG " ------------------------------------------------------------------------------------------- "
|
||||
YELLOWBG " ### Linux Swap Partition [ GUID Code: 8200 ] Mountpoint: /swap ### "
|
||||
YELLOWBG " ------------------------------------------------------------------------------------------- "
|
||||
echo
|
||||
MAGENTABG " ------------------------------------------------------------------------------------------- "
|
||||
MAGENTABG " ### Linux Extended Boot Partition [ GUID Code: ea00 ] Mountpoint: /boot ### "
|
||||
@@ -3857,7 +3856,6 @@ instl() {
|
||||
if [[ -z "${kernelnmbr}" ]]; then
|
||||
local stage_prompt="Kernel, Bootloader, ESP Mountpoint & Secure Signing"
|
||||
completion_err
|
||||
until dtct_hyper; do : ; done
|
||||
until slct_krnl; do : ; done
|
||||
until ask_bootldr; do : ; done
|
||||
until slct_espmnt; do : ; done
|
||||
@@ -3934,7 +3932,7 @@ swappart() {
|
||||
|
||||
${magenta}###${nc}----------------------------------${magenta}[ ${bwhite}Swap Partition Setup${nc} ${magenta}]${nc}----------------------------------${magenta}###
|
||||
"
|
||||
if mkswap "${swap_dev}" > /dev/null 2>&1 ; then
|
||||
if mkswap "${swap_dev}" > /dev/null 2> error_log.txt ; then
|
||||
stage_ok
|
||||
else
|
||||
stage_fail
|
||||
@@ -4037,9 +4035,9 @@ ${magenta}###${nc}----------------------------------------${magenta}[ ${bwhite}A
|
||||
espfs="$(lsblk -dno FSTYPE "${esp_dev}")"
|
||||
|
||||
if [[ "${fs}" == "1" ]]; then
|
||||
if mkfs.ext4 -F -L Root "${root_dev}" > /dev/null 2>&1 ; then
|
||||
tune2fs -O fast_commit "${root_dev}" > /dev/null 2>&1 || err_abort
|
||||
mount "${root_dev}" /mnt > /dev/null 2>&1 || err_abort
|
||||
if mkfs.ext4 -F -L Root "${root_dev}" > /dev/null 2> error_log.txt ; then
|
||||
tune2fs -O fast_commit "${root_dev}" > /dev/null 2> error_log.txt || err_abort
|
||||
mount "${root_dev}" /mnt > /dev/null 2> error_log.txt || err_abort
|
||||
sleep 0.2
|
||||
NC "
|
||||
==> [${green}/Root OK${nc}]
|
||||
@@ -4051,27 +4049,27 @@ ${magenta}###${nc}----------------------------------------${magenta}[ ${bwhite}A
|
||||
fi
|
||||
#--------------------------------------------------------------------------------------------------
|
||||
elif [[ "${fs}" == "2" ]]; then
|
||||
if mkfs.btrfs -f -L Root "${root_dev}" > /dev/null 2>&1 ; then
|
||||
mount "${root_dev}" /mnt > /dev/null 2>&1 || err_abort
|
||||
btrfs subvolume create /mnt/@ > /dev/null 2>&1 || err_abort
|
||||
btrfs subvolume create /mnt/@home > /dev/null 2>&1 || err_abort
|
||||
btrfs subvolume create /mnt/@cache > /dev/null 2>&1 || err_abort
|
||||
btrfs subvolume create /mnt/@log > /dev/null 2>&1 || err_abort
|
||||
btrfs subvolume create /mnt/@tmp > /dev/null 2>&1 || err_abort
|
||||
btrfs subvolume create /mnt/@snapshots > /dev/null 2>&1 || err_abort
|
||||
if mkfs.btrfs -f -L Root "${root_dev}" > /dev/null 2> error_log.txt ; then
|
||||
mount "${root_dev}" /mnt > /dev/null 2> error_log.txt || err_abort
|
||||
btrfs subvolume create /mnt/@ > /dev/null 2> error_log.txt || err_abort
|
||||
btrfs subvolume create /mnt/@home > /dev/null 2> error_log.txt || err_abort
|
||||
btrfs subvolume create /mnt/@cache > /dev/null 2> error_log.txt || err_abort
|
||||
btrfs subvolume create /mnt/@log > /dev/null 2> error_log.txt || err_abort
|
||||
btrfs subvolume create /mnt/@tmp > /dev/null 2> error_log.txt || err_abort
|
||||
btrfs subvolume create /mnt/@snapshots > /dev/null 2> error_log.txt || err_abort
|
||||
if [[ "${swapmode}" == "2" ]]; then
|
||||
btrfs subvolume create /mnt/@swap > /dev/null 2>&1 || err_abort
|
||||
btrfs subvolume create /mnt/@swap > /dev/null 2> error_log.txt || err_abort
|
||||
fi
|
||||
umount /mnt > /dev/null 2>&1 || err_abort
|
||||
mount -o "${sbvl_mnt_opts}",subvol=@ "${root_dev}" /mnt > /dev/null 2>&1 || err_abort
|
||||
umount /mnt > /dev/null 2> error_log.txt || err_abort
|
||||
mount -o "${sbvl_mnt_opts}",subvol=@ "${root_dev}" /mnt > /dev/null 2> error_log.txt || err_abort
|
||||
if [[ "${swapmode}" == "2" ]]; then
|
||||
mount --mkdir -o rw,nodatacow,subvol=@swap "${root_dev}" /mnt/swap > /dev/null 2>&1 || err_abort
|
||||
mount --mkdir -o rw,nodatacow,subvol=@swap "${root_dev}" /mnt/swap > /dev/null 2> error_log.txt || err_abort
|
||||
fi
|
||||
mount --mkdir -o "${sbvl_mnt_opts}",subvol=@cache "${root_dev}" /mnt/var/cache > /dev/null 2>&1 || err_abort
|
||||
mount --mkdir -o "${sbvl_mnt_opts}",subvol=@home "${root_dev}" /mnt/home > /dev/null 2>&1 || err_abort
|
||||
mount --mkdir -o "${sbvl_mnt_opts}",subvol=@log "${root_dev}" /mnt/var/log > /dev/null 2>&1 || err_abort
|
||||
mount --mkdir -o "${sbvl_mnt_opts}",subvol=@snapshots "${root_dev}" /mnt/"${snapname}" > /dev/null 2>&1 || err_abort
|
||||
mount --mkdir -o "${sbvl_mnt_opts}",subvol=@tmp "${root_dev}" /mnt/var/tmp > /dev/null 2>&1 || err_abort
|
||||
mount --mkdir -o "${sbvl_mnt_opts}",subvol=@cache "${root_dev}" /mnt/var/cache > /dev/null 2> error_log.txt || err_abort
|
||||
mount --mkdir -o "${sbvl_mnt_opts}",subvol=@home "${root_dev}" /mnt/home > /dev/null 2> error_log.txt || err_abort
|
||||
mount --mkdir -o "${sbvl_mnt_opts}",subvol=@log "${root_dev}" /mnt/var/log > /dev/null 2> error_log.txt || err_abort
|
||||
mount --mkdir -o "${sbvl_mnt_opts}",subvol=@snapshots "${root_dev}" /mnt/"${snapname}" > /dev/null 2> error_log.txt || err_abort
|
||||
mount --mkdir -o "${sbvl_mnt_opts}",subvol=@tmp "${root_dev}" /mnt/var/tmp > /dev/null 2> error_log.txt || err_abort
|
||||
sleep 0.2
|
||||
NC "
|
||||
==> [${green}/@ OK${nc}]
|
||||
@@ -4085,8 +4083,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>&1 ; then
|
||||
mount --mkdir "${esp_dev}" "${esp_mount}" > /dev/null 2>&1 || err_abort
|
||||
if mkfs.fat -F 32 -n ESP "${esp_dev}" > /dev/null 2> error_log.txt ; then
|
||||
mount --mkdir "${esp_dev}" "${esp_mount}" > /dev/null 2> error_log.txt || err_abort
|
||||
sleep 0.2
|
||||
NC "
|
||||
==> [${green}/ESP OK${nc}]
|
||||
@@ -4098,7 +4096,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>&1 ; then
|
||||
if mount --mkdir "${esp_dev}" "${esp_mount}" > /dev/null 2> error_log.txt ; then
|
||||
sleep 0.2
|
||||
NC "
|
||||
==> [${green}Unformatted /ESP OK${nc}]
|
||||
@@ -4109,8 +4107,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>&1 ; then
|
||||
mount --mkdir "${esp_dev}" "${esp_mount}" > /dev/null 2>&1 || err_abort
|
||||
if mkfs.fat -F 32 -n ESP "${esp_dev}" > /dev/null 2> error_log.txt ; then
|
||||
mount --mkdir "${esp_dev}" "${esp_mount}" > /dev/null 2> error_log.txt || err_abort
|
||||
sleep 0.2
|
||||
NC "
|
||||
==> [${green}/ESP OK${nc}]
|
||||
@@ -4125,8 +4123,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>&1 ; then
|
||||
mount --mkdir "${xboot_dev}" /mnt/boot > /dev/null 2>&1 || err_abort
|
||||
if mkfs.fat -F 32 -n XBOOTLDR "${xboot_dev}" > /dev/null 2> error_log.txt ; then
|
||||
mount --mkdir "${xboot_dev}" /mnt/boot > /dev/null 2> error_log.txt || err_abort
|
||||
sleep 0.2
|
||||
NC "
|
||||
==> [${green}/XBOOTLDR OK${nc}]
|
||||
@@ -4162,9 +4160,9 @@ ${magenta}###${nc}----------------------------------------${magenta}[ ${bwhite}A
|
||||
fi
|
||||
|
||||
if [[ "${homeform}" == "y" ]]; then
|
||||
if mkfs.ext4 -F -L Home "${home_dev}" > /dev/null 2>&1 ; then
|
||||
tune2fs -O fast_commit "${home_dev}" > /dev/null 2>&1 || err_abort
|
||||
mount --mkdir "${home_dev}" /mnt/home > /dev/null 2>&1 || err_abort
|
||||
if mkfs.ext4 -F -L Home "${home_dev}" > /dev/null 2> error_log.txt ; then
|
||||
tune2fs -O fast_commit "${home_dev}" > /dev/null 2> error_log.txt || err_abort
|
||||
mount --mkdir "${home_dev}" /mnt/home > /dev/null 2> error_log.txt || err_abort
|
||||
sleep 0.2
|
||||
NC "
|
||||
==> [${green}/Home OK${nc}]
|
||||
@@ -4239,7 +4237,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>&1 ; then
|
||||
if mkfs.fat -F 32 -n ESP "${esppart}" > /dev/null 2> error_log.txt ; then
|
||||
sleep 0.2
|
||||
NC "
|
||||
|
||||
@@ -4258,7 +4256,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>&1 ; then
|
||||
if mkfs.fat -F 32 -n ESP "${esppart}" > /dev/null 2> error_log.txt ; then
|
||||
sleep 0.2
|
||||
NC "
|
||||
|
||||
@@ -4312,7 +4310,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>&1 ; then
|
||||
if mkfs.fat -F 32 -n XBOOTLDR "${xbootpart}" > /dev/null 2> error_log.txt ; then
|
||||
sleep 0.2
|
||||
NC "
|
||||
|
||||
@@ -4367,8 +4365,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>&1 ; then
|
||||
tune2fs -O fast_commit "${rootpart}" > /dev/null 2>&1 || err_abort
|
||||
if mkfs.ext4 -F "${rootpart}" > /dev/null 2> error_log.txt ; then
|
||||
tune2fs -O fast_commit "${rootpart}" > /dev/null 2> error_log.txt || err_abort
|
||||
sleep 0.2
|
||||
NC "
|
||||
|
||||
@@ -4382,18 +4380,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>&1 ; then
|
||||
mount "${rootpart}" /mnt > /dev/null 2>&1 || err_abort
|
||||
btrfs subvolume create /mnt/@ > /dev/null 2>&1 || err_abort
|
||||
btrfs subvolume create /mnt/@home > /dev/null 2>&1 || err_abort
|
||||
btrfs subvolume create /mnt/@cache > /dev/null 2>&1 || err_abort
|
||||
btrfs subvolume create /mnt/@log > /dev/null 2>&1 || err_abort
|
||||
btrfs subvolume create /mnt/@tmp > /dev/null 2>&1 || err_abort
|
||||
btrfs subvolume create /mnt/@snapshots > /dev/null 2>&1 || err_abort
|
||||
if mkfs.btrfs -f "${rootpart}" > /dev/null 2> error_log.txt ; then
|
||||
mount "${rootpart}" /mnt > /dev/null 2> error_log.txt || err_abort
|
||||
btrfs subvolume create /mnt/@ > /dev/null 2> error_log.txt || err_abort
|
||||
btrfs subvolume create /mnt/@home > /dev/null 2> error_log.txt || err_abort
|
||||
btrfs subvolume create /mnt/@cache > /dev/null 2> error_log.txt || err_abort
|
||||
btrfs subvolume create /mnt/@log > /dev/null 2> error_log.txt || err_abort
|
||||
btrfs subvolume create /mnt/@tmp > /dev/null 2> error_log.txt || err_abort
|
||||
btrfs subvolume create /mnt/@snapshots > /dev/null 2> error_log.txt || err_abort
|
||||
if [[ "${swapmode}" == "2" ]]; then
|
||||
btrfs subvolume create /mnt/@swap > /dev/null 2>&1 || err_abort
|
||||
btrfs subvolume create /mnt/@swap > /dev/null 2> error_log.txt || err_abort
|
||||
fi
|
||||
umount /mnt > /dev/null 2>&1 || err_abort
|
||||
umount /mnt > /dev/null 2> error_log.txt || err_abort
|
||||
sleep 0.2
|
||||
NC "
|
||||
|
||||
@@ -4423,7 +4421,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>&1 ; then
|
||||
if e2label "${rootpart}" "${rootpartname}" > /dev/null 2> error_log.txt ; then
|
||||
sleep 0.2
|
||||
NC "
|
||||
|
||||
@@ -4435,7 +4433,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>&1 || err_abort
|
||||
btrfs filesystem label /mnt "${rootpartname}" > /dev/null 2> error_log.txt || err_abort
|
||||
umount /mnt || err_abort
|
||||
sleep 0.2
|
||||
NC "
|
||||
@@ -4481,9 +4479,9 @@ ask_homepart_form() {
|
||||
fi
|
||||
|
||||
if [[ "${homeform}" == "y" ]]; then
|
||||
if mkfs.ext4 -F -L Home "${home_dev}" > /dev/null 2>&1 ; then
|
||||
tune2fs -O fast_commit "${home_dev}" > /dev/null 2>&1 || err_abort
|
||||
mount --mkdir "${home_dev}" /mnt/home > /dev/null 2>&1 || err_abort
|
||||
if mkfs.ext4 -F -L Home "${home_dev}" > /dev/null 2> error_log.txt ; then
|
||||
tune2fs -O fast_commit "${home_dev}" > /dev/null 2> error_log.txt || err_abort
|
||||
mount --mkdir "${home_dev}" /mnt/home > /dev/null 2> error_log.txt || err_abort
|
||||
sleep 0.2
|
||||
NC "
|
||||
==> [${green}/Home OK${nc}]
|
||||
@@ -4536,8 +4534,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>&1 ; then
|
||||
tune2fs -O fast_commit "${homepart}" > /dev/null 2>&1 || err_abort
|
||||
if mkfs.ext4 -F "${homepart}" > /dev/null 2> error_log.txt ; then
|
||||
tune2fs -O fast_commit "${homepart}" > /dev/null 2> error_log.txt || err_abort
|
||||
sleep 0.2
|
||||
NC "
|
||||
|
||||
@@ -4564,7 +4562,7 @@ Enter a name ${bwhite}(empty to skip and proceed)${blue}: "
|
||||
==> " homepartname
|
||||
|
||||
if [[ -n "${homepartname}" ]]; then
|
||||
if e2label "${homepart}" "${homepartname}" > /dev/null 2>&1 ;then
|
||||
if e2label "${homepart}" "${homepartname}" > /dev/null 2> error_log.txt ;then
|
||||
sleep 0.2
|
||||
NC "
|
||||
|
||||
@@ -4617,7 +4615,7 @@ Enter your${nc} ${cyan}${roottype} ${blue}partition number: "
|
||||
if [[ -e "${rootpart}" ]]; then
|
||||
#--------------------------------------------------------------------------------------------------
|
||||
if [[ "${fs}" == "1" ]]; then
|
||||
if mount "${rootpart}" /mnt > /dev/null 2>&1 ; then
|
||||
if mount "${rootpart}" /mnt > /dev/null 2> error_log.txt ; then
|
||||
sleep 0.2
|
||||
ok
|
||||
return 0
|
||||
@@ -4627,15 +4625,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>&1 ; then
|
||||
if mount -o "${sbvl_mnt_opts}",subvol=@ "${rootpart}" /mnt > /dev/null 2> error_log.txt ; then
|
||||
if [[ "${swapmode}" == "2" ]]; then
|
||||
mount --mkdir -o rw,nodatacow,subvol=@swap "${rootpart}" /mnt/swap > /dev/null 2>&1 || err_abort
|
||||
mount --mkdir -o rw,nodatacow,subvol=@swap "${rootpart}" /mnt/swap > /dev/null 2> error_log.txt || err_abort
|
||||
fi
|
||||
mount --mkdir -o "${sbvl_mnt_opts}",subvol=@cache "${rootpart}" /mnt/var/cache > /dev/null 2>&1 || err_abort
|
||||
mount --mkdir -o "${sbvl_mnt_opts}",subvol=@home "${rootpart}" /mnt/home > /dev/null 2>&1 || err_abort
|
||||
mount --mkdir -o "${sbvl_mnt_opts}",subvol=@log "${rootpart}" /mnt/var/log > /dev/null 2>&1 || err_abort
|
||||
mount --mkdir -o "${sbvl_mnt_opts}",subvol=@snapshots "${rootpart}" /mnt/"${snapname}" > /dev/null 2>&1 || err_abort
|
||||
mount --mkdir -o "${sbvl_mnt_opts}",subvol=@tmp "${rootpart}" /mnt/var/tmp > /dev/null 2>&1 || err_abort
|
||||
mount --mkdir -o "${sbvl_mnt_opts}",subvol=@cache "${rootpart}" /mnt/var/cache > /dev/null 2> error_log.txt || err_abort
|
||||
mount --mkdir -o "${sbvl_mnt_opts}",subvol=@home "${rootpart}" /mnt/home > /dev/null 2> error_log.txt || err_abort
|
||||
mount --mkdir -o "${sbvl_mnt_opts}",subvol=@log "${rootpart}" /mnt/var/log > /dev/null 2> error_log.txt || err_abort
|
||||
mount --mkdir -o "${sbvl_mnt_opts}",subvol=@snapshots "${rootpart}" /mnt/"${snapname}" > /dev/null 2> error_log.txt || err_abort
|
||||
mount --mkdir -o "${sbvl_mnt_opts}",subvol=@tmp "${rootpart}" /mnt/var/tmp > /dev/null 2> error_log.txt || err_abort
|
||||
sleep 0.2
|
||||
ok
|
||||
return 0
|
||||
@@ -4682,7 +4680,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>&1 ; then
|
||||
if mount --mkdir "${esppart}" "${esp_mount}" > /dev/null 2> error_log.txt ; then
|
||||
ok
|
||||
return 0
|
||||
else
|
||||
@@ -4727,7 +4725,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>&1 ; then
|
||||
if mount --mkdir "${xbootpart}" /mnt/boot > /dev/null 2> error_log.txt ; then
|
||||
ok
|
||||
return 0
|
||||
else
|
||||
@@ -4773,7 +4771,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>&1 ; then
|
||||
if mount --mkdir "${homepart}" /mnt/home > /dev/null 2> error_log.txt ; then
|
||||
ok
|
||||
return 0
|
||||
else
|
||||
@@ -4841,7 +4839,6 @@ revise() {
|
||||
revision="yes"
|
||||
reset=(xbootloader="" vgaconf="" vendor_slct="" packages="" custompkgs="" customservices="" cust_bootopts="" REGDOM="" preset="" autoroot="" autoxboot="" autohome="" autoswap="")
|
||||
export "${reset[@]}"
|
||||
until dtct_hyper; do : ; done
|
||||
until slct_krnl; do : ; done
|
||||
until ask_bootldr; do : ; done
|
||||
until slct_espmnt; do : ; done
|
||||
@@ -4959,36 +4956,36 @@ ${magenta}###${nc}-------------------------------------${magenta}[ ${bwhite}LUKS
|
||||
fi
|
||||
#------------------------------------------------------------------------------------------
|
||||
if [[ "${fs}" == "1" ]]; then
|
||||
mkfs.ext4 -F -L Root /dev/mapper/"${ENCROOT}" > /dev/null 2>&1 || err_abort
|
||||
tune2fs -O fast_commit /dev/mapper/"${ENCROOT}" > /dev/null 2>&1 || err_abort
|
||||
mount /dev/mapper/"${ENCROOT}" /mnt > /dev/null 2>&1 || err_abort
|
||||
mkfs.ext4 -F -L Root /dev/mapper/"${ENCROOT}" > /dev/null 2> error_log.txt || err_abort
|
||||
tune2fs -O fast_commit /dev/mapper/"${ENCROOT}" > /dev/null 2> error_log.txt || err_abort
|
||||
mount /dev/mapper/"${ENCROOT}" /mnt > /dev/null 2> error_log.txt || err_abort
|
||||
sleep 0.2
|
||||
NC "
|
||||
==> [${green}Encrypted /Root OK${nc}]
|
||||
"
|
||||
#------------------------------------------------------------------------------------------
|
||||
elif [[ "${fs}" == "2" ]]; then
|
||||
mkfs.btrfs -f -L Root /dev/mapper/"${ENCROOT}" > /dev/null 2>&1 || err_abort
|
||||
mount /dev/mapper/"${ENCROOT}" /mnt > /dev/null 2>&1 || err_abort
|
||||
btrfs subvolume create /mnt/@ > /dev/null 2>&1 || err_abort
|
||||
btrfs subvolume create /mnt/@home > /dev/null 2>&1 || err_abort
|
||||
btrfs subvolume create /mnt/@cache > /dev/null 2>&1 || err_abort
|
||||
btrfs subvolume create /mnt/@log > /dev/null 2>&1 || err_abort
|
||||
btrfs subvolume create /mnt/@snapshots > /dev/null 2>&1 || err_abort
|
||||
btrfs subvolume create /mnt/@tmp > /dev/null 2>&1 || err_abort
|
||||
mkfs.btrfs -f -L Root /dev/mapper/"${ENCROOT}" > /dev/null 2> error_log.txt || err_abort
|
||||
mount /dev/mapper/"${ENCROOT}" /mnt > /dev/null 2> error_log.txt || err_abort
|
||||
btrfs subvolume create /mnt/@ > /dev/null 2> error_log.txt || err_abort
|
||||
btrfs subvolume create /mnt/@home > /dev/null 2> error_log.txt || err_abort
|
||||
btrfs subvolume create /mnt/@cache > /dev/null 2> error_log.txt || err_abort
|
||||
btrfs subvolume create /mnt/@log > /dev/null 2> error_log.txt || err_abort
|
||||
btrfs subvolume create /mnt/@snapshots > /dev/null 2> error_log.txt || err_abort
|
||||
btrfs subvolume create /mnt/@tmp > /dev/null 2> error_log.txt || err_abort
|
||||
if [[ "${swapmode}" == "2" ]]; then
|
||||
btrfs subvolume create /mnt/@swap > /dev/null 2>&1 || err_abort
|
||||
btrfs subvolume create /mnt/@swap > /dev/null 2> error_log.txt || err_abort
|
||||
fi
|
||||
umount /mnt > /dev/null 2>&1 || err_abort
|
||||
mount -o "${sbvl_mnt_opts}",subvol=@ /dev/mapper/"${ENCROOT}" /mnt > /dev/null 2>&1 || err_abort
|
||||
umount /mnt > /dev/null 2> error_log.txt || err_abort
|
||||
mount -o "${sbvl_mnt_opts}",subvol=@ /dev/mapper/"${ENCROOT}" /mnt > /dev/null 2> error_log.txt || err_abort
|
||||
if [[ "${swapmode}" == "2" ]]; then
|
||||
mount --mkdir -o rw,nodatacow,subvol=@swap /dev/mapper/"${ENCROOT}" /mnt/swap > /dev/null 2>&1 || err_abort
|
||||
mount --mkdir -o rw,nodatacow,subvol=@swap /dev/mapper/"${ENCROOT}" /mnt/swap > /dev/null 2> error_log.txt || err_abort
|
||||
fi
|
||||
mount --mkdir -o "${sbvl_mnt_opts}",subvol=@cache /dev/mapper/"${ENCROOT}" /mnt/var/cache > /dev/null 2>&1 || err_abort
|
||||
mount --mkdir -o "${sbvl_mnt_opts}",subvol=@home /dev/mapper/"${ENCROOT}" /mnt/home > /dev/null 2>&1 || err_abort
|
||||
mount --mkdir -o "${sbvl_mnt_opts}",subvol=@log /dev/mapper/"${ENCROOT}" /mnt/var/log > /dev/null 2>&1 || err_abort
|
||||
mount --mkdir -o "${sbvl_mnt_opts}",subvol=@snapshots /dev/mapper/"${ENCROOT}" /mnt/"${snapname}" > /dev/null 2>&1 || err_abort
|
||||
mount --mkdir -o "${sbvl_mnt_opts}",subvol=@tmp /dev/mapper/"${ENCROOT}" /mnt/var/tmp > /dev/null 2>&1 || err_abort
|
||||
mount --mkdir -o "${sbvl_mnt_opts}",subvol=@cache /dev/mapper/"${ENCROOT}" /mnt/var/cache > /dev/null 2> error_log.txt || err_abort
|
||||
mount --mkdir -o "${sbvl_mnt_opts}",subvol=@home /dev/mapper/"${ENCROOT}" /mnt/home > /dev/null 2> error_log.txt || err_abort
|
||||
mount --mkdir -o "${sbvl_mnt_opts}",subvol=@log /dev/mapper/"${ENCROOT}" /mnt/var/log > /dev/null 2> error_log.txt || err_abort
|
||||
mount --mkdir -o "${sbvl_mnt_opts}",subvol=@snapshots /dev/mapper/"${ENCROOT}" /mnt/"${snapname}" > /dev/null 2> error_log.txt || err_abort
|
||||
mount --mkdir -o "${sbvl_mnt_opts}",subvol=@tmp /dev/mapper/"${ENCROOT}" /mnt/var/tmp > /dev/null 2> error_log.txt || err_abort
|
||||
sleep 0.2
|
||||
NC "
|
||||
==> [${green}Encrypted /@ OK${nc}]
|
||||
@@ -5009,7 +5006,7 @@ ${magenta}###${nc}-------------------------------------${magenta}[ ${bwhite}LUKS
|
||||
else
|
||||
cryptsetup luksOpen "${swap_dev}" swap || err_abort
|
||||
fi
|
||||
mkswap /dev/mapper/swap > /dev/null 2>&1 || err_abort
|
||||
mkswap /dev/mapper/swap > /dev/null 2> error_log.txt || err_abort
|
||||
sleep 0.2
|
||||
NC "
|
||||
==> [${green}Encrypted /Swap OK${nc}]
|
||||
@@ -5030,9 +5027,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>&1 || err_abort
|
||||
tune2fs -O fast_commit /dev/mapper/"${ENCRHOME}" > /dev/null 2>&1 || err_abort
|
||||
mount --mkdir /dev/mapper/"${ENCRHOME}" /mnt/home > /dev/null 2>&1 || err_abort
|
||||
mkfs.ext4 -F -L Home /dev/mapper/"${ENCRHOME}" > /dev/null 2> error_log.txt || err_abort
|
||||
tune2fs -O fast_commit /dev/mapper/"${ENCRHOME}" > /dev/null 2> error_log.txt || err_abort
|
||||
mount --mkdir /dev/mapper/"${ENCRHOME}" /mnt/home > /dev/null 2> error_log.txt || err_abort
|
||||
sleep 0.2
|
||||
NC "
|
||||
==> [${green}Encrypted /Home OK${nc}]
|
||||
@@ -5057,9 +5054,9 @@ ${magenta}###${nc}-------------------------------------${magenta}[ ${bwhite}LUKS
|
||||
homeform="${homeform,,}"
|
||||
|
||||
if [[ "${homeform}" == "y" ]]; then
|
||||
if mkfs.ext4 -F -L Home "${home_dev}" > /dev/null 2>&1 ; then
|
||||
tune2fs -O fast_commit "${home_dev}" > /dev/null 2>&1 || err_abort
|
||||
mount --mkdir "${home_dev}" /mnt/home > /dev/null 2>&1 || err_abort
|
||||
if mkfs.ext4 -F -L Home "${home_dev}" > /dev/null 2> error_log.txt ; then
|
||||
tune2fs -O fast_commit "${home_dev}" > /dev/null 2> error_log.txt || err_abort
|
||||
mount --mkdir "${home_dev}" /mnt/home > /dev/null 2> error_log.txt || err_abort
|
||||
sleep 0.2
|
||||
NC "
|
||||
==> [${green}/Home OK${nc}]
|
||||
@@ -5079,8 +5076,8 @@ ${magenta}###${nc}-------------------------------------${magenta}[ ${bwhite}LUKS
|
||||
fi
|
||||
#--------------------------------------------------------------------------------------------------
|
||||
if [[ "${multibooting}" == "n" ]]; then
|
||||
if mkfs.fat -F 32 -n ESP "${esp_dev}" > /dev/null 2>&1 ; then
|
||||
mount --mkdir "${esp_dev}" "${esp_mount}" > /dev/null 2>&1 || err_abort
|
||||
if mkfs.fat -F 32 -n ESP "${esp_dev}" > /dev/null 2> error_log.txt ; then
|
||||
mount --mkdir "${esp_dev}" "${esp_mount}" > /dev/null 2> error_log.txt || err_abort
|
||||
sleep 0.2
|
||||
NC "
|
||||
==> [${green}/ESP OK${nc}]
|
||||
@@ -5090,7 +5087,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>&1 ; then
|
||||
if mount --mkdir "${esp_dev}" "${esp_mount}" > /dev/null 2> error_log.txt ; then
|
||||
sleep 0.2
|
||||
NC "
|
||||
==> [${green}Unformatted /ESP OK${nc}]
|
||||
@@ -5102,8 +5099,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>&1 ; then
|
||||
mount --mkdir "${esp_dev}" "${esp_mount}" > /dev/null 2>&1 || err_abort
|
||||
if mkfs.fat -F 32 -n ESP "${esp_dev}" > /dev/null 2> error_log.txt ; then
|
||||
mount --mkdir "${esp_dev}" "${esp_mount}" > /dev/null 2> error_log.txt || err_abort
|
||||
sleep 0.2
|
||||
NC "
|
||||
==> [${green}/ESP OK${nc}]
|
||||
@@ -5115,8 +5112,8 @@ ${magenta}###${nc}-------------------------------------${magenta}[ ${bwhite}LUKS
|
||||
fi
|
||||
#--------------------------------------------------------------------------------------------------
|
||||
if [[ "${xbootloader}" == "yes" ]] ; then
|
||||
if mkfs.fat -F 32 -n XBOOTLDR "${xboot_dev}" > /dev/null 2>&1 ; then
|
||||
mount --mkdir "${xboot_dev}" /mnt/boot > /dev/null 2>&1 || err_abort
|
||||
if mkfs.fat -F 32 -n XBOOTLDR "${xboot_dev}" > /dev/null 2> error_log.txt ; then
|
||||
mount --mkdir "${xboot_dev}" /mnt/boot > /dev/null 2> error_log.txt || err_abort
|
||||
sleep 0.2
|
||||
NC "
|
||||
==> [${green}/XBOOTLDR OK${nc}]
|
||||
@@ -5236,7 +5233,7 @@ Enter a number: "
|
||||
parallelnmbr="${parallelnmbr,,}"
|
||||
|
||||
if [[ "${parallelnmbr}" =~ ^(2|3|4|5)$ ]]; then
|
||||
sed -i "s|#ParallelDownloads = 5|ParallelDownloads = ${parallelnmbr}|g" /etc/pacman.conf > /dev/null 2>&1 || err_abort
|
||||
sed -i "s|#ParallelDownloads = 5|ParallelDownloads = ${parallelnmbr}|g" /etc/pacman.conf > /dev/null 2> error_log.txt || err_abort
|
||||
else
|
||||
invalid
|
||||
return 1
|
||||
@@ -5309,7 +5306,7 @@ ${magenta}###${nc}-------------------------------------${magenta}[ ${bwhite}Pacs
|
||||
bluetooth="bluetooth"
|
||||
network="NetworkManager" ;;
|
||||
|
||||
2) # Minimal Plasma & Apps:
|
||||
2) # Minimal Plasma + Apps:
|
||||
deskpkgs="${basepkgs[*]} alsa-firmware alsa-utils arj ark bluedevil breeze-gtk ccache cups-pdf cups-pk-helper dolphin-plugins exfatprogs fdkaac ffmpegthumbs git glibc-locales gst-libav gst-plugin-libcamera gst-plugin-msdk gst-plugin-opencv gst-plugin-pipewire gst-plugin-qmlgl gst-plugin-va gst-plugin-wpe gst-plugins-ugly gstreamer-vaapi htop icoutils ipp-usb kamera kamoso kate kcalc kde-gtk-config kdegraphics-mobipocket kdegraphics-thumbnailers kdenetwork-filesharing kdeplasma-addons kdesdk-kio kdesdk-thumbnailers kdialog keditbookmarks kget kimageformats kinit kio-admin kio-gdrive kio-zeroconf kompare konsole kscreen kvantum kwrited libappimage libfido2 libktorrent libmms libnfs libva-utils lirc lrzip lua52-socket lzop mac man-db man-pages mesa-demos mesa-utils mold nano-syntax-highlighting nss-mdns ntfs-3g okular opus-tools p7zip packagekit-qt6 pacman-contrib partitionmanager pbzip2 pigz pipewire-alsa pipewire-jack pipewire-pulse plasma-browser-integration plasma-desktop plasma-disks plasma-firewall plasma-nm plasma-pa plasma-wayland-protocols power-profiles-daemon powerdevil powerline powerline-fonts print-manager python-pyqt6 python-reportlab qbittorrent qt6-imageformats qt6-scxml qt6-virtualkeyboard realtime-privileges reflector rng-tools sddm-kcm skanlite sof-firmware sox spectacle sshfs system-config-printer terminus-font timidity++ ttf-ubuntu-font-family unarchiver unrar unzip usb_modeswitch usbutils vdpauinfo vlc vorbis-tools wget xdg-desktop-portal xdg-desktop-portal-gtk xdg-desktop-portal-kde zip zsh zsh-autosuggestions zsh-completions zsh-syntax-highlighting ${nrg_plc}" ;;
|
||||
|
||||
3) # Gnome Desktop:
|
||||
@@ -5318,7 +5315,7 @@ ${magenta}###${nc}-------------------------------------${magenta}[ ${bwhite}Pacs
|
||||
bluetooth="bluetooth"
|
||||
network="NetworkManager" ;;
|
||||
|
||||
4) # Minimal Gnome & Apps:
|
||||
4) # Minimal Gnome + Apps:
|
||||
deskpkgs="${basepkgs[*]} dconf-editor evince file-roller gdm gnome-calculator gnome-clocks gnome-console gnome-control-center gnome-disk-utility gnome-keyring gnome-menus gnome-session gnome-shell-extensions gnome-system-monitor gnome-text-editor gnome-tweaks gvfs gvfs-afc gvfs-mtp loupe malcontent nautilus networkmanager power-profiles-daemon simple-scan sushi system-config-printer xdg-desktop-portal-gnome xdg-user-dirs-gtk alsa-firmware alsa-utils ccache cups-pdf exfatprogs fdkaac git glib2-devel glibc-locales gnome-browser-connector gparted gst-libav gst-plugin-libcamera gst-plugin-msdk gst-plugin-opencv gst-plugin-pipewire gst-plugin-qmlgl gst-plugin-va gst-plugin-wpe gst-plugins-ugly gstreamer-vaapi htop icoutils ipp-usb libfido2 libva-utils lrzip mac man-db man-pages meld mesa-utils nano-syntax-highlighting nss-mdns ntfs-3g p7zip pacman-contrib pbzip2 pigz pipewire-alsa pipewire-jack pipewire-pulse powerline powerline-fonts qbittorrent realtime-privileges reflector rng-tools sof-firmware sox terminus-font ttf-ubuntu-font-family unrar unzip usb_modeswitch usbutils vdpauinfo vlc wget zip zsh zsh-autosuggestions zsh-completions zsh-syntax-highlighting ${nrg_plc}" ;;
|
||||
|
||||
5) # Xfce Desktop:
|
||||
@@ -5715,12 +5712,14 @@ UKI
|
||||
else
|
||||
stage_fail
|
||||
fi
|
||||
|
||||
if [[ -e /mnt/boot/initramfs-"${kernel}".img ]]; then
|
||||
rm /mnt/boot/initramfs-"${kernel}".img || exit
|
||||
fi
|
||||
fi
|
||||
if [[ -e /mnt/boot/initramfs-"${kernel}"-fallback.img ]]; then
|
||||
rm /mnt/boot/initramfs-"${kernel}"-fallback.img || exit
|
||||
fi
|
||||
|
||||
elif [[ "${uki}" == "n" ]]; then
|
||||
if arch-chroot /mnt <<-NOUKI > /dev/null 2>&1 2> error_log.txt ; then
|
||||
cp /etc/mkinitcpio.d/${kernel}.preset /etc/mkinitcpio.d/${kernel}.preset.bak || exit
|
||||
@@ -5862,8 +5861,6 @@ set_vars() {
|
||||
mkinitcpio_mods="MODULES=(${fs_mod})"
|
||||
# Mkinitcpio Hooks (Encryption)
|
||||
mkinitcpio_hooks="HOOKS=(systemd keyboard autodetect microcode modconf kms sd-vconsole block sd-encrypt filesystems fsck)"
|
||||
# Graphics Kernel Parameters
|
||||
vga_bootopts="amdgpu.dc=1 "
|
||||
fi
|
||||
### Kernel Parameters (Encryption)
|
||||
boot_opts="${encr_root_bootopts}${encr_swap_bootopts}${vga_bootopts}${cust_bootopts}${btrfs_bootopts}${zram_bootopts}"
|
||||
@@ -5923,8 +5920,6 @@ set_vars() {
|
||||
mkinitcpio_mods="MODULES=()"
|
||||
# Mkinitcpio Hooks
|
||||
mkinitcpio_hooks="HOOKS=(systemd autodetect microcode modconf kms keyboard sd-vconsole block filesystems fsck)"
|
||||
# Graphics Kernel Parameters
|
||||
vga_bootopts="amdgpu.dc=1 "
|
||||
fi
|
||||
|
||||
if [[ "${autoroot}" == "y" ]]; then
|
||||
@@ -6092,7 +6087,7 @@ CUSTOMSERV
|
||||
fi
|
||||
|
||||
if [[ -n "${nrg_plc}" ]]; then
|
||||
arch-chroot /mnt <<-NRG > /dev/null 2>&1
|
||||
arch-chroot /mnt <<-NRG > /dev/null 2>&1 2> error_log.txt
|
||||
${nrg_plc} performance
|
||||
NRG
|
||||
fi
|
||||
@@ -6237,7 +6232,7 @@ SUPPLICANT
|
||||
Defaults editor=/usr/bin/nano
|
||||
%wheel ALL=(ALL) ALL
|
||||
SUDOERS
|
||||
visudo -c /etc/sudoers.d/sudoersd
|
||||
visudo -c /etc/sudoers.d/sudoersd || exit
|
||||
systemctl enable avahi-daemon bluetooth cups ipp-usb NetworkManager rngd ${displaymanager} ${trim} ${vm_services} || exit
|
||||
OPTIMIZED
|
||||
stage_ok
|
||||
|
Reference in New Issue
Block a user