Change: Nvidia:

If Swap (Hibernation) has been selected by user, the installer will no longer load Nvidia modules early in the initramfs, to avoid the reported issues.
Add: KDE Plasma QoL addons: Packages 'libappindicator, kde-inotify-survey' have been added
Change: Edit/Add a few comments
This commit is contained in:
Jane Doe
2026-03-08 16:19:10 +02:00
parent 66310c990c
commit ac68aee474
+20 -18
View File
@@ -1,7 +1,7 @@
#!/bin/bash #!/bin/bash
# Amelia installer for Archlinux # Amelia installer for Archlinux
# Version: 1.2.4 # Version: 1.2.5
# Source: https://gitlab.com/prism7/archery # Source: https://gitlab.com/prism7/archery
# Contact: leenooks7@gmail.com # Contact: leenooks7@gmail.com
@@ -1997,7 +1997,7 @@ gfxpkgs_set() {
----------------------------------------------------------------${cyan} ----------------------------------------------------------------${cyan}
### ${yellowl}INFO: ${nc}When Hibernating ${cyan}### ### ${yellowl}INFO: ${nc}When Hibernating ${cyan}###
### ${nc}Nvidia's ${yellowl}'Preserve Video Memory after suspend' ${nc}feature ${cyan}### ### ${nc}Nvidia's ${yellowl}'Preserve-Video-Memory-After-Suspend' ${nc}feature ${cyan}###
### ${nc}is incompatible with ${yellowl}'Early KMS' ${nc}use ${cyan}###${nc} ### ${nc}is incompatible with ${yellowl}'Early KMS' ${nc}use ${cyan}###${nc}
----------------------------------------------------------------" ----------------------------------------------------------------"
@@ -6155,7 +6155,7 @@ pkg_collection() {
displaymanager="plasmalogin" ;; displaymanager="plasmalogin" ;;
2) # Plasma Lite Desktop: 2) # Plasma Lite Desktop:
deskpkgs="${basepkgs[*]} ark bluedevil breeze-gtk colord-kde dolphin-plugins flatpak-kcm freerdp kate kcalc kclock kde-gtk-config kdegraphics-mobipocket kdegraphics-thumbnailers kdenetwork-filesharing kdeplasma-addons kdf kdialog keditbookmarks kget kimageformats kio-admin kio-gdrive kio-zeroconf konsole krdc krfb kscreen kwayland-integration kwrited okular purpose ocean-sound-theme packagekit-qt6 partitionmanager plasma5-integration plasma-browser-integration plasma-desktop plasma-disks plasma-firewall plasma-keyboard plasma-login-manager plasma-nm plasma-pa plasma-systemmonitor plasma-wayland-protocols plasma-x11-session spectacle appmenu-gtk-module arj dosfstools ffmpegthumbs icoutils kvantum libappimage lrzip lzop ntfs-3g power-profiles-daemon qt5-xmlpatterns qt6-connectivity qt6-multimedia-gstreamer unarchiver unrar xdg-desktop-portal-gtk" deskpkgs="${basepkgs[*]} ark bluedevil breeze-gtk colord-kde dolphin-plugins flatpak-kcm freerdp kate kcalc kclock kde-gtk-config kde-inotify-survey kdegraphics-mobipocket kdegraphics-thumbnailers kdenetwork-filesharing kdeplasma-addons kdf kdialog keditbookmarks kget kimageformats kio-admin kio-gdrive kio-zeroconf konsole krdc krfb kscreen kwayland-integration kwrited okular purpose ocean-sound-theme packagekit-qt6 partitionmanager plasma5-integration plasma-browser-integration plasma-desktop plasma-disks plasma-firewall plasma-keyboard plasma-login-manager plasma-nm plasma-pa plasma-systemmonitor plasma-wayland-protocols plasma-x11-session spectacle appmenu-gtk-module arj dosfstools ffmpegthumbs icoutils kvantum libappimage libappindicator lrzip lzop ntfs-3g power-profiles-daemon qrca qt5-xmlpatterns qt6-connectivity qt6-multimedia-gstreamer unarchiver unrar xdg-desktop-portal-gtk"
displaymanager="plasmalogin" ;; displaymanager="plasmalogin" ;;
3) # Gnome Desktop: 3) # Gnome Desktop:
@@ -6406,7 +6406,6 @@ ${magenta}###${nc}--------------------------${magenta}[ ${bwhite}Setting Up Wire
" "
if sed -i "/^#WIRELESS_REGDOM=\"${REGDOM}\"/s/^#//" /mnt/etc/conf.d/wireless-regdom ; then if sed -i "/^#WIRELESS_REGDOM=\"${REGDOM}\"/s/^#//" /mnt/etc/conf.d/wireless-regdom ; then
ok ok
echo
else else
stage_fail stage_fail
fi fi
@@ -7173,13 +7172,12 @@ set_vars() {
uki="n" uki="n"
fi fi
# Mkinitcpio Modules/Binaries/Hooks ### Mkinitcpio Modules/Binaries/Hooks
MODULES=() MODULES=()
BINARIES=() BINARIES=()
HOOKS=() HOOKS=()
#-------------------------------------------------------------------------------------------------- #--------------------------------------------------------------------------------------------------
# BINARIES SETUP ## BINARIES SETUP
# Btrfs Mkinitcpio Binary # Btrfs Mkinitcpio Binary
[[ "${fs}" == "2" ]] && BINARIES+=(/usr/bin/btrfs) [[ "${fs}" == "2" ]] && BINARIES+=(/usr/bin/btrfs)
@@ -7197,7 +7195,7 @@ set_vars() {
encr_root_bootopts="${encr_root_opts} root=${encr_root_dev}" encr_root_bootopts="${encr_root_opts} root=${encr_root_dev}"
#-------------------------------------------------------------------------------------------------- #--------------------------------------------------------------------------------------------------
# LUKS SWAP SETUP ## LUKS SWAP SETUP
# Encrypted Swap Partition # Encrypted Swap Partition
if [[ "${swapmode}" == "1" ]]; then if [[ "${swapmode}" == "1" ]]; then
@@ -7221,13 +7219,14 @@ set_vars() {
encr_swap_bootopts="resume=${encr_root_dev} resume_offset=${offst}" encr_swap_bootopts="resume=${encr_root_dev} resume_offset=${offst}"
fi fi
#-------------------------------------------------------------------------------------------------- #--------------------------------------------------------------------------------------------------
# LUKS HOME SETUP ## LUKS HOME SETUP
if [[ "${sep_home}" == "y" && "${hometype}" == "1" ]]; then if [[ "${sep_home}" == "y" && "${hometype}" == "1" ]]; then
# ATTENTION LUKS HOME PARTITION KERNEL CMDLINE
encr_home_bootopts="rd.luks.name=$(blkid -s UUID -o value "${home_dev}")=home" encr_home_bootopts="rd.luks.name=$(blkid -s UUID -o value "${home_dev}")=home"
fi fi
#-------------------------------------------------------------------------------------------------- #--------------------------------------------------------------------------------------------------
# LUKS HOOKS SETUP ## LUKS HOOKS SETUP
# Nvidia Proprietary GFX Hooks # Nvidia Proprietary GFX Hooks
if [[ "${nvidiaprop}" == "y" ]]; then if [[ "${nvidiaprop}" == "y" ]]; then
@@ -7240,7 +7239,7 @@ set_vars() {
[[ "${fs}" == "1" ]] && HOOKS+=(fsck) [[ "${fs}" == "1" ]] && HOOKS+=(fsck)
#-------------------------------------------------------------------------------------------------- #--------------------------------------------------------------------------------------------------
# LUKS MODULES SETUP ## LUKS MODULES SETUP
# LUKS Mkinitcpio Modules # LUKS Mkinitcpio Modules
MODULES+=("${fs_mod}") MODULES+=("${fs_mod}")
@@ -7254,12 +7253,11 @@ set_vars() {
# If LUKS Home: # If LUKS Home:
[[ -n "${encr_home_bootopts}" ]] && boot_opts+=("${encr_home_bootopts}") [[ -n "${encr_home_bootopts}" ]] && boot_opts+=("${encr_home_bootopts}")
#-------------------------------------------------------------------------------------------------- #--------------------------------------------------------------------------------------------------
# NO ENCRYPTION # NO ENCRYPTION
elif [[ "${encrypt}" == "no" ]]; then elif [[ "${encrypt}" == "no" ]]; then
# HOOKS SETUP ## HOOKS SETUP
# Nvidia Proprietary GFX Hooks # Nvidia Proprietary GFX Hooks
if [[ "${nvidiaprop}" == "y" ]]; then if [[ "${nvidiaprop}" == "y" ]]; then
@@ -7268,9 +7266,9 @@ set_vars() {
else else
HOOKS+=(systemd autodetect microcode modconf kms keyboard sd-vconsole block filesystems) HOOKS+=(systemd autodetect microcode modconf kms keyboard sd-vconsole block filesystems)
fi fi
# Add Fsck Hook # Add Fsck Hook
[[ "${fs}" == "1" ]] && HOOKS+=(fsck) [[ "${fs}" == "1" ]] && HOOKS+=(fsck)
#-------------------------------------------------------------------------------------------------- #--------------------------------------------------------------------------------------------------
# ATTENTION MAIN KERNEL CMDLINE # ATTENTION MAIN KERNEL CMDLINE
boot_opts=() boot_opts=()
@@ -7279,14 +7277,18 @@ set_vars() {
[[ "${autoroot}" == "y" ]] && boot_opts+=("${multiroot_bootopts}") [[ "${autoroot}" == "y" ]] && boot_opts+=("${multiroot_bootopts}")
fi fi
#-------------------------------------------------------------------------------------------------- #--------------------------------------------------------------------------------------------------
# GFX CONFIGURATION
## GFX CONFIGURATION
# Gfx Kernel Cmdline # Gfx Kernel Cmdline
gfx_bootopts=() gfx_bootopts=()
# Nvidia Proprietary # Nvidia Proprietary
if [[ "${nvidiaprop}" == "y" ]]; then if [[ "${nvidiaprop}" == "y" ]]; then
MODULES+=(nvidia nvidia_modeset nvidia_uvm nvidia_drm) # No Hibernation -> EARLY KMS
if [[ -z "${swapmode}" ]]; then
MODULES+=(nvidia nvidia_modeset nvidia_uvm nvidia_drm)
fi
gfx_bootopts+=(nvidia.NVreg_UsePageAttributeTable=1) gfx_bootopts+=(nvidia.NVreg_UsePageAttributeTable=1)
# MultiGfx with Intel # MultiGfx with Intel
@@ -7294,7 +7296,7 @@ set_vars() {
# MultiGfx with AMD # MultiGfx with AMD
[[ "${vendors}" =~ "AMD" ]] && MODULES+=(amdgpu radeon) [[ "${vendors}" =~ "AMD" ]] && MODULES+=(amdgpu radeon)
# Disable GSP Firmware # Disable GSP Firmware -> NVIDIA 580xx [AUR] DRIVER ONLY
[[ "${nogsp}" == "y" ]] && gfx_bootopts+=(nvidia.NVreg_EnableGpuFirmware=0) [[ "${nogsp}" == "y" ]] && gfx_bootopts+=(nvidia.NVreg_EnableGpuFirmware=0)
# Enable Experimental Low Latency Interrupts # Enable Experimental Low Latency Interrupts
[[ "${lowlat}" == "y" ]] && gfx_bootopts+=(nvidia.NVreg_RegistryDwords=RMIntrLockingMode=1) [[ "${lowlat}" == "y" ]] && gfx_bootopts+=(nvidia.NVreg_RegistryDwords=RMIntrLockingMode=1)
@@ -7378,7 +7380,7 @@ SLICK
fi fi
if [[ "${vendor}" != "Virtual Machine" && "${desktop}" != "11" ]]; then if [[ "${vendor}" != "Virtual Machine" && "${desktop}" != "11" ]]; then
local stage_prompt="Bluetooth Services Activation" local stage_prompt="Bluetooth Service Activation"
if arch-chroot /mnt <<-BLUETOOTH > "${void}" 2>&1 2> "${log}" ; then if arch-chroot /mnt <<-BLUETOOTH > "${void}" 2>&1 2> "${log}" ; then
systemctl enable bluetooth || exit systemctl enable bluetooth || exit
BLUETOOTH BLUETOOTH