Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(newserver): add FabricMC Server #3475

Open
wants to merge 10 commits into
base: develop
Choose a base branch
from
178 changes: 178 additions & 0 deletions lgsm/config-default/config-lgsm/fabmcserver/_default.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,178 @@
##################################
######## Default Settings ########
##################################
# DO NOT EDIT, ANY CHANGES WILL BE OVERWRITTEN!
# Copy settings from here and use them in either:
# common.cfg - applies settings to every instance.
# [instance].cfg - applies settings to a specific instance.

#### Game Server Settings ####

## Predefined Parameters | https://docs.linuxgsm.com/configuration/start-parameters
javaram="1024" # -Xmx$1024M

## Server Parameters | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
startparameters="nogui"

## Release Settings | https://docs.linuxgsm.com/game-servers/minecraft#release-settings
# Version (latest|1.16.5)
mcversion="latest"

#### LinuxGSM Settings ####

## LinuxGSM Stats
# Send useful stats to LinuxGSM developers.
# https://docs.linuxgsm.com/configuration/linuxgsm-stats
# (on|off)
stats="off"

## Notification Alerts
# (on|off)

# Display IP | https://docs.linuxgsm.com/alerts#display-ip
displayip=""

# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"

# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"

# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="[email protected]"
emailfrom=""

# Gotify Alerts | https://docs.linuxgsm.com/alerts/gotify
gotifyalert="off"
gotifytoken="token"
gotifywebhook="webhook"

# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"

# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailgunapiregion="us"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="[email protected]"
mailgunemail="[email protected]"

# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""

# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
pushoveruserkey="userkey"

# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat
rocketchatalert="off"
rocketchatwebhook="webhook"
rocketchattoken=""

# Slack Alerts | https://docs.linuxgsm.com/alerts/slack
slackalert="off"
slackwebhook="webhook"

# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring".
# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help".
telegramapi="api.telegram.org"
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
curlcustomstring=""

## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"

## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"

## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"

## Monitor | https://docs.linuxgsm.com/commands/monitor
# Query delay time
querydelay="1"

## ANSI Colors | https://docs.linuxgsm.com/features/ansi-colors
ansi="on"

#### Advanced Settings ####

## Message Display Time | https://docs.linuxgsm.com/features/message-display-time
sleeptime="0.5"

## Stop Mode | https://docs.linuxgsm.com/features/stop-mode
# 1: tmux kill
# 2: CTRL+c
# 3: quit
# 4: quit 120s
# 5: stop
# 6: q
# 7: exit
# 8: 7 Days to Die
# 9: GoldSrc
# 10: Avorion
# 11: end
stopmode="5"

## Query mode
# 1: session only
# 2: gamedig (gsquery fallback)
# 3: gamedig
# 4: gsquery
# 5: tcp
querymode="2"
querytype="minecraft"

## Console type
consoleverbose="yes"
consoleinteract="yes"

## Game Server Details
# Do not edit
gamename="FabricMC"
engine="lwjgl2"
glibc="null"

#### Directories ####
# Edit with care

## Game Server Directories
systemdir="${serverfiles}"
executabledir="${serverfiles}"
preexecutable="java -Xmx${javaram}M -jar"
executable="./fabric-server-launch.jar"
servercfgdir="${systemdir}"
servercfg="server.properties"
servercfgdefault="server.properties"
servercfgfullpath="${servercfgdir}/${servercfg}"

## Backup Directory
backupdir="${lgsmdir}/backup"

## Logging Directories
logdir="${rootdir}/log"
gamelogdir="${systemdir}/logs"
lgsmlogdir="${logdir}/script"
consolelogdir="${logdir}/console"
lgsmlog="${lgsmlogdir}/${selfname}-script.log"
consolelog="${consolelogdir}/${selfname}-console.log"
alertlog="${lgsmlogdir}/${selfname}-alert.log"
postdetailslog="${lgsmlogdir}/${selfname}-postdetails.log"

