diff --git a/Amelia.sh b/Amelia.sh index e1554fb..7ad6407 100644 --- a/Amelia.sh +++ b/Amelia.sh @@ -1,7 +1,7 @@ #!/bin/bash # Amelia Installer -# Version: 4.8 +# Version: 4.9 set -euo pipefail trap 's=$?; echo "$0: Error on line "$LINENO": $BASH_COMMAND"; exit $s' ERR @@ -214,7 +214,7 @@ stage_fail (){ sleep 0.3 RED " - [!] ${stage_prompt} configuration failed " + [!] ${stage_prompt} configuration FAILED " sleep 2 abort } @@ -376,15 +376,15 @@ ${purple}###${nc} Microcode Detection ${purple}###${nc} if [[ "${CPU}" == *"GenuineIntel"* ]]; then microcode="intel-ucode" nrg_plc="x86_energy_perf_policy" - microname="'Intel'" + microname="Intel" else microcode="amd-ucode" - microname="'AMD'" + microname="AMD" fi sleep 0.3 YELLOW " - ### Detection completed, the ""${microname}"" microcode will be installed + ### Detection completed, the ${microname} microcode will be installed " ok } @@ -402,7 +402,7 @@ ${purple}###${nc} Main Menu ${purple}###${nc} > Make a selection: - ### Select ${nc}[4] ${yellow}for${bwhite} ${yellow}guided${nc} ${yellow}navigation + ### Select ${nc}[4] ${yellow}for guided navigation " NC " @@ -496,7 +496,7 @@ ${purple}###${nc} Locale Selection ${purple}###${nc} " YELLOW " - > Select your Locale (e.g. ${nc}en_US.UTF-8${yellow}) + > Select your Locale (e.g. en_US.UTF-8) ### [Hit ${nc}'l'${yellow} to list locales, then ${nc}'enter'${yellow} to search or ${nc}'q'${yellow} to quit] " @@ -504,7 +504,7 @@ ${purple}###${nc} Locale Selection ${purple}###${nc} -Enter your Locale ${bwhite}(empty for '${cyan}en_US.UTF-8${bwhite}')${blue}: " +Enter your Locale ${bwhite}(empty for 'en_US.UTF-8')${blue}: " read -r -p " ==> " SETLOCALE @@ -552,7 +552,7 @@ ${purple}###${nc} Keyboard Layout Selection ${purple}###${nc} -Enter your keyboard layout ${bwhite}(empty for '${cyan}us${bwhite}')${blue}: " +Enter your keyboard layout ${bwhite}(empty for 'us')${blue}: " read -r -p " ==> " SETKBD @@ -930,7 +930,7 @@ Enter a number: " fsname="Ext4" fs_mod="ext4" fstools="e2fsprogs" - roottype="/ROOT" + roottype="/Root" sleep 0.3 YELLOW " ### ${fsname} has been selected @@ -1045,6 +1045,7 @@ set_swapsize (){ local prompt="Swapsize" BLUE " + Enter Swapfile size ${bwhite}(in GiB)${blue}: " read -r -p " ==> " swapsize @@ -1130,6 +1131,7 @@ ${purple}###${nc} Graphics Setup ${purple}###${nc} if [[ "${vendor}" == "Virtual Machine" ]]; then vgaconf="n" + vgapkgs="" echo skip ok @@ -1248,7 +1250,6 @@ Enter a number: " invalid return 1 fi - if [[ "${kernelnmbr}" == "1" ]]; then if [[ "${family}" == "1" ]]; then vgapkgs="libva-nvidia-driver libvdpau-va-gl nvidia nvidia-settings nvidia-utils opencl-nvidia" @@ -1345,6 +1346,7 @@ ${nvidiacards} > Please configure the graphics subsystem after installation has finished " vgaconf="n" + vgapkgs="" echo skip ok @@ -1420,7 +1422,7 @@ Enter a number: " ### You can use linux console (ctrl+alt+F3) for shell access - > Install 'gnome-terminal' for convenience ? [y/n] " + > Install ${nc}'gnome-terminal' ${yellow}for convenience ? [y/n] " BLUE " @@ -1442,7 +1444,7 @@ Enter [y/n]: " sleep 0.3 echo RED " - [!] Please type 'y' or 'n' to continue " + [!] Please type 'y' or 'n' to continue " reload return 1 ;; *) @@ -1463,7 +1465,7 @@ Enter [y/n]: " ### You can use linux console (ctrl+alt+F3) for shell access - > Install 'gnome-terminal' for convenience ? [y/n] " + > Install ${nc}'gnome-terminal' ${yellow}for convenience ? [y/n] " BLUE " @@ -1485,7 +1487,7 @@ Enter [y/n]: " sleep 0.3 echo RED " - [!] Please type 'y' or 'n' to continue " + [!] Please type 'y' or 'n' to continue " reload return 1 ;; *) @@ -1523,7 +1525,7 @@ Enter [y/n]: " ### NOTE: 'base' meta-package does not include the tools needed for building packages - > Install 'base-devel' meta-package ? [y/n] " + > Install ${nc}'base-devel' ${yellow}meta-package ? [y/n] " BLUE " @@ -1756,7 +1758,7 @@ ${purple}###${nc} EFI Boot Entries Deletion ${purple}###${nc} YELLOW " - > Select an EFI Boot Entry to Delete ${red}[!] (CAUTION) [!]${yellow} + > Select an EFI Boot Entry to Delete ${red}[!] (CAUTION) [!] " sleep 0.3 @@ -1982,9 +1984,9 @@ ${purple}###${nc} Partition Manager ${purple}###${nc} Discoverable Partitions GUID Codes: ${cyan}EFI${nc} system partition > ${cyan}ef00${nc} -Linux x86-64 ${cyan}root (/)${nc} > ${cyan}8304${nc} -Linux ${cyan}/home${nc} > ${cyan}8302${nc} -Linux ${cyan}swap${nc} > ${cyan}8200${nc} +Linux x86-64 ${cyan}/ROOT ${nc}> ${cyan}8304${nc} +Linux ${cyan}/HOME${nc} > ${cyan}8302${nc} +Linux ${cyan}/SWAP${nc} > ${cyan}8200${nc} - - - - - - - - - - - - - - - - - - " @@ -2121,7 +2123,7 @@ ${purple}###${nc} Sanity Check ${purple}###${nc} sanity="no" sleep 0.3 RED " - [!] Linux x86-64 Root (/) Partition not detected " + [!] Linux x86-64 /Root Partition not detected " sleep 0.3 RED " [!] EFI System Partition not detected " @@ -2130,8 +2132,7 @@ ${purple}###${nc} Sanity Check ${purple}###${nc} --> Please comply with the Discoverable Partitions Specification to continue.. - - ### Ensure that a Linux x86-64 Root (/) Partition with a valid GUID code ${nc}(8304)${yellow} is present on disk + ### Ensure that a Linux x86-64 /Root Partition with a valid GUID code ${nc}(8304)${yellow} is present on disk ### Ensure that an EFI System Partition with a valid GUID code ${nc}(ef00)${yellow} is present on disk " sleep 0.3 @@ -2151,14 +2152,13 @@ ${purple}###${nc} Sanity Check ${purple}###${nc} sleep 0.3 RED " - [!] Linux x86-64 Root (/) Partition not detected " + [!] Linux x86-64 /Root Partition not detected " sleep 0.3 YELLOW " --> Please comply with the Discoverable Partitions Specification to continue.. - - ### Ensure that a Linux x86-64 Root (/) Partition with a valid GUID code ${nc}(8304)${yellow} is present on disk " + ### Ensure that a Linux x86-64 /Root Partition with a valid GUID code ${nc}(8304)${yellow} is present on disk " sleep 0.3 RED " @@ -2172,7 +2172,7 @@ ${purple}###${nc} Sanity Check ${purple}###${nc} sleep 0.3 NC " -==> [Linux x86-64 Root (/) ${green}OK${nc}] " +==> [Linux x86-64 /Root ${green}OK${nc}] " sleep 0.3 RED " @@ -2182,7 +2182,6 @@ ${purple}###${nc} Sanity Check ${purple}###${nc} --> Please comply with the Discoverable Partitions Specification to continue.. - ### Ensure that an EFI System Partition with a valid GUID code ${nc}(ef00)${yellow} is present on disk " sleep 0.3 RED " @@ -2196,7 +2195,7 @@ ${purple}###${nc} Sanity Check ${purple}###${nc} sleep 0.3 NC " -==> [Linux x86-64 Root (/) ${green}OK${nc}] " +==> [Linux x86-64 /Root ${green}OK${nc}] " sleep 0.3 NC " @@ -2206,7 +2205,7 @@ ${purple}###${nc} Sanity Check ${purple}###${nc} sleep 0.3 NC " -==> [Linux (/Home) ${green}OK${nc}] " +==> [Linux /Home ${green}OK${nc}] " fi if [[ "${swapmode}" == "1" ]]; then @@ -2215,20 +2214,19 @@ ${purple}###${nc} Sanity Check ${purple}###${nc} sleep 0.3 NC " -==> [Linux Swap ${green}OK${nc}] " +==> [Linux /Swap ${green}OK${nc}] " else sanity="no" sleep 0.3 RED " - [!] Linux Swap Partition not detected " + [!] Linux /Swap Partition not detected " sleep 0.3 YELLOW " --> Please comply with the Discoverable Partitions Specification to continue.. - - ### Ensure that a Linux Swap Partition with a valid GUID code ${nc}(8200)${yellow} is present on disk " + ### Ensure that a Linux /Swap Partition with a valid GUID code ${nc}(8200)${yellow} is present on disk " sleep 0.3 RED " @@ -2255,7 +2253,7 @@ ${purple}###${nc} Encryption Setup ${purple}###${nc} " BLUE " - > Enable ${roottype} Encryption? [LUKS] " + > Enable${nc} ${cyan}${roottype} ${blue}Encryption? [LUKS] " NC " * Type '${cyan}no${nc}' to proceed without encryption @@ -2307,17 +2305,17 @@ Enter a name: " YELLOW " - ### A /HOME Partition has been detected " + ### A /Home Partition has been detected " sleep 0.3 BLUE " - > Encrypt /HOME partition? [LUKS] " + > Encrypt${nc} ${cyan}/Home ${blue}partition? [LUKS] " NC " * Type '${cyan}no${nc}' to proceed without encryption - * Type '${cyan}yes${nc}' to encrypt your /HOME + * Type '${cyan}yes${nc}' to encrypt your /Home " read -r -p " ==> " homecrypt @@ -2329,7 +2327,7 @@ Enter a name: " elif [[ "${homecrypt}" == "yes" ]]; then sleep 0.3 YELLOW " - > Enter a name for your Encrypted Home Partition: " + > Enter a name for your Encrypted /Home Partition: " BLUE " @@ -2354,7 +2352,7 @@ Enter a name: " sleep 0.3 NC " -==> [${green}Encrypted /HOME Label OK${nc}] " +==> [${green}Encrypted /Home Label OK${nc}] " fi else sleep 0.3 @@ -2494,17 +2492,14 @@ instl (){ if [[ "${swapmode}" == "1" ]]; then until "${swaptype}"; do : ; done fi - if [[ "${encrypt}" == "no" ]]; then until set_mode; do : ; done until confirm_status; do : ; done - elif [[ "${encrypt}" == "yes" ]]; then until sec_erase; do : ; done until luks; do : ; done until opt_pcmn; do : ; done until pacstrap_system; do : ; done - if [[ "${swapmode}" == "2" ]]; then until "${swaptype}"; do : ; done fi @@ -2574,14 +2569,12 @@ Enter a Mode number: " sleep 0.3 NC " -------------------------------------------------------------------------------------------------------------- - - + ==> [${green}Filesystems OK${nc}] " sleep 0.3 YELLOW " -###---------------------------------------[ FILESYSTEM OVERVIEW ]---------------------------------------### +###----------------------------------------[ FILESYSTEM OVERVIEW ]----------------------------------------### " lsblk -f |GREP_COLORS='mt=01;36' grep -E --color=always 'vfat|$'|GREP_COLORS='mt=01;32' grep -E --color=always 'ext4|$'|GREP_COLORS='mt=01;35' grep -E --color=always 'btrfs|$'|GREP_COLORS='mt=01;31' grep -E --color=always 'ntfs|$'|GREP_COLORS='mt=01;33' grep -E --color=always 'swap|$' @@ -2607,7 +2600,7 @@ auto_mode (){ if mount "${root_dev}" /mnt; then sleep 0.3 NC " -==> [${green}/ROOT OK${nc}] +==> [${green}/Root OK${nc}] " else umount_manual @@ -2667,7 +2660,7 @@ auto_mode (){ if mount "${boot_dev}" /mnt/boot; then sleep 0.3 NC " -==> [${green}/BOOT OK${nc}] +==> [${green}/Boot OK${nc}] " else umount_manual @@ -2694,7 +2687,7 @@ auto_mode (){ if [[ -e "${home_dev}" && "${fs}" == "1" ]]; then BLUE " - > A /Home partition has been detected. Format as ${fsname}? [y/n] + > A${nc} ${cyan}/Home ${blue}partition has been detected. Format as${nc} ${cyan}${fsname}${blue}? [y/n] " @@ -2707,7 +2700,7 @@ auto_mode (){ if mount "${home_dev}" /mnt/home; then sleep 0.3 NC " -==> [${green}/HOME OK${nc}] +==> [${green}/Home OK${nc}] " else umount_manual @@ -2781,7 +2774,7 @@ ${purple}###${nc} Format Boot Partition ${purple}###${nc} YELLOW " - > Select a partition to format as EFI [/BOOT] " + > Select a partition to format as EFI [/Boot] " NC " ${volumes} " @@ -2799,7 +2792,7 @@ Enter a partition number ${bwhite}(empty to skip and proceed)${blue}: " sleep 0.3 NC " -==> [${green}Format & Label /BOOT OK${nc}] " +==> [${green}Format & Label /Boot OK${nc}] " return 0 else umount_abort @@ -2814,7 +2807,7 @@ Enter a partition number ${bwhite}(empty to skip and proceed)${blue}: " fi RED " - [!] Warning: Partition NOT Formatted ! + [!] Warning: Partition NOT Formatted " skip done @@ -2945,7 +2938,7 @@ Enter a name ${bwhite}(empty to skip and proceed)${blue}: " else RED " - [!] Warning: Partition NOT Formatted ! + [!] Warning: Partition NOT Formatted " skip return 0 @@ -2961,7 +2954,7 @@ ask_homepart_form (){ - > A /Home partition has been detected. Format as ${fsname}? [y/n] + > A${nc} ${cyan}/Home ${blue}partition has been detected. Format as${nc} ${cyan}${fsname}${blue}? [y/n] " @@ -2976,7 +2969,7 @@ ask_homepart_form (){ sleep 0.3 NC " -==> [${green}/HOME OK${nc}] +==> [${green}/Home OK${nc}] " else @@ -3025,7 +3018,7 @@ ${purple}###${nc} Format Home Partition ${purple}###${nc} YELLOW " - > Select a partition to format as 'Ext4' [/HOME] " + > Select a partition to format as Ext4 [/Home] " NC " @@ -3045,7 +3038,7 @@ Enter a partition number ${bwhite}(empty to skip and proceed)${blue}: " NC " -==> [${green}Format /HOME OK${nc}] " +==> [${green}Format /Home OK${nc}] " else umount_abort until disk_mngr; do : ; done @@ -3059,7 +3052,7 @@ Enter a partition number ${bwhite}(empty to skip and proceed)${blue}: " YELLOW " - > Label the /HOME partition " + > Label the /Home partition " BLUE " @@ -3072,7 +3065,7 @@ Enter a name ${bwhite}(empty to skip and proceed)${blue}: " sleep 0.3 NC " -==> [${green}Label /HOME OK${nc}] " +==> [${green}Label /Home OK${nc}] " return 0 else err_try @@ -3092,7 +3085,7 @@ Enter a name ${bwhite}(empty to skip and proceed)${blue}: " ########################################################################################### mount_mnt (){ - local prompt="Mount ${roottype} " + local prompt="Mount ${roottype}" sleep 0.3 NC " ____________________________ @@ -3101,7 +3094,7 @@ ${purple}###${nc} Mount Root Partition ${purple}###${nc} " YELLOW " - > Select a partition to mount to /mnt " + > Select a partition to mount to ${nc}/mnt " NC " @@ -3109,7 +3102,7 @@ ${volumes} " BLUE " -Enter your${nc} ${cyan}${roottype}${blue} partition number: " +Enter your${nc} ${cyan}${roottype} ${blue}partition number: " read -r -p " ==> " mntroot_nmbr echo @@ -3161,7 +3154,7 @@ Enter your${nc} ${cyan}${roottype}${blue} partition number: " ########################################################################################### mount_boot (){ - local prompt="Mount /BOOT" + local prompt="Mount /Boot" sleep 0.3 NC " ____________________________ @@ -3170,7 +3163,7 @@ ${purple}###${nc} Mount Boot Partition ${purple}###${nc} " YELLOW " - > Select a partition to mount to /mnt/boot " + > Select a partition to mount to ${nc}/mnt/boot " NC " @@ -3178,7 +3171,7 @@ ${volumes} " BLUE " -Enter your${nc} ${cyan}/BOOT${blue} partition number: " +Enter your${nc} ${cyan}/Boot ${blue}partition number: " read -r -p " ==> " mntboot_nmbr echo @@ -3206,7 +3199,7 @@ Enter your${nc} ${cyan}/BOOT${blue} partition number: " ########################################################################################### mount_home (){ - local prompt="Mount /HOME" + local prompt="Mount /Home" sleep 0.3 NC " ____________________________ @@ -3215,7 +3208,7 @@ ${purple}###${nc} Mount Home Partition ${purple}###${nc} " YELLOW " - > Select a partition to mount to /mnt/home " + > Select a partition to mount to ${nc}/mnt/home " NC " @@ -3223,7 +3216,7 @@ ${volumes} " BLUE " -Enter your${nc} ${cyan}/HOME${blue} partition number: " +Enter your${nc} ${cyan}/Home ${blue}partition number: " read -r -p " ==> " mnthome_nmbr echo @@ -3329,8 +3322,22 @@ revise (){ if [[ "${swapmode}" == "1" ]]; then until "${swaptype}"; do : ; done fi - until set_mode; do : ; done - until confirm_status; do : ; done + if [[ "${encrypt}" == "no" ]]; then + until set_mode; do : ; done + until confirm_status; do : ; done + elif [[ "${encrypt}" == "yes" ]]; then + until sec_erase; do : ; done + until luks; do : ; done + until opt_pcmn; do : ; done + until pacstrap_system; do : ; done + if [[ "${swapmode}" == "2" ]]; then + until "${swaptype}"; do : ; done + fi + if [[ -n "${REGDOM}" ]]; then + until wireless_regdom; do : ; done + fi + chroot_conf + fi } ########################################################################################### sec_erase (){ @@ -3349,7 +3356,7 @@ ${purple}###${nc} Secure Disk Erasure ${purple}###${nc} > Select a disk for Secure Erasure ${red}[!] (CAUTION) [!]${yellow} - ### A ${nc}reboot${yellow} is mandatory and will take effect immediately when done " + ### A reboot is mandatory and will take effect immediately when done " NC " @@ -3371,7 +3378,6 @@ Enter a disk number ${bwhite}(empty to skip)${blue}: " sleep 0.3 NC " - ==> [${green}Drive ${erasedrive} Erased OK${nc}] " sleep 1 @@ -3414,9 +3420,7 @@ ${purple}###${nc} LUKS Encryption ${purple}###${nc} if mount /dev/mapper/"${ENCROOT}" /mnt; then sleep 0.3 NC " - -==> [${green}Encrypted Root OK${nc}] - +==> [${green}Encrypted /Root OK${nc}] " else err_abort @@ -3451,9 +3455,7 @@ ${purple}###${nc} LUKS Encryption ${purple}###${nc} mount -o "${sbvl_mnt_opts}",subvol=@tmp /dev/mapper/"${ENCROOT}" /mnt/var/tmp && sleep 0.3 NC " - ==> [${green}Encrypted /@ OK${nc}] - " else err_abort @@ -3477,9 +3479,7 @@ ${purple}###${nc} LUKS Encryption ${purple}###${nc} if mkswap /dev/mapper/swap > /dev/null 2>&1 ; then sleep 0.3 NC " - -==> [${green}Encrypted Swap OK${nc}] - +==> [${green}Encrypted /Swap OK${nc}] " else err_abort @@ -3505,9 +3505,7 @@ ${purple}###${nc} LUKS Encryption ${purple}###${nc} if mount /dev/mapper/"${ENCRHOME}" /mnt/home; then sleep 0.3 NC " - -==> [${green}Encrypted Home OK${nc}] - +==> [${green}Encrypted /Home OK${nc}] " else err_abort @@ -3519,7 +3517,7 @@ ${purple}###${nc} LUKS Encryption ${purple}###${nc} elif [[ "${homecrypt}" == "no" ]]; then BLUE " - > A /Home partition has been detected. Format as ${fsname}? [y/n] + > A${nc} ${cyan}/Home ${blue}partition has been detected. Format as${nc} ${cyan}${fsname}${blue}? [y/n] " read -r -p " @@ -3532,8 +3530,6 @@ ${purple}###${nc} LUKS Encryption ${purple}###${nc} if mount "${home_dev}" /mnt/home; then sleep 0.3 NC " - - ==> [${green}/Home OK${nc}] " else @@ -3556,8 +3552,7 @@ ${purple}###${nc} LUKS Encryption ${purple}###${nc} if mount "${boot_dev}" /mnt/boot; then sleep 0.3 NC " - -==> [${green}/BOOT OK${nc}] +==> [${green}/Boot OK${nc}] " else umount_abort @@ -3569,19 +3564,15 @@ ${purple}###${nc} LUKS Encryption ${purple}###${nc} fi sleep 0.3 NC " - - ==> [${green}Encryption OK${nc}]" sleep 0.3 NC " ------------------------------------------------------------------------------------------------------------------- - - + ==> [${green}Filesystems OK${nc}] " sleep 0.3 YELLOW " -###---------------------------------------[ FILESYSTEM OVERVIEW ]---------------------------------------### +###----------------------------------------[ FILESYSTEM OVERVIEW ]----------------------------------------### " lsblk -f |GREP_COLORS='mt=01;36' grep -E --color=always 'vfat|$'|GREP_COLORS='mt=01;32' grep -E --color=always 'ext4|$'|GREP_COLORS='mt=01;35' grep -E --color=always 'btrfs|$'|GREP_COLORS='mt=01;31' grep -E --color=always 'ntfs|$'|GREP_COLORS='mt=01;33' grep -E --color=always 'swap|$' @@ -3606,7 +3597,7 @@ ${purple}###${nc} Optimize PacMan ${purple}###${nc} > Select a Country for your Arch Mirrors: - ### [Hit ${nc}'l'${yellow} to list Countries, then ${nc}'enter'${yellow} to search or ${nc}'q'${yellow} to quit] " + ### [Hit ${nc}'l' ${yellow}to list Countries, then ${nc}'enter' ${yellow}to search or ${nc}'q' ${yellow}to quit] " BLUE "