mirror of
https://github.com/NixOS/nixpkgs.git
synced 2025-01-22 14:45:27 +00:00
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;
|
||||
};
|
||||
|
||||
mcron = import ../tools/system/mcron {
|
||||
inherit fetchurl stdenv guile which ed;
|
||||
};
|
||||
|
||||
mdbtools = builderDefsPackage (selectVersion ../tools/misc/mdbtools "0.6-pre1") {
|
||||
inherit readline pkgconfig bison;
|
||||
inherit (gtkLibs) glib;
|
||||
|
|
Loading…
Reference in a new issue