## Logs Naming
lgsmlogdate="${lgsmlogdir}/${selfname}-script-$(date '+%Y-%m-%d-%H:%M:%S').log"
consolelogdate="${consolelogdir}/${selfname}-console-$(date '+%Y-%m-%d-%H:%M:%S').log"
1 change: 1 addition & 0 deletions lgsm/data/almalinux-8.csv
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ dys
eco,libgdiplus
em
etl
fabmc,java-11-openjdk
fctr
fof
gmod,ncurses-libs.i686
Expand Down
1 change: 1 addition & 0 deletions lgsm/data/centos-7.csv
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ dys
eco,libgdiplus
em
etl
fabmc,java-11-openjdk
fctr
fof
gmod,ncurses-libs.i686
Expand Down
1 change: 1 addition & 0 deletions lgsm/data/centos-8.csv
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ dys
eco,libgdiplus
em
etl
fabmc,java-11-openjdk
fctr
fof
gmod,ncurses-libs.i686
Expand Down
1 change: 1 addition & 0 deletions lgsm/data/debian-10.csv
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ dys
eco,libgdiplus
em
etl
fabmc,openjdk-11-jre
fctr
fof
gmod,libtinfo5:i386
Expand Down
1 change: 1 addition & 0 deletions lgsm/data/debian-11.csv
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ dys
eco,libgdiplus
em
etl
fabmc,openjdk-17-jre
fctr
fof
gmod,libtinfo5:i386
Expand Down
1 change: 1 addition & 0 deletions lgsm/data/debian-9.csv
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ dys
eco,libgdiplus
em
etl
fabmc,openjdk-8-jre
fctr
fof
gmod,libtinfo5:i386
Expand Down
1 change: 1 addition & 0 deletions lgsm/data/rhel-7.csv
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ dys
eco,libgdiplus
em
etl
fabmc,java-11-openjdk
fctr
fof
gmod,ncurses-libs.i686
Expand Down
1 change: 1 addition & 0 deletions lgsm/data/rhel-8.csv
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ dys
eco,libgdiplus
em
etl
fabmc,java-11-openjdk
fctr
fof
gmod,ncurses-libs.i686
Expand Down
1 change: 1 addition & 0 deletions lgsm/data/rocky-8.csv
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ dys
eco,libgdiplus
em
etl
fabmc,java-11-openjdk
fctr
fof
gmod,ncurses-libs.i686
Expand Down
1 change: 1 addition & 0 deletions lgsm/data/serverlist.csv
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@ dys,dysserver,Dystopia
eco,ecoserver,Eco
em,emserver,Empires Mod
etl,etlserver,ET: Legacy
fabmc,fabmcserver,FabricMC
fctr,fctrserver,Factorio
fof,fofserver,Fistful of Frags
gmod,gmodserver,Garrys Mod
Expand Down
1 change: 1 addition & 0 deletions lgsm/data/ubuntu-16.04.csv
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ dys
eco,libgdiplus
em
etl
fabmc,openjdk-8-jre
fctr
fof
gmod,libtinfo5:i386
Expand Down
1 change: 1 addition & 0 deletions lgsm/data/ubuntu-18.04.csv
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ dys
eco,libgdiplus
em
etl
fabmc,openjdk-11-jre
fctr
fof
gmod,libtinfo5:i386
Expand Down
1 change: 1 addition & 0 deletions lgsm/data/ubuntu-20.04.csv
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ dys
eco,libgdiplus
em
etl
fabmc,openjdk-17-jre
fctr
fof
gmod,libtinfo5:i386
Expand Down
1 change: 1 addition & 0 deletions lgsm/data/ubuntu-21.04.csv
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ dys
eco,libgdiplus
em
etl
fabmc,openjdk-17-jre
fctr
fof
gmod,libtinfo5:i386
Expand Down
1 change: 1 addition & 0 deletions lgsm/data/ubuntu-22.04.csv
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ dys
eco,libgdiplus
em
etl
fabmc,openjdk-17-jre
fctr
fof
gmod,libtinfo5:i386
Expand Down
Empty file modified lgsm/functions/check_deps.sh
100755 → 100644
Empty file.
2 changes: 1 addition & 1 deletion lgsm/functions/check_system_requirements.sh
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ elif [ "${shortname}" == "arma3" ]; then
elif [ "${shortname}" == "rust" ]; then
ramrequirementmb="4000"
ramrequirementgb="4"
elif [ "${shortname}" == "mc" ]||[ "${shortname}" == "pmc" ]||[ "${shortname}" == "wmc" ]; then
elif [ "${shortname}" == "mc" ]||[ "${shortname}" == "fabmc" ]||[ "${shortname}" == "pmc" ]||[ "${shortname}" == "wmc" ]; then
ramrequirementmb="1000"
ramrequirementgb="1"
elif [ "${shortname}" == "pstbs" ]; then
Expand Down
2 changes: 2 additions & 0 deletions lgsm/functions/command_update.sh
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,8 @@ elif [ "${shortname}" == "mcb" ]; then
update_minecraft_bedrock.sh
elif [ "${shortname}" == "pmc" ]||[ "${shortname}" == "wmc" ]; then
update_papermc.sh
elif [ "${shortname}" == "fabmc" ]; then
update_fabricmc.sh
elif [ "${shortname}" == "mumble" ]; then
update_mumble.sh
elif [ "${shortname}" == "fctr" ]; then
Expand Down
5 changes: 5 additions & 0 deletions lgsm/functions/core_functions.sh
Original file line number Diff line number Diff line change
Expand Up @@ -645,6 +645,11 @@ functionfile="${FUNCNAME[0]}"
fn_fetch_function
}

update_fabricmc.sh(){
functionfile="${FUNCNAME[0]}"
fn_fetch_function
}

