mirror of
https://gitlab.com/prism7/archery.git
synced 2025-02-15 08:29:17 +01:00
When a VM is detected, vm-specific packages (i.e. 'virtualbox-guest-utils') and vm-necessary services (i.e. 'vboxservice') will be automatically installed and enabled
When 'Nvidia' graphics are detected and running the 'Nvidia.hook' is needed, 'pacman.conf' involved option will be uncommented (activated) and '/etc/pacman.d/hooks/' directory will be created
This commit is contained in:
parent
8f5bea0416
commit
fbe0e926ad
1 changed files with 32 additions and 10 deletions
38
Amelia.sh
38
Amelia.sh
|
@ -1077,6 +1077,20 @@ ${purple}###${nc} Graphics Setup ${purple}###${nc}
|
|||
sourcetype="Proprietary"
|
||||
elif [[ "${hypervisor}" != "none" ]]; then
|
||||
vendor="Virtual Machine"
|
||||
case "${hypervisor}" in
|
||||
kvm)
|
||||
vmpkgs="spice spice-vdagent spice-protocol spice-gtk qemu-guest-agent"
|
||||
vm_services="qemu-guest-agent" ;;
|
||||
vmware)
|
||||
vmpkgs="open-vm-tools"
|
||||
vm_services="vmtoolsd vmware-vmblock-fuse" ;;
|
||||
oracle)
|
||||
vmpkgs="virtualbox-guest-utils"
|
||||
vm_services="vboxservice" ;;
|
||||
microsoft)
|
||||
vmpkgs="hyperv"
|
||||
vm_services="hv_fcopy_daemon hv_kvp_daemon hv_vss_daemon"
|
||||
esac
|
||||
fi
|
||||
|
||||
sleep 0.5
|
||||
|
@ -3702,7 +3716,7 @@ ${purple}###${nc} Pacstrap System ${purple}###${nc}
|
|||
fi
|
||||
|
||||
if [[ "${vendor}" == "Virtual Machine" ]]; then
|
||||
basepkgs="base nano sudo vim "${bootldr_pkgs}" "${fstools}" "${kernel}" "${microcode}" "${devel}""
|
||||
basepkgs="base nano sudo vim "${bootldr_pkgs}" "${fstools}" "${kernel}" "${microcode}" "${vmpkgs}" "${devel}""
|
||||
elif [[ "${vendor}" == "Nvidia" ]]; then
|
||||
basepkgs="base linux-firmware nano sudo vim "${bootldr_pkgs}" "${fstools}" "${kernel}" "${kernel}"-headers "${microcode}" "${vgapkgs}" "${wireless_reg}" "${devel}""
|
||||
else
|
||||
|
@ -3775,7 +3789,7 @@ ${purple}###${nc} Pacstrap System ${purple}###${nc}
|
|||
11) # NOTE: Custom System:
|
||||
|
||||
if [[ "${vendor}" == "Virtual Machine" ]]; then
|
||||
deskpkgs="base sudo "${bootldr_pkgs}" "${custompkgs}" "${fstools}" "${kernel}" "${microcode}" "${greeter}""
|
||||
deskpkgs="base sudo "${bootldr_pkgs}" "${custompkgs}" "${fstools}" "${kernel}" "${microcode}" "${vmpkgs}" "${greeter}""
|
||||
else
|
||||
deskpkgs="base linux-firmware sudo "${bootldr_pkgs}" "${custompkgs}" "${fstools}" "${kernel}" "${microcode}" "${vgapkgs}" "${wireless_reg}" "${greeter}""
|
||||
fi ;;
|
||||
|
@ -4054,7 +4068,7 @@ SLICK
|
|||
initrd /${microcode}.img
|
||||
initrd /initramfs-${kernel}.img
|
||||
options rw ${boot_opts}" | tee /boot/loader/entries/arch.conf &&
|
||||
systemctl enable systemd-boot-update ${bluetooth} ${displaymanager} ${network} ${trim}
|
||||
systemctl enable systemd-boot-update ${bluetooth} ${displaymanager} ${network} ${trim} ${vm_services}
|
||||
BOOTCTL
|
||||
|
||||
elif [[ "${bootloader}" == "2" ]]; then
|
||||
|
@ -4065,7 +4079,7 @@ BOOTCTL
|
|||
-e "/^#GRUB_DISABLE_OS_PROBER=false/s/^#//" \
|
||||
/etc/default/grub &&
|
||||
grub-mkconfig -o /boot/grub/grub.cfg &&
|
||||
systemctl enable ${bluetooth} ${displaymanager} ${network} ${trim}
|
||||
systemctl enable ${bluetooth} ${displaymanager} ${network} ${trim} ${vm_services}
|
||||
GRUB
|
||||
|
||||
if [[ "${bootloader}" == "2" && "${fs}" == "2" ]]; then
|
||||
|
@ -4086,6 +4100,8 @@ NVIDIAGRUB
|
|||
|
||||
if [[ "${kernelnmbr}" == "1" ]] || [[ "${kernelnmbr}" == "2" && "${family}" == "1" ]] || [[ "${kernelnmbr}" == "2" && "${family}" == "2" && ${nvdriver} == "2" ]]; then
|
||||
arch-chroot /mnt <<-NVIDIAHOOK
|
||||
sed -i "s|#HookDir = /etc/pacman.d/hooks/|HookDir = /etc/pacman.d/hooks/|g" /etc/pacman.conf &&
|
||||
mkdir -p /etc/pacman.d/hooks/ &&
|
||||
echo "
|
||||
[Trigger]
|
||||
Operation=Install
|
||||
|
@ -4258,13 +4274,15 @@ NRG
|
|||
Defaults editor=/usr/bin/nano
|
||||
%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}
|
||||
systemctl enable avahi-daemon bluetooth cups ipp-usb NetworkManager rngd sddm systemd-boot-update ufw ${trim} ${vm_services}
|
||||
OPTIMIZED_CONF
|
||||
|
||||
if [[ "${vgaconf}" == "y" && "${vendor}" == "Nvidia" ]]; then
|
||||
|
||||
if [[ "${kernelnmbr}" == "1" ]] || [[ "${kernelnmbr}" == "2" && "${family}" == "1" ]] || [[ "${kernelnmbr}" == "2" && "${family}" == "2" && ${nvdriver} == "2" ]]; then
|
||||
arch-chroot /mnt <<-NVIDIAHOOK
|
||||
sed -i "s|#HookDir = /etc/pacman.d/hooks/|HookDir = /etc/pacman.d/hooks/|g" /etc/pacman.conf &&
|
||||
mkdir -p /etc/pacman.d/hooks/ &&
|
||||
echo "
|
||||
[Trigger]
|
||||
Operation=Install
|
||||
|
@ -4347,7 +4365,7 @@ SLICK
|
|||
initrd /${microcode}.img
|
||||
initrd /initramfs-${kernel}.img
|
||||
options rw ${boot_opts}" | tee /boot/loader/entries/arch.conf &&
|
||||
systemctl enable systemd-boot-update ${customservices} ${trim}
|
||||
systemctl enable systemd-boot-update ${customservices} ${trim} ${vm_services}
|
||||
BOOTCTL
|
||||
|
||||
elif [[ "${bootloader}" == "2" ]]; then
|
||||
|
@ -4360,9 +4378,9 @@ BOOTCTL
|
|||
grub-mkconfig -o /boot/grub/grub.cfg
|
||||
GRUB
|
||||
|
||||
if [[ -n "${customservices}" || -n "${trim}" ]]; then
|
||||
if [[ -n "${customservices}" || -n "${trim}" || -n "${vm_services}" ]]; then
|
||||
arch-chroot /mnt <<-SERVICES
|
||||
systemctl enable ${customservices} ${trim}
|
||||
systemctl enable ${customservices} ${trim} ${vm_services}
|
||||
SERVICES
|
||||
fi
|
||||
|
||||
|
@ -4384,6 +4402,8 @@ NVIDIAGRUB
|
|||
|
||||
if [[ "${kernelnmbr}" == "1" ]] || [[ "${kernelnmbr}" == "2" && "${family}" == "1" ]] || [[ "${kernelnmbr}" == "2" && "${family}" == "2" && ${nvdriver} == "2" ]]; then
|
||||
arch-chroot /mnt <<-NVIDIAHOOK
|
||||
sed -i "s|#HookDir = /etc/pacman.d/hooks/|HookDir = /etc/pacman.d/hooks/|g" /etc/pacman.conf &&
|
||||
mkdir -p /etc/pacman.d/hooks/ &&
|
||||
echo "
|
||||
[Trigger]
|
||||
Operation=Install
|
||||
|
@ -4442,6 +4462,8 @@ NVIDIAHOOK
|
|||
greeternmbr=""
|
||||
cust_bootopts=""
|
||||
bluetooth=""
|
||||
vmpkgs=""
|
||||
vm_services=""
|
||||
|
||||
clear
|
||||
first_check
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue