| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105 |
- #!/bin/bash
- # LGSM fn_glibcfix function
- # Author: Daniel Gibbs
- # Website: http://danielgibbs.co.uk
- # Version: 121114
- fn_glibcfixmsg(){
- echo "Detected ${gamename}"
- sleep 1
- echo ""
- }
- if [ "${gamename}" == "Insurgency" ]||[ "${gamename}" == "Garrys's Mod" ]||[ "${gamename}" == "Natural Selection 2" ]||[ "${gamename}" == "No More Room in Hell" ]||[ "${gamename}" == "Blade Symphony" ]||[ "${gamename}" == "Fistful of Frags" ]||[ "${gamename}" == "ARMA 3" ]; then
- if [ -z $(command -v ldd) ]; then
- echo ""
- echo -e "\r\033[K\e[0;31mFAIL\e[0;39m GLIBC is not detected."
- sleep 1
- echo "Install GLIBC and retry installation"
- sleep 1
- echo ""
- while true; do
- read -p "Continue install? [y/N]" yn
- case $yn in
- [Yy]* ) break;;
- [Nn]* ) echo Exiting; exit;;
- * ) echo "Please answer yes or no.";;
- esac
- done
- elif [ "$(ldd --version | sed -n '1 p' | tr -cd [:digit:] | tail -c 3)" -lt 215 ]; then
- echo "GLIBC Fix required"
- echo "============================"
- sleep 1
- echo -e "\e[0;31mWARNING!\e[0;39m ${gamename} requires GLIBC_2.15 or above"
- sleep 1
- echo ""
- echo "Currently installed: GLIBC_$(ldd --version |grep ldd|awk '{print $NF}')"
- echo "Required: => GLIBC_2.15"
- echo ""
- sleep 1
- echo "The installer will now detect and download the required files to allow ${gamename} server to run on a distro with GLIBC_2.14 or less."
- echo "note: This will NOT upgrade GLIBC on your system"
- sleep 1
- echo ""
- echo "Downloading Required files"
- echo "================================="
- sleep 1
- if [ "${gamename}" == "Insurgency" ]; then
- fn_glibcfixmsg
- cd "${filesdir}/bin"
- wget -nv -N https://github.com/dgibbs64/linuxgameservers/raw/master/Insurgency/dependencies/libc.so.6
- wget -nv -N https://github.com/dgibbs64/linuxgameservers/raw/master/Insurgency/dependencies/librt.so.1
- wget -nv -N https://github.com/dgibbs64/linuxgameservers/raw/master/Insurgency/dependencies/libpthread.so.0
- sleep 1
- elif [ "${gamename}" == "Garrys's Mod" ]; then
- fn_glibcfixmsg
- cd "${filesdir}/bin"
- wget -nv -N https://github.com/dgibbs64/linuxgameservers/raw/master/GarrysMod/dependencies/libc.so.6
- wget -nv -N https://github.com/dgibbs64/linuxgameservers/raw/master/GarrysMod/dependencies/libm.so.6
- wget -nv -N https://github.com/dgibbs64/linuxgameservers/raw/master/GarrysMod/dependencies/libpthread.so.0
- cp -v "${rootdir}/steamcmd/linux32/libstdc++.so.6" "${filesdir}/libstdc++.so.6"
- sleep 1
- echo ""
- elif [ "${gamename}" == "Natural Selection 2" ]; then
- fn_glibcfixmsg
- cd "${filesdir}"
- wget -nv -N https://github.com/dgibbs64/linuxgameservers/raw/master/NaturalSelection2/dependencies/libm.so.6
- cp -v "${rootdir}/steamcmd/linux32/libstdc++.so.6" "${filesdir}/libstdc++.so.6"
- sleep 1
- echo ""
- elif [ "${gamename}" == "No More Room in Hell" ]; then
- fn_glibcfixmsg
- cd "${filesdir}"
- wget -nv -N https://github.com/dgibbs64/linuxgameservers/raw/master/NoMoreRoomInHell/dependencies/libm.so.6
- cp -v "${rootdir}/steamcmd/linux32/libstdc++.so.6" "${filesdir}/libstdc++.so.6"
- sleep 1
- echo ""
- elif [ "${gamename}" == "Blade Symphony" ]; then
- fn_glibcfixmsg
- cp -v "${rootdir}/steamcmd/linux32/libstdc++.so.6" "${filesdir}/libstdc++.so.6"
- sleep 1
- echo ""
- elif [ "${gamename}" == "Fistful of Frags" ]; then
- echo "Detected ${gamename}"
- sleep 1
- echo "Downloading files for ${gamename} GLIBC Fix"
- sleep 1
- cd "${filesdir}"
- wget -nv -N https://github.com/dgibbs64/linuxgameservers/raw/master/FistfulOfFrags/dependencies/libm.so.6
- sleep 1
- echo ""
- elif [ "${gamename}" == "ARMA 3" ]; then
- fn_glibcfixmsg
- cp -v "${rootdir}/steamcmd/linux32/libstdc++.so.6" "${filesdir}/libstdc++.so.6"
- sleep 1
- echo ""
- else
- echo "error: Unable to detect game. Fix not applied"
- fi
- echo "GLIBC fix has been applied!"
- sleep 1
- echo ""
- fi
- else
- sleep 0.1
- fi
|