Add GNU mcron, a `cron' implementation in Guile Scheme.
svn path=/nixpkgs/trunk/; revision=14870
This commit is contained in:
parent
985178ff4b
commit
644cf259a5
30
pkgs/tools/system/mcron/default.nix
Normal file
30
pkgs/tools/system/mcron/default.nix
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
{ fetchurl, stdenv, guile, which, ed }:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
name = "mcron-1.0.4";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "mirror://gnu/mcron/${name}.tar.gz";
|
||||||
|
sha256 = "0wrpi9qj50a8wfslapnkmsr6d3qx40hfw57a022m1z1syiljq4xl";
|
||||||
|
};
|
||||||
|
|
||||||
|
patches = [ ./install-vixie-programs.patch ];
|
||||||
|
|
||||||
|
buildInputs = [ guile which ed ];
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "GNU mcron, a flexible implementation of `cron' in Guile";
|
||||||
|
|
||||||
|
longDescription = ''
|
||||||
|
The GNU package mcron (Mellor's cron) is a 100% compatible
|
||||||
|
replacement for Vixie cron. It is written in pure Guile, and
|
||||||
|
allows configuration files to be written in scheme (as well as
|
||||||
|
Vixie's original format) for infinite flexibility in specifying
|
||||||
|
when jobs should be run. Mcron was written by Dale Mellor.
|
||||||
|
'';
|
||||||
|
|
||||||
|
homepage = http://www.gnu.org/software/mcron/;
|
||||||
|
|
||||||
|
license = "GPLv3+";
|
||||||
|
};
|
||||||
|
}
|
22
pkgs/tools/system/mcron/install-vixie-programs.patch
Normal file
22
pkgs/tools/system/mcron/install-vixie-programs.patch
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
This patch allows us to install the Vixie-compatible binaries as
|
||||||
|
non-root.
|
||||||
|
|
||||||
|
--- mcron-1.0.4/makefile.in 2008-02-21 20:55:24.000000000 +0100
|
||||||
|
+++ mcron-1.0.4/makefile.in 2009-04-03 20:18:44.000000000 +0200
|
||||||
|
@@ -872,15 +872,11 @@ mcron.c : main.scm crontab.scm makefile.
|
||||||
|
@rm -f mcron.escaped.scm > /dev/null 2>&1
|
||||||
|
|
||||||
|
install-exec-hook:
|
||||||
|
- @if [ "`id -u`" -eq "0" ]; then \
|
||||||
|
+ @if true; then \
|
||||||
|
rm -f $(fpp)cron$(EXEEXT) > /dev/null 2>&1; \
|
||||||
|
$(INSTALL) --mode='u=rwx' mcron$(EXEEXT) $(fpp)cron$(EXEEXT); \
|
||||||
|
rm -f $(fpp)crontab$(EXEEXT) > /dev/null 2>&1; \
|
||||||
|
$(INSTALL) --mode='u=rwxs,og=rx' mcron$(EXEEXT) $(fpp)crontab$(EXEEXT); \
|
||||||
|
- ./mkinstalldirs -m 'u=rwx' /var/cron; \
|
||||||
|
- ./mkinstalldirs -m 'u=rwx,og=rx' /var/run; \
|
||||||
|
- ./mkinstalldirs -m 'u=rwx,og=rx' @GUILE_SITE@; \
|
||||||
|
- ./mkinstalldirs -m 'u=rwx,og=rx' @GUILE_SITE@/mcron; \
|
||||||
|
else \
|
||||||
|
echo "+++ WARNING: NON-ROOT INSTALL: ONLY mcron WILL BE INSTALLED, NOT ANY OF THE VIXIE REPLACEMENT PROGRAMS"; \
|
||||||
|
fi
|
@ -936,6 +936,10 @@ let
|
|||||||
inherit (gtkLibs) glib;
|
inherit (gtkLibs) glib;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
mcron = import ../tools/system/mcron {
|
||||||
|
inherit fetchurl stdenv guile which ed;
|
||||||
|
};
|
||||||
|
|
||||||
mdbtools = builderDefsPackage (selectVersion ../tools/misc/mdbtools "0.6-pre1") {
|
mdbtools = builderDefsPackage (selectVersion ../tools/misc/mdbtools "0.6-pre1") {
|
||||||
inherit readline pkgconfig bison;
|
inherit readline pkgconfig bison;
|
||||||
inherit (gtkLibs) glib;
|
inherit (gtkLibs) glib;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user