Change systemd unit options and add root check

This commit is contained in:
NullBite 2023-06-20 03:32:28 -04:00
parent 6aee4a8b8c
commit cbf15e2bde
Signed by: nullbite
GPG Key ID: 6C4D545385D4925A
3 changed files with 12 additions and 8 deletions

View File

@ -1,7 +1,7 @@
# Maintainer: NullBite <aur.archlinux@nullbite.com>
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"

View File

@ -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."
}

View File

@ -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