diff --git a/Amelia.sh b/Amelia.sh index 10eda76..b0ba7e4 100644 --- a/Amelia.sh +++ b/Amelia.sh @@ -2,7 +2,7 @@ # Amelia Installer # Source: https://gitlab.com/prism7/archery -# Version: 1.0.13 +# Version: 1.0.14 set -euo pipefail ################################################################################################### @@ -4772,12 +4772,6 @@ Re-enter password: " reload return 1 fi - - if [[ "${sep_home}" == "y" && "${hometype}" == "2" ]]; then - homecrypt="no" - elif [[ "${sep_home}" == "y" && "${hometype}" == "1" ]]; then - homecrypt="yes" - fi ok else yes_no @@ -5956,15 +5950,15 @@ ${magenta}###${nc}-------------------------------------${magenta}[ ${bwhite}LUKS " if echo -n "${CRYPTPASS}" | cryptsetup luksFormat --label CRYPTROOT "${root_dev}" > "${void}"; then if [[ "${rota}" == "0" ]]; then - echo -n "${CRYPTPASS}" | cryptsetup --perf-no_read_workqueue --perf-no_write_workqueue --persistent luksOpen "${root_dev}" CryptRoot || err_abort + echo -n "${CRYPTPASS}" | cryptsetup --perf-no_read_workqueue --perf-no_write_workqueue --persistent luksOpen "${root_dev}" root || err_abort else - echo -n "${CRYPTPASS}" | cryptsetup luksOpen "${root_dev}" CryptRoot || err_abort + echo -n "${CRYPTPASS}" | cryptsetup luksOpen "${root_dev}" root || err_abort fi #------------------------------------------------------------------------------------------ if [[ "${fs}" == "1" ]]; then - mkfs.ext4 -F -L CryptRoot /dev/mapper/CryptRoot > "${void}" 2> "${log}" || err_abort - tune2fs -O fast_commit /dev/mapper/CryptRoot > "${void}" 2> "${log}" || err_abort - mount /dev/mapper/CryptRoot /mnt > "${void}" 2> "${log}" || err_abort + mkfs.ext4 -F -L Root /dev/mapper/root > "${void}" 2> "${log}" || err_abort + tune2fs -O fast_commit /dev/mapper/root > "${void}" 2> "${log}" || err_abort + mount /dev/mapper/root /mnt > "${void}" 2> "${log}" || err_abort sleep 0.2 NC " ==> [${green}Encrypted /Root OK${nc}] @@ -5972,8 +5966,8 @@ ${magenta}###${nc}-------------------------------------${magenta}[ ${bwhite}LUKS luks_root="ok" #------------------------------------------------------------------------------------------ elif [[ "${fs}" == "2" ]]; then - mkfs.btrfs -f -L CryptRoot /dev/mapper/CryptRoot > "${void}" 2> "${log}" || err_abort - mount /dev/mapper/CryptRoot /mnt > "${void}" 2> "${log}" || err_abort + mkfs.btrfs -f -L Root /dev/mapper/root > "${void}" 2> "${log}" || err_abort + mount /dev/mapper/root /mnt > "${void}" 2> "${log}" || err_abort btrfs subvolume create /mnt/@ > "${void}" 2> "${log}" || err_abort btrfs subvolume create /mnt/@home > "${void}" 2> "${log}" || err_abort btrfs subvolume create /mnt/@cache > "${void}" 2> "${log}" || err_abort @@ -5984,14 +5978,14 @@ ${magenta}###${nc}-------------------------------------${magenta}[ ${bwhite}LUKS btrfs subvolume create /mnt/@swap > "${void}" 2> "${log}" || err_abort fi umount /mnt > "${void}" 2> "${log}" || err_abort - mount -o "${sbvl_mnt_opts}",subvol=@ /dev/mapper/CryptRoot /mnt > "${void}" 2> "${log}" || err_abort - mount --mkdir -o "${sbvl_mnt_opts}",subvol=@home /dev/mapper/CryptRoot /mnt/home > "${void}" 2> "${log}" || err_abort - mount --mkdir -o "${sbvl_mnt_opts}",subvol=@cache /dev/mapper/CryptRoot /mnt/var/cache > "${void}" 2> "${log}" || err_abort - mount --mkdir -o "${sbvl_mnt_opts}",subvol=@log /dev/mapper/CryptRoot /mnt/var/log > "${void}" 2> "${log}" || err_abort - mount --mkdir -o "${sbvl_mnt_opts}",subvol=@tmp /dev/mapper/CryptRoot /mnt/var/tmp > "${void}" 2> "${log}" || err_abort - mount --mkdir -o "${sbvl_mnt_opts}",subvol=@snapshots /dev/mapper/CryptRoot /mnt/"${snapname}" > "${void}" 2> "${log}" || err_abort + mount -o "${sbvl_mnt_opts}",subvol=@ /dev/mapper/root /mnt > "${void}" 2> "${log}" || err_abort + mount --mkdir -o "${sbvl_mnt_opts}",subvol=@home /dev/mapper/root /mnt/home > "${void}" 2> "${log}" || err_abort + mount --mkdir -o "${sbvl_mnt_opts}",subvol=@cache /dev/mapper/root /mnt/var/cache > "${void}" 2> "${log}" || err_abort + mount --mkdir -o "${sbvl_mnt_opts}",subvol=@log /dev/mapper/root /mnt/var/log > "${void}" 2> "${log}" || err_abort + mount --mkdir -o "${sbvl_mnt_opts}",subvol=@tmp /dev/mapper/root /mnt/var/tmp > "${void}" 2> "${log}" || err_abort + mount --mkdir -o "${sbvl_mnt_opts}",subvol=@snapshots /dev/mapper/root /mnt/"${snapname}" > "${void}" 2> "${log}" || err_abort if [[ "${swapmode}" == "2" ]]; then - mount --mkdir -o "${sbvl_mnt_opts}",subvol=@swap /dev/mapper/CryptRoot /mnt/swap > "${void}" 2> "${log}" || err_abort + mount --mkdir -o "${sbvl_mnt_opts}",subvol=@swap /dev/mapper/root /mnt/swap > "${void}" 2> "${log}" || err_abort fi sleep 0.2 NC " @@ -6010,11 +6004,11 @@ ${magenta}###${nc}-------------------------------------${magenta}[ ${bwhite}LUKS line2 if echo -n "${CRYPTPASS}" | cryptsetup luksFormat --label CRYPTSWAP "${swap_dev}" > "${void}"; then if [[ "${rota}" == "0" ]]; then - echo -n "${CRYPTPASS}" | cryptsetup --perf-no_read_workqueue --perf-no_write_workqueue --persistent luksOpen "${swap_dev}" CryptSwap || err_abort + echo -n "${CRYPTPASS}" | cryptsetup --perf-no_read_workqueue --perf-no_write_workqueue --persistent luksOpen "${swap_dev}" swap || err_abort else - echo -n "${CRYPTPASS}" | cryptsetup luksOpen "${swap_dev}" CryptSwap || err_abort + echo -n "${CRYPTPASS}" | cryptsetup luksOpen "${swap_dev}" swap || err_abort fi - mkswap /dev/mapper/CryptSwap > "${void}" 2> "${log}" || err_abort + mkswap /dev/mapper/swap > "${void}" 2> "${log}" || err_abort sleep 0.2 NC " ==> [${green}Encrypted /Swap OK${nc}] @@ -6028,17 +6022,17 @@ ${magenta}###${nc}-------------------------------------${magenta}[ ${bwhite}LUKS fi fi #-------------------------------------------------------------------------------------------------- - if [[ "${homecrypt}" == "yes" ]]; then + if [[ "${sep_home}" == "y" && "${hometype}" == "1" ]]; then line2 if echo -n "${CRYPTPASS}" | cryptsetup luksFormat --label CRYPTHOME "${home_dev}" > "${void}"; then if [[ "${rota}" == "0" ]]; then - echo -n "${CRYPTPASS}" | cryptsetup --perf-no_read_workqueue --perf-no_write_workqueue --persistent luksOpen "${home_dev}" CryptHome || err_abort + echo -n "${CRYPTPASS}" | cryptsetup --perf-no_read_workqueue --perf-no_write_workqueue --persistent luksOpen "${home_dev}" home || err_abort else - echo -n "${CRYPTPASS}" | cryptsetup luksOpen "${home_dev}" CryptHome || err_abort + echo -n "${CRYPTPASS}" | cryptsetup luksOpen "${home_dev}" home || err_abort fi - mkfs.ext4 -F -L CryptHome /dev/mapper/CryptHome > "${void}" 2> "${log}" || err_abort - tune2fs -O fast_commit /dev/mapper/CryptHome > "${void}" 2> "${log}" || err_abort - mount --mkdir /dev/mapper/CryptHome /mnt/home > "${void}" 2> "${log}" || err_abort + mkfs.ext4 -F -L Home /dev/mapper/home > "${void}" 2> "${log}" || err_abort + tune2fs -O fast_commit /dev/mapper/home > "${void}" 2> "${log}" || err_abort + mount --mkdir /dev/mapper/home /mnt/home > "${void}" 2> "${log}" || err_abort sleep 0.2 NC " ==> [${green}Encrypted /Home OK${nc}] @@ -6050,35 +6044,14 @@ ${magenta}###${nc}-------------------------------------${magenta}[ ${bwhite}LUKS do_umount return 1 fi - elif [[ "${homecrypt}" == "no" ]]; then - [[ "${hometype}" == "1" ]] && homeform="y" - if [[ "${hometype}" == "2" ]]; then - homeform="n" - sleep 0.2 - YELLOW " + elif [[ "${sep_home}" == "y" && "${hometype}" == "2" ]]; then + sleep 0.2 + YELLOW " > An existing /Home partition has been detected and will be utilized in this installation - " - keypress - fi - fi - - if [[ "${homeform}" == "y" ]]; then - if mkfs.ext4 -F -L Home "${home_dev}" > "${void}" 2> "${log}" ; then - tune2fs -O fast_commit "${home_dev}" > "${void}" 2> "${log}" || err_abort - mount --mkdir "${home_dev}" /mnt/home > "${void}" 2> "${log}" || err_abort - sleep 0.2 - NC " -==> [${green}/Home OK${nc}] - " - else - line2 - err_try - do_umount - return 1 - fi - elif [[ "${homeform}" == "n" ]]; then + " + keypress mount --mkdir "${home_dev}" /mnt/home > "${void}" 2> "${log}" || err_abort sleep 0.2 NC " @@ -7197,10 +7170,9 @@ set_vars() { if [[ "${encrypt}" == "yes" ]]; then # Encrypted Root Device - encr_root_dev="/dev/mapper/CryptRoot" + encr_root_dev="/dev/mapper/root" # Encrypted Root Options - encr_root_opts="rd.luks.name=$(blkid -s UUID -o value "${root_dev}")=CryptRoot" - + encr_root_opts="rd.luks.name=$(blkid -s UUID -o value "${root_dev}")=root" # ATTENTION LUKS ROOT KERNEL CMDLINE encr_root_bootopts="${encr_root_opts} root=${encr_root_dev}" @@ -7211,10 +7183,10 @@ set_vars() { # Encrypted Swap Partition if [[ "${swapmode}" == "1" ]]; then # Encrypted Swap Partition Options - encr_swap_opts="rd.luks.name=$(blkid -s UUID -o value "${swap_dev}")=CryptSwap" + encr_swap_opts="rd.luks.name=$(blkid -s UUID -o value "${swap_dev}")=swap" # ATTENTION LUKS SWAP PARTITION KERNEL CMDLINE - encr_swap_bootopts="resume=/dev/mapper/CryptSwap ${encr_swap_opts}" + encr_swap_bootopts="resume=/dev/mapper/swap ${encr_swap_opts}" # Encrypted Swapfile elif [[ "${swapmode}" == "2" ]]; then @@ -7229,6 +7201,12 @@ set_vars() { # ATTENTION LUKS SWAPFILE KERNEL CMDLINE encr_swap_bootopts="resume=${encr_root_dev} resume_offset=${offst}" fi +#-------------------------------------------------------------------------------------------------- + # LUKS HOME SETUP + + if [[ "${sep_home}" == "y" && "${hometype}" == "1" ]]; then + encr_home_bootopts="rd.luks.name=$(blkid -s UUID -o value "${home_dev}")=home" + fi #-------------------------------------------------------------------------------------------------- # LUKS HOOKS SETUP @@ -7254,6 +7232,9 @@ set_vars() { # If LUKS Swap: [[ -n "${encr_swap_bootopts}" ]] && boot_opts+=("${encr_swap_bootopts}") + # If LUKS Home: + [[ -n "${encr_home_bootopts}" ]] && boot_opts+=("${encr_home_bootopts}") + #-------------------------------------------------------------------------------------------------- # NO ENCRYPTION @@ -7484,7 +7465,7 @@ CUSTOM_SRVC log="Amelia.log" disks="$(lsblk --nodeps --paths --noheadings --output=name,size,model | cat --number)" trg="" - vars=(LOCALESET="" SETLOCALE="" lcl_slct="" USERNAME="" kernelnmbr="" fs="" gfxcount="" gfxcard="" intelcount="" intelcards="" nvidiacount="" nvidiacards="" amdcount="" amdcards="" vendor="" vendors="" desktop="" terminal="" efi_entr_del="" sanity="" install="" bootldr_pkgs="" devel="" REGDOM="" gfx_bootopts="" btrfs_bootopts="" trim="" swapmode="" homecrypt="" greeter="" greeternmbr="" cust_bootopts="" vmpkgs="" vm_services="" perf_stream="" displaymanager="" wireless_reg="" bitness="" bootloader="" gfx_slct="" espsize="" autoroot="" autoesp="" autoxboot="" autohome="" autoswap="" rootprt="" espprt="" xbootprt="" homeprt="" swapprt="" partok="" instl_drive="" sgdsk_nmbr="" part_mode="" preset="" capacity="" cap_gib="" rootsize="" sgdrive="" cgdrive="" smartpart="" presetpart="" prcnt="" roottype="" stage_prompt="" zram="" xbootloader="" multibooting="" hypervisor="" mkinitcpio_mods="" mkinitcpio_bins="" uki="" ukify="" cng_espmnt="" sep_home="" encr_swap_bootopts="" uefimode="" luks_encrypt="" nrg_plc="" multilib="" nvname="" nogsp="" luks_root="" luks_swap="" luks_home="" installation="" kill_watchdog="" oomd="" setrescue="" lowlat="" dev="" web="" web_pkg="" web_aur="" web_slct="" printer="" print_pkgs="" shellnmbr="" shell="" shellname="" shellname2="" shell_pkgs="" genoptm="" set_optm="" ask_param="" desk_setup="" irqbalance="" thermald="" rngd="" rtkit="" tlp="" CRYPTPASS="" CRYPTPASS2="" askoptm="" gptslct="" gptok="" gptabort="" nvdprop="" nowarning="" efiname="" path="" hometype="" homeform="" LuksParts="") + vars=(LOCALESET="" SETLOCALE="" lcl_slct="" USERNAME="" kernelnmbr="" fs="" gfxcount="" gfxcard="" intelcount="" intelcards="" nvidiacount="" nvidiacards="" amdcount="" amdcards="" vendor="" vendors="" desktop="" terminal="" efi_entr_del="" sanity="" install="" bootldr_pkgs="" devel="" REGDOM="" gfx_bootopts="" btrfs_bootopts="" trim="" swapmode="" greeter="" greeternmbr="" cust_bootopts="" vmpkgs="" vm_services="" perf_stream="" displaymanager="" wireless_reg="" bitness="" bootloader="" gfx_slct="" espsize="" autoroot="" autoesp="" autoxboot="" autohome="" autoswap="" rootprt="" espprt="" xbootprt="" homeprt="" swapprt="" partok="" instl_drive="" sgdsk_nmbr="" part_mode="" preset="" capacity="" cap_gib="" rootsize="" sgdrive="" cgdrive="" smartpart="" presetpart="" prcnt="" roottype="" stage_prompt="" zram="" xbootloader="" multibooting="" hypervisor="" mkinitcpio_mods="" mkinitcpio_bins="" uki="" ukify="" cng_espmnt="" sep_home="" encr_swap_bootopts="" encr_home_bootopts="" uefimode="" luks_encrypt="" nrg_plc="" multilib="" nvname="" nogsp="" luks_root="" luks_swap="" luks_home="" installation="" kill_watchdog="" oomd="" setrescue="" lowlat="" dev="" web="" web_pkg="" web_aur="" web_slct="" printer="" print_pkgs="" shellnmbr="" shell="" shellname="" shellname2="" shell_pkgs="" genoptm="" set_optm="" ask_param="" desk_setup="" irqbalance="" thermald="" rngd="" rtkit="" tlp="" CRYPTPASS="" CRYPTPASS2="" askoptm="" gptslct="" gptok="" gptabort="" nvdprop="" nowarning="" efiname="" path="" hometype="" homeform="" LuksParts="") export "${vars[@]}" sleep 0.2 CYANBG "************************************************************************************************* "