Browse Source

Added Linux Installer

devn00b 3 years ago
parent
commit
8a055b4d49
1 changed files with 231 additions and 0 deletions
  1. 231 0
      eq2emu-linux-install.sh

+ 231 - 0
eq2emu-linux-install.sh

@@ -0,0 +1,231 @@
+#/bin/bash
+devn=$(cat /etc/os-release | grep "PRETTY_NAME" | sed 's/PRETTY_NAME=//g' | sed 's/["]//g' | awk '{print $1}')
+RED='\033[0;31m'
+NC='\033[0m'
+YELLOW='\033[1;33m'
+
+if [ $devn = "CentOS" ]
+then
+    echo "CentOS is not currently supported";
+fi
+
+if [ $devn = "Ubuntu" ]
+then
+yes | apt install git make automake mariadb-server libsdl2-dev libmariadb-dev libboost-dev libboost-all-dev libreadline-dev cmake build-essential screen
+mkdir /home/eq2emu
+cd /home/eq2emu
+wget --quiet --no-check-certificate -O start_eq2emu.sh https://www.zeklabs.com/dl/start_eq2emu.sh
+chmod +x start_eq2emu.sh
+echo "[ Working dir (/home/eq2emu) created and Startup Script Downloaded ]"
+git clone http://cutpon.com:3000/devn00b/EQ2EMu.git
+cp -r /home/eq2emu/EQ2EMu/server /home/eq2emu
+cd EQ2EMu/EQ2/source/depends/recastnavigation/RecastDemo
+mkdir t
+cd t
+wget https://github.com/premake/premake-core/releases/download/v5.0.0-alpha15/premake-5.0.0-alpha15-linux.tar.gz
+tar xvfz premake-5.0.0-alpha15-linux.tar.gz
+mv premake5 ..
+cd ..
+rm -rf t
+chmod +x premake5
+./premake5 gmake
+cd Build/gmake
+make -j$(nproc)
+cp lib/Debug/*.a /usr/lib
+cd ../../../..
+git clone https://github.com/fmtlib/fmt.git
+cd ../../../
+mkdir Linux
+cd EQ2/source/depends/fmt/include
+cp -R fmt /home/eq2emu/EQ2EMu/EQ2/source/common
+cd /home/eq2emu/EQ2EMu/EQ2/source/WorldServer
+make -j$(nproc)
+cp eq2world /home/eq2emu/server
+cd /home/eq2emu/EQ2EMu/EQ2/source/LoginServer
+make -j$(nproc)
+cp login /home/eq2emu/server
+cd /home/eq2emu/server
+echo " "
+echo " "
+echo -e "${RED}Install Complete, Follow the instructions below, unless you already have mysql setup${NC}"
+fi
+
+if [ $devn = "Debian" ]
+then
+yes | apt install git make automake mariadb-server libsdl2-dev libmariadb-dev libboost-dev libboost-all-dev libreadline-dev cmake build-essential screen
+mkdir /home/eq2emu
+cd /home/eq2emu
+wget --quiet --no-check-certificate -O start_eq2emu.sh https://www.zeklabs.com/dl/start_eq2emu.sh
+chmod +x start_eq2emu.sh
+echo "[ Working dir (/home/eq2emu) created and Startup Script Downloaded ]"
+git clone http://cutpon.com:3000/devn00b/EQ2EMu.git 
+cp -r /home/eq2emu/EQ2EMu/server /home/eq2emu
+cd EQ2EMu/EQ2/source/depends/recastnavigation/RecastDemo
+mkdir t
+cd t
+wget https://github.com/premake/premake-core/releases/download/v5.0.0-alpha15/premake-5.0.0-alpha15-linux.tar.gz
+tar xvfz premake-5.0.0-alpha15-linux.tar.gz
+mv premake5 ..
+cd ..
+rm -rf t
+chmod +x premake5
+./premake5 gmake
+cd Build/gmake
+make -j$(nproc)
+cp lib/Debug/*.a /usr/lib
+cd ../../../..
+git clone https://github.com/fmtlib/fmt.git
+cd ../../../
+mkdir Linux
+cd EQ2/source/depends/fmt/include
+cp -R fmt /home/eq2emu/EQ2EMu/EQ2/source/common
+cd /home/eq2emu/EQ2EMu/EQ2/source/WorldServer
+make -j$(nproc)
+cp eq2world /home/eq2emu/server
+cd /home/eq2emu/EQ2EMu/EQ2/source/LoginServer
+make -j$(nproc)
+cp login /home/eq2emu/server
+cd /home/eq2emu/server
+echo " "
+echo " "
+echo -e "${RED}Install Complete, Follow the instructions below, unless you already have mysql setup${NC}"
+fi
+
+if [ $devn = "Fedora" ]
+then
+yes | dnf install git make automake mariadb mariadb-server SDL2 SDL2-devel mesa-libGLU-devel boost boost-devel readline-devel mariadb-devel cmake make automake gcc gcc-c++ kernel-devel screen
+mkdir /home/eq2emu
+cd /home/eq2emu
+wget --quiet --no-check-certificate -O start_eq2emu.sh https://www.zeklabs.com/dl/start_eq2emu.sh
+chmod +x start_eq2emu.sh
+echo "[ Working dir (/home/eq2emu) created and Startup Script Downloaded ]"
+git clone http://cutpon.com:3000/devn00b/EQ2EMu.git
+cp -r /home/eq2emu/EQ2EMu/server /home/eq2emu
+cd EQ2EMu/EQ2/source/depends/recastnavigation/RecastDemo
+mkdir t
+cd t
+wget https://github.com/premake/premake-core/releases/download/v5.0.0-alpha15/premake-5.0.0-alpha15-linux.tar.gz
+tar xvfz premake-5.0.0-alpha15-linux.tar.gz
+mv premake5 ..
+cd ..
+rm -rf t
+chmod +x premake5
+./premake5 gmake
+cd Build/gmake
+make -j$(nproc)
+cp lib/Debug/*.a /usr/lib
+cd ../../../..
+git clone https://github.com/fmtlib/fmt.git
+cd ../../../
+mkdir Linux
+cd EQ2/source/depends/fmt/include
+cp -R fmt /home/eq2emu/EQ2EMu/EQ2/source/common
+cd /home/eq2emu/EQ2EMu/EQ2/source/WorldServer
+make -j$(nproc)
+cp eq2world /home/eq2emu/server
+cd /home/eq2emu/EQ2EMu/EQ2/source/LoginServer
+make -j$(nproc)
+cp login /home/eq2emu/server
+cd /home/eq2emu/server
+echo " "
+echo " "
+echo -e "${RED}Install Complete, Follow the instructions below, unless you already have mysql setup${NC}"
+fi
+
+if [ $devn = "Manjaro" ]
+then
+pacman -S git make automake mariadb sdl2 boost-libs boost readline cmake base-devel screen
+mkdir /home/eq2emu
+cd /home/eq2emu
+wget --quiet --no-check-certificate -O start_eq2emu.sh https://www.zeklabs.com/dl/start_eq2emu.sh
+chmod +x start_eq2emu.sh
+echo "[ Working dir (/home/eq2emu) created and Startup Script Downloaded ]"
+
+git clone http://cutpon.com:3000/devn00b/EQ2EMu.git 
+cp -r /home/eq2emu/EQ2EMu/server /home/eq2emu
+cd EQ2EMu/EQ2/source/depends/recastnavigation/RecastDemo
+mkdir t
+cd t
+wget https://github.com/premake/premake-core/releases/download/v5.0.0-alpha15/premake-5.0.0-alpha15-linux.tar.gz
+tar xvfz premake-5.0.0-alpha15-linux.tar.gz
+mv premake5 ..
+cd ..
+rm -rf t
+chmod +x premake5
+./premake5 gmake
+cd Build/gmake
+make -j$(nproc)
+cp lib/Debug/*.a /usr/lib
+cd ../../../..
+git clone https://github.com/fmtlib/fmt.git
+cd ../../../
+mkdir Linux
+cd EQ2/source/depends/fmt/include
+cp -R fmt /home/eq2emu/EQ2EMu/EQ2/source/common
+cd /home/eq2emu/EQ2EMu/EQ2/source/WorldServer
+make -j$(nproc)
+cp eq2world /home/eq2emu/server
+cd /home/eq2emu/EQ2EMu/EQ2/source/LoginServer
+make -j$(nproc)
+cp login /home/eq2emu/server
+cd /home/eq2emu/server
+echo " "
+echo " "
+echo -e "${RED}Install Complete, Follow the instructions below, unless you already have mysql setup${NC}"
+fi
+
+if [ $devn = "Arch Linux" ]
+then
+pacman -S git make automake mariadb sdl2 boost-libs boost readline cmake base-devel screen
+mkdir /home/eq2emu
+cd /home/eq2emu
+wget --quiet --no-check-certificate -O start_eq2emu.sh https://www.zeklabs.com/dl/start_eq2emu.sh
+chmod +x start_eq2emu.sh
+echo "[ Working dir (/home/eq2emu) created and Startup Script Downloaded ]"
+
+git clone http://cutpon.com:3000/devn00b/EQ2EMu.git
+cp -r /home/eq2emu/EQ2EMu/server /home/eq2emu
+cd EQ2EMu/EQ2/source/depends/recastnavigation/RecastDemo
+mkdir t
+cd t
+wget https://github.com/premake/premake-core/releases/download/v5.0.0-alpha15/premake-5.0.0-alpha15-linux.tar.gz
+tar xvfz premake-5.0.0-alpha15-linux.tar.gz
+mv premake5 ..
+cd ..
+rm -rf t
+chmod +x premake5
+./premake5 gmake
+cd Build/gmake
+make -j$(nproc)
+cp lib/Debug/*.a /usr/lib
+cd ../../../..
+git clone https://github.com/fmtlib/fmt.git
+cd ../../../
+mkdir Linux
+cd EQ2/source/depends/fmt/include
+cp -R fmt /home/eq2emu/EQ2EMu/EQ2/source/common
+cd /home/eq2emu/EQ2EMu/EQ2/source/WorldServer
+make -j$(nproc)
+cp eq2world /home/eq2emu/server
+cd /home/eq2emu/EQ2EMu/EQ2/source/LoginServer
+make -j$(nproc)
+cp login /home/eq2emu/server
+cd /home/eq2emu/server
+echo " "
+echo " "
+echo -e "${RED}Install Complete, Follow the instructions below, unless you already have mysql setup${NC}"
+fi
+
+    echo " "
+    echo " "
+    echo -e "${YELLOW} Please be sure to create a mysql user with password, and empty database before continuing. "
+    echo " "
+    echo " The command to create a user from inside mysql is: "
+    echo " grant all on *.* to YOURUSERNAMEHERE@'%' identified by 'YOURPASSWORDHERE'; "
+    echo " Replace YOURUSERNAMEHERE and YOURPASSWORD here with your username/password "
+    echo " "
+    echo " then create a database using the following commnad: "
+    echo " create database DATABASENAME; "
+    echo -e " Once that is done you are then ready to run the startup script (/home/eq2emu/start_eq2emu.sh)${NC}"
+
+