diff --git a/README.md b/README.md index 15d497f..f5538cf 100644 --- a/README.md +++ b/README.md @@ -60,6 +60,27 @@ Enjoy ! **NOTE** : Some librairies may be missing, you need to install it one by one (test to launch ./et.x86 and see missing libs) +## Create a systemd service (server creation **ONLY**) + +In order to launch the server properly, a systemd service is a right solution instead of the **serverctl** sh script. Todo so : + +* put the **[wolfenstein-et.service](./service/wolfenstein-et.service)** file in **/etc/systemd/system** directory (must be **root**) +* replace `` and `` placeholder with your configuration +* enable the service (on reboot the service will autostart) +```bash +# as root +systemctl enable wolfenstein-et +``` +* put the **[launch_server.bash](./service/launch_server.bash)** wherever you want (do not forget exec rights for your ``) +* start the service +```bash +service wolfenstein-et start +``` +* check the service status +```bash +service wolfenstein-et status +``` + ## Settings More useful informations : https://wiki.archlinux.org/title/Wolfenstein:_Enemy_Territory diff --git a/service/launch_server.bash b/service/launch_server.bash new file mode 100644 index 0000000..6138256 --- /dev/null +++ b/service/launch_server.bash @@ -0,0 +1,37 @@ +#!/bin/bash + +###################################################### +# +# Launch Wolfenstein Enemy Territory server +# MUST be launched with systemctl (work as a service) +# helped by the `serverctl` script +# +##################################################### + +ET_BASE=/usr/local/games/enemy-territory +ET_HOME=/opt/games/enemy-territory/server +ET_IP= +ET_PORT=27960 +ET_INSTANCE= + +SERVER_BASENAME=etded.x86 + +LOGFILE=${ET_HOME}/logs/et_server_$(date +"%Y-%m-%d_%H-%M-%S").log + + $ET_BASE/$SERVER_BASENAME \ + \ + +set com_hunkmegs "128" \ + +set com_zonemegs "48" \ + +set dedicated "2" \ + +set fs_basepath "$ET_BASE" \ + +set fs_game "jaymod" \ + +set fs_homepath "$ET_HOME" \ + +set net_ip "$ET_IP" \ + +set net_port "$ET_PORT" \ + +set omnibot_enable "1" \ + +set sv_punkbuster "1" \ + +set ttycon "0" \ + +set xx_instance "$ET_INSTANCE" \ + \ + +exec "server.cfg" \ + > $LOGFILE 2>&1 \ No newline at end of file diff --git a/service/wolfenstein-et.service b/service/wolfenstein-et.service new file mode 100644 index 0000000..6290da1 --- /dev/null +++ b/service/wolfenstein-et.service @@ -0,0 +1,10 @@ +[Unit] +Description=Wolfentein Enemy Territory - server + +[Service] +Type=simple +User= +ExecStart=/launch_server.bash + +[Install] +WantedBy=multi-user.target \ No newline at end of file