From 3232f9d90114778cb8d38cc1bc8477435dc65259 Mon Sep 17 00:00:00 2001 From: Florian Pritz Date: Sat, 28 Feb 2009 14:36:14 +0100 Subject: initial commit --- daemonsbkg/PKGBUILD | 23 +++++++++++++++++++ daemonsbkg/daemonsbkg-0.1.3/daemonsbkg | 7 ++++++ daemonsbkg/daemonsbkg-0.1.3/daemonsbkg.patch | 33 ++++++++++++++++++++++++++++ daemonsbkg/daemonsbkg-0.1.3/daemonsbkg.sh | 5 +++++ daemonsbkg/daemonsbkg-0.1.3/rc.local.daemons | 16 ++++++++++++++ daemonsbkg/daemonsbkg.install | 14 ++++++++++++ 6 files changed, 98 insertions(+) create mode 100644 daemonsbkg/PKGBUILD create mode 100644 daemonsbkg/daemonsbkg-0.1.3/daemonsbkg create mode 100644 daemonsbkg/daemonsbkg-0.1.3/daemonsbkg.patch create mode 100644 daemonsbkg/daemonsbkg-0.1.3/daemonsbkg.sh create mode 100755 daemonsbkg/daemonsbkg-0.1.3/rc.local.daemons create mode 100644 daemonsbkg/daemonsbkg.install (limited to 'daemonsbkg') diff --git a/daemonsbkg/PKGBUILD b/daemonsbkg/PKGBUILD new file mode 100644 index 0000000..d25557d --- /dev/null +++ b/daemonsbkg/PKGBUILD @@ -0,0 +1,23 @@ +# Contributor: Florian Pritz +pkgname=daemonsbkg +pkgver=0.1.3 +pkgrel=1 +pkgdesc="Adds support for really starting daemons in background" +arch=('i686' 'x86_64') +url="http://flo.server-speed.net/stuff/mirror/$pkgname" +license=('GPL') +install=${pkgname}.install +source=("http://flo.server-speed.net/stuff/mirror/$pkgname/$pkgname-$pkgver.tar.gz") + +build() { + cd "$srcdir/$pkgname-$pkgver" + + install -D -o root -m 755 ${pkgname} ${pkgdir}/etc/rc.d/functions.d/${pkgname} + install -D -o root -m 700 ${pkgname}.sh ${pkgdir}/usr/bin/${pkgname}.sh + install -D -o root -m 700 ${pkgname}.patch ${pkgdir}/etc/${pkgname}.patch + install -D -o root -m 700 rc.local.daemons ${pkgdir}/etc/rc.local.daemons +} + +# vim:set ts=2 sw=2 et: +md5sums=('fea73f005a7265335dc7765fc7cb9c4d') +sha512sums=('d4d3ef81f9c9fb00ad463ae79968a5f875a5db56fe556f864fe6354c3b2de4e3f68244340be584c12de2b9f00e198d0a3850debba0b14c1a2100ec58f8b099d7') diff --git a/daemonsbkg/daemonsbkg-0.1.3/daemonsbkg b/daemonsbkg/daemonsbkg-0.1.3/daemonsbkg new file mode 100644 index 0000000..1d5dc15 --- /dev/null +++ b/daemonsbkg/daemonsbkg-0.1.3/daemonsbkg @@ -0,0 +1,7 @@ +start_daemonbkg() { + (/etc/rc.d/$1 start) &>/dev/null +} + +start_daemonbkg_bkgd() { + (/etc/rc.d/$1 start) &>/dev/null & +} diff --git a/daemonsbkg/daemonsbkg-0.1.3/daemonsbkg.patch b/daemonsbkg/daemonsbkg-0.1.3/daemonsbkg.patch new file mode 100644 index 0000000..cc21536 --- /dev/null +++ b/daemonsbkg/daemonsbkg-0.1.3/daemonsbkg.patch @@ -0,0 +1,33 @@ +--- /etc/rc.local.shutdown 2008-09-18 22:21:39.000000000 +0200 ++++ /etc/rc.local.shutdown.new 2008-10-19 13:55:32.000000000 +0200 +@@ -3,3 +3,16 @@ + # /etc/rc.local.shutdown: Local shutdown script. + # + ++. /etc/rc.conf ++. /etc/rc.d/functions ++ ++if [ "$PREVLEVEL" = "3" -o "$PREVLEVEL" = "5" ]; then ++ # Shutdown background daemons ++ let i=${#DAEMONSBKG[@]} ++ while [ $i -ge 0 ]; do ++ if [ "${DAEMONSBKG[$i]:0:1}" != '!' ]; then ++ ck_daemon ${DAEMONSBKG[$i]#@} || stop_daemon ${DAEMONSBKG[$i]#@} ++ fi ++ let i=i-1 ++ done ++fi +\ No newline at end of file + +--- /etc/rc.multi 2008-09-18 22:21:39.000000000 +0200 ++++ /etc/rc.multi.new 2008-10-19 13:55:32.000000000 +0200 +@@ -20,6 +20,9 @@ + fi + done + ++# Start background daemons ++/etc/rc.local.daemons & ++ + if [ -x /etc/rc.local ]; then + /etc/rc.local + fi diff --git a/daemonsbkg/daemonsbkg-0.1.3/daemonsbkg.sh b/daemonsbkg/daemonsbkg-0.1.3/daemonsbkg.sh new file mode 100644 index 0000000..d24960e --- /dev/null +++ b/daemonsbkg/daemonsbkg-0.1.3/daemonsbkg.sh @@ -0,0 +1,5 @@ +#!/bin/sh +patch -p0 < /etc/daemonsbkg.patch +if ! grep -q "DAEMONSBKG" /etc/rc.conf; then + echo "DAEMONSBKG=()" >> /etc/rc.conf +fi \ No newline at end of file diff --git a/daemonsbkg/daemonsbkg-0.1.3/rc.local.daemons b/daemonsbkg/daemonsbkg-0.1.3/rc.local.daemons new file mode 100755 index 0000000..b6b3f36 --- /dev/null +++ b/daemonsbkg/daemonsbkg-0.1.3/rc.local.daemons @@ -0,0 +1,16 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +# Start daemons +for daemon in "${DAEMONSBKG[@]}"; do + if [ "$daemon" = "${daemon#!}" ]; then + if [ "$daemon" = "${daemon#@}" ]; then + start_daemonbkg $daemon 2>&1 >/dev/null + else + start_daemonbkg_bkgd ${daemon:1} 2>&1 >/dev/null + fi + fi +done + diff --git a/daemonsbkg/daemonsbkg.install b/daemonsbkg/daemonsbkg.install new file mode 100644 index 0000000..f04f73b --- /dev/null +++ b/daemonsbkg/daemonsbkg.install @@ -0,0 +1,14 @@ +post_install() { + echo "" + echo "NOTE:" + echo "--> Run '/usr/bin/daemonsbkg.sh' whenever you upgrade initscripts." + echo "--> I'll also add a new line to rc.conf." + echo "Running patch now..." + /usr/bin/daemonsbkg.sh +} + +pre_remove() { + echo "Removing the patch..." + patch -R -p0 < /etc/daemonsbkg.patch +} +# vim:set ts=2 sw=2 et: -- cgit v1.2.3-24-g4f1b