diff options
Diffstat (limited to 'pkgs/tools/system/cron/default.nix')
-rw-r--r-- | pkgs/tools/system/cron/default.nix | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/pkgs/tools/system/cron/default.nix b/pkgs/tools/system/cron/default.nix index 998be45d9c6..2ddea737c8b 100644 --- a/pkgs/tools/system/cron/default.nix +++ b/pkgs/tools/system/cron/default.nix @@ -14,9 +14,19 @@ stdenv.mkDerivation { makeFlags="DESTROOT=$out" # We want to ignore the $glibc/include/paths.h definition of - # sendmail path - echo "#undef _PATH_SENDMAIL" >> pathnames.h - echo '#define _PATH_SENDMAIL "${sendmailPath}"' >> pathnames.h + # sendmail path. + # Also set a usable default PATH (#16518). + cat >> pathnames.h <<__EOT__ + #undef _PATH_SENDMAIL + #define _PATH_SENDMAIL "${sendmailPath}" + + #undef _PATH_DEFPATH + #define _PATH_DEFPATH "/var/setuid-wrappers:/nix/var/nix/profiles/default/bin:/nix/var/nix/profiles/default/sbin:/run/current-system/sw/bin:/run/current-system/sw/sbin:/usr/bin:/bin" + __EOT__ + + # Implicit saved uids do not work here due to way NixOS uses setuid wrappers + # (#16518). + echo "#undef HAVE_SAVED_UIDS" >> externs.h ''; preInstall = "mkdir -p $out/bin $out/sbin $out/share/man/man1 $out/share/man/man5 $out/share/man/man8"; |