2021-01-11 07:54:33 +00:00
|
|
|
{lib, stdenv, fetchurl, vim, sendmailPath ? "/usr/sbin/sendmail"}:
|
2007-01-10 15:44:58 +00:00
|
|
|
|
2021-07-27 14:21:24 +00:00
|
|
|
stdenv.mkDerivation rec {
|
|
|
|
pname = "cron";
|
|
|
|
version = "4.1";
|
|
|
|
|
2007-01-10 15:44:58 +00:00
|
|
|
src = fetchurl {
|
2021-07-27 14:21:24 +00:00
|
|
|
url = "ftp://ftp.isc.org/isc/cron/cron_${version}.shar";
|
2014-10-12 14:13:21 +00:00
|
|
|
sha256 = "16n3dras4b1jh7g958nz1k54pl9pg5fwb3fvjln8z67varvq6if4";
|
2007-01-10 15:44:58 +00:00
|
|
|
};
|
|
|
|
|
2008-08-27 15:22:33 +00:00
|
|
|
unpackCmd = "(mkdir cron && cd cron && sh $curSrc)";
|
2007-01-10 15:44:58 +00:00
|
|
|
|
2016-02-26 17:38:15 +00:00
|
|
|
hardeningEnable = [ "pie" ];
|
2016-02-26 17:27:28 +00:00
|
|
|
|
2010-10-10 11:07:15 +00:00
|
|
|
preBuild = ''
|
2018-08-15 18:24:49 +00:00
|
|
|
# do not set sticky bit in /nix/store
|
2017-06-16 11:44:14 +00:00
|
|
|
substituteInPlace Makefile --replace ' -o root' ' ' --replace 111 755 --replace 4755 0755
|
2018-01-15 00:35:11 +00:00
|
|
|
# do not strip during install, broken on cross and we'll do ourselves as needed
|
|
|
|
substituteInPlace Makefile --replace ' -s cron' ' cron'
|
|
|
|
makeFlags="DESTROOT=$out CC=$CC"
|
2010-10-10 11:07:15 +00:00
|
|
|
|
|
|
|
# We want to ignore the $glibc/include/paths.h definition of
|
2016-06-26 15:13:15 +00:00
|
|
|
# sendmail path.
|
|
|
|
# Also set a usable default PATH (#16518).
|
|
|
|
cat >> pathnames.h <<__EOT__
|
|
|
|
#undef _PATH_SENDMAIL
|
|
|
|
#define _PATH_SENDMAIL "${sendmailPath}"
|
|
|
|
|
2019-02-08 17:06:16 +00:00
|
|
|
#undef _PATH_VI
|
|
|
|
#define _PATH_VI "${vim}/bin/vim"
|
|
|
|
|
2016-06-26 15:13:15 +00:00
|
|
|
#undef _PATH_DEFPATH
|
2017-05-09 07:46:24 +00:00
|
|
|
#define _PATH_DEFPATH "/run/wrappers/bin:/nix/var/nix/profiles/default/bin:/run/current-system/sw/bin:/usr/bin:/bin"
|
2016-06-26 15:13:15 +00:00
|
|
|
__EOT__
|
|
|
|
|
|
|
|
# Implicit saved uids do not work here due to way NixOS uses setuid wrappers
|
|
|
|
# (#16518).
|
|
|
|
echo "#undef HAVE_SAVED_UIDS" >> externs.h
|
2010-10-10 11:07:15 +00:00
|
|
|
'';
|
2007-01-10 15:44:58 +00:00
|
|
|
|
2012-01-18 20:16:00 +00:00
|
|
|
preInstall = "mkdir -p $out/bin $out/sbin $out/share/man/man1 $out/share/man/man5 $out/share/man/man8";
|
2015-03-20 15:52:02 +00:00
|
|
|
|
2021-01-11 07:54:33 +00:00
|
|
|
meta = with lib; {
|
2014-08-24 14:21:08 +00:00
|
|
|
description = "Daemon for running commands at specific times (Vixie Cron)";
|
2018-08-15 18:24:49 +00:00
|
|
|
license = licenses.bsd0;
|
|
|
|
platforms = with platforms; linux ++ darwin;
|
2007-01-10 15:44:58 +00:00
|
|
|
};
|
|
|
|
}
|