mirror of
https://github.com/mon5termatt/medicat_installer
synced 2024-11-17 09:25:30 +00:00
49f96c5db7
adding some pause for user to plug in usb because people are slow
109 lines
3.4 KiB
Bash
109 lines
3.4 KiB
Bash
#!/bin/bash
|
|
echo -e "WELCOME TO THE MEDICAT INSTALLER, PLEASE DO NOT RUN THIS AS ROOT\nThis Installer will attempt to Install Ventoy and Medicat\nTHIS IS IN BETA. PLEASE CONTACT MATT IN THE DISCORD FOR ALL ISSUES"
|
|
echo "Updated for efficiency and cross-distro use by SkeletonMan"
|
|
echo "Waiting for 10 seconds"
|
|
sleep 10
|
|
if grep -qs "ubuntu" /etc/os-release; then
|
|
os="ubuntu"
|
|
pkgmgr="apt"
|
|
elif grep -qs "freebsd" /etc/os-release; then
|
|
os="freebsd"
|
|
pkgmgr="pkg"
|
|
elif [[ -e /etc/debian_version ]]; then
|
|
os="debian"
|
|
pkgmgr="apt"
|
|
elif [[ -e /etc/almalinux-release || -e /etc/rocky-release || -e /etc/centos-release ]]; then
|
|
os="centos"
|
|
pkgmgr="yum"
|
|
elif [[ -e /etc/fedora-release ]]; then
|
|
os="fedora"
|
|
pkgmgr="yum"
|
|
fi
|
|
echo "Acquiring any dependencies"
|
|
sudo $pkgmgr update
|
|
if ! [ $(which aria2c 2>/dev/null) ]; then
|
|
sudo $pkgmgr install aria2
|
|
fi
|
|
if ! [ $(which wget 2>/dev/null) ]; then
|
|
sudo $pkgmgr install wget
|
|
fi
|
|
if ! [ $(which 7z 2>/dev/null) ]; then
|
|
sudo $pkgmgr install p7zip-full
|
|
fi
|
|
if ! [ $(sudo which mkntfs 2>/dev/null) ]; then
|
|
sudo $pkgmgr install ntfs-3g
|
|
fi
|
|
echo "Downloading Ventoy"
|
|
wget "https://api.github.com/repos/ventoy/Ventoy/releases/latest"
|
|
cat latest | grep '"tag_name":' | sed -E 's/.*"([^"]+)".*/\1/' >> version
|
|
venver=$(cat version)
|
|
rm version
|
|
rm latest
|
|
echo -e "Attempting to download Ventoy Version: ${venver: -6}\n\n\n"
|
|
wget https://github.com/ventoy/Ventoy/releases/download/v${venver: -6}/ventoy-${venver: -6}-linux.tar.gz -O ventoy.tar.gz
|
|
tar -xf ventoy.tar.gz
|
|
rm ventoy.tar.gz
|
|
mv ventoy-${venver: -6} ventoy
|
|
echo -e "\n\n\n\n\n\n"
|
|
if [[ -f MediCat.USB.v21.12.7z ]]; then
|
|
location='MediCat.USB.v21.12.7z'
|
|
fi
|
|
if ! [[ -f MediCat.USB.v21.12.7z ]]; then
|
|
if [[ -f MediCat\ USB\ v21.12/MediCat.USB.v21.12.7z ]]; then
|
|
location=''MediCat\ USB\ v21.12/MediCat.USB.v21.12.7z''
|
|
else
|
|
echo "Please enter location of MediCat.USB.v21.12.7z if it exists or just press enter"
|
|
read location
|
|
fi
|
|
if [ -z "$location" ] ; then
|
|
echo "Starting to download torrent"
|
|
wget https://cdn.medicatusb.com/files/install/download/MediCat_USB_v21.12.torrent -O medicat.torrent
|
|
aria2c --file-allocation=none --seed-time=0 medicat.torrent
|
|
location=''MediCat\ USB\ v21.12/MediCat.USB.v21.12.7z''
|
|
fi
|
|
fi
|
|
echo -e "\n\n\n"
|
|
echo "Please Plug your USB in now if it is not already"
|
|
echo "Waiting 15 seconds..."
|
|
sleep 15
|
|
echo "Please Find the ID of your USB below"
|
|
echo -e "\n\n"
|
|
lsblk | awk '{print $1,$4}'
|
|
echo "Enter the Letter of the USB drive below NOT INCLUDING /dev/ OR the Number After"
|
|
echo "for example enter sda or sdb"
|
|
read letter
|
|
drive=/dev/$letter
|
|
drive2="$drive""1"
|
|
echo "You want to install Ventoy and Medicat to $drive / $drive2?"
|
|
echo "Please enter Y or N"
|
|
read checkingconfirm
|
|
if [ $checkingconfirm = "N" ]; then
|
|
exit
|
|
elif [ $checkingconfirm = "Y" ]; then
|
|
echo "Okay! Will continue in 5 seconds!"
|
|
sleep 5
|
|
else
|
|
echo "The only valid options are Y or N"
|
|
exit
|
|
fi
|
|
|
|
sudo sh ./ventoy/Ventoy2Disk.sh -I $drive
|
|
umount $drive
|
|
sudo mkntfs --fast --label Medicat $drive2
|
|
if ! [[ -d MedicatUSB/ ]] ; then
|
|
mkdir MedicatUSB
|
|
fi
|
|
sudo mount $drive2 ./MedicatUSB
|
|
7z x -O./MedicatUSB "$location"
|
|
echo "MedicatUSB has been created!"
|
|
echo "Would you like to unmount ./MedicatUSB? (Y/N)"
|
|
read unmountcheck
|
|
if [ $unmountcheck = "Y" ]; then
|
|
echo "MedicatUSB will be unmounted!"
|
|
sudo umount ./MedicatUSB
|
|
elif [ $unmountcheck = "N" ]; then
|
|
echo "MedicatUSB will not be unmounted!"
|
|
else
|
|
"The only valid options are Y or N"
|
|
fi
|