diff --git a/PKGBUILD b/PKGBUILD index 11be6cd..4b5688c 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -1,7 +1,7 @@ # Maintainer: NullBite pkgname=mcserver -pkgver=0.0.1 -pkgrel=4 +pkgver=0.0.2 +pkgrel=1 pkgdesc="Minecraft server manager" arch=("any") url="https://gitea.protogen.io/nullbite/mcserver" @@ -9,8 +9,8 @@ license=('GPL') depends=('tmux') source=(mcserver mcserver@.service) -sha256sums=('ee656e76d7a53c64f82aac7f79a5e4d36aa08a28b079b4fe0b74902e2e24dd8e' - 'f4fbd63759bef7e99a6d0fbde67dd179817103b30d5486681b2390b8b5f047a7') +sha256sums=('2ad18525822ff9e6136306fec8379a36151dfe682a4fd00797acb111fbb2831d' + '7a89d9d657cba77e3157c12f3b26a3354101bed46fcc2d3d8ac366bab4198b04') package() { cd "$pkgdir" diff --git a/mcserver b/mcserver index b370df7..721f2bd 100755 --- a/mcserver +++ b/mcserver @@ -8,6 +8,10 @@ die () { exit 1 } +if [[ "$(id -u)" == 0 ]] ; then + die 'This script should not be run as root. Plase change the default user with `systemctl --edit mcserver@.service`' +fi + _stop_and_wait () { tmux $TMUX_OPTS send-keys -t "$TMUX_SESSION" -l "$code_clear" 'stop' "$code_send" echo Waiting for session to exit... @@ -17,8 +21,8 @@ _stop_and_wait () { } _start () { - ! tmux $TMUX_OPTS has-session > /dev/null 2>&1 && \ - tmux $TMUX_OPTS new-session -d -s $TMUX_SESSION "./start.sh" || \ + ! tmux $TMUX_OPTS has-session -t "$TMUX_SESSION" > /dev/null 2>&1 && \ + tmux $TMUX_OPTS new-session -d -s "$TMUX_SESSION" "./start.sh" || \ die "Instance $instance is already running." } diff --git a/mcserver@.service b/mcserver@.service index 7bac54c..a068c8d 100644 --- a/mcserver@.service +++ b/mcserver@.service @@ -4,9 +4,9 @@ Wants=network.target After=network.target [Service] -Type=forking +Type=oneshot +RemainAfterExit=true ExitType=cgroup -User=nobody ExecStart=/usr/bin/env mcserver start %i ExecStop =/usr/bin/env mcserver stop %i RestartSec=5