diff options
author | Patrick Darwinkel | 2015-06-26 17:09:36 +0200 |
---|---|---|
committer | Patrick Darwinkel | 2015-06-26 17:09:36 +0200 |
commit | de45dac42ceb41fd251c37d97b06d95a80d5e003 (patch) | |
tree | b038bedba45569667ba9e47f9603f48f39b56003 | |
download | aur-de45dac42ceb41fd251c37d97b06d95a80d5e003.tar.gz |
Initial commit
-rw-r--r-- | .SRCINFO | 20 | ||||
-rw-r--r-- | PKGBUILD | 34 | ||||
-rw-r--r-- | ogar-git.install | 69 | ||||
-rw-r--r-- | ogar.service | 13 |
4 files changed, 136 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..b23e303feb8e --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,20 @@ +pkgbase = ogar-git + pkgdesc = A fully functional open source Agar.io server implementation, written in Node.js. + pkgver = git + pkgrel = 1 + url = https://github.com/vram4/Ogar + install = ogar-git.install + arch = any + license = Apache + depends = nodejs + depends = npm + depends = git + depends = systemd + backup = usr/share/ogar/gameserver.ini + source = git+https://github.com/vram4/Ogar.git + source = ogar.service + sha1sums = SKIP + sha1sums = 17e04c0c5872f64ed05bf0f6844ee276210d7bda + +pkgname = ogar-git + diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..26bcf0be3b9b --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,34 @@ +# Maintainer: Patrick Darwinkel <patrick@darwinkel.net> +pkgname=ogar-git +pkgver=git +pkgrel=1 +pkgdesc="A fully functional open source Agar.io server implementation, written in Node.js." +arch=(any) +url="https://github.com/vram4/Ogar" +license=('Apache') +depends=('nodejs' 'npm' 'git' 'systemd') +source=('git+https://github.com/vram4/Ogar.git' 'ogar.service') +sha1sums=('SKIP' '17e04c0c5872f64ed05bf0f6844ee276210d7bda') +install="${pkgname}.install" +backup=('usr/share/ogar/gameserver.ini') + +pkgver() { + cd Ogar + git rev-parse --verify HEAD +} + +package() { + cd $srcdir + mv Ogar ogar + mkdir -p $pkgdir/usr/share + mv ogar $pkgdir/usr/share/ogar + rm -R $pkgdir/usr/share/ogar/bin + rm $pkgdir/usr/share/ogar/Launch.bat + rm $pkgdir/usr/share/ogar/src/Start.bat + rm $pkgdir/usr/share/ogar/.gitignore + rm $pkgdir/usr/share/ogar/ogar-linux-script.sh + chmod -R 755 $pkgdir/usr/share/ogar + + install -Dm 644 "ogar.service" "${pkgdir}/usr/lib/systemd/system/ogar.service" + +} diff --git a/ogar-git.install b/ogar-git.install new file mode 100644 index 000000000000..85da7bd6617d --- /dev/null +++ b/ogar-git.install @@ -0,0 +1,69 @@ +post_install() { +echo "Creating ogar user and group if they don't exist" + if ! getent group "ogar" >/dev/null; then + groupadd -r ogar + fi + if ! getent passwd "ogar" >/dev/null; then + useradd -r -M -N -g ogar -d /usr/share/ogar -s /usr/bin/nologin -c 'Ogar Server' ogar + fi + +echo "Symlinking gameserver.ini to /etc/ogar" +ln -s /usr/share/ogar/gameserver.ini /etc/ogar + +echo "Installing ws module" +rm -R /root/.npm +cd /usr/share/ogar +npm install ws + +echo "Setting proper permissions" +chown -R ogar:ogar /usr/share/ogar +chmod -R 755 /usr/share/ogar +} + +post_upgrade() { +echo "Creating ogar user and group if they don't exist" + if ! getent group "ogar" >/dev/null; then + groupadd -r ogar + fi + if ! getent passwd "ogar" >/dev/null; then + useradd -r -M -N -g ogar -d /usr/share/ogar -s /usr/bin/nologin -c 'Ogar Server' ogar + fi + +echo "Symlinking gameserver.ini to /etc/ogar" +ln -s /usr/share/ogar/gameserver.ini /etc/ogar + +echo "Installing ws module" +rm -R /root/.npm +cd /usr/share/ogar +npm install ws + +echo "Setting proper permissions" +chown -R ogar:ogar /usr/share/ogar +chmod -R 755 /usr/share/ogar +} + +pre_remove() { + if systemctl --quiet is-active ogar; then + systemctl stop ogar + fi +} + +post_remove() { +echo "Removing ogar user and group" + if getent passwd "ogar" >/dev/null; then + userdel ogar > /dev/null + fi + if getent group "ogar" >/dev/null; then + groupdel ogar >/dev/null + fi + +echo "Unlinking /etc/ogar" +unlink /etc/ogar + +echo "Removing ws module" +cd /usr/share/ogar +npm uninstall ws +} + +# vim:set ts=2 sw=2 et: + diff --git a/ogar.service b/ogar.service new file mode 100644 index 000000000000..2ac4c4308c7d --- /dev/null +++ b/ogar.service @@ -0,0 +1,13 @@ +[Unit] +Description=Ogar Server +After=network.target + +[Service] +Type=simple +User=ogar +Group=ogar +WorkingDirectory=/usr/share/ogar +ExecStart=/usr/bin/node /usr/share/ogar/src/index.js + +[Install] +WantedBy=multi-user.target |