RaveOS-KDE/releng/airootfs/usr/local/bin/virtual-machine-check
2025-03-19 22:27:35 +01:00

188 lines
5.5 KiB
Bash
Executable file

#!/bin/bash
#set -e
# Base scripts Author : Erik Dubois
# Website : https://www.erikdubois.be
# Website : https://www.arcolinux.info
# Website : https://www.arcolinux.com
# Website : https://www.arcolinuxd.com
# Website : https://www.arcolinuxb.com
# Website : https://www.arcolinuxiso.com
# Website : https://www.arcolinuxforum.com
echo "###########################################"
echo "Start virtual machine check"
echo "###########################################"
result=$(systemd-detect-virt)
pacman -Sy
while [ -e "/var/lib/pacman/db.lck" ];
do
echo 'Pacman is not ready yet. Will try again in 5 seconds.'
seconds=$(($seconds + 5))
sleep 5
if [[ "$seconds" == "30" ]]; then
echo 'Warning: removing pacman db.lck!'
rm /var/lib/pacman/db.lck
fi
done
echo "You are working on "$result
if [ $result = "oracle" ];
then
#remove vmware
if [ -f /etc/xdg/autostart/vmware-user.desktop ]; then
rm /etc/xdg/autostart/vmware-user.desktop
echo "Removed vmware-user.desktop"
fi
if pacman -Qi open-vm-tools &> /dev/null; then
systemctl disable vmware-vmblock-fuse.service
systemctl disable vmtoolsd.service
echo "Disabled vmtoolsd.service"
pacman -Rns open-vm-tools --noconfirm
echo "Removed open-vm-tools"
fi
if pacman -Qi xf86-video-vmware &> /dev/null; then
pacman -Rns xf86-video-vmware --noconfirm
echo "Removed xf86-video-vmware"
fi
if [ -f /etc/systemd/system/multi-user.target.wants/vmtoolsd.service ]; then
rm /etc/systemd/system/multi-user.target.wants/vmtoolsd.service
echo "Removed vmtoolsd.service if still exists"
fi
#remove qemu
if pacman -Qi qemu-guest-agent &> /dev/null; then
systemctl disable qemu-guest-agent.service
pacman -Rns qemu-guest-agent --noconfirm
echo "Removed qemu-guest-agent"
fi
fi
if [ $result = "kvm" ];
then
#remove vmware
if [ -f /etc/xdg/autostart/vmware-user.desktop ]; then
rm /etc/xdg/autostart/vmware-user.desktop
echo "Removed vmware-user.desktop"
fi
if pacman -Qi open-vm-tools &> /dev/null; then
systemctl disable vmware-vmblock-fuse.service
systemctl disable vmtoolsd.service
echo "Disabled vmtoolsd.service"
pacman -Rns open-vm-tools --noconfirm
echo "Removed open-vm-tools"
fi
if pacman -Qi xf86-video-vmware &> /dev/null; then
pacman -Rns xf86-video-vmware --noconfirm
echo "Removed xf86-video-vmware"
fi
if [ -f /etc/systemd/system/multi-user.target.wants/vmtoolsd.service ]; then
rm /etc/systemd/system/multi-user.target.wants/vmtoolsd.service
echo "Removed vmtoolsd.service if still exists"
fi
#remove virtualbox
if pacman -Qi virtualbox-guest-utils &> /dev/null; then
systemctl disable vboxservice.service
pacman -Rns virtualbox-guest-utils --noconfirm
echo "Removed virtualbox-guest-utils"
fi
if pacman -Qi virtualbox-guest-utils-nox &> /dev/null; then
systemctl disable vboxservice.service
pacman -Rns virtualbox-guest-utils-nox --noconfirm
echo "Removed virtualbox-guest-utils-nox"
fi
fi
if [ $result = "vmware" ];
then
#remove virtualbox
if pacman -Qi virtualbox-guest-utils &> /dev/null; then
systemctl disable vboxservice.service
pacman -Rns virtualbox-guest-utils --noconfirm
echo "Removed virtualbox-guest-utils"
fi
if pacman -Qi virtualbox-guest-utils-nox &> /dev/null; then
systemctl disable vboxservice.service
pacman -Rns virtualbox-guest-utils-nox --noconfirm
echo "Removed virtualbox-guest-utils-nox"
fi
#remove qemu
if pacman -Qi qemu-guest-agent &> /dev/null; then
systemctl disable qemu-guest-agent.service
pacman -Rns qemu-guest-agent --noconfirm
echo "Removed qemu-guest-agent"
fi
fi
if [ $result = "none" ];
then
#remove virtualbox
if pacman -Qi virtualbox-guest-utils &> /dev/null; then
systemctl disable vboxservice.service
pacman -Rns virtualbox-guest-utils --noconfirm
echo "Removed virtualbox-guest-utils"
fi
if pacman -Qi virtualbox-guest-utils-nox &> /dev/null; then
systemctl disable vboxservice.service
pacman -Rns virtualbox-guest-utils-nox --noconfirm
echo "Removed virtualbox-guest-utils-nox"
fi
#remove vmware
if [ -f /etc/xdg/autostart/vmware-user.desktop ]; then
rm /etc/xdg/autostart/vmware-user.desktop
echo "Removed vmware-user.desktop"
fi
if pacman -Qi open-vm-tools &> /dev/null; then
systemctl disable vmware-vmblock-fuse.service
systemctl disable vmtoolsd.service
echo "Disabled vmtoolsd.service"
pacman -Rns open-vm-tools --noconfirm
echo "Removed open-vm-tools"
fi
if pacman -Qi xf86-video-vmware &> /dev/null; then
pacman -Rns xf86-video-vmware --noconfirm
echo "Removed xf86-video-vmware"
fi
if [ -f /etc/systemd/system/multi-user.target.wants/vmtoolsd.service ]; then
rm /etc/systemd/system/multi-user.target.wants/vmtoolsd.service
echo "Removed vmtoolsd.service if still exists"
fi
#remove qemu
if pacman -Qi qemu-guest-agent &> /dev/null; then
systemctl disable qemu-guest-agent.service
pacman -Rns qemu-guest-agent --noconfirm
echo "Removed qemu-guest-agent"
fi
if [ -f /usr/local/bin/arcolinux-virtual-machine-check ]; then
rm /usr/local/bin/arcolinux-virtual-machine-check
echo "Removed avm-check script"
fi
if [ -L /etc/systemd/system/multi-user.target.wants/virtual-machine-check.service ]; then
rm /etc/systemd/system/multi-user.target.wants/virtual-machine-check.service
echo "Removed avm-check script"
fi
fi
echo "########################################"
echo "End virtual machine check"
echo "########################################"