mirror of
https://gitlab.com/prism7/archery.git
synced 2025-02-15 08:29:17 +01:00
Add: 'Swap Setup' stage > Enabling 'systemd-oomd' in the installed system is now supported.
Add: 'Machine Detection' stage > 'Disable Watchdogs' > Specified AMD watchdog to blacklist in /etc/modprobe.d Add: 'Automatic Partitioning' stage > 'wipefs' now takes place before partitioning selected drive. Add: 'mesa-utils' package has been added to the AMD graphics setup.
This commit is contained in:
parent
ebd533e7cc
commit
961271a966
1 changed files with 71 additions and 8 deletions
79
Amelia.sh
79
Amelia.sh
|
@ -1,8 +1,8 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Amelia Installer
|
||||
# https://gitlab.com/prism7/archery
|
||||
# Version: 8.6.1
|
||||
# Source: https://gitlab.com/prism7/archery
|
||||
# Version: 8.7.0
|
||||
|
||||
set -euo pipefail
|
||||
###################################################################################################
|
||||
|
@ -487,7 +487,7 @@ ${magenta}###${nc}------------------------------------${magenta}[ ${bwhite}Machi
|
|||
microcode="intel-ucode"
|
||||
nrg_plc="x86_energy_perf_policy"
|
||||
cpu_name="Intel"
|
||||
else
|
||||
elif [[ "${CPU}" == *"AuthenticAMD"* ]]; then
|
||||
microcode="amd-ucode"
|
||||
cpu_name="AMD"
|
||||
fi
|
||||
|
@ -524,6 +524,7 @@ Enter [Y/n]: "
|
|||
read -r -p "
|
||||
==> " kill_watchdog
|
||||
|
||||
echo
|
||||
kill_watchdog="${kill_watchdog:-y}"
|
||||
kill_watchdog="${kill_watchdog,,}"
|
||||
|
||||
|
@ -1374,7 +1375,38 @@ Enter a number: "
|
|||
invalid
|
||||
return 1 ;;
|
||||
esac
|
||||
ok
|
||||
|
||||
if [[ "${swapmode}" != "4" ]]; then
|
||||
sleep 0.2
|
||||
YELLOW "
|
||||
|
||||
|
||||
> Enable ${nc}systemd-oomd ${yellow}for enhanced 'OOM' efficiency? [Y/n]"
|
||||
BLUE "
|
||||
|
||||
|
||||
Enter [Y/n]: "
|
||||
read -r -p "
|
||||
==> " oomd
|
||||
|
||||
echo
|
||||
oomd="${oomd:-y}"
|
||||
oomd="${oomd,,}"
|
||||
|
||||
if [[ "${oomd}" == "y" ]]; then
|
||||
YELLOW "
|
||||
|
||||
### 'Systemd-oomd' has been selected
|
||||
"
|
||||
elif [[ "${oomd}" == "n" ]]; then
|
||||
skip
|
||||
else
|
||||
y_n
|
||||
return 1
|
||||
fi
|
||||
|
||||
fi
|
||||
ok
|
||||
if [[ "${vga_slct}" == "yes" ]]; then
|
||||
local stage_prompt="Graphics Setup"
|
||||
completion_err
|
||||
|
@ -1694,7 +1726,7 @@ vga_conf() {
|
|||
perf_stream="dev.i915.perf_stream_paranoid = 0"
|
||||
vgapkgs="intel-compute-runtime intel-media-driver intel-media-sdk libva-intel-driver opencl-headers vpl-gpu-rt vkd3d vulkan-intel vulkan-mesa-layers"
|
||||
elif [[ "${vendor}" == "AMD" ]]; then
|
||||
vgapkgs="libva-mesa-driver mesa-vdpau opencl-headers rocm-opencl-runtime vkd3d vulkan-mesa-layers vulkan-radeon"
|
||||
vgapkgs="libva-mesa-driver mesa-utils mesa-vdpau opencl-headers rocm-opencl-runtime vkd3d vulkan-mesa-layers vulkan-radeon"
|
||||
sleep 0.2
|
||||
YELLOW "
|
||||
|
||||
|
@ -2753,6 +2785,7 @@ Enter a Custom Percentage number ${nc}e.g. 30 ${bwhite}(empty to skip)${blue}: "
|
|||
|
||||
case "${preset}" in
|
||||
1)
|
||||
wipefs -af "${sgdrive}" > /dev/null 2> amelia_log.txt || stage_fail
|
||||
sgdisk -o "${sgdrive}" > /dev/null 2> amelia_log.txt || stage_fail
|
||||
sgdisk -I -n1:0:+512M -t1:ef00 -c1:ESP "${sgdrive}" > /dev/null 2> amelia_log.txt || stage_fail
|
||||
sgdisk -I -n2:0:0 -t2:8304 -c2:ROOT "${sgdrive}" > /dev/null 2> amelia_log.txt || stage_fail
|
||||
|
@ -2764,6 +2797,7 @@ Enter a Custom Percentage number ${nc}e.g. 30 ${bwhite}(empty to skip)${blue}: "
|
|||
fi ;;
|
||||
2)
|
||||
until set_swapsize; do : ; done
|
||||
wipefs -af "${sgdrive}" > /dev/null 2> amelia_log.txt || stage_fail
|
||||
sgdisk -o "${sgdrive}" > /dev/null 2> amelia_log.txt || stage_fail
|
||||
sgdisk -I -n1:0:+512M -t1:ef00 -c1:ESP "${sgdrive}" > /dev/null 2> amelia_log.txt || stage_fail
|
||||
sgdisk -I -n2:0:+"${swapsize}"G -t2:8200 -c2:SWAP "${sgdrive}" > /dev/null 2> amelia_log.txt || stage_fail
|
||||
|
@ -2775,6 +2809,7 @@ Enter a Custom Percentage number ${nc}e.g. 30 ${bwhite}(empty to skip)${blue}: "
|
|||
ok
|
||||
fi ;;
|
||||
3)
|
||||
wipefs -af "${sgdrive}" > /dev/null 2> amelia_log.txt || stage_fail
|
||||
sgdisk -o "${sgdrive}" > /dev/null 2> amelia_log.txt || stage_fail
|
||||
sgdisk -I -n1:0:+512M -t1:ef00 -c1:ESP "${sgdrive}" > /dev/null 2> amelia_log.txt || stage_fail
|
||||
sgdisk -I -n2:0:+"${rootsize}"G -t2:8304 -c2:ROOT "${sgdrive}" > /dev/null 2> amelia_log.txt || stage_fail
|
||||
|
@ -2786,6 +2821,7 @@ Enter a Custom Percentage number ${nc}e.g. 30 ${bwhite}(empty to skip)${blue}: "
|
|||
ok
|
||||
fi ;;
|
||||
4)
|
||||
wipefs -af "${sgdrive}" > /dev/null 2> amelia_log.txt || stage_fail
|
||||
until set_swapsize; do : ; done
|
||||
sgdisk -o "${sgdrive}" > /dev/null 2> amelia_log.txt || stage_fail
|
||||
sgdisk -I -n1:0:+512M -t1:ef00 -c1:ESP "${sgdrive}" > /dev/null 2> amelia_log.txt || stage_fail
|
||||
|
@ -5832,6 +5868,7 @@ PARALLEL
|
|||
stage_fail
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ "${multilib}" == "y" ]]; then
|
||||
local stage_prompt="Multilib Configuration"
|
||||
if arch-chroot /mnt <<-MULTILIB > /dev/null 2>&1 2> amelia_log.txt ; then
|
||||
|
@ -5843,6 +5880,7 @@ MULTILIB
|
|||
stage_fail
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ "${CPU}" == *"GenuineIntel"* && "${kill_watchdog}" == "y" ]]; then
|
||||
local stage_prompt="Intel Watchdog Configuration"
|
||||
if arch-chroot /mnt <<-INTEL_WATCHDOG > /dev/null 2>&1 2> amelia_log.txt ; then
|
||||
|
@ -5852,6 +5890,31 @@ INTEL_WATCHDOG
|
|||
else
|
||||
stage_fail
|
||||
fi
|
||||
elif [[ "${CPU}" == *"AuthenticAMD"* && "${kill_watchdog}" == "y" ]]; then
|
||||
local stage_prompt="AMD Watchdog Configuration"
|
||||
if arch-chroot /mnt <<-AMD_WATCHDOG > /dev/null 2>&1 2> amelia_log.txt ; then
|
||||
echo "blacklist sp5100_tco" | tee /etc/modprobe.d/blacklist.conf || exit
|
||||
AMD_WATCHDOG
|
||||
stage_ok
|
||||
else
|
||||
stage_fail
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ "${oomd}" == "y" ]]; then
|
||||
local stage_prompt="Systemd-oomd Service Activation"
|
||||
if arch-chroot /mnt <<-SYSTEMD_OOMD > /dev/null 2>&1 2> amelia_log.txt ; then
|
||||
mkdir -p /etc/systemd/system.conf.d > /dev/null 2>&1 || exit
|
||||
cat <<-SET_OOMD > /etc/systemd/system.conf.d/00-oomd.conf || exit
|
||||
[Manager]
|
||||
DefaultMemoryAccounting=yes
|
||||
SET_OOMD
|
||||
systemctl enable systemd-oomd || exit
|
||||
SYSTEMD_OOMD
|
||||
stage_ok
|
||||
else
|
||||
stage_fail
|
||||
fi
|
||||
fi
|
||||
}
|
||||
###################################################################################################
|
||||
|
@ -6357,11 +6420,11 @@ POLKIT
|
|||
SystemMaxUse=100M
|
||||
JOURNAL
|
||||
mkdir -p /etc/systemd/user.conf.d > /dev/null 2>&1 || exit
|
||||
cat <<-USER > /etc/systemd/user.conf.d/00-userd.conf || exit
|
||||
cat <<-TIMEOUT > /etc/systemd/user.conf.d/00-timeout.conf || exit
|
||||
[Manager]
|
||||
DefaultTimeoutStopSec=5s
|
||||
DefaultTimeoutAbortSec=5s
|
||||
USER
|
||||
TIMEOUT
|
||||
sed -i 's|^hosts.*|hosts: mymachines mdns_minimal resolve [!UNAVAIL=return] files myhostname dns|g' /etc/nsswitch.conf || exit
|
||||
sed -i 's/ interface = [^ ]*/ interface = all/g' /etc/ipp-usb/ipp-usb.conf || exit
|
||||
sed -i "/# set linenumbers/"'s/^#//' /etc/nanorc || exit
|
||||
|
@ -6411,7 +6474,7 @@ OPTIMIZED
|
|||
tty="$(tty)"
|
||||
disks="$(lsblk --nodeps --paths --noheadings --output=name,size,model | cat --number)"
|
||||
trg=""
|
||||
vars=(LOCALESET="" SETLOCALE="" lcl_slct="" USERNAME="" kernelnmbr="" fs="" vgapkgs="" vgacount="" vgacard="" intelcount="" intelcards="" nvidiacount="" nvidiacards="" amdcount="" amdcards="" vgaconf="" vga_conf="" vga_setup="" vendor="" vendor1="" vendor2="" vendor3="" vendor_slct="" packages="" efi_entr_del="" wrlss_rgd="" sanity="" install="" bootldr_pkgs="" devel="" REGDOM="" vga_bootopts="" btrfs_bootopts="" trim="" swapmode="" homecrypt="" greeter="" revision="" greeternmbr="" cust_bootopts="" bluetooth="" vmpkgs="" vm_services="" perf_stream="" displaymanager="" wireless_reg="" bitness="" bootloader="" vga_slct="" espsize="" autoroot="" autoesp="" autoxboot="" autohome="" autoswap="" rootprt="" espprt="" xbootprt="" homeprt="" swapprt="" partok="" use_manpreset="" instl_drive="" sgdsk_nmbr="" part_mode="" preset="" capacity="" cap_gib="" rootsize="" sgdrive="" cgdrive="" smartpart="" presetpart="" prcnt="" roottype="" stage_prompt="" zram="" zram_bootopts="" xbootloader="" multibooting="" hypervisor="" mkinitcpio_mods="" uki="" ukify="" slct_autoprt="" cng_espmnt="" sep_home="" encr_swap_bootopts="" uefimode="" luks_encrypt="" nrg_plc="" parallel="" parallelnmbr="" multilib="" nvname="" nogsp="" luks_root="" luks_swap="" luks_home="" installation="" kill_watchdog="")
|
||||
vars=(LOCALESET="" SETLOCALE="" lcl_slct="" USERNAME="" kernelnmbr="" fs="" vgapkgs="" vgacount="" vgacard="" intelcount="" intelcards="" nvidiacount="" nvidiacards="" amdcount="" amdcards="" vgaconf="" vga_conf="" vga_setup="" vendor="" vendor1="" vendor2="" vendor3="" vendor_slct="" packages="" efi_entr_del="" wrlss_rgd="" sanity="" install="" bootldr_pkgs="" devel="" REGDOM="" vga_bootopts="" btrfs_bootopts="" trim="" swapmode="" homecrypt="" greeter="" revision="" greeternmbr="" cust_bootopts="" bluetooth="" vmpkgs="" vm_services="" perf_stream="" displaymanager="" wireless_reg="" bitness="" bootloader="" vga_slct="" espsize="" autoroot="" autoesp="" autoxboot="" autohome="" autoswap="" rootprt="" espprt="" xbootprt="" homeprt="" swapprt="" partok="" use_manpreset="" instl_drive="" sgdsk_nmbr="" part_mode="" preset="" capacity="" cap_gib="" rootsize="" sgdrive="" cgdrive="" smartpart="" presetpart="" prcnt="" roottype="" stage_prompt="" zram="" zram_bootopts="" xbootloader="" multibooting="" hypervisor="" mkinitcpio_mods="" uki="" ukify="" slct_autoprt="" cng_espmnt="" sep_home="" encr_swap_bootopts="" uefimode="" luks_encrypt="" nrg_plc="" parallel="" parallelnmbr="" multilib="" nvname="" nogsp="" luks_root="" luks_swap="" luks_home="" installation="" kill_watchdog="" oomd="")
|
||||
export "${vars[@]}"
|
||||
clear
|
||||
first_check
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue