summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorJan Metzger2019-03-31 09:14:00 +0200
committerJan Metzger2019-03-31 09:14:00 +0200
commit32daad34235335770ad960c537b87be1c3728b3b (patch)
treeab0631ff096046a7fee278a290a490674495708a
downloadaur-32daad34235335770ad960c537b87be1c3728b3b.tar.gz
Initial file import
-rw-r--r--.SRCINFO18
-rw-r--r--.gitignore4
-rw-r--r--PKGBUILD21
-rw-r--r--mcsctl-git.install18
-rwxr-xr-xupdate_aur.sh33
5 files changed, 94 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..85542f7c9a80
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,18 @@
+pkgbase = mcsctl-git
+ pkgdesc = Manage multiple minecraft servers with a simple bash script and systemd unit file.
+ pkgver = master
+ pkgrel = 2
+ url = https://github.com/Hetsh/mcsctl
+ install = mcsctl-git.install
+ arch = x86_64
+ license = GPL3
+ depends = systemd
+ depends = screen
+ depends = jre-openjdk-headless
+ provides = mcsctl
+ conflicts = mcsctl
+ source = https://github.com/Hetsh/mcsctl/archive/1ed2ec43bc174220dc4fecb2dc94d17eefbe1c7e.tar.gz
+ sha256sums = 25dbeca8bed3ab2e91c2bb3f792ab4f41fd58fd3037461bd02f89def4ad51557
+
+pkgname = mcsctl-git
+
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 000000000000..577de7a7059f
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,4 @@
+pkg
+src
+*.pkg.tar.xz
+*.tar.gz
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..08dac4cedc91
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,21 @@
+# Maintainer: Hetsh <aur@hetsh.de>
+
+pkgname=mcsctl-git
+pkgver=master
+commit=('1ed2ec43bc174220dc4fecb2dc94d17eefbe1c7e')
+pkgrel=1
+pkgdesc='Manage multiple minecraft servers with a simple bash script and systemd unit file.'
+arch=('x86_64')
+url='https://github.com/Hetsh/mcsctl'
+license=('GPL3')
+depends=('systemd' 'screen' 'jre-openjdk-headless')
+provides=('mcsctl')
+conflicts=('mcsctl')
+install="$pkgname.install"
+source=("$url/archive/$commit.tar.gz")
+sha256sums=('25dbeca8bed3ab2e91c2bb3f792ab4f41fd58fd3037461bd02f89def4ad51557')
+
+package() {
+ install -Dm 644 "$srcdir/${pkgname%-git}-$commit/mcs@.service" "$pkgdir/usr/lib/systemd/system/mcs@.service"
+ install -Dm 755 "$srcdir/${pkgname%-git}-$commit/mcsctl.sh" "$pkgdir/usr/bin/mcsctl"
+} \ No newline at end of file
diff --git a/mcsctl-git.install b/mcsctl-git.install
new file mode 100644
index 000000000000..db5924c61999
--- /dev/null
+++ b/mcsctl-git.install
@@ -0,0 +1,18 @@
+MCS_USER='mcs'
+MCS_GROUP='mcs'
+
+post_install() {
+ if ! getent group "$MCS_GROUP" > /dev/null; then
+ groupadd "$MCS_GROUP"
+ fi
+
+ if ! getent passwd "$MCS_USER" > /dev/null; then
+ useradd -c 'Minecraft user' -g "$MCS_GROUP" -s /usr/bin/nologin -m "$MCS_USER"
+ passwd -l "$MCS_USER" > /dev/null
+ fi
+}
+
+post_remove() {
+ killall -w -u "$MCS_USER" -s KILL
+ userdel -r -f "$MCS_GROUP" &> /dev/null
+}
diff --git a/update_aur.sh b/update_aur.sh
new file mode 100755
index 000000000000..dc2c76b2a03d
--- /dev/null
+++ b/update_aur.sh
@@ -0,0 +1,33 @@
+#!/usr/bin/env bash
+
+AUR_REPO="$1"
+if [ -n "$AUR_REPO" ]; then
+ cd "$AUR_REPO"
+fi
+
+if [ ! -d ".git" ]; then
+ echo "Not a repository!"
+ exit 1
+fi
+
+BUILD_FILE="PKGBUILD"
+if [ ! -e "$BUILD_FILE" ]; then
+ echo "Not an AUR repository!"
+ exit 2
+fi
+source "$BUILD_FILE"
+
+LATEST_COMMIT=$(git ls-remote "$url" master | cut -f 1)
+if [ "$commit" = "$LATEST_COMMIT" ]; then
+ echo "Already on latest commit!"
+ exit 3
+fi
+sed -i "s%commit\=.*%commit\=('$LATEST_COMMIT')%" "$BUILD_FILE"
+
+# Increment pkgrel on every "release"
+sed -i "s%pkgrel\=.*%pkgrel\=$((pkgrel+1))%" "$BUILD_FILE"
+
+PKG_SHA=$(curl -L -s "$url/archive/$LATEST_COMMIT.tar.gz" | sha256sum | cut -d " " -f 1)
+sed -i "s%sha256sums\=.*%sha256sums\=('$PKG_SHA')%" "$BUILD_FILE"
+
+makepkg --printsrcinfo > .SRCINFO