summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorAdrián Laviós Gomis2017-04-23 11:56:26 +0200
committerAdrián Laviós Gomis2017-04-23 11:56:26 +0200
commit7291d2f2756b7a300212ddcd876a127c3e163ea8 (patch)
treeeb9b3686ab8f8c2efdb00aaccc49c09b35c21820
downloadaur-7291d2f2756b7a300212ddcd876a127c3e163ea8.tar.gz
Initial commit
-rw-r--r--.SRCINFO26
-rw-r--r--PKGBUILD68
-rw-r--r--_sv44
-rw-r--r--runit-systemd.install5
-rw-r--r--runit.service13
-rwxr-xr-xrunsvdir-start6
6 files changed, 162 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..4e233079a647
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,26 @@
+pkgbase = runit-systemd
+ pkgdesc = A service supervision scheme. This package is intended to be used alongside systemd.
+ pkgver = 2.1.2
+ pkgrel = 1
+ url = http://smarden.org/runit/
+ install = runit-systemd.install
+ arch = i686
+ arch = x86_64
+ license = BSD
+ makedepends = coreutils
+ makedepends = sed
+ depends = bash
+ depends = util-linux
+ provides = runit
+ conflicts = runit
+ source = http://smarden.org/runit/runit-2.1.2.tar.gz
+ source = _sv
+ source = runit.service
+ source = runsvdir-start
+ sha256sums = 6fd0160cb0cf1207de4e66754b6d39750cff14bb0aa66ab49490992c0c47ba18
+ sha256sums = c8f08a977595d16b8afd12e49048c061c483e4408bfa6f66e72af4a72d279e3d
+ sha256sums = 7e80decf02cb72389ec88b4fcf60299e5604a717f9205b8ce3e474fa360d53c6
+ sha256sums = d6df03f835301c165de8baac926f4650cb244d540f42d141f7025f808a9e98d1
+
+pkgname = runit-systemd
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..168a87a23343
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,68 @@
+# Maintainer: Adrián Laviós <adrian@lavios.eu>
+#
+# -- Contributors from AURv3: runit-musl --
+# Contributor: Christian Neukirchen <chneukirchen@gmail.com>
+# Contributor: TJ Vanderpoel <tj@rubyists.com>
+# Contributor: Kevin Berry <kb@rubyists.com>
+# Contributor: Andrej Gelenberg <andrej.gelenberg@udo.edu>
+#
+# -- Contributors from AURv3: runit --
+# Contributor: Uffe Jakobsen <uffe@uffe.org>
+# Contributor: Andrej Gelenberg <andrej.gelenberg@udo.edu>
+
+pkgname=runit-systemd
+pkgver=2.1.2
+pkgrel=1
+pkgdesc="A service supervision scheme. This package is intended to be used alongside systemd."
+url="http://smarden.org/runit/"
+license=('BSD')
+arch=('i686' 'x86_64')
+depends=('bash' 'util-linux')
+makedepends=('coreutils' 'sed')
+provides=('runit')
+conflicts=('runit')
+install="runit-systemd.install"
+source=( http://smarden.org/runit/runit-$pkgver.tar.gz _sv runit.service runsvdir-start )
+sha256sums=('6fd0160cb0cf1207de4e66754b6d39750cff14bb0aa66ab49490992c0c47ba18'
+ 'c8f08a977595d16b8afd12e49048c061c483e4408bfa6f66e72af4a72d279e3d'
+ '7e80decf02cb72389ec88b4fcf60299e5604a717f9205b8ce3e474fa360d53c6'
+ 'd6df03f835301c165de8baac926f4650cb244d540f42d141f7025f808a9e98d1')
+
+prepare() {
+ cd "$srcdir/admin/runit-$pkgver/src"
+
+ # set default service path to /var/service
+ sed -i -e 's:^char \*varservice ="/service/";$:char \*varservice ="/var/service/";:' sv.c
+
+ # do not build statically
+ sed -i -e 's/ -static//g' Makefile
+
+ # add custom CFLAGS and LDFLAGS instead of predefined ones by the source
+ echo "${CC:-gcc} $CFLAGS" > conf-cc
+ echo "${CC:-gcc -s} $LDFLAGS" > conf-ld
+}
+
+build() {
+ cd "$srcdir/admin/runit-$pkgver/src"
+ make
+}
+
+check() {
+ cd "$srcdir/admin/runit-$pkgver/src"
+ make check
+}
+
+package() {
+ cd "$srcdir/admin/runit-$pkgver"
+ install -dm755 "$pkgdir/var/service"
+ install -Dm755 src/{chpst,runit,runit-init,runsv,runsvchdir,runsvdir,sv,svlogd,utmpset} -t "$pkgdir/usr/bin"
+ install -Dm644 man/* -t "$pkgdir/usr/share/man/man8"
+ install -Dm644 doc/*.html -t "$pkgdir/usr/share/doc/runit"
+ install -Dm644 "package/COPYING" "$pkgdir/usr/share/licenses/${pkgname}/COPYING"
+
+ install -Dm644 "$srcdir/_sv" "$pkgdir/usr/share/zsh/site-functions/_sv"
+ install -Dm644 "$srcdir/runit.service" "$pkgdir/usr/lib/systemd/system/runit.service"
+ install -Dm755 "$srcdir/runsvdir-start" "$pkgdir/usr/bin"
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/_sv b/_sv
new file mode 100644
index 000000000000..8a1de2063678
--- /dev/null
+++ b/_sv
@@ -0,0 +1,44 @@
+#compdef sv
+
+# completion for runit sv(1)
+# Christian Neukirchen <chneukirchen@gmail.com>
+# runit 2.1.1, services in /var/service are completed by default
+
+local ret=1 services
+
+_arguments \
+ '-v[verbose]' \
+ '-w[wait]:seconds' \
+ '1: :->cmds' \
+ '*:: :->args' && ret=0
+
+case $state in
+cmds)
+ _values "sv command" \
+ status \
+ up \
+ down \
+ once \
+ pause cont hup alarm interrupt quit 1 2 term kill \
+ exit
+ # above allow one-character shortcuts, complete these
+ [[ $words[CURRENT] = [sudopchaiq12tke] ]] ||
+ _values "sv command" \
+ start \
+ stop \
+ restart \
+ shutdown \
+ force-stop \
+ force-reload \
+ force-restart \
+ force-shutdown \
+ check
+ ret=0;;
+args)
+ services=( /var/service/*(-/N:t) )
+ (( $#services )) && _values services $services && ret=0
+ [[ $words[CURRENT] = */* ]] && _directories && ret=0
+ ;;
+esac
+
+return $ret
diff --git a/runit-systemd.install b/runit-systemd.install
new file mode 100644
index 000000000000..73ea509b1683
--- /dev/null
+++ b/runit-systemd.install
@@ -0,0 +1,5 @@
+post_install() {
+ echo ">>> Place your services in /var/service,"
+ echo ">>> then start runit.service with systemd."
+ echo ">>> See https://wiki.archlinux.org/index.php/runit for more information."
+}
diff --git a/runit.service b/runit.service
new file mode 100644
index 000000000000..f6bf9a188723
--- /dev/null
+++ b/runit.service
@@ -0,0 +1,13 @@
+[Unit]
+Description=Runit service supervision
+Documentation=http://smarden.org/runit/
+
+[Service]
+ExecStart=/usr/bin/runsvdir-start
+KillSignal=SIGHUP
+KillMode=process
+Restart=always
+SuccessExitStatus=111
+
+[Install]
+WantedBy=multi-user.target
diff --git a/runsvdir-start b/runsvdir-start
new file mode 100755
index 000000000000..6d0cfff76a34
--- /dev/null
+++ b/runsvdir-start
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+PATH="/usr/local/sbin:/usr/local/bin:/usr/bin"
+
+exec env - PATH=$PATH \
+runsvdir -P /var/service 'log: ...........................................................................................................................................................................................................................................................................................................................................................................................................'