summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorConrad Kostecki <conikost@gentoo.org>2019-12-12 21:30:22 +0100
committerConrad Kostecki <conikost@gentoo.org>2019-12-13 01:14:19 +0100
commit577638d22e4958bd56e51f71abab72d43b870ec2 (patch)
tree2395e105fb6a6fb25a98a86b91eabec4acb733da /games-server/bedrock-server/files
parentdev-lang/php: fix MissingUseDepDefault (diff)
downloadgentoo-577638d22e4958bd56e51f71abab72d43b870ec2.tar.gz
gentoo-577638d22e4958bd56e51f71abab72d43b870ec2.tar.bz2
gentoo-577638d22e4958bd56e51f71abab72d43b870ec2.zip
games-server/bedrock-server: bump to version 1.14.0.9
Also changed from app-misc/screen to app-misc/dtach, to use a lightweight alternative for the interactive process. Package-Manager: Portage-2.3.81, Repoman-2.3.20 Signed-off-by: Conrad Kostecki <conikost@gentoo.org>
Diffstat (limited to 'games-server/bedrock-server/files')
-rw-r--r--games-server/bedrock-server/files/bedrock-server.initd-r147
1 files changed, 47 insertions, 0 deletions
diff --git a/games-server/bedrock-server/files/bedrock-server.initd-r1 b/games-server/bedrock-server/files/bedrock-server.initd-r1
new file mode 100644
index 000000000000..5f71b80edb21
--- /dev/null
+++ b/games-server/bedrock-server/files/bedrock-server.initd-r1
@@ -0,0 +1,47 @@
+#!/sbin/openrc-run
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+if [ "${SVCNAME}" = "bedrock-server" ]; then
+ instance="main"
+else
+ instance="${SVCNAME#*.}"
+fi
+
+bedrock_command="/opt/bin/bedrock-server"
+bedrock_path="/var/lib/bedrock-server"
+bedrock_path_data="/opt/bedrock-server"
+bedrock_path_instance="${bedrock_path}/${instance}"
+dtach_tmpfile="$(mktemp -u)"
+name="Minecraft Bedrock server (${instance})"
+pidfile="/run/bedrock-server.${instance}.pid"
+start_stop_daemon_args="--chdir ${bedrock_path_instance}"
+
+command="/usr/bin/dtach"
+command_background="true"
+command_args="-N ${dtach_tmpfile} ${bedrock_command}"
+command_group="bedrock"
+command_user="bedrock"
+
+depend() {
+ use net
+}
+
+start_pre() {
+ checkpath -d -o "${command_user}:${command_group}" -q "${bedrock_path}" "${bedrock_path_instance}"
+
+ local bedrock_configs=( "permissions.json" "server.properties" "whitelist.json" )
+ for bedrock_config in ${bedrock_configs[@]}; do
+ if [ ! -f "${bedrock_path_instance}/${bedrock_config}" ]; then
+ cp "${bedrock_path_data}/${bedrock_config}" "${bedrock_path_instance}"
+ checkpath -f -o "${command_user}:${command_group}" -q "${bedrock_path_instance}/${bedrock_config}"
+ fi
+ done
+
+ local bedrock_ressources=( "behavior_packs" "definitions" "resource_packs" "structures" )
+ for bedrock_ressource in ${bedrock_ressources[@]}; do
+ if [ ! -L "${bedrock_path_instance}/${bedrock_ressource}" ]; then
+ ln -sf "${bedrock_path_data}/${bedrock_ressource}" "${bedrock_path_instance}"
+ fi
+ done
+}