mirror of
https://gitlab.com/prism7/archery.git
synced 2025-02-15 08:29:17 +01:00
Added 'set -euo pipefail' flag
Set some variables (only to comply with the 'set -u' flag) Replaced some color functions with simple 'echo' commands 'Secure Erasure': Now a prompt informs about the need to reboot system after erasing the disk, which also takes place automatically when done 'chroot_conf' > 'Custom System Configuration': Now when 'grub' is selected, enabling services will take effect only if a(ny) service(s) have been first set to be enabled 'chroot_conf': Renamed a few 'HERE-docs' for clarification 'Select Desktop' > 'Custom System' > 'Custom Packages Setup': Now, if 'lightdm' has been set as a custom package, a prompt will ask you to select between 'lightdm-gtk-greeter' & 'lightdm-slick-greeter' for convenience, and said greeter will be automatically installed and also lightdm automatically configured for said greeter. NOTE: The user only has to set 'lightdm' service to be enabled in next step
This commit is contained in:
parent
f2fd59f82d
commit
a69659a550
1 changed files with 170 additions and 76 deletions
246
Amelia.sh
246
Amelia.sh
|
@ -1,8 +1,9 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Amelia Installer
|
||||
# Version: 3.3
|
||||
# Version: 3.4
|
||||
|
||||
set -euo pipefail
|
||||
###########################################################################################
|
||||
# ### COLOR FUNCTIONS ###
|
||||
|
||||
|
@ -261,7 +262,7 @@ first_check (){
|
|||
REDBG " ----------------------------------------
|
||||
### WARNING: High Risk Of Data Loss ###
|
||||
----------------------------------------"
|
||||
NC
|
||||
echo
|
||||
else
|
||||
PURPLE "
|
||||
### The installer must be run as Root (Not 'wheel' group user) "
|
||||
|
@ -386,7 +387,7 @@ ${purple}###${nc} Main Menu ${purple}###${nc}
|
|||
|
||||
[3] Disk Management
|
||||
|
||||
[4] Start Installation (Auto-Navigated) "
|
||||
[4] Start Installation (${cyan}Auto-Navigation${nc}) "
|
||||
BLUE "
|
||||
|
||||
|
||||
|
@ -564,7 +565,7 @@ ${purple}###${nc} User Setup ${purple}###${nc}
|
|||
Enter a username: "
|
||||
read -p "
|
||||
==> " USERNAME
|
||||
NC
|
||||
echo
|
||||
|
||||
if [[ -z "${USERNAME}" ]]; then
|
||||
sleep 0.5
|
||||
|
@ -584,7 +585,7 @@ Enter a username: "
|
|||
Enter a password for${nc} ${cyan}"${USERNAME}"${blue}: "
|
||||
read -p "
|
||||
==> " USERPASSWD
|
||||
NC
|
||||
echo
|
||||
|
||||
if [[ -z "${USERPASSWD}" ]]; then
|
||||
sleep 0.5
|
||||
|
@ -598,7 +599,7 @@ Enter a password for${nc} ${cyan}"${USERNAME}"${blue}: "
|
|||
Re-enter${nc} ${cyan}"${USERNAME}"'s ${blue}password: "
|
||||
read -p "
|
||||
==> " USERPASSWD2
|
||||
NC
|
||||
echo
|
||||
|
||||
if [[ "${USERPASSWD}" != "${USERPASSWD2}" ]]; then
|
||||
sleep 0.5
|
||||
|
@ -639,7 +640,7 @@ Enter a password for the${nc}${cyan} Root ${blue}user: "
|
|||
Re-enter${nc} ${cyan}Root ${blue}user's password: "
|
||||
read -p "
|
||||
==> " ROOTPASSWD2
|
||||
NC
|
||||
echo
|
||||
|
||||
if [[ "${ROOTPASSWD}" != "${ROOTPASSWD2}" ]]; then
|
||||
sleep 0.5
|
||||
|
@ -665,7 +666,7 @@ ${purple}###${nc} Hostname Setup ${purple}###${nc}
|
|||
Enter a hostname: "
|
||||
read -p "
|
||||
==> " HOSTNAME
|
||||
NC
|
||||
echo
|
||||
|
||||
if [[ -z "${HOSTNAME}" ]]; then
|
||||
sleep 0.5
|
||||
|
@ -891,7 +892,7 @@ ${purple}###${nc} Filesystem Selection ${purple}###${nc}
|
|||
Enter a number: "
|
||||
read -p "
|
||||
==> " fs
|
||||
NC
|
||||
echo
|
||||
|
||||
case "${fs}" in
|
||||
1)
|
||||
|
@ -1016,7 +1017,7 @@ set_swapsize (){
|
|||
Enter Swapfile size ${bwhite}(in GiB)${blue}: "
|
||||
read -p "
|
||||
==> " swapsize
|
||||
NC
|
||||
echo
|
||||
|
||||
if [[ -z "${swapsize}" ]]; then
|
||||
sleep 0.5
|
||||
|
@ -1085,7 +1086,7 @@ ${purple}###${nc} Graphics Setup ${purple}###${nc}
|
|||
|
||||
if [[ "${vendor}" == "Virtual Machine" ]]; then
|
||||
vgaconf="n"
|
||||
NC
|
||||
echo
|
||||
skip
|
||||
ok
|
||||
return 0
|
||||
|
@ -1129,7 +1130,7 @@ Enter a number ${bwhite}(empty to skip)${blue}: "
|
|||
==> " islands
|
||||
if [[ -z "${islands}" ]]; then
|
||||
skip
|
||||
NC
|
||||
echo
|
||||
elif [[ "${islands}" == "1" ]]; then
|
||||
NC "
|
||||
|
||||
|
@ -1196,12 +1197,12 @@ Enter a number: "
|
|||
==> [${green}Turing+ OK${nc}]
|
||||
"
|
||||
else
|
||||
NC
|
||||
echo
|
||||
invalid
|
||||
return 1
|
||||
fi
|
||||
else
|
||||
NC
|
||||
echo
|
||||
invalid
|
||||
return 1
|
||||
fi
|
||||
|
@ -1257,7 +1258,7 @@ Enter a number: "
|
|||
### ""${vendor}"" Graphics will be automatically configured
|
||||
"
|
||||
elif [[ "${vgaconf}" == "n" ]]; then
|
||||
NC
|
||||
echo
|
||||
skip
|
||||
else
|
||||
invalid
|
||||
|
@ -1391,11 +1392,11 @@ Enter [y/n]: "
|
|||
|
||||
==> [${green}Terminal OK${nc}] " ;;
|
||||
n)
|
||||
NC
|
||||
echo
|
||||
skip ;;
|
||||
"")
|
||||
sleep 0.5
|
||||
NC
|
||||
echo
|
||||
RED "
|
||||
[!] Please type 'y' or 'n' to continue "
|
||||
reload
|
||||
|
@ -1434,11 +1435,11 @@ Enter [y/n]: "
|
|||
|
||||
==> [${green}Terminal OK${nc}] " ;;
|
||||
n)
|
||||
NC
|
||||
echo
|
||||
skip ;;
|
||||
"")
|
||||
sleep 0.5
|
||||
NC
|
||||
echo
|
||||
RED "
|
||||
[!] Please type 'y' or 'n' to continue "
|
||||
reload
|
||||
|
@ -1495,11 +1496,11 @@ Enter [y/n]: "
|
|||
|
||||
==> [${green}base-devel OK${nc}] " ;;
|
||||
n)
|
||||
NC
|
||||
echo
|
||||
skip ;;
|
||||
"")
|
||||
sleep 0.5
|
||||
NC
|
||||
echo
|
||||
RED "
|
||||
[!] Please type 'y' or 'n' to continue "
|
||||
reload
|
||||
|
@ -1528,11 +1529,11 @@ Enter [y/n]: "
|
|||
y)
|
||||
add_prmtrs ;;
|
||||
n)
|
||||
NC
|
||||
echo
|
||||
skip ;;
|
||||
"")
|
||||
sleep 0.5
|
||||
NC
|
||||
echo
|
||||
RED "
|
||||
[!] Please type 'y' or 'n' to continue "
|
||||
reload
|
||||
|
@ -1575,6 +1576,59 @@ Enter your packages ${bwhite}(space-seperated)${blue}: "
|
|||
[!] Please enter package(s) to continue "
|
||||
reload
|
||||
return 1
|
||||
|
||||
elif [[ "${custompkgs}" =~ "lightdm" ]]; then
|
||||
|
||||
echo
|
||||
sleep 0.5
|
||||
NC "
|
||||
_________________________________
|
||||
|
||||
${purple}###${nc} Lightdm Greeter Selection ${purple}###${nc}
|
||||
"
|
||||
YELLOW "
|
||||
|
||||
> Select a Greeter: "
|
||||
NC "
|
||||
|
||||
[1] Gtk
|
||||
|
||||
[2] Slick "
|
||||
BLUE "
|
||||
|
||||
|
||||
Enter a number: "
|
||||
read -p "
|
||||
==> " greeternmbr
|
||||
|
||||
case "${greeternmbr}" in
|
||||
|
||||
1)
|
||||
greeter="lightdm-gtk-greeter"
|
||||
sleep 0.5
|
||||
NC "
|
||||
|
||||
==> [${green}Lightdm Gtk Greeter OK${nc}] " ;;
|
||||
|
||||
2)
|
||||
greeter="lightdm-slick-greeter"
|
||||
sleep 0.5
|
||||
NC "
|
||||
|
||||
==> [${green}Lightdm Slick Greeter OK${nc}] " ;;
|
||||
|
||||
"")
|
||||
sleep 0.5
|
||||
echo
|
||||
RED "
|
||||
[!] Please make a selection.. "
|
||||
reload
|
||||
return 1 ;;
|
||||
*)
|
||||
invalid
|
||||
return 1 ;;
|
||||
esac
|
||||
|
||||
else
|
||||
ok
|
||||
fi
|
||||
|
@ -1600,7 +1654,7 @@ Enter your services ${bwhite}(space-seperated)${blue}: "
|
|||
==> " customservices
|
||||
|
||||
if [[ -z "${customservices}" ]]; then
|
||||
NC
|
||||
echo
|
||||
skip
|
||||
else
|
||||
ok
|
||||
|
@ -1627,7 +1681,7 @@ Enter your Kernel parameters ${bwhite}(space-seperated)${blue}: "
|
|||
==> " cust_bootopts
|
||||
|
||||
if [[ -z "${cust_bootopts}" ]]; then
|
||||
NC
|
||||
echo
|
||||
skip
|
||||
else
|
||||
ok
|
||||
|
@ -1660,7 +1714,7 @@ ${purple}###${nc} EFI Boot Entries Deletion ${purple}###${nc}
|
|||
Enter a${nc} ${cyan}BootOrder${blue} number for Deletion ${bwhite}(empty to skip)${blue}: "
|
||||
read -p "
|
||||
==> " boot_entry
|
||||
NC
|
||||
echo
|
||||
|
||||
if [[ -n "${boot_entry}" ]]; then
|
||||
|
||||
|
@ -1707,7 +1761,7 @@ ${purple}###${nc} Wireless Regulatory Domain Setup ${purple}###${nc}
|
|||
"
|
||||
skip
|
||||
ok
|
||||
NC
|
||||
echo
|
||||
return 0
|
||||
fi
|
||||
|
||||
|
@ -1718,7 +1772,7 @@ Enter your Country Code, ie:${nc} ${cyan}US ${bwhite}(empty to skip)${blue}: "
|
|||
==> " REGDOM
|
||||
|
||||
if [[ -z "${REGDOM}" ]]; then
|
||||
NC
|
||||
echo
|
||||
skip
|
||||
elif [[ "${REGDOM}" =~ [[:lower:]] ]]; then
|
||||
sleep 0.5
|
||||
|
@ -1955,7 +2009,7 @@ ${disks} "
|
|||
Enter a disk number: "
|
||||
read -p "
|
||||
==> " instl_dsk_nmbr
|
||||
NC
|
||||
echo
|
||||
|
||||
if [[ -n "${instl_dsk_nmbr}" ]]; then
|
||||
instl_drive="$(echo "${disks}" | awk "\$1 == "${instl_dsk_nmbr}" {print \$2}")"
|
||||
|
@ -2162,7 +2216,7 @@ ${purple}###${nc} Encryption Setup ${purple}###${nc}
|
|||
"
|
||||
read -p "
|
||||
==> " encrypt
|
||||
NC
|
||||
echo
|
||||
|
||||
if [[ "${encrypt}" == "no" ]]; then
|
||||
skip
|
||||
|
@ -2179,7 +2233,7 @@ ${purple}###${nc} Encryption Setup ${purple}###${nc}
|
|||
Enter a name: "
|
||||
read -p "
|
||||
==> " ENCROOT
|
||||
NC
|
||||
echo
|
||||
|
||||
if [[ -z "${ENCROOT}" ]]; then
|
||||
sleep 0.5
|
||||
|
@ -2220,7 +2274,7 @@ Enter a name: "
|
|||
"
|
||||
read -p "
|
||||
==> " homecrypt
|
||||
NC
|
||||
echo
|
||||
|
||||
if [[ "${homecrypt}" == "no" ]]; then
|
||||
skip
|
||||
|
@ -2235,7 +2289,7 @@ Enter a name: "
|
|||
Enter a name: "
|
||||
read -p "
|
||||
==> " ENCRHOME
|
||||
NC
|
||||
echo
|
||||
|
||||
if [[ -z "${ENCRHOME}" ]]; then
|
||||
sleep 0.5
|
||||
|
@ -2400,7 +2454,6 @@ instl (){
|
|||
if [[ "${encrypt}" == "no" ]]; then
|
||||
until set_mode; do : ; done
|
||||
until confirm_status; do : ; done
|
||||
return 0
|
||||
|
||||
elif [[ "${encrypt}" == "yes" ]]; then
|
||||
until sec_erase; do : ; done
|
||||
|
@ -2416,7 +2469,6 @@ instl (){
|
|||
fi
|
||||
|
||||
until chroot_conf; do : ; done
|
||||
return 0
|
||||
fi
|
||||
}
|
||||
###########################################################################################
|
||||
|
@ -2460,7 +2512,7 @@ ${purple}###${nc} Mode Selection ${purple}###${nc}
|
|||
Enter a Mode number: "
|
||||
read -p "
|
||||
==> " setmode
|
||||
NC
|
||||
echo
|
||||
|
||||
case "${setmode}" in
|
||||
1)
|
||||
|
@ -2488,7 +2540,7 @@ Enter a Mode number: "
|
|||
"
|
||||
sleep 0.5
|
||||
lsblk -f
|
||||
NC
|
||||
echo
|
||||
sleep 1
|
||||
}
|
||||
###########################################################################################
|
||||
|
@ -2879,7 +2931,7 @@ ask_homepart_form (){
|
|||
"
|
||||
read -p "
|
||||
==> " homeform
|
||||
NC
|
||||
echo
|
||||
|
||||
if [[ "${homeform}" == "y" ]]; then
|
||||
if mkdir -pv /mnt/home; then
|
||||
|
@ -3036,7 +3088,7 @@ ${volumes} "
|
|||
Enter your${nc} ${cyan}"${roottype}"${blue} partition number: "
|
||||
read -p "
|
||||
==> " mntroot_nmbr
|
||||
NC
|
||||
echo
|
||||
|
||||
if [[ -n "${mntroot_nmbr}" ]]; then
|
||||
rootpart="$(echo "${volumes}" | awk "\$1 == "${mntroot_nmbr}" { print \$2}")"
|
||||
|
@ -3103,7 +3155,7 @@ ${volumes} "
|
|||
Enter your${nc} ${cyan}/BOOT${blue} partition number: "
|
||||
read -p "
|
||||
==> " mntboot_nmbr
|
||||
NC
|
||||
echo
|
||||
|
||||
if [[ -n "${mntboot_nmbr}" ]]; then
|
||||
bootpart="$(echo "${volumes}" | awk "\$1 == "${mntboot_nmbr}" { print \$2}")"
|
||||
|
@ -3148,7 +3200,7 @@ ${volumes} "
|
|||
Enter your${nc} ${cyan}/HOME${blue} partition number: "
|
||||
read -p "
|
||||
==> " mnthome_nmbr
|
||||
NC
|
||||
echo
|
||||
|
||||
if [[ -n "${mnthome_nmbr}" ]]; then
|
||||
homepart="$(echo "${volumes}" | awk "\$1 == "${mnthome_nmbr}" { print \$2}")"
|
||||
|
@ -3193,7 +3245,6 @@ ${purple}###${nc} Confirm Installation Status ${purple}###${nc}
|
|||
"
|
||||
read -p "
|
||||
==> " agree
|
||||
NC
|
||||
|
||||
if [[ "${agree}" == "yes" ]]; then
|
||||
ok
|
||||
|
@ -3206,7 +3257,6 @@ ${purple}###${nc} Confirm Installation Status ${purple}###${nc}
|
|||
until wireless_regdom; do : ; done
|
||||
fi
|
||||
until chroot_conf; do : ; done
|
||||
return 0
|
||||
|
||||
elif [[ "${agree}" == "no" ]]; then
|
||||
reload
|
||||
|
@ -3229,7 +3279,6 @@ ${purple}###${nc} Unmount Filesystems ${purple}###${nc}
|
|||
fi
|
||||
|
||||
revise
|
||||
return 0
|
||||
|
||||
else
|
||||
sleep 0.5
|
||||
|
@ -3276,7 +3325,9 @@ ${purple}###${nc} Secure Disk Erasure ${purple}###${nc}
|
|||
while [[ -n "${erase_dsk_nmbr}" ]]; do
|
||||
YELLOW "
|
||||
|
||||
> Select a disk for Secure Erasure ${red}[!] (CAUTION) [!]${nc} "
|
||||
> Select a disk for Secure Erasure ${red}[!] (CAUTION) [!]${yellow}
|
||||
|
||||
### A ${nc}reboot${yellow} is mandatory and will take effect imediatelly when done "
|
||||
NC "
|
||||
|
||||
|
||||
|
@ -3287,32 +3338,35 @@ ${disks}"
|
|||
Enter a disk number ${bwhite}(empty to skip)${blue}: "
|
||||
read -p "
|
||||
==> " erase_dsk_nmbr
|
||||
NC
|
||||
echo
|
||||
|
||||
if [[ -n "${erase_dsk_nmbr}" ]]; then
|
||||
erasedrive="$(echo "${disks}" | awk "\$1 == "${erase_dsk_nmbr}" {print \$2}")"
|
||||
if [[ -e "${erasedrive}" ]]; then
|
||||
cryptsetup open --type plain -d /dev/urandom "${erasedrive}" temp &&
|
||||
dd if=/dev/zero of=/dev/mapper/temp status=progress bs=1M oflag=direct &&
|
||||
if cryptsetup close temp; then
|
||||
sleep 0.5
|
||||
NC "
|
||||
cryptsetup close temp
|
||||
sleep 0.5
|
||||
NC "
|
||||
|
||||
|
||||
==> [${green}Drive "${erasedrive}" Erased OK${nc}] "
|
||||
else
|
||||
err_try
|
||||
return 1
|
||||
fi
|
||||
|
||||
sleep 1
|
||||
NC "
|
||||
|
||||
==> [${green}Rebooting${nc}] "
|
||||
sleep 3
|
||||
reboot
|
||||
else
|
||||
invalid
|
||||
return 1
|
||||
fi
|
||||
else
|
||||
skip
|
||||
ok
|
||||
fi
|
||||
done
|
||||
ok
|
||||
}
|
||||
###########################################################################################
|
||||
luks (){
|
||||
|
@ -3449,7 +3503,7 @@ ${purple}###${nc} LUKS Encryption ${purple}###${nc}
|
|||
"
|
||||
read -p "
|
||||
==> " homeform
|
||||
NC
|
||||
echo
|
||||
|
||||
if [[ "${homeform}" == "y" ]]; then
|
||||
if mkfs.ext4 -F -L HOME "${home_dev}"; then
|
||||
|
@ -3514,7 +3568,7 @@ ${purple}###${nc} LUKS Encryption ${purple}###${nc}
|
|||
"
|
||||
sleep 0.5
|
||||
lsblk -f
|
||||
NC
|
||||
echo
|
||||
sleep 1
|
||||
}
|
||||
###########################################################################################
|
||||
|
@ -3543,7 +3597,7 @@ ${purple}###${nc} Optimize PacMan ${purple}###${nc}
|
|||
Enter country name or code ${bwhite}(Empty for Defaults)${blue}: "
|
||||
read -p "
|
||||
==> " COUNTRY
|
||||
NC
|
||||
echo
|
||||
|
||||
if [[ -z "${COUNTRY}" ]] ; then
|
||||
sleep 0.5
|
||||
|
@ -3577,7 +3631,7 @@ Enter country name or code ${bwhite}(Empty for Defaults)${blue}: "
|
|||
Enter [y/n]: "
|
||||
read -p "
|
||||
==> " parallel
|
||||
NC
|
||||
echo
|
||||
|
||||
if [[ "${parallel}" == "y" ]]; then
|
||||
sleep 0.5
|
||||
|
@ -3598,7 +3652,7 @@ Enter [y/n]: "
|
|||
Enter a number: "
|
||||
read -p "
|
||||
==> " parallelnmbr
|
||||
NC
|
||||
echo
|
||||
|
||||
if [[ "${parallelnmbr}" =~ ^(2|3|4|5)$ ]]; then
|
||||
sed -i "s|#ParallelDownloads = 5|ParallelDownloads = "${parallelnmbr}"|g" /etc/pacman.conf
|
||||
|
@ -3721,9 +3775,9 @@ ${purple}###${nc} Pacstrap System ${purple}###${nc}
|
|||
11) # NOTE: Custom System:
|
||||
|
||||
if [[ "${vendor}" == "Virtual Machine" ]]; then
|
||||
deskpkgs="base sudo "${bootldr_pkgs}" "${custompkgs}" "${fstools}" "${kernel}" "${microcode}""
|
||||
deskpkgs="base sudo "${bootldr_pkgs}" "${custompkgs}" "${fstools}" "${kernel}" "${microcode}" "${greeter}""
|
||||
else
|
||||
deskpkgs="base linux-firmware sudo "${bootldr_pkgs}" "${custompkgs}" "${fstools}" "${kernel}" "${microcode}" "${vgapkgs}" "${wireless_reg}""
|
||||
deskpkgs="base linux-firmware sudo "${bootldr_pkgs}" "${custompkgs}" "${fstools}" "${kernel}" "${microcode}" "${vgapkgs}" "${wireless_reg}" "${greeter}""
|
||||
fi ;;
|
||||
esac
|
||||
|
||||
|
@ -3829,7 +3883,7 @@ REGDOM
|
|||
###########################################################################################
|
||||
chroot_conf (){
|
||||
|
||||
local prompt="System"
|
||||
local prompt="Arch Linux"
|
||||
sleep 0.5
|
||||
NC "
|
||||
_________________________________
|
||||
|
@ -3946,7 +4000,7 @@ ${purple}###${nc} Chroot & Configure System ${purple}###${nc}
|
|||
|
||||
if [[ "${packages}" =~ ^(1|3|4|5|6|7|8|9|10)$ ]]; then
|
||||
|
||||
arch-chroot /mnt <<-SYSTEM
|
||||
arch-chroot /mnt <<-VANILLA_CONF
|
||||
sed -i "/^#${SETLOCALE}/s/^#//" /etc/locale.gen &&
|
||||
locale-gen &&
|
||||
echo LANG=${SETLOCALE} > /etc/locale.conf &&
|
||||
|
@ -3971,7 +4025,7 @@ ${purple}###${nc} Chroot & Configure System ${purple}###${nc}
|
|||
echo "
|
||||
%wheel ALL=(ALL) ALL" | tee /etc/sudoers.d/sudoedits &&
|
||||
visudo -c /etc/sudoers.d/sudoedits
|
||||
SYSTEM
|
||||
VANILLA_CONF
|
||||
|
||||
if [[ -f /mnt/etc/lightdm/lightdm.conf ]]; then
|
||||
if [[ "${packages}" == "6" ]]; then
|
||||
|
@ -3979,13 +4033,13 @@ SYSTEM
|
|||
sed -i 's|^#greeter-session=example-gtk-gnome|greeter-session=lightdm-deepin-greeter|g' /etc/lightdm/lightdm.conf
|
||||
DEEPIN
|
||||
elif [[ "${packages}" == "7" ]]; then
|
||||
arch-chroot /mnt <<-BUDGIE
|
||||
arch-chroot /mnt <<-GTK
|
||||
sed -i 's|^#greeter-session=example-gtk-gnome|greeter-session=lightdm-gtk-greeter|g' /etc/lightdm/lightdm.conf
|
||||
BUDGIE
|
||||
GTK
|
||||
else
|
||||
arch-chroot /mnt <<-LIGHTDM
|
||||
arch-chroot /mnt <<-SLICK
|
||||
sed -i 's|^#greeter-session=example-gtk-gnome|greeter-session=lightdm-slick-greeter|g' /etc/lightdm/lightdm.conf
|
||||
LIGHTDM
|
||||
SLICK
|
||||
fi
|
||||
fi
|
||||
|
||||
|
@ -4001,6 +4055,7 @@ LIGHTDM
|
|||
options rw ${boot_opts}" | tee /boot/loader/entries/arch.conf &&
|
||||
systemctl enable systemd-boot-update ${bluetooth} ${displaymanager} ${network} ${trim}
|
||||
BOOTCTL
|
||||
|
||||
elif [[ "${bootloader}" == "2" ]]; then
|
||||
arch-chroot /mnt <<-GRUB
|
||||
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB &&
|
||||
|
@ -4023,7 +4078,6 @@ GRUBBTRFSD
|
|||
sed -i "/^#GRUB_TERMINAL_OUTPUT=console/s/^#//" /etc/default/grub &&
|
||||
grub-mkconfig -o /boot/grub/grub.cfg
|
||||
NVIDIAGRUB
|
||||
|
||||
fi
|
||||
fi
|
||||
|
||||
|
@ -4069,7 +4123,7 @@ NVIDIAHOOK
|
|||
NRG
|
||||
fi
|
||||
|
||||
arch-chroot /mnt <<-OPTIMIZED
|
||||
arch-chroot /mnt <<-OPTIMIZED_CONF
|
||||
sed -i "/^#${SETLOCALE}/s/^#//" /etc/locale.gen &&
|
||||
locale-gen &&
|
||||
echo LANG=${SETLOCALE} > /etc/locale.conf &&
|
||||
|
@ -4205,7 +4259,7 @@ NRG
|
|||
%wheel ALL=(ALL) ALL" | tee /etc/sudoers.d/sudoedits &&
|
||||
visudo -c /etc/sudoers.d/sudoedits &&
|
||||
systemctl enable avahi-daemon bluetooth cups ipp-usb NetworkManager rngd sddm systemd-boot-update ufw ${trim}
|
||||
OPTIMIZED
|
||||
OPTIMIZED_CONF
|
||||
|
||||
if [[ "${vgaconf}" == "y" && "${vendor}" == "Nvidia" ]]; then
|
||||
if [[ "${kernelnmbr}" == "1" ]] || [[ "${kernelnmbr}" == "2" && "${family}" == "1" ]] || [[ "${kernelnmbr}" == "2" && "${family}" == "2" && ${nvdriver} == "2" ]]; then
|
||||
|
@ -4242,7 +4296,7 @@ NVIDIAHOOK
|
|||
# NOTE: Custom System Configuration (Add any extra configuration below):
|
||||
|
||||
if [[ "${packages}" == "11" ]]; then
|
||||
arch-chroot /mnt <<-CUSTOM
|
||||
arch-chroot /mnt <<-CUSTOM_CONF
|
||||
sed -i "/^#${SETLOCALE}/s/^#//" /etc/locale.gen &&
|
||||
locale-gen &&
|
||||
echo LANG=${SETLOCALE} > /etc/locale.conf &&
|
||||
|
@ -4266,7 +4320,20 @@ NVIDIAHOOK
|
|||
echo "
|
||||
%wheel ALL=(ALL) ALL" | tee /etc/sudoers.d/sudoedits &&
|
||||
visudo -c /etc/sudoers.d/sudoedits
|
||||
CUSTOM
|
||||
CUSTOM_CONF
|
||||
|
||||
if [[ -f /mnt/etc/lightdm/lightdm.conf ]]; then
|
||||
|
||||
if [[ "${greeternmbr}" == "1" ]]; then
|
||||
arch-chroot /mnt <<-GTK
|
||||
sed -i 's|^#greeter-session=example-gtk-gnome|greeter-session=lightdm-gtk-greeter|g' /etc/lightdm/lightdm.conf
|
||||
GTK
|
||||
elif [[ "${greeternmbr}" == "2" ]]; then
|
||||
arch-chroot /mnt <<-SLICK
|
||||
sed -i 's|^#greeter-session=example-gtk-gnome|greeter-session=lightdm-slick-greeter|g' /etc/lightdm/lightdm.conf
|
||||
SLICK
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ "${bootloader}" == "1" ]]; then
|
||||
arch-chroot /mnt <<-BOOTCTL
|
||||
|
@ -4280,6 +4347,7 @@ CUSTOM
|
|||
options rw ${boot_opts}" | tee /boot/loader/entries/arch.conf &&
|
||||
systemctl enable systemd-boot-update ${customservices} ${trim}
|
||||
BOOTCTL
|
||||
|
||||
elif [[ "${bootloader}" == "2" ]]; then
|
||||
arch-chroot /mnt <<-GRUB
|
||||
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB &&
|
||||
|
@ -4288,8 +4356,14 @@ BOOTCTL
|
|||
-e "/^#GRUB_DISABLE_OS_PROBER=false/s/^#//" \
|
||||
/etc/default/grub &&
|
||||
grub-mkconfig -o /boot/grub/grub.cfg
|
||||
systemctl enable ${customservices} ${trim}
|
||||
GRUB
|
||||
|
||||
if [[ -n "${customservices}" || -n "${trim}" ]]; then
|
||||
arch-chroot /mnt <<-SERVICES
|
||||
systemctl enable ${customservices} ${trim}
|
||||
SERVICES
|
||||
fi
|
||||
|
||||
if [[ "${bootloader}" == "2" && "${fs}" == "2" ]]; then
|
||||
arch-chroot /mnt <<-GRUBBTRFSD
|
||||
systemctl enable grub-btrfsd
|
||||
|
@ -4339,12 +4413,32 @@ NVIDIAHOOK
|
|||
# ### END FUNCTIONS ###
|
||||
###########################################################################################
|
||||
|
||||
clear
|
||||
set -eo pipefail
|
||||
run_as="$(whoami)"
|
||||
tty="$(tty)"
|
||||
disks="$(lsblk --nodeps --paths --noheadings --output=name,size,model | cat --number)"
|
||||
SETLOCALE=""
|
||||
USERNAME=""
|
||||
kernelnmbr=""
|
||||
fs=""
|
||||
vgaconf=""
|
||||
packages=""
|
||||
efi_entr_del=""
|
||||
wrlss_rgd=""
|
||||
sanity=""
|
||||
install=""
|
||||
bootldr_pkgs=""
|
||||
devel=""
|
||||
REGDOM=""
|
||||
vga_bootopts=""
|
||||
btrfs_opts=""
|
||||
trim=""
|
||||
swapmode=""
|
||||
homecrypt=""
|
||||
greeter=""
|
||||
revision=""
|
||||
greeternmbr=""
|
||||
|
||||
clear
|
||||
first_check
|
||||
sleep 1
|
||||
CYAN "
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue