summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--pkgs/tools/networking/mpack/default.nix7
-rw-r--r--pkgs/tools/networking/mpack/sendmail-via-execvp.diff12
2 files changed, 13 insertions, 6 deletions
diff --git a/pkgs/tools/networking/mpack/default.nix b/pkgs/tools/networking/mpack/default.nix
index 62cec7c41ee..5a8af7de36a 100644
--- a/pkgs/tools/networking/mpack/default.nix
+++ b/pkgs/tools/networking/mpack/default.nix
@@ -8,18 +8,13 @@ stdenv.mkDerivation rec {
     sha256 = "0k590z96509k96zxmhv72gkwhrlf55jkmyqlzi72m61r7axhhh97";
   };
 
-  patches = [ ./build-fix.patch ];
+  patches = [ ./build-fix.patch ./sendmail-via-execvp.diff ];
 
   postPatch = ''
     for f in *.{c,man,pl,unix} ; do
       substituteInPlace $f --replace /usr/tmp /tmp
     done
 
-    for f in unixpk.c ; do
-      substituteInPlace $f \
-        --replace /usr/sbin /run/current-system/sw/bin
-    done
-
     # this just shuts up some warnings
     for f in {decode,encode,part,unixos,unixpk,unixunpk,xmalloc}.c ; do
       sed -i 'i#include <stdlib.h>' $f
diff --git a/pkgs/tools/networking/mpack/sendmail-via-execvp.diff b/pkgs/tools/networking/mpack/sendmail-via-execvp.diff
new file mode 100644
index 00000000000..8f10901038d
--- /dev/null
+++ b/pkgs/tools/networking/mpack/sendmail-via-execvp.diff
@@ -0,0 +1,12 @@
+--- mpack-1.6/unixpk.c	2003-07-21 22:50:41.000000000 +0200
++++ mpack-1.6/unixpk.c	2018-09-16 12:57:14.104026964 +0200
+@@ -254,8 +254,9 @@
+ #ifdef SCO
+     execv("/usr/lib/mail/execmail", addr+start);
+ #else
++    execvp("sendmail", addr+start);
+     execv("/usr/lib/sendmail", addr+start);
+     execv("/usr/sbin/sendmail", addr+start);
+ #endif
+     perror("execv");
+     _exit(1);