summaryrefslogtreecommitdiff
path: root/community-staging/fcron
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2012-06-14 00:01:48 +0000
committerroot <root@rshg054.dnsready.net>2012-06-14 00:01:48 +0000
commit35c30674b2b901077a809a6f1d8e5a0115098c8b (patch)
treebac1c7d0c5b1651fef436eb13be31506b5aa60b1 /community-staging/fcron
parentf46e734fbcd0b4cbae2cff1a017b95e4e8e02d53 (diff)
Thu Jun 14 00:01:48 UTC 2012
Diffstat (limited to 'community-staging/fcron')
-rw-r--r--community-staging/fcron/PKGBUILD80
-rw-r--r--community-staging/fcron/fcron.rc36
-rw-r--r--community-staging/fcron/fcron.service10
-rw-r--r--community-staging/fcron/run-cron14
-rw-r--r--community-staging/fcron/systabbin0 -> 478 bytes
-rw-r--r--community-staging/fcron/systab.orig4
6 files changed, 144 insertions, 0 deletions
diff --git a/community-staging/fcron/PKGBUILD b/community-staging/fcron/PKGBUILD
new file mode 100644
index 000000000..0785774f7
--- /dev/null
+++ b/community-staging/fcron/PKGBUILD
@@ -0,0 +1,80 @@
+# $Id: PKGBUILD 72351 2012-06-12 20:43:12Z ttopper $
+# Contributor: Giorgio Lando <lando at imap dot cc>
+# Contributor: Sergej Pupykin
+# Contributor: Thomas Bächler
+# Maintainer: Thorsten Töpper <atsutane-tu@freethoughts.de>
+
+pkgname=fcron
+pkgver=3.0.6
+pkgrel=7
+pkgdesc="feature-rich cron implementation"
+arch=(i686 x86_64)
+url="http://fcron.free.fr"
+license=('GPL')
+depends=('pam')
+makedepends=('smtp-server')
+optdepends=('smtp-server: to receive mails from cron jobs')
+provides=('cron')
+conflicts=('dcron')
+backup=(etc/fcron/fcron.conf etc/fcron/fcron.allow etc/fcron/fcron.deny \
+ var/spool/fcron/systab var/spool/fcron/systab.orig)
+options=('emptydirs' '!makeflags')
+source=(http://fcron.free.fr/archives/$pkgname-$pkgver.src.tar.gz fcron.rc \
+ systab systab.orig run-cron fcron.service)
+md5sums=('69ebcb41921e2a282f41ebecb3a27053'
+ 'e0c3f0bdc3c98fbbe46eff19001c18f2'
+ '938722c6654ef7b07f4aa10001905ba1'
+ 'bfb7daa22ebe22b9917e455c1ca4a382'
+ '5ff0cdcb9ec99778938ac6ef26800327'
+ 'ab589cc6813ec32b5e96bf05c2b51c4c')
+
+build() {
+ cd "$srcdir/$pkgname-$pkgver"
+ ./configure --prefix=/usr \
+ --sysconfdir=/etc/fcron \
+ --with-answer-all=no \
+ --with-boot-install=no \
+ --with-username=root \
+ --with-groupname=root \
+ --datarootdir=/usr/share \
+ --datadir=/usr/share \
+ --with-docdir=/usr/share/doc \
+ --localstatedir=/var \
+ --with-editor=/usr/bin/vi \
+ --with-sendmail=/usr/sbin/sendmail
+ make
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
+
+ make DESTDIR="$pkgdir/" install
+ install -D -m755 "$srcdir/fcron.rc" "$pkgdir/etc/rc.d/fcron"
+ install -D -m644 "$srcdir/$pkgname-$pkgver/files/fcron.pam" "$pkgdir/etc/pam.d/fcron"
+
+ install -D -m644 "$srcdir/$pkgname-$pkgver/files/fcrontab.pam" "$pkgdir/etc/pam.d/fcrontab"
+ # Install default fcrontab so that fcron can completely replace dcron
+
+ install -D -m600 "$srcdir/systab" "$pkgdir/var/spool/fcron/systab"
+ # In order to preserve the systab crontab in any case it is better to have
+ # it in non-binary form too
+ install -D -m600 "$srcdir/systab.orig" "$pkgdir/var/spool/fcron/systab.orig"
+
+ # Add cron.* directories
+ install -d -m755 "$pkgdir/etc/cron.daily"
+ install -d -m755 "$pkgdir/etc/cron.hourly"
+ install -d -m755 "$pkgdir/etc/cron.monthly"
+ install -d -m755 "$pkgdir/etc/cron.weekly"
+
+ # Install run-cron script to make fcron run without dcron
+ install -D -m755 "$srcdir/run-cron" "$pkgdir/usr/sbin/run-cron"
+
+ # Install systemd service
+ install -D -m644 "$srcdir/fcron.service" \
+ "$pkgdir/usr/lib/systemd/system/fcron.service"
+
+ # avoid conflict with filesystem>=2012.06
+ rmdir "$pkgdir/var/run"
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/community-staging/fcron/fcron.rc b/community-staging/fcron/fcron.rc
new file mode 100644
index 000000000..880439a1d
--- /dev/null
+++ b/community-staging/fcron/fcron.rc
@@ -0,0 +1,36 @@
+#!/bin/bash
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+PID=`pidof -o %PPID /usr/sbin/fcron`
+case "$1" in
+ start)
+ stat_busy "Starting Fcron Daemon"
+ [ -z "$PID" ] && /usr/sbin/fcron -b
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ add_daemon fcron
+ stat_done
+ fi
+ ;;
+ stop)
+ stat_busy "Stopping Fcron Daemon"
+ [ -n "$PID" ] && kill $PID >/dev/null
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ rm_daemon fcron
+ stat_done
+ fi
+ ;;
+ restart)
+ $0 stop
+ sleep 1
+ $0 start
+ ;;
+ *)
+ echo "usage: $0 {start|stop|restart}"
+esac
+exit 0
diff --git a/community-staging/fcron/fcron.service b/community-staging/fcron/fcron.service
new file mode 100644
index 000000000..a47b4f19b
--- /dev/null
+++ b/community-staging/fcron/fcron.service
@@ -0,0 +1,10 @@
+[Unit]
+Description=Cron Daemon
+
+[Service]
+Type=forking
+PIDFile=/run/fcron.pid
+ExecStart=/usr/sbin/fcron
+
+[Install]
+WantedBy=multi-user.target
diff --git a/community-staging/fcron/run-cron b/community-staging/fcron/run-cron
new file mode 100644
index 000000000..51007a15a
--- /dev/null
+++ b/community-staging/fcron/run-cron
@@ -0,0 +1,14 @@
+#!/bin/sh
+
+
+if [ -z $1 ]; then
+ echo "Usage: $0 crondir"
+ exit 1
+fi
+
+for cron in $1/* ; do
+ if [ -x $cron ]; then
+ $cron
+ fi
+done
+unset cron
diff --git a/community-staging/fcron/systab b/community-staging/fcron/systab
new file mode 100644
index 000000000..11c7e2fd0
--- /dev/null
+++ b/community-staging/fcron/systab
Binary files differ
diff --git a/community-staging/fcron/systab.orig b/community-staging/fcron/systab.orig
new file mode 100644
index 000000000..5b0045626
--- /dev/null
+++ b/community-staging/fcron/systab.orig
@@ -0,0 +1,4 @@
+&bootrun 01 * * * * /usr/sbin/run-cron /etc/cron.hourly
+&bootrun 02 00 * * * /usr/sbin/run-cron /etc/cron.daily
+&bootrun 22 00 * * 0 /usr/sbin/run-cron /etc/cron.weekly
+&bootrun 42 00 1 * * /usr/sbin/run-cron /etc/cron.monthly