From 0838a7ed482f29ddf71cf05e7ec6cf7c2728ce34 Mon Sep 17 00:00:00 2001 From: root Date: Mon, 18 Jun 2012 00:01:40 +0000 Subject: Mon Jun 18 00:01:40 UTC 2012 --- community-testing/fcron/PKGBUILD | 80 ++++++++++++++++++++++++++++++++++ community-testing/fcron/fcron.rc | 36 +++++++++++++++ community-testing/fcron/fcron.service | 10 +++++ community-testing/fcron/run-cron | 14 ++++++ community-testing/fcron/systab | Bin 0 -> 478 bytes community-testing/fcron/systab.orig | 4 ++ 6 files changed, 144 insertions(+) create mode 100644 community-testing/fcron/PKGBUILD create mode 100644 community-testing/fcron/fcron.rc create mode 100644 community-testing/fcron/fcron.service create mode 100644 community-testing/fcron/run-cron create mode 100644 community-testing/fcron/systab create mode 100644 community-testing/fcron/systab.orig (limited to 'community-testing/fcron') diff --git a/community-testing/fcron/PKGBUILD b/community-testing/fcron/PKGBUILD new file mode 100644 index 000000000..a8a579cb5 --- /dev/null +++ b/community-testing/fcron/PKGBUILD @@ -0,0 +1,80 @@ +# $Id: PKGBUILD 72553 2012-06-16 17:09:37Z dreisner $ +# Contributor: Giorgio Lando +# Contributor: Sergej Pupykin +# Contributor: Thomas Bächler +# Maintainer: Thorsten Töpper + +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-testing/fcron/fcron.rc b/community-testing/fcron/fcron.rc new file mode 100644 index 000000000..880439a1d --- /dev/null +++ b/community-testing/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-testing/fcron/fcron.service b/community-testing/fcron/fcron.service new file mode 100644 index 000000000..a47b4f19b --- /dev/null +++ b/community-testing/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-testing/fcron/run-cron b/community-testing/fcron/run-cron new file mode 100644 index 000000000..51007a15a --- /dev/null +++ b/community-testing/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-testing/fcron/systab b/community-testing/fcron/systab new file mode 100644 index 000000000..11c7e2fd0 Binary files /dev/null and b/community-testing/fcron/systab differ diff --git a/community-testing/fcron/systab.orig b/community-testing/fcron/systab.orig new file mode 100644 index 000000000..5b0045626 --- /dev/null +++ b/community-testing/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 -- cgit v1.2.3-54-g00ecf