From 534e43e3727cd9ec4f8c828c8fc2f32d2e244db3 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Mon, 27 Sep 2021 23:28:26 +0100 Subject: [PATCH 1/6] fix(install): rhel based distros now get correct csv file (#3576) --- lgsm/functions/check_deps.sh | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/lgsm/functions/check_deps.sh b/lgsm/functions/check_deps.sh index 3e3d6a1b67..e5f5aead2c 100755 --- a/lgsm/functions/check_deps.sh +++ b/lgsm/functions/check_deps.sh @@ -300,22 +300,24 @@ info_distro.sh # some RHEL based distros use 8.4 instead of just 8. if [[ "${distroidlike}" == *"rhel"* ]]||[ "${distroid}" == "rhel" ]; then - distroversion="${distroversionrh}" + distroversioncsv="${distroversionrh}" +else + distroversioncsv="${distroversion}" fi -if [ ! -f "${tmpdir}/dependency-no-check.tmp" ]&&[ ! -f "${datadir}/${distroid}-${distroversion}.csv" ]; then +if [ ! -f "${tmpdir}/dependency-no-check.tmp" ]&&[ ! -f "${datadir}/${distroid}-${distroversioncsv}.csv" ]; then # Check that the disto dependency csv file exists. - fn_check_file_github "lgsm/data" "${distroid}-${distroversion}.csv" + fn_check_file_github "lgsm/data" "${distroid}-${distroversioncsv}.csv" if [ -n "${checkflag}" ]&&[ "${checkflag}" == "0" ]; then - fn_fetch_file_github "lgsm/data" "${distroid}-${distroversion}.csv" "lgsm/data" "chmodx" "norun" "noforce" "nohash" + fn_fetch_file_github "lgsm/data" "${distroid}-${distroversioncsv}.csv" "lgsm/data" "chmodx" "norun" "noforce" "nohash" fi fi # If the file successfully downloaded run the dependency check. -if [ -f "${datadir}/${distroid}-${distroversion}.csv" ]; then - depall=$(awk -F, '$1=="all" {$1=""; print $0}' "${datadir}/${distroid}-${distroversion}.csv") - depsteamcmd=$(awk -F, '$1=="steamcmd" {$1=""; print $0}' "${datadir}/${distroid}-${distroversion}.csv") - depshortname=$(awk -v shortname="$shortname" -F, '$1==shortname {$1=""; print $0}' "${datadir}/${distroid}-${distroversion}.csv") +if [ -f "${datadir}/${distroid}-${distroversioncsv}.csv" ]; then + depall=$(awk -F, '$1=="all" {$1=""; print $0}' "${datadir}/${distroid}-${distroversioncsv}.csv") + depsteamcmd=$(awk -F, '$1=="steamcmd" {$1=""; print $0}' "${datadir}/${distroid}-${distroversioncsv}.csv") + depshortname=$(awk -v shortname="$shortname" -F, '$1==shortname {$1=""; print $0}' "${datadir}/${distroid}-${distroversioncsv}.csv") # Generate array of missing deps. array_deps_missing=() From 565f99e9e8ccd0e2f299630f76dcca363198b5f4 Mon Sep 17 00:00:00 2001 From: Christian Date: Tue, 28 Sep 2021 21:41:55 +0200 Subject: [PATCH 2/6] fix(stn): add case if the password was not set in the config (#3578) --- lgsm/functions/info_game.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lgsm/functions/info_game.sh b/lgsm/functions/info_game.sh index 46bcece5be..a961a41f3b 100644 --- a/lgsm/functions/info_game.sh +++ b/lgsm/functions/info_game.sh @@ -1741,6 +1741,9 @@ fn_info_game_stn(){ port=$(sed -nr 's/^ServerPort=([0-9]+)/\1/p' "${servercfgfullpath}") serverpassword=$(sed -nr 's/^ServerPassword=(.*)$/\1/p' "${servercfgfullpath}") queryport=$((port + 1)) + + # Not set + serverpassword=${serverpassword:-"NOT SET"} else servername="${unavailable}" configip=${configip:-"0.0.0.0"} From ac8cef7705265c07f986efa883637850e76325ba Mon Sep 17 00:00:00 2001 From: johnoclockdk <68790186+johnoclockdk@users.noreply.github.com> Date: Tue, 28 Sep 2021 21:43:26 +0200 Subject: [PATCH 3/6] feat(mods): csgo practice mode (#3577) --- lgsm/functions/mods_list.sh | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/lgsm/functions/mods_list.sh b/lgsm/functions/mods_list.sh index fc9d921d62..7afeffcfb9 100755 --- a/lgsm/functions/mods_list.sh +++ b/lgsm/functions/mods_list.sh @@ -76,6 +76,9 @@ get5lastbuild=$(curl --connect-timeout 10 -sL https://ci.splewis.net/job/get5/la get5latestfile=$(echo -e "${get5lastbuild}" | jq -r '.fileName') get5latestfilepath=$(echo -e "${get5lastbuild}" | jq -r '.relativePath') get5url="https://ci.splewis.net/job/get5/lastSuccessfulBuild/artifact/${get5latestfilepath}" +csgopracticelatest=$(curl --connect-timeout 10 -sL https://api.github.com/repos/splewis/csgo-practice-mode/releases/latest | jq '.assets[]') +csgopracticelatestfile=$(echo -e "${csgopracticelatest}" | jq -r '.name') +csgopracticelatestlink=$(echo -e "${csgopracticelatest}" | jq -r '.browser_download_url') csgopuglatest=$(curl --connect-timeout 10 -sL https://api.github.com/repos/splewis/csgo-pug-setup/releases/latest | jq '.assets[]') csgopuglatestfile=$(echo -e "${csgopuglatest}" | jq -r '.name') csgopuglatestlink=$(echo -e "${csgopuglatest}" | jq -r '.browser_download_url') @@ -140,6 +143,7 @@ mod_info_stripper=( MOD "stripper" "Stripper Source" "http://www.bailopan.net/st mod_info_gokz=( MOD "gokz" "GOKZ" "https://bitbucket.org/kztimerglobalteam/gokz/downloads/GOKZ-latest.zip" "gokz-latest.zip" "0" "LowercaseOff" "${systemdir}" "cfg;addons/sourcemod/configs;" "ENGINES" "Counter-Strike: Global Offensive;" "NOTGAMES" "https://bitbucket.org/kztimerglobalteam/gokz/src/master/" "Implements the KZ game mode (requires SourceMod and MetaMod)" ) mod_info_ttt=( MOD "ttt" "Trouble in Terrorist Town" "https://csgottt.com/downloads/ttt-latest-dev-${sourcemodversion}.zip" "ttt-latest.zip" "0" "LowercaseOff" "${systemdir}" "cfg;addons/sourcemod/configs;" "ENGINES" "Counter-Strike: Global Offensive;" "NOTGAMES" "https://github.com/Bara/TroubleinTerroristTown" "Implements the TTT game mode (requires SourceMod and MetaMod)" ) mod_info_get5=( MOD "get5" "Get 5" "${get5url}" "${get5latestfile}" "0" "LowercaseOff" "${systemdir}" "cfg;addons/sourcemod/configs;" "ENGINES" "Counter-Strike: Global Offensive;" "NOTGAMES" "https://github.com/splewis/get5" "Plugin for competitive matches/scrims (requires SourceMod and MetaMod)" ) +mod_info_prac=( MOD "prac" "csgo practice mode" "${csgopracticelatestlink}" "${csgopracticelatestfile}" "0" "LowercaseOff" "${systemdir}" "cfg;addons/sourcemod/configs;" "ENGINES" "Counter-Strike: Global Offensive;" "NOTGAMES" "https://github.com/splewis/csgo-practice-mode" "Practice Mode is a sourcemod plugin for helping players/teams run practices." ) mod_info_pug=( MOD "pug" "PUG" "${csgopuglatestlink}" "${csgopuglatestfile}" "0" "LowercaseOff" "${systemdir}" "cfg;addons/sourcemod/configs;" "ENGINES" "Counter-Strike: Global Offensive;" "NOTGAMES" "https://github.com/splewis/csgo-pug-setup" "plugin for setting up private pug/10man games" ) mod_info_dhook=( MOD "dhook" "dhook" "https://forums.alliedmods.net/attachment.php?attachmentid=190123&d=1625050030" "dhooks-2.2.0d17.zip" "0" "LowercaseOff" "${systemdir}" "cfg;addons/sourcemod/configs;" "ENGINES" "Counter-Strike: Global Offensive;" "NOTGAMES" "https://forums.alliedmods.net/showpost.php?p=2588686&postcount=589" "DHooks 2.2.0 - Required for GOKZ" ) mod_info_movement=( MOD "movementapi" "movementapi" "https://github.com/danzayau/MovementAPI/releases/download/2.1.0/MovementAPI-v2.1.0.zip" "MovementAPI-v2.1.0.zip" "0" "LowercaseOff" "${systemdir}" "cfg;addons/sourcemod/configs;" "ENGINES" "Counter-Strike: Global Offensive;" "NOTGAMES" "https://github.com/danzayau/MovementAPI" "Movement API 2.1.0 - Required for GOKZ" ) @@ -184,4 +188,4 @@ mod_info_sdtdoxide=( MOD "sdtdoxide" "Oxide for 7 Days To Die" "${oxidesdtdlates mod_info_valheimplus=( MOD "valheimplus" "Valheim PLUS" "${valeimpluslatestlink}" "ValheimPlus.tar.gz" "0" "LowercaseOff" "${systemdir}" "OVERWRITE" "ENGINES" "Valheim;" "NOTGAMES" "https://github.com/valheimPlus/ValheimPlus" "Mod to improve Valheim gameplay") # REQUIRED: Set all mods info into the global array -mods_global_array=( "${mod_info_metamod[@]}" "${mod_info_base_amxx[@]}" "${mod_info_cs_amxx[@]}" "${mod_info_dod_amxx[@]}" "${mod_info_tfc_amxx[@]}" "${mod_info_ns_amxx[@]}" "${mod_info_ts_amxx[@]}" "${mod_info_metamodsource[@]}" "${mod_info_sourcemod[@]}" "${mod_info_steamworks[@]}" "${mod_info_gokz[@]}" "${mod_info_ttt[@]}" "${mod_info_get5[@]}" "${mod_info_pug[@]}" "${mod_info_dhook[@]}" "${mod_info_movement[@]}" "${mod_info_cleaner[@]}" "${mod_info_ulib[@]}" "${mod_info_ulx[@]}" "${mod_info_utime[@]}" "${mod_info_uclip[@]}" "${mod_info_acf[@]}" "${mod_info_acf_missiles[@]}" "${mod_info_acf_sweps[@]}" "${mod_info_advdupe2[@]}" "${mod_info_pac3[@]}" "${mod_info_wiremod[@]}" "${mod_info_wiremodextras[@]}" "${mod_info_darkrp[@]}" "${mod_info_darkrpmodification[@]}" "${mod_info_rustoxide[@]}" "${mod_info_hwoxide[@]}" "${mod_info_sdtdoxide[@]}" "${mod_info_advduplicator[@]}" "${mod_info_trackassemblytool[@]}" "${mod_info_physpropertiesadv[@]}" "${mod_info_controlsystemse2[@]}" "${mod_info_e2pistontiming[@]}" "${mod_info_propcannontool[@]}" "${mod_info_gearassemblytool[@]}" "${mod_info_spinnertool[@]}" "${mod_info_surfacefrictiontool[@]}" "${mod_info_magneticdipole[@]}" "${mod_info_environmentorganizer[@]}" "${mod_info_precision_alignment[@]}" "${mod_info_improved_stacker[@]}" "${mod_info_improved_weight[@]}" "${mod_info_improved_antinoclip[@]}" "${mod_info_laserstool[@]}" "${mod_info_valheimplus[@]}" ) +mods_global_array=( "${mod_info_metamod[@]}" "${mod_info_base_amxx[@]}" "${mod_info_cs_amxx[@]}" "${mod_info_dod_amxx[@]}" "${mod_info_tfc_amxx[@]}" "${mod_info_ns_amxx[@]}" "${mod_info_ts_amxx[@]}" "${mod_info_metamodsource[@]}" "${mod_info_sourcemod[@]}" "${mod_info_steamworks[@]}" "${mod_info_gokz[@]}" "${mod_info_ttt[@]}" "${mod_info_get5[@]}" "${mod_info_prac[@]}" "${mod_info_pug[@]}" "${mod_info_dhook[@]}" "${mod_info_movement[@]}" "${mod_info_cleaner[@]}" "${mod_info_ulib[@]}" "${mod_info_ulx[@]}" "${mod_info_utime[@]}" "${mod_info_uclip[@]}" "${mod_info_acf[@]}" "${mod_info_acf_missiles[@]}" "${mod_info_acf_sweps[@]}" "${mod_info_advdupe2[@]}" "${mod_info_pac3[@]}" "${mod_info_wiremod[@]}" "${mod_info_wiremodextras[@]}" "${mod_info_darkrp[@]}" "${mod_info_darkrpmodification[@]}" "${mod_info_rustoxide[@]}" "${mod_info_hwoxide[@]}" "${mod_info_sdtdoxide[@]}" "${mod_info_advduplicator[@]}" "${mod_info_trackassemblytool[@]}" "${mod_info_physpropertiesadv[@]}" "${mod_info_controlsystemse2[@]}" "${mod_info_e2pistontiming[@]}" "${mod_info_propcannontool[@]}" "${mod_info_gearassemblytool[@]}" "${mod_info_spinnertool[@]}" "${mod_info_surfacefrictiontool[@]}" "${mod_info_magneticdipole[@]}" "${mod_info_environmentorganizer[@]}" "${mod_info_precision_alignment[@]}" "${mod_info_improved_stacker[@]}" "${mod_info_improved_weight[@]}" "${mod_info_improved_antinoclip[@]}" "${mod_info_laserstool[@]}" "${mod_info_valheimplus[@]}" ) From 490cd3fa5aeadd63180fab5379f49d78748ec8ef Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Tue, 28 Sep 2021 22:51:41 +0100 Subject: [PATCH 4/6] fix(install): resolve steamcmd dependency issues (#3583) * fix(install): improve steamcmd detection --- lgsm/data/almalinux-8.csv | 4 ++- lgsm/data/centos-7.csv | 4 ++- lgsm/data/centos-8.csv | 3 +- lgsm/data/debian-10.csv | 8 +++-- lgsm/data/debian-11.csv | 8 +++-- lgsm/data/debian-9.csv | 8 +++-- lgsm/data/rhel-7.csv | 4 ++- lgsm/data/rhel-8.csv | 4 ++- lgsm/data/rocky-8.csv | 4 ++- lgsm/data/ubuntu-16.04.csv | 8 +++-- lgsm/data/ubuntu-18.04.csv | 8 +++-- lgsm/data/ubuntu-20.04.csv | 9 +++--- lgsm/data/ubuntu-21.04.csv | 8 +++-- lgsm/functions/check_deps.sh | 36 ++++++++++++++--------- lgsm/functions/command_update_linuxgsm.sh | 33 +++++++++++++++++++++ lgsm/functions/info_distro.sh | 7 +++++ 16 files changed, 114 insertions(+), 42 deletions(-) diff --git a/lgsm/data/almalinux-8.csv b/lgsm/data/almalinux-8.csv index f72d74b7b7..270ede409c 100644 --- a/lgsm/data/almalinux-8.csv +++ b/lgsm/data/almalinux-8.csv @@ -1,4 +1,5 @@ -all,epel-release,curl,wget,util-linux,python36,file,tar,gzip,bzip2,unzip,xz,binutils,bc,jq,tmux,nmap-ncat,cpio,hostname +all,bc,binutils,bzip2,bzip2,cpio,curl,epel-release,file,glibc.i686,gzip,hostname,jq,libstdc++.i686,nmap-ncat,python36,tar,tmux,unzip,util-linux,wget,xz +steamcmd,glibc.i686,libstdc++.i686 ac ahl ahl2 @@ -96,6 +97,7 @@ sof2 sol squad st +stn sven terraria tf2,libcurl.i686 diff --git a/lgsm/data/centos-7.csv b/lgsm/data/centos-7.csv index f72d74b7b7..270ede409c 100644 --- a/lgsm/data/centos-7.csv +++ b/lgsm/data/centos-7.csv @@ -1,4 +1,5 @@ -all,epel-release,curl,wget,util-linux,python36,file,tar,gzip,bzip2,unzip,xz,binutils,bc,jq,tmux,nmap-ncat,cpio,hostname +all,bc,binutils,bzip2,bzip2,cpio,curl,epel-release,file,glibc.i686,gzip,hostname,jq,libstdc++.i686,nmap-ncat,python36,tar,tmux,unzip,util-linux,wget,xz +steamcmd,glibc.i686,libstdc++.i686 ac ahl ahl2 @@ -96,6 +97,7 @@ sof2 sol squad st +stn sven terraria tf2,libcurl.i686 diff --git a/lgsm/data/centos-8.csv b/lgsm/data/centos-8.csv index f72d74b7b7..f9805f8b0a 100644 --- a/lgsm/data/centos-8.csv +++ b/lgsm/data/centos-8.csv @@ -1,4 +1,5 @@ -all,epel-release,curl,wget,util-linux,python36,file,tar,gzip,bzip2,unzip,xz,binutils,bc,jq,tmux,nmap-ncat,cpio,hostname +all,bc,binutils,bzip2,bzip2,cpio,curl,epel-release,file,glibc.i686,gzip,hostname,jq,libstdc++,libstdc++.i686,nmap-ncat,python36,tar,tmux,unzip,util-linux,wget,xz +steamcmd,glibc.i686,libstdc++.i686 ac ahl ahl2 diff --git a/lgsm/data/debian-10.csv b/lgsm/data/debian-10.csv index f352a05a26..746e0d5cc3 100644 --- a/lgsm/data/debian-10.csv +++ b/lgsm/data/debian-10.csv @@ -1,4 +1,5 @@ -all,bc,binutils,bsdmainutils,bzip2,ca-certificates,cpio,curl,file,gzip,jq,python3,tar,tmux,util-linux,netcat,unzip,xz-utils,lib32gcc1,lib32stdc++6,hostname +all,bc,binutils,bsdmainutils,bzip2,ca-certificates,cpio,curl,file,gzip,hostname,jq,lib32gcc1,lib32stdc++6,netcat,netcat,python3,tar,tmux,unzip,util-linux,wget,xz-utils +steamcmd,lib32gcc1,lib32stdc++6,libsdl2-2.0-0:i386,steamcmd ac ahl ahl2 @@ -68,14 +69,14 @@ nmrih,libtinfo5:i386 ns ns2,speex,libtbb2 ns2c,speex:i386,libtbb2 -onset +onset,libmariadbclient-dev opfor pc pmc,openjdk-11-jre pstbs,libgconf-2-4 pvkii pvr,libc++1 -pz +pz,openjdk-11-jre,rng-tools q2 q3 ql @@ -96,6 +97,7 @@ sof2 sol squad st +stn sven,libssl1.1:i386,zlib1g:i386 terraria tf2,libcurl4-gnutls-dev:i386 diff --git a/lgsm/data/debian-11.csv b/lgsm/data/debian-11.csv index 146e9fc2c2..35bf76936f 100644 --- a/lgsm/data/debian-11.csv +++ b/lgsm/data/debian-11.csv @@ -1,4 +1,5 @@ -all,bc,binutils,bsdmainutils,bzip2,ca-certificates,cpio,curl,file,gzip,jq,python3,tar,tmux,util-linux,netcat,unzip,xz-utils,lib32gcc-s1,lib32stdc++6,hostname +all,bc,binutils,bsdmainutils,bzip2,ca-certificates,cpio,curl,file,gzip,hostname,jq,lib32gcc-s1,lib32stdc++6,netcat,netcat,python3,tar,tmux,unzip,util-linux,wget,xz-utils +steamcmd,lib32gcc-s1,lib32stdc++6,libsdl2-2.0-0:i386,steamcmd ac ahl ahl2 @@ -68,14 +69,14 @@ nmrih,libtinfo5:i386 ns ns2,speex,libtbb2 ns2c,speex:i386,libtbb2 -onset +onset,libmariadbclient-dev opfor pc pmc,openjdk-16-jre pstbs,libgconf-2-4 pvkii pvr,libc++1 -pz +pz,openjdk-16-jre,rng-tools q2 q3 ql @@ -96,6 +97,7 @@ sof2 sol squad st +stn sven,libssl1.1:i386,zlib1g:i386 terraria tf2,libcurl4-gnutls-dev:i386 diff --git a/lgsm/data/debian-9.csv b/lgsm/data/debian-9.csv index 0b40d23404..4a8790286d 100644 --- a/lgsm/data/debian-9.csv +++ b/lgsm/data/debian-9.csv @@ -1,4 +1,5 @@ -all,bc,binutils,bsdmainutils,bzip2,ca-certificates,cpio,curl,file,gzip,jq,python3,tar,tmux,util-linux,netcat,unzip,xz-utils,lib32gcc1,lib32stdc++6,hostname +all,bc,binutils,bsdmainutils,bzip2,ca-certificates,cpio,curl,file,gzip,hostname,jq,lib32gcc1,lib32stdc++6,netcat,netcat,python3,tar,tmux,unzip,util-linux,wget,xz-utils +steamcmd,lib32gcc1,lib32stdc++6,libsdl2-2.0-0:i386,steamcmd ac ahl ahl2 @@ -68,14 +69,14 @@ nmrih,libtinfo5:i386 ns ns2,speex,libtbb2 ns2c,speex:i386,libtbb2 -onset +onset,libmariadbclient-dev opfor pc pmc,openjdk-8-jre pstbs,libgconf-2-4 pvkii pvr,libc++1 -pz +pz,openjdk-8-jre,rng-tools q2 q3 ql @@ -96,6 +97,7 @@ sof2 sol squad st +stn sven,libssl1.1:i386,zlib1g:i386 terraria tf2,libcurl4-gnutls-dev:i386 diff --git a/lgsm/data/rhel-7.csv b/lgsm/data/rhel-7.csv index f72d74b7b7..270ede409c 100644 --- a/lgsm/data/rhel-7.csv +++ b/lgsm/data/rhel-7.csv @@ -1,4 +1,5 @@ -all,epel-release,curl,wget,util-linux,python36,file,tar,gzip,bzip2,unzip,xz,binutils,bc,jq,tmux,nmap-ncat,cpio,hostname +all,bc,binutils,bzip2,bzip2,cpio,curl,epel-release,file,glibc.i686,gzip,hostname,jq,libstdc++.i686,nmap-ncat,python36,tar,tmux,unzip,util-linux,wget,xz +steamcmd,glibc.i686,libstdc++.i686 ac ahl ahl2 @@ -96,6 +97,7 @@ sof2 sol squad st +stn sven terraria tf2,libcurl.i686 diff --git a/lgsm/data/rhel-8.csv b/lgsm/data/rhel-8.csv index f72d74b7b7..270ede409c 100644 --- a/lgsm/data/rhel-8.csv +++ b/lgsm/data/rhel-8.csv @@ -1,4 +1,5 @@ -all,epel-release,curl,wget,util-linux,python36,file,tar,gzip,bzip2,unzip,xz,binutils,bc,jq,tmux,nmap-ncat,cpio,hostname +all,bc,binutils,bzip2,bzip2,cpio,curl,epel-release,file,glibc.i686,gzip,hostname,jq,libstdc++.i686,nmap-ncat,python36,tar,tmux,unzip,util-linux,wget,xz +steamcmd,glibc.i686,libstdc++.i686 ac ahl ahl2 @@ -96,6 +97,7 @@ sof2 sol squad st +stn sven terraria tf2,libcurl.i686 diff --git a/lgsm/data/rocky-8.csv b/lgsm/data/rocky-8.csv index f72d74b7b7..270ede409c 100644 --- a/lgsm/data/rocky-8.csv +++ b/lgsm/data/rocky-8.csv @@ -1,4 +1,5 @@ -all,epel-release,curl,wget,util-linux,python36,file,tar,gzip,bzip2,unzip,xz,binutils,bc,jq,tmux,nmap-ncat,cpio,hostname +all,bc,binutils,bzip2,bzip2,cpio,curl,epel-release,file,glibc.i686,gzip,hostname,jq,libstdc++.i686,nmap-ncat,python36,tar,tmux,unzip,util-linux,wget,xz +steamcmd,glibc.i686,libstdc++.i686 ac ahl ahl2 @@ -96,6 +97,7 @@ sof2 sol squad st +stn sven terraria tf2,libcurl.i686 diff --git a/lgsm/data/ubuntu-16.04.csv b/lgsm/data/ubuntu-16.04.csv index 0b40d23404..4a8790286d 100644 --- a/lgsm/data/ubuntu-16.04.csv +++ b/lgsm/data/ubuntu-16.04.csv @@ -1,4 +1,5 @@ -all,bc,binutils,bsdmainutils,bzip2,ca-certificates,cpio,curl,file,gzip,jq,python3,tar,tmux,util-linux,netcat,unzip,xz-utils,lib32gcc1,lib32stdc++6,hostname +all,bc,binutils,bsdmainutils,bzip2,ca-certificates,cpio,curl,file,gzip,hostname,jq,lib32gcc1,lib32stdc++6,netcat,netcat,python3,tar,tmux,unzip,util-linux,wget,xz-utils +steamcmd,lib32gcc1,lib32stdc++6,libsdl2-2.0-0:i386,steamcmd ac ahl ahl2 @@ -68,14 +69,14 @@ nmrih,libtinfo5:i386 ns ns2,speex,libtbb2 ns2c,speex:i386,libtbb2 -onset +onset,libmariadbclient-dev opfor pc pmc,openjdk-8-jre pstbs,libgconf-2-4 pvkii pvr,libc++1 -pz +pz,openjdk-8-jre,rng-tools q2 q3 ql @@ -96,6 +97,7 @@ sof2 sol squad st +stn sven,libssl1.1:i386,zlib1g:i386 terraria tf2,libcurl4-gnutls-dev:i386 diff --git a/lgsm/data/ubuntu-18.04.csv b/lgsm/data/ubuntu-18.04.csv index f352a05a26..746e0d5cc3 100644 --- a/lgsm/data/ubuntu-18.04.csv +++ b/lgsm/data/ubuntu-18.04.csv @@ -1,4 +1,5 @@ -all,bc,binutils,bsdmainutils,bzip2,ca-certificates,cpio,curl,file,gzip,jq,python3,tar,tmux,util-linux,netcat,unzip,xz-utils,lib32gcc1,lib32stdc++6,hostname +all,bc,binutils,bsdmainutils,bzip2,ca-certificates,cpio,curl,file,gzip,hostname,jq,lib32gcc1,lib32stdc++6,netcat,netcat,python3,tar,tmux,unzip,util-linux,wget,xz-utils +steamcmd,lib32gcc1,lib32stdc++6,libsdl2-2.0-0:i386,steamcmd ac ahl ahl2 @@ -68,14 +69,14 @@ nmrih,libtinfo5:i386 ns ns2,speex,libtbb2 ns2c,speex:i386,libtbb2 -onset +onset,libmariadbclient-dev opfor pc pmc,openjdk-11-jre pstbs,libgconf-2-4 pvkii pvr,libc++1 -pz +pz,openjdk-11-jre,rng-tools q2 q3 ql @@ -96,6 +97,7 @@ sof2 sol squad st +stn sven,libssl1.1:i386,zlib1g:i386 terraria tf2,libcurl4-gnutls-dev:i386 diff --git a/lgsm/data/ubuntu-20.04.csv b/lgsm/data/ubuntu-20.04.csv index 942915cbe2..90f4a67e0e 100644 --- a/lgsm/data/ubuntu-20.04.csv +++ b/lgsm/data/ubuntu-20.04.csv @@ -1,5 +1,5 @@ -all,bc,binutils,bsdmainutils,bzip2,ca-certificates,cpio,curl,file,gzip,jq,python3,tar,tmux,util-linux,netcat,unzip,xz-utils,lib32gcc1,lib32stdc++6,hostname -steamcmd,lib32gcc1,lib32stdc++6,libsdl2-2.0-0:i386 +all,bc,binutils,bsdmainutils,bzip2,ca-certificates,cpio,curl,file,gzip,hostname,jq,lib32gcc1,lib32stdc++6,netcat,netcat,python3,tar,tmux,unzip,util-linux,wget,xz-utils +steamcmd,lib32gcc1,lib32stdc++6,libsdl2-2.0-0:i386,steamcmd ac ahl ahl2 @@ -69,14 +69,14 @@ nmrih,libtinfo5:i386 ns ns2,speex,libtbb2 ns2c,speex:i386,libtbb2 -onset +onset,libmariadbclient-dev opfor pc pmc,openjdk-16-jre pstbs,libgconf-2-4 pvkii pvr,libc++1 -pz +pz,openjdk-16-jre,rng-tools q2 q3 ql @@ -97,6 +97,7 @@ sof2 sol squad st +stn sven,libssl1.1:i386,zlib1g:i386 terraria tf2,libcurl4-gnutls-dev:i386 diff --git a/lgsm/data/ubuntu-21.04.csv b/lgsm/data/ubuntu-21.04.csv index 146e9fc2c2..35bf76936f 100644 --- a/lgsm/data/ubuntu-21.04.csv +++ b/lgsm/data/ubuntu-21.04.csv @@ -1,4 +1,5 @@ -all,bc,binutils,bsdmainutils,bzip2,ca-certificates,cpio,curl,file,gzip,jq,python3,tar,tmux,util-linux,netcat,unzip,xz-utils,lib32gcc-s1,lib32stdc++6,hostname +all,bc,binutils,bsdmainutils,bzip2,ca-certificates,cpio,curl,file,gzip,hostname,jq,lib32gcc-s1,lib32stdc++6,netcat,netcat,python3,tar,tmux,unzip,util-linux,wget,xz-utils +steamcmd,lib32gcc-s1,lib32stdc++6,libsdl2-2.0-0:i386,steamcmd ac ahl ahl2 @@ -68,14 +69,14 @@ nmrih,libtinfo5:i386 ns ns2,speex,libtbb2 ns2c,speex:i386,libtbb2 -onset +onset,libmariadbclient-dev opfor pc pmc,openjdk-16-jre pstbs,libgconf-2-4 pvkii pvr,libc++1 -pz +pz,openjdk-16-jre,rng-tools q2 q3 ql @@ -96,6 +97,7 @@ sof2 sol squad st +stn sven,libssl1.1:i386,zlib1g:i386 terraria tf2,libcurl4-gnutls-dev:i386 diff --git a/lgsm/functions/check_deps.sh b/lgsm/functions/check_deps.sh index e5f5aead2c..f961d076ad 100755 --- a/lgsm/functions/check_deps.sh +++ b/lgsm/functions/check_deps.sh @@ -173,6 +173,11 @@ fn_install_missing_deps(){ eval "${cmd}" fi autodepinstall="$?" + + # If auto install passes remove steamcmd install failure. + if [ "${autodepinstall}" == "0" ]; then + unset steamcmdfail + fi fi # If automatic dependency install is unavailable. @@ -217,8 +222,14 @@ fn_check_loop(){ # Checks if dependency is installed or not. fn_deps_detector(){ + ## Check. + # SteamCMD: Will be removed from required array if non-free repo is not available. + # This will cause SteamCMD to be installed using tar. + if [ "${deptocheck}" == "steamcmd" ]&&[ "${distroid}" == "debian" ]&& ! grep -qE "^deb .*non-free" /etc/apt/sources.list; then + array_deps_required=( "${array_deps_required[@]/steamcmd}" ) + steamcmdstatus=1 # Java: Added for users using Oracle JRE to bypass check. - if [[ ${deptocheck} == "openjdk"* ]]||[[ ${deptocheck} == "java"* ]]; then + elif [[ ${deptocheck} == "openjdk"* ]]||[[ ${deptocheck} == "java"* ]]; then # Is java already installed? if [ -n "${javaversion}" ]; then # Added for users using Oracle JRE to bypass check. @@ -249,25 +260,28 @@ fn_deps_detector(){ depstatus=$? fi - if [ "${depstatus}" == "0" ]; then + # Outcome of Check. + if [ "${steamcmdstatus}" == "1" ]; then + # If SteamCMD is not available in repo dont check for it. + unset steamcmdstatus + elif [ "${depstatus}" == "0" ]; then # If dependency is found. missingdep=0 if [ "${commandname}" == "INSTALL" ]; then echo -e "${green}${deptocheck}${default}" sleep 0.1 fi - else + elif [ "${depstatus}" != "0" ]; then # If dependency is not found. missingdep=1 if [ "${commandname}" == "INSTALL" ]; then echo -e "${red}${deptocheck}${default}" sleep 0.1 fi - # Define required dependencies for SteamCMD. + # If SteamCMD requirements are not met install will fail. if [ -n "${appid}" ]; then - array_steamcmd_deps_required=("${depsteamcmd}") - for steamcmddeptocheck in ${array_steamcmd_deps_required[*]}; do - if [ "${deptocheck}" == "${steamcmddeptocheck}" ]; then + for steamcmddeptocheck in ${array_deps_required_steamcmd[*]}; do + if [ "${deptocheck}" != "steamcmd" ]&&[ "${deptocheck}" == "${steamcmddeptocheck}" ]; then steamcmdfail=1 fi done @@ -298,13 +312,6 @@ fi info_distro.sh -# some RHEL based distros use 8.4 instead of just 8. -if [[ "${distroidlike}" == *"rhel"* ]]||[ "${distroid}" == "rhel" ]; then - distroversioncsv="${distroversionrh}" -else - distroversioncsv="${distroversion}" -fi - if [ ! -f "${tmpdir}/dependency-no-check.tmp" ]&&[ ! -f "${datadir}/${distroid}-${distroversioncsv}.csv" ]; then # Check that the disto dependency csv file exists. fn_check_file_github "lgsm/data" "${distroid}-${distroversioncsv}.csv" @@ -323,6 +330,7 @@ if [ -f "${datadir}/${distroid}-${distroversioncsv}.csv" ]; then array_deps_missing=() array_deps_required=("${depall} ${depsteamcmd} ${depshortname}") + array_deps_required_steamcmd=("${depsteamcmd}") fn_deps_email # Unique sort dependency array. IFS=" " read -r -a array_deps_required <<< "$(echo "${array_deps_required[@]}" | tr ' ' '\n' | sort -u | tr '\n' ' ')" diff --git a/lgsm/functions/command_update_linuxgsm.sh b/lgsm/functions/command_update_linuxgsm.sh index 4027c1e6d8..e7b70f3274 100755 --- a/lgsm/functions/command_update_linuxgsm.sh +++ b/lgsm/functions/command_update_linuxgsm.sh @@ -11,6 +11,7 @@ functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" fn_firstcommand_set check.sh +info_distro.sh fn_print_dots "" fn_script_log_info "Updating LinuxGSM" @@ -146,6 +147,38 @@ else fn_script_log_pass "Checking ${remotereponame} config _default.cfg" fi +# Check distro csv. ${datadir}/${distroid}-${distroversioncsv}.csv +if [ -f "${datadir}/${distroid}-${distroversioncsv}.csv" ]; then + echo -en "checking ${remotereponame} config ${distroid}-${distroversioncsv}.csv...\c" + fn_script_log_info "Checking ${remotereponame} ${distroid}-${distroversioncsv}.csv" + if [ "${remotereponame}" == "GitHub" ]; then + curl --connect-timeout 10 -IsfL "https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${githubbranch}/lgsm/data/${distroid}-${distroversioncsv}.csv" 1>/dev/null + else + curl --connect-timeout 10 -IsfL "https://bitbucket.org/${githubuser}/${githubrepo}/raw/${githubbranch}/lgsm/data/${distroid}-${distroversioncsv}.csv" 1>/dev/null + fi + if [ $? != "0" ]; then + fn_print_fail_eol_nl + fn_script_log_fatal "Checking ${remotereponame} ${distroid}-${distroversioncsv}.csv" + fn_script_log_fatal "Curl returned error: $?" + core_exit.sh + fi + + if [ "${remotereponame}" == "GitHub" ]; then + config_file_diff=$(diff "${datadir}/${distroid}-${distroversioncsv}.csv" <(curl --connect-timeout 10 -s "https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${githubbranch}/lgsm/data/${distroid}-${distroversioncsv}.csv")) + else + config_file_diff=$(diff "${datadir}/${distroid}-${distroversioncsv}.csv" <(curl --connect-timeout 10 -s "https://bitbucket.org/${githubuser}/${githubrepo}/raw/${githubbranch}/lgsm/data/${distroid}-${distroversioncsv}.csv")) + fi + + if [ "${config_file_diff}" != "" ]; then + fn_print_update_eol_nl + fn_script_log_update "Checking ${remotereponame} ${distroid}-${distroversioncsv}.csv" + rm -f "${datadir:?}/${distroid}-${distroversioncsv}.csv" + fn_fetch_file_github "lgsm/data" "${distroid}-${distroversioncsv}.csv" "${datadir}" "nochmodx" "norun" "noforce" "nohash" + else + fn_print_ok_eol_nl + fn_script_log_pass "Checking ${remotereponame} ${distroid}-${distroversioncsv}.csv" + fi +fi # Check and update modules. if [ -n "${functionsdir}" ]; then if [ -d "${functionsdir}" ]; then diff --git a/lgsm/functions/info_distro.sh b/lgsm/functions/info_distro.sh index dcde3ba7e4..d8f5dfaca3 100755 --- a/lgsm/functions/info_distro.sh +++ b/lgsm/functions/info_distro.sh @@ -73,6 +73,13 @@ for distro_info in "${distro_info_array[@]}"; do fi done +# some RHEL based distros use 8.4 instead of just 8. +if [[ "${distroidlike}" == *"rhel"* ]]||[ "${distroid}" == "rhel" ]; then + distroversioncsv="${distroversionrh}" +else + distroversioncsv="${distroversion}" +fi + ## Glibc version # e.g: 1.17 glibcversion="$(ldd --version | sed -n '1s/.* //p')" From da40c636e6513abe09c55127c56dc56f34256c5b Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Tue, 28 Sep 2021 22:54:05 +0100 Subject: [PATCH 5/6] Release v21.3.1 --- lgsm/functions/core_functions.sh | 2 +- linuxgsm.sh | 2 +- tests/tests_fctrserver.sh | 2 +- tests/tests_jc2server.sh | 2 +- tests/tests_mcserver.sh | 2 +- tests/tests_ts3server.sh | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/lgsm/functions/core_functions.sh b/lgsm/functions/core_functions.sh index e9a4aab6f4..6c6edbdfcf 100755 --- a/lgsm/functions/core_functions.sh +++ b/lgsm/functions/core_functions.sh @@ -8,7 +8,7 @@ functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")" -modulesversion="v21.3.0" +modulesversion="v21.3.1" # Core diff --git a/linuxgsm.sh b/linuxgsm.sh index a70a50f130..c7620cd72b 100755 --- a/linuxgsm.sh +++ b/linuxgsm.sh @@ -20,7 +20,7 @@ if [ -f ".dev-debug" ]; then set -x fi -version="v21.3.0" +version="v21.3.1" shortname="core" gameservername="core" commandname="CORE" diff --git a/tests/tests_fctrserver.sh b/tests/tests_fctrserver.sh index 4e3941a8d0..05ae0795e5 100644 --- a/tests/tests_fctrserver.sh +++ b/tests/tests_fctrserver.sh @@ -20,7 +20,7 @@ if [ -f ".dev-debug" ]; then set -x fi -version="v21.3.0" +version="v21.3.1" shortname="fctr" gameservername="fctrserver" commandname="CORE" diff --git a/tests/tests_jc2server.sh b/tests/tests_jc2server.sh index d140251153..609f71f505 100644 --- a/tests/tests_jc2server.sh +++ b/tests/tests_jc2server.sh @@ -20,7 +20,7 @@ if [ -f ".dev-debug" ]; then set -x fi -version="v21.3.0" +version="v21.3.1" shortname="jc2" gameservername="jc2server" commandname="CORE" diff --git a/tests/tests_mcserver.sh b/tests/tests_mcserver.sh index 4866b92f32..a9dc9abf20 100644 --- a/tests/tests_mcserver.sh +++ b/tests/tests_mcserver.sh @@ -20,7 +20,7 @@ if [ -f ".dev-debug" ]; then set -x fi -version="v21.3.0" +version="v21.3.1" shortname="mc" gameservername="mcserver" commandname="CORE" diff --git a/tests/tests_ts3server.sh b/tests/tests_ts3server.sh index ed52a0e67a..7f72dd7efd 100644 --- a/tests/tests_ts3server.sh +++ b/tests/tests_ts3server.sh @@ -20,7 +20,7 @@ if [ -f ".dev-debug" ]; then set -x fi -version="v21.3.0" +version="v21.3.1" shortname="ts3" gameservername="ts3server" commandname="CORE" From 23bbc227aefd3db2c01039581d53d6310a14509c Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Tue, 28 Sep 2021 17:07:22 +0100 Subject: [PATCH 6/6] New Labeler action add distros add bug and feature new labels fastdl regex Add sponsor label --- .github/labeler.yml | 83 ++ .github/workflows/label-sponsors.yml | 14 + .github/workflows/labeler.yml | 1393 +------------------------- 3 files changed, 103 insertions(+), 1387 deletions(-) create mode 100644 .github/labeler.yml create mode 100644 .github/workflows/label-sponsors.yml diff --git a/.github/labeler.yml b/.github/labeler.yml new file mode 100644 index 0000000000..c8ebdad6f6 --- /dev/null +++ b/.github/labeler.yml @@ -0,0 +1,83 @@ +# Add/remove 'critical' label if issue contains the words 'urgent' or 'critical' +# Type +"type: game server request": + - '(Server Request)' +"type: bug": + - '(bug)' +"type: feature request": + - '(feature)' +# Commands +"command: backup": + - '(backup)' +"command: console": + - '(console|tmux)' +"command: debug": + - '(debug)' +"command: details": + - '(details)' +"command: fast-dl": + - '(fast-dl|fastdl)' +"command: install": + - '(install)' +"command: mods": + - '(mods)' +"command: monitor": + - '(monitor)' +"command: post-details": + - '(post-details)' +"command: restart": + - '(restart)' +"command: send": + - '(send)' +"command: skeleton": + - '(skeleton)' +"command: start": + - '(start)' +"command: stop": + - '(stop)' +"command: update-lgsm": + - '(update-lgsm)' +"command: update": + - '(update)' +"command: validate": + - '(validate)' +"command: wipe": + - '(wipe)' +# Distros +"distro: AlmaLinux": + - '(Alma)' +"distro: Arch Linux": + - '(Arch)' +"distro: CentOS": + - '(CentOS)' +"distro: Debian": + - '(Debian)' +"distro: Fedora": + - '(Fedora)' +"distro: openSUSE": + - '(openSUSE)' +"distro: Rocky Linux": + - '(Rocky)' +"distro: Slackware": + - '(Slackware)' +"distro: Ubuntu": + - '(Ubuntu)' +# Info +"info: alerts": + - '(alert)' +"info: dependency": + - '(dependency|deps)' +"info: docker": + - '(docker)' +"info: docs": + - '(documentation|docs)' +"info: email": + - '(postfix|sendmail|exim|smtp)' +"info: steamcmd": + - '(steamcmd)' +"info: systemd": + - '(systemd)' +"info: tmux": + - '(tmux)' +"info: website": + - '(website)' diff --git a/.github/workflows/label-sponsors.yml b/.github/workflows/label-sponsors.yml new file mode 100644 index 0000000000..0b7691cbb8 --- /dev/null +++ b/.github/workflows/label-sponsors.yml @@ -0,0 +1,14 @@ +name: Label sponsors +on: + pull_request: + types: [opened, edited] + issues: + types: [opened, edited] +jobs: + build: + name: is-sponsor-label + runs-on: ubuntu-latest + steps: + - uses: JasonEtco/is-sponsor-label-action@v1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/labeler.yml b/.github/workflows/labeler.yml index 30ccb5a03b..8d806009da 100644 --- a/.github/workflows/labeler.yml +++ b/.github/workflows/labeler.yml @@ -1,1394 +1,13 @@ -name: "Set Issue Label and Assignee" +name: "Issue Labeler" on: issues: types: [opened, edited] - pull_request: - types: [opened, edited] jobs: - test: + triage: runs-on: ubuntu-latest steps: - - uses: Naturalclar/issue-action@v2.0.2 - with: - title-or-body: "both" - parameters: ' - [{ - "keywords": [ - "Server Request", - "" - ], - "labels": [ - "type: game server request" - ] - }, - { - "keywords": [ - "backup", - "" - ], - "labels": [ - "command: backup" - ] - }, - { - "keywords": [ - "console", - "" - ], - "labels": [ - "command: console" - ] - }, - { - "keywords": [ - "command: debug", - "" - ], - "labels": [ - "command: debug" - ] - }, - { - "keywords": [ - "command: details", - "" - ], - "labels": [ - "command: details" - ] - }, - { - "keywords": [ - "fast-dl", - "" - ], - "labels": [ - "command: fast-dl" - ] - }, - { - "keywords": [ - "command: install", - "" - ], - "labels": [ - "command: install" - ] - }, - { - "keywords": [ - "command: mods", - "" - ], - "labels": [ - "command: mods" - ] - }, - { - "keywords": [ - "monitor", - "" - ], - "labels": [ - "command: monitor" - ] - }, - { - "keywords": [ - "command: start", - "" - ], - "labels": [ - "command: start" - ] - }, - { - "keywords": [ - "command: stop", - "" - ], - "labels": [ - "command: stop" - ] - }, - { - "keywords": [ - "command: update-lgsm", - "" - ], - "labels": [ - "command: update-lgsm" - ] - }, - { - "keywords": [ - "update", - "" - ], - "labels": [ - "command: update" - ] - }, - { - "keywords": [ - "validate", - "" - ], - "labels": [ - "command: validate" - ] - }, - { - "keywords": [ - "wipe", - "" - ], - "labels": [ - "command: wipe" - ] - }, - { - "keywords": [ - "CentOS", - "" - ], - "labels": [ - "distro: CentOS" - ] - }, - { - "keywords": [ - "Debian", - "" - ], - "labels": [ - "distro: Debian" - ] - }, - { - "keywords": [ - "Fedora", - "" - ], - "labels": [ - "distro: Fedora" - ] - }, - { - "keywords": [ - "Ubuntu", - "" - ], - "labels": [ - "distro: Ubuntu" - ] - }, - { - "keywords": [ - "Rocky", - "" - ], - "labels": [ - "distro: Rocky Linux" - ] - }, - { - "keywords": [ - "Slackware", - "" - ], - "labels": [ - "distro: Slackware" - ] - }, - { - "keywords": [ - "Arch", - "" - ], - "labels": [ - "distro: Arch Linux" - ] - }, - { - "keywords": [ - "SUSE", - "" - ], - "labels": [ - "distro: openSUSE" - ] - }, - { - "keywords": [ - "Alma", - "" - ], - "labels": [ - "distro: AlmaLinux" - ] - }, - { - "keywords": [ - "alert", - "" - ], - "labels": [ - "info: alerts" - ] - }, - { - "keywords": [ - "dependency", - "" - ], - "labels": [ - "info: dependency" - ] - }, - { - "keywords": [ - "docker", - "" - ], - "labels": [ - "info: docker" - ] - }, - { - "keywords": [ - "steamcmd", - "" - ], - "labels": [ - "info: steamcmd" - ] - }, - { - "keywords": [ - "systemd", - "" - ], - "labels": [ - "info: systemd" - ] - }, - { - "keywords": [ - "tmux", - "" - ], - "labels": [ - "info: tmux" - ] - }, - { - "keywords": [ - "bug", - "" - ], - "labels": [ - "type: bug" - ] - }, - { - "keywords": [ - "feature", - "" - ], - "labels": [ - "type: feature request" - ] - }, - { - "keywords": [ - "refactor", - "" - ], - "labels": [ - "type: refactor" - ] - }, - { - "keywords": [ - "7 Days to Die", - "" - ], - "labels": [ - "game: 7 Days to Die" - ] - }, - { - "keywords": [ - "Action Half-Life", - "" - ], - "labels": [ - "" - ] - }, - { - "keywords": [ - "Action: Source", - "" - ], - "labels": [ - "" - ] - }, - { - "keywords": [ - "ARK: Survival Evolved", - "ARK" - ], - "labels": [ - "game: Ark: Survival Evolved" - ] - }, - { - "keywords": [ - "ARMA 3", - "" - ], - "labels": [ - "game:ARMA 3" - ] - }, - { - "keywords": [ - "Assetto Corsa", - "" - ], - "labels": [ - "game:Assetto Corsa" - ] - }, - { - "keywords": [ - "Avorion", - "" - ], - "labels": [ - "game:Avorion" - ] - }, - { - "keywords": [ - "Ballistic Overkill", - "" - ], - "labels": [ - "game:Ballistic Overkill" - ] - }, - { - "keywords": [ - "Barotrauma", - "" - ], - "labels": [ - "game:Barotrauma" - ] - }, - { - "keywords": [ - "Base Defense", - "" - ], - "labels": [ - "game:Base Defense" - ] - }, - { - "keywords": [ - "Battalion 1944", - "" - ], - "labels": [ - "game:Battalion 1944" - ] - }, - { - "keywords": [ - "Battlefield 1942", - "" - ], - "labels": [ - "game:Battlefield 1942" - ] - }, - { - "keywords": [ - "Battlefield: Vietnam", - "" - ], - "labels": [ - "game:Battlefield: Vietnam" - ] - }, - { - "keywords": [ - "Black Mesa: Deathmatch", - "" - ], - "labels": [ - "game:Black Mesa: Deathmatch" - ] - }, - { - "keywords": [ - "Blade Symphony", - "" - ], - "labels": [ - "game:Blade Symphony" - ] - }, - { - "keywords": [ - "BrainBread", - "" - ], - "labels": [ - "game:BrainBread" - ] - }, - { - "keywords": [ - "BrainBread 2", - "" - ], - "labels": [ - "game:BrainBread 2" - ] - }, - { - "keywords": [ - "Call of Duty", - "" - ], - "labels": [ - "game:Call of Duty" - ] - }, - { - "keywords": [ - "Call of Duty 2", - "" - ], - "labels": [ - "game:Call of Duty 2" - ] - }, - { - "keywords": [ - "Call of Duty 4", - "" - ], - "labels": [ - "game:Call of Duty 4" - ] - }, - { - "keywords": [ - "Call of Duty: United Offensive", - "" - ], - "labels": [ - "game:Call of Duty: United Offensive" - ] - }, - { - "keywords": [ - "Call of Duty: World at War", - "" - ], - "labels": [ - "game:Call of Duty: World at War" - ] - }, - { - "keywords": [ - "Chivalry: Medieval Warfare", - "" - ], - "labels": [ - "game:Chivalry: Medieval Warfare" - ] - }, - { - "keywords": [ - "Codename CURE", - "" - ], - "labels": [ - "game:Codename CURE" - ] - }, - { - "keywords": [ - "Colony Survival", - "" - ], - "labels": [ - "game:Colony Survival" - ] - }, - { - "keywords": [ - "Counter-Strike 1.6", - "" - ], - "labels": [ - "game:Counter-Strike 1.6" - ] - }, - { - "keywords": [ - "Counter-Strike: Condition Zero", - "" - ], - "labels": [ - "game:Counter-Strike: Condition Zero" - ] - }, - { - "keywords": [ - "Counter-Strike: Global Offensive", - "" - ], - "labels": [ - "game:Counter-Strike: Global Offensive" - ] - }, - { - "keywords": [ - "Counter-Strike: Source", - "" - ], - "labels": [ - "game:Counter-Strike: Source" - ] - }, - { - "keywords": [ - "Day of Defeat", - "" - ], - "labels": [ - "game:Day of Defeat" - ] - }, - { - "keywords": [ - "Day of Defeat: Source", - "" - ], - "labels": [ - "game:Day of Defeat: Source" - ] - }, - { - "keywords": [ - "Day of Dragons", - "" - ], - "labels": [ - "game:Day of Dragons" - ] - }, - { - "keywords": [ - "Day of Infamy", - "" - ], - "labels": [ - "game:Day of Infamy" - ] - }, - { - "keywords": [ - "Deathmatch Classic", - "" - ], - "labels": [ - "game:Deathmatch Classic" - ] - }, - { - "keywords": [ - "Don't Starve Together" - ], - "labels": [ - "game:Don't Starve Together" - ] - }, - { - "keywords": [ - "Double Action: Boogaloo", - "" - ], - "labels": [ - "game:Double Action: Boogaloo" - ] - }, - { - "keywords": [ - "Dystopia", - "" - ], - "labels": [ - "game:Dystopia" - ] - }, - { - "keywords": [ - "Eco", - "" - ], - "labels": [ - "game:Eco" - ] - }, - { - "keywords": [ - "Empires Mod", - "" - ], - "labels": [ - "game:Empires Mod" - ] - }, - { - "keywords": [ - "ET: Legacy", - "" - ], - "labels": [ - "game:ET: Legacy" - ] - }, - { - "keywords": [ - "Factorio", - "" - ], - "labels": [ - "game:Factorio" - ] - }, - { - "keywords": [ - "Fistful of Frags", - "" - ], - "labels": [ - "game:Fistful of Frags" - ] - }, - { - "keywords": [ - "Garrys Mod", - "" - ], - "labels": [ - "game:Garrys Mod" - ] - }, - { - "keywords": [ - "Half-Life 2: Deathmatch", - "" - ], - "labels": [ - "game:Half-Life 2: Deathmatch" - ] - }, - { - "keywords": [ - "Half-Life Deathmatch: Source", - "" - ], - "labels": [ - "game:Half-Life Deathmatch: Source" - ] - }, - { - "keywords": [ - "Half-Life: Deathmatch", - "" - ], - "labels": [ - "game:Half-Life: Deathmatch" - ] - }, - { - "keywords": [ - "Hurtworld", - "" - ], - "labels": [ - "game:Hurtworld" - ] - }, - { - "keywords": [ - "Insurgency", - "" - ], - "labels": [ - "game:Insurgency" - ] - }, - { - "keywords": [ - "Insurgency: Sandstorm", - "" - ], - "labels": [ - "game:Insurgency: Sandstorm" - ] - }, - { - "keywords": [ - "IOSoccer", - "" - ], - "labels": [ - "game:IOSoccer" - ] - }, - { - "keywords": [ - "Jedi Knight II: Jedi Outcast", - "" - ], - "labels": [ - "game:Jedi Knight II: Jedi Outcast" - ] - }, - { - "keywords": [ - "Just Cause 2", - "" - ], - "labels": [ - "game:Just Cause 2" - ] - }, - { - "keywords": [ - "Just Cause 3", - "" - ], - "labels": [ - "game:Just Cause 3" - ] - }, - { - "keywords": [ - "Killing Floor", - "" - ], - "labels": [ - "game:Killing Floor" - ] - }, - { - "keywords": [ - "Killing Floor 2", - "" - ], - "labels": [ - "game:Killing Floor 2" - ] - }, - { - "keywords": [ - "Last Oasis", - "" - ], - "labels": [ - "game:Last Oasis" - ] - }, - { - "keywords": [ - "Left 4 Dead", - "" - ], - "labels": [ - "game:Left 4 Dead" - ] - }, - { - "keywords": [ - "Left 4 Dead 2", - "" - ], - "labels": [ - "game:Left 4 Dead 2" - ] - }, - { - "keywords": [ - "Medal of Honor: Allied Assault", - "" - ], - "labels": [ - "game:Medal of Honor: Allied Assault" - ] - }, - { - "keywords": [ - "Memories of Mars", - "" - ], - "labels": [ - "game:Memories of Mars" - ] - }, - { - "keywords": [ - "Minecraft", - "" - ], - "labels": [ - "game:Minecraft" - ] - }, - { - "keywords": [ - "Minecraft Bedrock", - "" - ], - "labels": [ - "game:Minecraft Bedrock" - ] - }, - { - "keywords": [ - "MORDHAU", - "" - ], - "labels": [ - "game:MORDHAU" - ] - }, - { - "keywords": [ - "Multi Theft Auto", - "" - ], - "labels": [ - "game:Multi Theft Auto" - ] - }, - { - "keywords": [ - "Mumble", - "" - ], - "labels": [ - "game:Mumble" - ] - }, - { - "keywords": [ - "Natural Selection", - "" - ], - "labels": [ - "game:Natural Selection" - ] - }, - { - "keywords": [ - "Natural Selection 2", - "" - ], - "labels": [ - "game:Natural Selection 2" - ] - }, - { - "keywords": [ - "No More Room in Hell", - "" - ], - "labels": [ - "game:No More Room in Hell" - ] - }, - { - "keywords": [ - "NS2: Combat", - "" - ], - "labels": [ - "game:NS2: Combat" - ] - }, - { - "keywords": [ - "Nuclear Dawn", - "" - ], - "labels": [ - "game:Nuclear Dawn" - ] - }, - { - "keywords": [ - "Onset", - "" - ], - "labels": [ - "game:Onset" - ] - }, - { - "keywords": [ - "Opposing Force", - "" - ], - "labels": [ - "game:Opposing Force" - ] - }, - { - "keywords": [ - "PaperMC", - "" - ], - "labels": [ - "game:PaperMC" - ] - }, - { - "keywords": [ - "Pavlov VR", - "" - ], - "labels": [ - "game:Pavlov VR" - ] - }, - { - "keywords": [ - "Pirates Vikings & Knights II", - "" - ], - "labels": [ - "game:Pirates Vikings & Knights II" - ] - }, - { - "keywords": [ - "Post Scriptum: The Bloody Seventh", - "" - ], - "labels": [ - "game:Post Scriptum: The Bloody Seventh" - ] - }, - { - "keywords": [ - "Project Cars", - "" - ], - "labels": [ - "game:Project Cars" - ] - }, - { - "keywords": [ - "Project Zomboid", - "" - ], - "labels": [ - "game:Project Zomboid" - ] - }, - { - "keywords": [ - "Quake 2", - "" - ], - "labels": [ - "game:Quake 2" - ] - }, - { - "keywords": [ - "Quake 3: Arena", - "" - ], - "labels": [ - "game:Quake 3: Arena" - ] - }, - { - "keywords": [ - "Quake Live", - "" - ], - "labels": [ - "game:Quake Live" - ] - }, - { - "keywords": [ - "Quake World", - "" - ], - "labels": [ - "game:Quake World" - ] - }, - { - "keywords": [ - "Red Orchestra: Ostfront 41-45", - "" - ], - "labels": [ - "game:Red Orchestra: Ostfront 41-45" - ] - }, - { - "keywords": [ - "Return to Castle Wolfenstein", - "" - ], - "labels": [ - "game:Return to Castle Wolfenstein" - ] - }, - { - "keywords": [ - "Ricochet", - "" - ], - "labels": [ - "game:Ricochet" - ] - }, - { - "keywords": [ - "Rising World", - "" - ], - "labels": [ - "game:Rising World" - ] - }, - { - "keywords": [ - "Rust", - "" - ], - "labels": [ - "game:Rust" - ] - }, - { - "keywords": [ - "San Andreas Multiplayer", - "" - ], - "labels": [ - "game:San Andreas Multiplayer" - ] - }, - { - "keywords": [ - "SCP: Secret Laboratory", - "" - ], - "labels": [ - "game:SCP: Secret Laboratory" - ] - }, - { - "keywords": [ - "SCP: Secret Laboratory ServerMod", - "" - ], - "labels": [ - "game:SCP: Secret Laboratory ServerMod" - ] - }, - { - "keywords": [ - "Soldat", - "" - ], - "labels": [ - "game:Soldat" - ] - }, - { - "keywords": [ - "Soldier Of Fortune 2: Gold Edition", - "" - ], - "labels": [ - "game:Soldier Of Fortune 2: Gold Edition" - ] - }, - { - "keywords": [ - "SourceForts Classic", - "" - ], - "labels": [ - "game:SourceForts Classic" - ] - }, - { - "keywords": [ - "Squad", - "" - ], - "labels": [ - "game:Squad" - ] - }, - { - "keywords": [ - "Starbound", - "" - ], - "labels": [ - "game:Starbound" - ] - }, - { - "keywords": [ - "Stationeers", - "" - ], - "labels": [ - "game:Stationeers" - ] - }, - { - "keywords": [ - "StickyBots", - "" - ], - "labels": [ - "game:StickyBots" - ] - }, - { - "keywords": [ - "Survive the Nights", - "" - ], - "labels": [ - "game:Survive the Nights" - ] - }, - { - "keywords": [ - "Sven Co-op", - "" - ], - "labels": [ - "game:Sven Co-op" - ] - }, - { - "keywords": [ - "Team Fortress 2", - "" - ], - "labels": [ - "game:Team Fortress 2" - ] - }, - { - "keywords": [ - "Team Fortress Classic", - "" - ], - "labels": [ - "game:Team Fortress Classic" - ] - }, - { - "keywords": [ - "Teamspeak 3", - "" - ], - "labels": [ - "game:Teamspeak 3" - ] - }, - { - "keywords": [ - "Teeworlds", - "" - ], - "labels": [ - "game:Teeworlds" - ] - }, - { - "keywords": [ - "Terraria", - "" - ], - "labels": [ - "game:Terraria" - ] - }, - { - "keywords": [ - "The Specialists", - "" - ], - "labels": [ - "game:The Specialists" - ] - }, - { - "keywords": [ - "Tower Unite", - "" - ], - "labels": [ - "game:Tower Unite" - ] - }, - { - "keywords": [ - "Unreal Tournament", - "" - ], - "labels": [ - "game:Unreal Tournament" - ] - }, - { - "keywords": [ - "Unreal Tournament 2004", - "" - ], - "labels": [ - "game:Unreal Tournament 2004" - ] - }, - { - "keywords": [ - "Unreal Tournament 3", - "" - ], - "labels": [ - "game:Unreal Tournament 3" - ] - }, - { - "keywords": [ - "Unreal Tournament 99", - "" - ], - "labels": [ - "game:Unreal Tournament 99" - ] - }, - { - "keywords": [ - "Unturned", - "" - ], - "labels": [ - "game:Unturned" - ] - }, - { - "keywords": [ - "Valheim", - "" - ], - "labels": [ - "game:Valheim" - ] - }, - { - "keywords": [ - "Vampire Slayer", - "" - ], - "labels": [ - "game:Vampire Slayer" - ] - }, - { - "keywords": [ - "Vintage Story", - "" - ], - "labels": [ - "game:Vintage Story" - ] - }, - { - "keywords": [ - "Warfork", - "" - ], - "labels": [ - "game:Warfork" - ] - }, - { - "keywords": [ - "WaterfallMC", - "" - ], - "labels": [ - "game:WaterfallMC" - ] - }, - { - "keywords": [ - "Wolfenstein: Enemy Territory", - "" - ], - "labels": [ - "game:Wolfenstein: Enemy Territory" - ] - }, - { - "keywords": [ - "Wurm Unlimited", - "" - ], - "labels": [ - "game:Wurm Unlimited" - ] - }, - { - "keywords": [ - "Zombie Master: Reborn", - "" - ], - "labels": [ - "game:Zombie Master: Reborn" - ] - }, - { - "keywords": [ - "Zombie Panic! Source", - "" - ], - "labels": [ - "game:Zombie Panic! Source" - ] - } - ] - ' - github-token: "${{ secrets.GITHUB_TOKEN }}" + - uses: github/issue-labeler@v2.0 + with: + repo-token: "${{ secrets.GITHUB_TOKEN }}" + configuration-path: .github/labeler.yml