From 20393278797514a9bb8d15a0ea52d57545079d4a Mon Sep 17 00:00:00 2001
From: Bob van der Linden <bobvanderlinden@gmail.com>
Date: Sat, 15 Sep 2018 15:07:27 +0200
Subject: [PATCH] miniupnpd: wrap iptables scripts to use correct PATH

---
 pkgs/tools/networking/miniupnpd/default.nix | 16 ++++++++++++++--
 1 file changed, 14 insertions(+), 2 deletions(-)

diff --git a/pkgs/tools/networking/miniupnpd/default.nix b/pkgs/tools/networking/miniupnpd/default.nix
index f794a4e27c7a..f3cd9ea6a819 100644
--- a/pkgs/tools/networking/miniupnpd/default.nix
+++ b/pkgs/tools/networking/miniupnpd/default.nix
@@ -1,5 +1,10 @@
-{ stdenv, fetchurl, iptables, libuuid, pkgconfig }:
+{ stdenv, lib, fetchurl, iptables, libuuid, pkgconfig
+, which, iproute, gnused, coreutils, gawk, makeWrapper
+}:
 
+let
+  scriptBinEnv = lib.makeBinPath [ which iproute iptables gnused coreutils gawk ];
+in
 stdenv.mkDerivation rec {
   name = "miniupnpd-2.1";
 
@@ -10,7 +15,7 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = [ iptables libuuid ];
-  nativeBuildInputs= [ pkgconfig ];
+  nativeBuildInputs= [ pkgconfig makeWrapper ];
 
   makefile = "Makefile.linux";
 
@@ -18,6 +23,13 @@ stdenv.mkDerivation rec {
 
   installFlags = [ "PREFIX=$(out)" "INSTALLPREFIX=$(out)" ];
 
+  postFixup = ''
+    for script in $out/etc/miniupnpd/ip{,6}tables_{init,removeall}.sh
+    do
+      wrapProgram $script --set PATH '${scriptBinEnv}:$PATH'
+    done
+  '';
+
   meta = with stdenv.lib; {
     homepage = http://miniupnp.free.fr/;
     description = "A daemon that implements the UPnP Internet Gateway Device (IGD) specification";