update_mumble.sh(){
functionfile="${FUNCNAME[0]}"
fn_fetch_function
Expand Down
2 changes: 1 addition & 1 deletion lgsm/functions/info_game.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2249,7 +2249,7 @@ elif [ "${shortname}" == "kf2" ]; then
fn_info_game_kf2
elif [ "${shortname}" == "lo" ]; then
fn_info_game_lo
elif [ "${shortname}" == "mc" ]||[ "${shortname}" == "pmc" ]; then
elif [ "${shortname}" == "mc" ]||[ "${shortname}" == "pmc" ]||[ "${shortname}" == "fabmc" ]; then
fn_info_game_mc
elif [ "${shortname}" == "mcb" ]; then
fn_info_game_mcb
Expand Down
4 changes: 2 additions & 2 deletions lgsm/functions/info_messages.sh
Original file line number Diff line number Diff line change
Expand Up @@ -685,7 +685,7 @@ fn_info_message_ports(){
echo -e "ss -tuplwn | grep AvorionServer"
elif [ "${shortname}" == "bf1942" ]; then
echo -e "ss -tuplwn | grep bf1942_lnxded"
elif [ "${shortname}" == "mc" ]||[ "${shortname}" == "pmc" ]||[ "${shortname}" == "rw" ]||[ "${shortname}" == "wmc" ]; then
elif [ "${shortname}" == "mc" ]||[ "${shortname}" == "pmc" ]||[ "${shortname}" == "rw" ]||[ "${shortname}" == "wmc" ]||[ "${shortname}" == "fabmc" ]||; then
echo -e "ss -tuplwn | grep java"
elif [ "${shortname}" == "terraria" ]; then
echo -e "ss -tuplwn | grep Main"
Expand Down Expand Up @@ -1659,7 +1659,7 @@ fn_info_message_select_engine(){
fn_info_message_kf2
elif [ "${shortname}" == "lo" ]; then
fn_info_message_lo
elif [ "${shortname}" == "mc" ]||[ "${shortname}" == "pmc" ]||[ "${shortname}" == "wmc" ]; then
elif [ "${shortname}" == "mc" ]||[ "${shortname}" == "pmc" ]||[ "${shortname}" == "wmc" ]||[ "${shortname}" == "fabmc" ]; then
fn_info_message_mc
elif [ "${shortname}" == "mcb" ]; then
fn_info_message_mcb
Expand Down
2 changes: 1 addition & 1 deletion lgsm/functions/install_config.sh
Original file line number Diff line number Diff line change
Expand Up @@ -519,7 +519,7 @@ elif [ "${shortname}" == "l4d2" ]; then
fn_default_config_remote
fn_set_config_vars
fn_list_config_locations
elif [ "${shortname}" == "mc" ]||[ "${shortname}" == "pmc" ]; then
elif [ "${shortname}" == "mc" ]||[ "${shortname}" == "fabmc" ]||[ "${shortname}" == "pmc" ]; then
gamedirname="Minecraft"
array_configs+=( server.properties )
fn_fetch_default_config
Expand Down
4 changes: 2 additions & 2 deletions lgsm/functions/install_eula.sh
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ functionselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")"

if [ "${shortname}" == "ts3" ]; then
eulaurl="https://www.teamspeak.com/en/privacy-and-terms"
elif [ "${shortname}" == "mc" ]||[ "${shortname}" == "pmc" ]; then
elif [ "${shortname}" == "mc" ]||[ "${shortname}" == "fabmc" ]||[ "${shortname}" == "pmc" ]; then
eulaurl="https://account.mojang.com/documents/minecraft_eula"
elif [ "${shortname}" == "ut" ]; then
eulaurl="https://www.epicgames.com/unrealtournament/unreal-tournament-pre-alpha-test-development-build-eula"
Expand Down Expand Up @@ -41,7 +41,7 @@ fi

if [ "${shortname}" == "ts3" ]; then
touch "${executabledir}/.ts3server_license_accepted"
elif [ "${shortname}" == "mc" ]||[ "${shortname}" == "pmc" ]; then
elif [ "${shortname}" == "mc" ]||[ "${shortname}" == "fabmc" ]||[ "${shortname}" == "pmc" ]; then
touch "${serverfiles}/eula.txt"
echo -e "eula=true" > "${serverfiles}/eula.txt"
elif [ "${shortname}" == "ut" ]; then
Expand Down
3 changes: 3 additions & 0 deletions lgsm/functions/install_server_files.sh
Original file line number Diff line number Diff line change
Expand Up @@ -87,6 +87,9 @@ elif [ "${shortname}" == "mcb" ]; then
elif [ "${shortname}" == "pmc" ]; then
install_eula.sh
update_papermc.sh
elif [ "${shortname}" == "fabmc" ]; then
install_eula.sh
update_fabricmc.sh
elif [ "${shortname}" == "wmc" ]; then
update_papermc.sh
elif [ "${shortname}" == "mumble" ]; then
Expand Down
Loading