summaryrefslogtreecommitdiff
path: root/games-server/bedrock-server
diff options
context:
space:
mode:
Diffstat (limited to 'games-server/bedrock-server')
-rw-r--r--games-server/bedrock-server/Manifest8
-rw-r--r--games-server/bedrock-server/bedrock-server-1.16.1.02.ebuild (renamed from games-server/bedrock-server/bedrock-server-1.14.60.5.ebuild)0
-rw-r--r--games-server/bedrock-server/bedrock-server-1.16.20.03-r1.ebuild53
-rw-r--r--games-server/bedrock-server/files/bedrock-server.confd7
-rw-r--r--games-server/bedrock-server/files/bedrock-server.initd-r262
5 files changed, 128 insertions, 2 deletions
diff --git a/games-server/bedrock-server/Manifest b/games-server/bedrock-server/Manifest
index 71a3aec2fb1a..7827de2cbec7 100644
--- a/games-server/bedrock-server/Manifest
+++ b/games-server/bedrock-server/Manifest
@@ -1,4 +1,8 @@
+AUX bedrock-server.confd 317 BLAKE2B 47308c295519e0c92653a738aafd3044120c8f86d70050d639a0a1b05cf3cc1c8858bab713cc3b63cabb61c821d8292e95c9011c7af6593a4d8070722733f49d SHA512 9f6300b46680663b5a58a9b873fbbfd912c04fb3272a5528b64b6a32e5492ff1b66e9eafea65d17ff36defa006727b307ac130461846cd6742512bad3061db58
AUX bedrock-server.initd-r1 1558 BLAKE2B 5d65fe612092777002e9e4b0b62041aa1637e6c6aaaebb64c1be956cfa7ceb355afb337c4d84ef6e66c25167a3544c9bb0791843cb2bf98aca7c712eef02e143 SHA512 fa2c99461650d99ad45e63d7b2166431882e6fb5a73795a468a837a46a3ab47ce641ce0aee8e4ca220f25422af128746f24125da6a3fbb35829f27c1bd397c23
-DIST bedrock-server-1.14.60.5.zip 288044278 BLAKE2B 11fa18f892b95eac8fa2108adce6af14b213f4a409c82d4a59b9cf17ce2d8921f1ef1d6e74cc53757f5453daa84298c36230884f15e56408b74e3a70ca50b74b SHA512 d295f7090fb26c87d8259cd5e7581699d59292425362139035929548e27055e78c3a8c64b02f99c3da24d8edf8657f3ca656253c7979d30b1495ebf6000b9308
-EBUILD bedrock-server-1.14.60.5.ebuild 1058 BLAKE2B aa58efb9b838a7f9c1f0659d0687fd985fc210ade149b0f64f89f3da19e6ea248cf98e7b9b9cfad6d1345ee4032ef8db67d962d95981c366a5a7c8c04da8fc77 SHA512 4eebb8ac43662595706b80d06d0844ec083f44478554073e4843b548eeddebf11ce890d66f160b0b205a2f1c2d20e76ef9f7627d8dc397594816619cd49122df
+AUX bedrock-server.initd-r2 2026 BLAKE2B ed212537e0a0d1a5e714aa0f4e72915ba3142580a1c1e46f9f88d06b8d8176de0bd5ab5134e915537583d20e4e3dbfba9e10ab1281bd84b8361f6ca01d1eab81 SHA512 8a6ab7277604cdc4677fde5d745e0c02a557538a4d73adc44873f49a01715eb878b48a56e51b6019aa814325543b509f8403cf351570d1b35ef1e07e98828c9c
+DIST bedrock-server-1.16.1.02.zip 69830343 BLAKE2B c35d68f8527df9c6b96662ded02f8195ecb0bc11fa2cd93b3a0f4522cf6cbe4332f76749cc5d688179fa810edaf7c3dbb8244ad7bef1a2ee73205ab0852cc9ac SHA512 c8a79167c22e86e93e38c5a1e3d35911247011e954d49539cb8a33eb1345d49c085a1682efd4dda9681a0d1123f9caac3c4deba88e48fcccf4d1f0f7dea878b8
+DIST bedrock-server-1.16.20.03.zip 69934892 BLAKE2B 17beeff7a00b47c99eaf2d3552c3ec1af8902c16e945e6df745ba5c82cc201effde8083868a18ae58920af8bd3517d02393ca9ab3533b858a4ef84aa539d6eb2 SHA512 b7b6621dfa6855ca15a3bdd2e6f55de48d5e53b1afd0adaf0a2f595fd3b962831e0cef65b0eb2d18c4dce19baf18bbbfb6d314b2026ae8a03adf4ff9a568c314
+EBUILD bedrock-server-1.16.1.02.ebuild 1058 BLAKE2B aa58efb9b838a7f9c1f0659d0687fd985fc210ade149b0f64f89f3da19e6ea248cf98e7b9b9cfad6d1345ee4032ef8db67d962d95981c366a5a7c8c04da8fc77 SHA512 4eebb8ac43662595706b80d06d0844ec083f44478554073e4843b548eeddebf11ce890d66f160b0b205a2f1c2d20e76ef9f7627d8dc397594816619cd49122df
+EBUILD bedrock-server-1.16.20.03-r1.ebuild 1119 BLAKE2B b76800f2862d9a9237cb22b877a03b607b84f7cf12572d75b0b52bb0360c641033e53a3f14ab82c62ce44af71ac2690e7d28a0ba9530fd3cb1261446272a00e1 SHA512 1672257c9b81808bd913712167d152a981f5cf9deca0224a057e4c25f5bbacef0b7dcf6fe72080efd47b807d3b7b00639db344c143468c2d95f82663bcb9e1d4
MISC metadata.xml 675 BLAKE2B 3ec51700c778a9fc9aaf65c9d1a3eac6f55a7db55a24a63c6c1e3890a0e84ab0cf85eadb9b6044529841d87570a47e8674dfe94405587ee2a54f496aedbde374 SHA512 4c1236b575d84e2cb657477c446b0a09e150e19db654acc24ff5fa9e6ad5953c5b14901192845714476c8a3c894e6a32f570c17aedd68e244bd4d93d13fd92b5
diff --git a/games-server/bedrock-server/bedrock-server-1.14.60.5.ebuild b/games-server/bedrock-server/bedrock-server-1.16.1.02.ebuild
index ceeced788eae..ceeced788eae 100644
--- a/games-server/bedrock-server/bedrock-server-1.14.60.5.ebuild
+++ b/games-server/bedrock-server/bedrock-server-1.16.1.02.ebuild
diff --git a/games-server/bedrock-server/bedrock-server-1.16.20.03-r1.ebuild b/games-server/bedrock-server/bedrock-server-1.16.20.03-r1.ebuild
new file mode 100644
index 000000000000..a60cb02addb6
--- /dev/null
+++ b/games-server/bedrock-server/bedrock-server-1.16.20.03-r1.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DESCRIPTION="The official bedrock (non-java) based server for the sandbox video game"
+HOMEPAGE="https://www.minecraft.net/"
+SRC_URI="https://minecraft.azureedge.net/bin-linux/${P}.zip"
+
+LICENSE="Mojang"
+SLOT="0"
+KEYWORDS="-* ~amd64"
+
+RDEPEND="
+ acct-group/bedrock
+ acct-user/bedrock
+ app-misc/dtach
+ dev-libs/openssl:0/1.1
+ net-misc/curl[ssl]
+"
+
+BDEPEND="app-arch/unzip"
+
+RESTRICT="bindist mirror"
+
+S="${WORKDIR}"
+
+DOCS=(
+ "bedrock_server_how_to.html"
+ "release-notes.txt"
+)
+
+QA_PREBUILT="
+ opt/bedrock-server/bedrock_server
+ opt/bedrock-server/libCrypto.so
+"
+
+src_install() {
+ exeinto /opt/bedrock-server
+ doexe bedrock_server libCrypto.so
+
+ insinto /opt/bedrock-server
+ doins {permissions,whitelist}.json server.properties
+ doins -r {behavior,resource}_packs definitions structures
+
+ dodir /opt/bin
+ dosym ../bedrock-server/bedrock_server /opt/bin/bedrock-server
+
+ newinitd "${FILESDIR}"/bedrock-server.initd-r2 bedrock-server
+ newconfd "${FILESDIR}"/bedrock-server.confd bedrock-server
+
+ einstalldocs
+}
diff --git a/games-server/bedrock-server/files/bedrock-server.confd b/games-server/bedrock-server/files/bedrock-server.confd
new file mode 100644
index 000000000000..d4185934e066
--- /dev/null
+++ b/games-server/bedrock-server/files/bedrock-server.confd
@@ -0,0 +1,7 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Dtach options, which will used, when the `attach` extra command is called.
+# By default, CTRL+D is used, and no redraw is done,
+# when you want to detach from the attached console.
+DTACH_OPTS="-e '^D' -r none"
diff --git a/games-server/bedrock-server/files/bedrock-server.initd-r2 b/games-server/bedrock-server/files/bedrock-server.initd-r2
new file mode 100644
index 000000000000..1ff60aa7816f
--- /dev/null
+++ b/games-server/bedrock-server/files/bedrock-server.initd-r2
@@ -0,0 +1,62 @@
+#!/sbin/openrc-run
+# Copyright 1999-2020 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}"
+
+description_attach="Attaches to the session (interactive console) of the Minecraft Bedrock server"
+extra_started_commands="attach"
+
+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
+}
+
+attach() {
+ pidnumber="$(cat ${pidfile})"
+ dtach_tmpfile="$(cat /proc/${pidnumber}/cmdline | tr '\0' ' ' | awk '{print $3}')"
+
+ if [ -S "${dtach_tmpfile}" ]; then
+ eval "${command}" -a "${dtach_tmpfile}" "${DTACH_OPTS}"
+ else
+ eerror "The determined socket file for dtach could not be found!"
+ eerror "Did the process crash?"
+ fi
+}