Просмотр исходного кода

fix(ios): use 64-bit server and stop map reload loop (#5024)

IOSoccer moved to a 64-bit server (srcds_run_64) on 7 October 2026. The new engine executes the server cfg on every map load, so the map line in the default cfg caused an endless map reload. Add fix_ios.sh to comment it out on existing installs, and bump glibc to 2.29.

Fixes #5023
Daniel Gibbs 5 дней назад
Родитель
Сommit
e712367221

+ 2 - 2
lgsm/config-default/config-lgsm/iosserver/_default.cfg

@@ -172,7 +172,7 @@ consoleinteract="yes"
 # Do not edit
 # Do not edit
 gamename="IOSoccer"
 gamename="IOSoccer"
 engine="source"
 engine="source"
-glibc="2.3.6"
+glibc="2.29"
 
 
 #### Directories ####
 #### Directories ####
 # Edit with care
 # Edit with care
@@ -180,7 +180,7 @@ glibc="2.3.6"
 ## Game Server Directories
 ## Game Server Directories
 systemdir="${serverfiles}/iosoccer"
 systemdir="${serverfiles}/iosoccer"
 executabledir="${serverfiles}"
 executabledir="${serverfiles}"
-executable="./srcds_run"
+executable="./srcds_run_64"
 servercfgdir="${systemdir}/cfg"
 servercfgdir="${systemdir}/cfg"
 servercfg="${selfname}.cfg"
 servercfg="${selfname}.cfg"
 servercfgdefault="server.cfg"
 servercfgdefault="server.cfg"

+ 5 - 0
lgsm/modules/core_modules.sh

@@ -413,6 +413,11 @@ fix_ins.sh() {
 	fn_fetch_module
 	fn_fetch_module
 }
 }
 
 
+fix_ios.sh() {
+	modulefile="${FUNCNAME[0]}"
+	fn_fetch_module
+}
+
 fix_kf.sh() {
 fix_kf.sh() {
 	modulefile="${FUNCNAME[0]}"
 	modulefile="${FUNCNAME[0]}"
 	fn_fetch_module
 	fn_fetch_module

+ 1 - 1
lgsm/modules/fix.sh

@@ -53,7 +53,7 @@ fn_apply_fix() {
 	fi
 	fi
 }
 }
 
 
-apply_pre_start_fix=(arma3 armar ark av bt bo csgo cmw dst hw ins kf nmrih onset pvr ro rust rw samp sdtd sfc sm sof2 squad st tf2 terraria ts3 mcb mta unt vh wurm xnt zmr)
+apply_pre_start_fix=(arma3 armar ark av bt bo csgo cmw dst hw ins ios kf nmrih onset pvr ro rust rw samp sdtd sfc sm sof2 squad st tf2 terraria ts3 mcb mta unt vh wurm xnt zmr)
 apply_post_install_fix=(av kf kf2 ro ut2k4 ut ut3)
 apply_post_install_fix=(av kf kf2 ro ut2k4 ut ut3)
 
 
 # validate registered fixes for safe development
 # validate registered fixes for safe development

+ 16 - 0
lgsm/modules/fix_ios.sh

@@ -0,0 +1,16 @@
+#!/bin/bash
+# LinuxGSM fix_ios.sh module
+# Author: Daniel Gibbs
+# Contributors: https://linuxgsm.com/contrib
+# Website: https://linuxgsm.com
+# Description: Resolves issues with IOSoccer.
+
+moduleselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")"
+
+# Fixes: IOSoccer 64-bit server stuck reloading the map #5023.
+if [ -f "${servercfgfullpath}" ] && grep -qE '^\s*map\s' "${servercfgfullpath}"; then
+	fixname="remove map from ${servercfg}"
+	fn_fix_msg_start
+	sed -i -E 's|^(\s*map\s.*)$|// \1|' "${servercfgfullpath}"
+	fn_fix_msg_end
+fi