info_glibc.sh 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212
  1. #!/bin/bash
  2. # LinuxGSM info_glibc.sh function
  3. # Author: Daniel Gibbs
  4. # Website: https://linuxgsm.com
  5. # Description: Stores details on servers Glibc requirements.
  6. local function_selfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")"
  7. if [ "${gamename}" == "ARK: Survival Evolved" ]; then
  8. glibcrequired="2.15"
  9. glibcfix="no"
  10. elif [ "${gamename}" == "Ballistic Overkill" ]; then
  11. glibcrequired="2.15"
  12. glibcfix="yes"
  13. elif [ "${gamename}" == "Battalion 1944" ]; then
  14. glibcrequired="2.17"
  15. glibcfix="no"
  16. elif [ "${gamename}" == "Base Defense" ]; then
  17. glibcrequired="2.14"
  18. glibcfix="no"
  19. elif [ "${gamename}" == "Black Mesa: Deathmatch" ]; then
  20. glibcrequired="2.15"
  21. glibcfix="yes"
  22. elif [ "${gamename}" == "Blade Symphony" ]; then
  23. glibcrequired="2.15"
  24. glibcfix="yes"
  25. elif [ "${gamename}" == "BrainBread 2" ]; then
  26. glibcrequired="2.17"
  27. glibcfix="no"
  28. elif [ "${gamename}" == "Call of Duty" ]; then
  29. glibcrequired="2.1"
  30. glibcfix="no"
  31. elif [ "${gamename}" == "Call of Duty 2" ]; then
  32. glibcrequired="2.1.3"
  33. glibcfix="no"
  34. elif [ "${gamename}" == "Call of Duty: United Offensive" ]; then
  35. glibcrequired="2.1"
  36. glibcfix="no"
  37. elif [ "${gamename}" == "Call of Duty 4" ]; then
  38. glibcrequired="2.3"
  39. glibcfix="no"
  40. elif [ "${gamename}" == "Call of Duty: World at War" ]; then
  41. glibcrequired="2.3.2"
  42. glibcfix="no"
  43. elif [ "${gamename}" == "Codename CURE" ]; then
  44. glibcrequired="2.15"
  45. glibcfix="yes"
  46. elif [ "${gamename}" == "Counter-Strike: Global Offensive" ]; then
  47. glibcrequired="2.15"
  48. glibcfix="yes"
  49. elif [ "${gamename}" == "Day of Infamy" ]; then
  50. glibcrequired="2.15"
  51. glibcfix="yes"
  52. elif [ "${gamename}" == "Double Action: Boogaloo" ]; then
  53. glibcrequired="2.15"
  54. glibcfix="yes"
  55. elif [ "${gamename}" == "Eco" ]; then
  56. glibcrequired="NOT REQUIRED"
  57. glibcfix="no"
  58. elif [ "${gamename}" == "Empires Mod" ]; then
  59. glibcrequired="2.15"
  60. glibcfix="yes"
  61. elif [ "${gamename}" == "Factorio" ]; then
  62. glibcrequired="2.18"
  63. glibcfix="yes"
  64. elif [ "${gamename}" == "Fistful of Frags" ]; then
  65. glibcrequired="2.15"
  66. glibcfix="yes"
  67. elif [ "${gamename}" == "Garry's Mod" ]; then
  68. glibcrequired="2.15"
  69. glibcfix="yes"
  70. elif [ "${gamename}" == "GoldenEye: Source" ]; then
  71. glibcrequired="2.15"
  72. glibcfix="yes"
  73. elif [ "${gamename}" == "Insurgency" ]; then
  74. glibcrequired="2.15"
  75. glibcfix="yes"
  76. elif [ "${shortname}" == "kf2" ]; then
  77. glibcrequired="2.17"
  78. glibcfix="no"
  79. elif [ "${gamename}" == "Mumble" ]; then
  80. glibcrequired="NOT REQUIRED"
  81. glibcfix="no"
  82. elif [ "${gamename}" == "No More Room in Hell" ]; then
  83. glibcrequired="2.15"
  84. glibcfix="yes"
  85. elif [ "${gamename}" == "Project Cars" ]; then
  86. glibcrequired="2.4"
  87. glibcfix="no"
  88. elif [ "${gamename}" == "Pirates, Vikings, and Knights II" ]; then
  89. glibcrequired="2.15"
  90. glibcfix="yes"
  91. elif [ "${gamename}" == "Quake 2" ]; then
  92. glibcrequired="NOT REQUIRED"
  93. glibcfix="no"
  94. elif [ "${gamename}" == "Quake 3: Arena" ]; then
  95. glibcrequired="2.1"
  96. glibcfix="no"
  97. elif [ "${gamename}" == "Quake Live" ]; then
  98. glibcrequired="2.15"
  99. glibcfix="no"
  100. elif [ "${shortname}" == "rw" ]; then
  101. glibcrequired="2.14"
  102. glibcfix="no"
  103. elif [ "${gamename}" == "San Andreas Multiplayer" ]; then
  104. glibcrequired="2.3"
  105. glibcfix="no"
  106. elif [ "${gamename}" == "Squad" ]; then
  107. glibcrequired="2.17"
  108. glibcfix="no"
  109. elif [ "${gamename}" == "Sven Co-op" ]; then
  110. glibcrequired="2.18"
  111. glibcfix="no"
  112. elif [ "${gamename}" == "Team Fortress 2" ]; then
  113. glibcrequired="2.15"
  114. glibcfix="yes"
  115. elif [ "${gamename}" == "TeamSpeak 3" ]; then
  116. glibcrequired="NOT REQUIRED"
  117. glibcfix="no"
  118. elif [ "${gamename}" == "Teeworlds" ]; then
  119. glibcrequired="2.14"
  120. glibcfix="no"
  121. elif [ "${gamename}" == "Just Cause 2" ]; then
  122. glibcrequired="2.13"
  123. glibcfix="yes"
  124. elif [ "${gamename}" == "Just Cause 3" ]; then
  125. glibcrequired="2.17"
  126. glibcfix="no"
  127. elif [ "${engine}" == "dontstarve" ]; then
  128. glibcrequired="2.15"
  129. glibcfix="no"
  130. elif [ "${engine}" == "lwjgl2" ]; then
  131. glibcrequired="NOT REQUIRED"
  132. glibcfix="no"
  133. elif [ "${engine}" == "projectzomboid" ]; then
  134. glibcrequired="2.15"
  135. glibcfix="no"
  136. elif [ "${engine}" == "realvirtuality" ]; then
  137. glibcrequired="2.13"
  138. glibcfix="yes"
  139. elif [ "${engine}" == "seriousengine35" ]; then
  140. glibcrequired="2.13"
  141. glibcfix="yes"
  142. elif [ "${engine}" == "source" ]; then
  143. glibcrequired="2.3.6"
  144. glibcfix="no"
  145. elif [ "${engine}" == "goldsource" ]; then
  146. glibcrequired="2.3.4"
  147. glibcfix="no"
  148. elif [ "${gamename}" == "Natural Selection 2" ]; then
  149. glibcrequired="2.17"
  150. glibcfix="no"
  151. elif [ "${gamename}" == "NS2: Combat" ]; then
  152. glibcrequired="2.15"
  153. glibcfix="yes"
  154. elif [ "${engine}" == "starbound" ]; then
  155. glibcrequired="2.17"
  156. glibcfix="no"
  157. elif [ "${engine}" == "quake" ]; then
  158. glibcrequired="2.0"
  159. glibcfix="no"
  160. elif [ "${engine}" == "terraria" ]; then
  161. glibcrequired="2.7"
  162. glibcfix="no"
  163. elif [ "${engine}" == "unreal" ]; then
  164. glibcrequired="2.1"
  165. glibcfix="no"
  166. elif [ "${engine}" == "unreal2" ]; then
  167. glibcrequired="2.4"
  168. glibcfix="no"
  169. elif [ "${engine}" == "unreal3" ]; then
  170. glibcrequired="2.3.2"
  171. glibcfix="no"
  172. elif [ "${engine}" == "unreal4" ]; then
  173. glibcrequired="2.14"
  174. glibcfix="no"
  175. elif [ "${engine}" == "unity3d" ]; then
  176. glibcrequired="2.15"
  177. glibcfix="no"
  178. elif [ "${gamename}" == "TeamSpeak 3" ]; then
  179. glibcrequired="NOT REQUIRED"
  180. glibcfix="no"
  181. elif [ "${gamename}" == "Mumble" ]; then
  182. glibcrequired="NOT REQUIRED"
  183. glibcfix="no"
  184. elif [ "${engine}" == "refractor" ]; then
  185. glibcrequired="2.0"
  186. glibcfix="no"
  187. elif [ "${gamename}" == "Wolfenstein: Enemy Territory" ]; then
  188. glibcrequired="2.2.4"
  189. glibcfix="no"
  190. elif [ "${gamename}" == "ET: Legacy" ]; then
  191. glibcrequired="2.7"
  192. glibcfix="no"
  193. elif [ "${gamename}" == "Multi Theft Auto" ]; then
  194. glibcrequired="2.7"
  195. glibcfix="no"
  196. elif [ "${gamename}" == "Zombie Panic! Source" ]; then
  197. glibcrequired="2.15"
  198. glibcfix="yes"
  199. else
  200. glibcrequired="UNKNOWN"
  201. glibcfix="no"
  202. fi
  203. # Sets the SteamCMD GLIBC requirement if the game server requirement is less or not required.
  204. if [ -n "${appid}" ]; then
  205. if [ "${glibcrequired}" = "NOT REQUIRED" ]||[ -z "${glibcrequired}" ]||[ "$(printf '%s\n'${glibcrequired}'\n' "${glibcversion}" | sort -V | head -n 1)" != "2.14" ]; then
  206. glibcrequired="2.14"
  207. glibcfix="no"
  208. fi
  209. fi