PublicFiles/Artian-Apps/apps/Doom 3/install

83 lines
2.9 KiB
Bash

#!/bin/bash
while true; do
read -p "Do you have the doom3 game files? The demo mode will be installed if you answer No. [Y/n]" yn
case $yn in
[Yy]* ) choice=User_Supplied; break;;
[Nn]* ) choice=Download_Demo; break;;
* ) echo "Please answer yes or no.";;
esac
done
# fix broken install due to @techcoder20
# Remove packages if necessary
pkgToRemoveListFull="sdl2-image sdl2-mixer sdl2-ttf"
pkgToRemoveList=""
for pkgToRemove in $(echo $pkgToRemoveListFull); do
$(dpkg --status $pkgToRemove &> /dev/null)
if [[ $? -eq 0 ]]; then
pkgToRemoveList="$pkgToRemoveList $pkgToRemove"
fi
done
if [[ ! -z "$pkgToRemoveList" ]]; then
sudo apt-get --yes --purge remove $pkgToRemoveList || error "Could not remove packages"
fi
#Installing dependencies
install_packages libfontconfig-dev automake libtool libfreeimage-dev \
libopenal-dev libpango1.0-dev libsndfile-dev libudev-dev libtiff5-dev libwebp-dev libasound2-dev \
libxrandr-dev libxcursor-dev libxi-dev libxinerama-dev libxss-dev \
freeglut3-dev libvorbisfile3 libcurl4 cmake build-essential \
libsdl2-ttf-dev libsdl2-dev libsdl2-mixer-dev || error "Failed to install dependencies"
cd /tmp
git_clone https://github.com/dhewm/dhewm3 || error "Failed to clone dhewm3 from github" #Cloning dhewm3 repository
cd dhewm3/neo || exit
mkdir build || error "Failed to create build folder"
cd build || exit
cmake .. -DONATIVE=ON || error "Failed to build dhewm3"
make -j$(nproc) || error "Failed to build dhewm3"
Download_Demo () {
cd ~
rm -f Doom3DemoGameFiles.zip
wget https://github.com/techcoder20/RPIDoom3Installer/releases/download/v1.0.0/Doom3DemoGameFiles.zip || error "Failed to download game files"
unzip Doom3DemoGameFiles.zip || error "Failed to extract game files"
rm -f Doom3DemoGameFiles.zip
cd /tmp/dhewm3/neo/build || error "Could not move to dhewm3 directory"
cp base.so d3xp.so dhewm3 libidlib.a ~/Doom3Demo || error "Failed to copy necessary files to Doom3Demo Folder"
echo "[Desktop Entry]
Version=1.0
Type=Application
Name=Doom3Demo
Path=$HOME/Doom3Demo
Icon=${DIRECTORY}/apps/Doom 3/icon-64.png
Exec=$HOME/Doom3Demo/dhewm3
Categories=Game;
Terminal=false" | tee $HOME/.local/share/applications/Doom3Demo.desktop >/dev/null || error "Failed to create menu button!"
}
User_Supplied () {
mkdir -p ~/Doom3GameFiles || error "Failed to create Doom3GameFiles Folder"
warning "YOU MUST place the game files in ~/Doom3GameFiles for the game to work"
sleep 5
cd /tmp/dhewm3/neo/build || error "Could not move to dhewm3 directory"
cp base.so d3xp.so dhewm3 libidlib.a ~/Doom3GameFiles || error "Failed to copy necessary files to Doom3GameFile Folder"
echo "[Desktop Entry]
Version=1.0
Type=Application
Name=Doom3
Path=$HOME/Doom3GameFiles
Icon=${DIRECTORY}/apps/Doom 3/icon-64.png
Exec=$HOME/Doom3GameFiles/dhewm3
Categories=Game;
Terminal=false" | tee $HOME/.local/share/applications/Doom3.desktop >/dev/null || error "Failed to create menu button!"
}
$choice
rm -rf /tmp/dhewm3