about summary refs log tree commit diff
path: root/pkgs/tools/misc/arp-scan/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/tools/misc/arp-scan/default.nix')
-rw-r--r--pkgs/tools/misc/arp-scan/default.nix31
1 files changed, 24 insertions, 7 deletions
diff --git a/pkgs/tools/misc/arp-scan/default.nix b/pkgs/tools/misc/arp-scan/default.nix
index 760757190c32..e1068c248b34 100644
--- a/pkgs/tools/misc/arp-scan/default.nix
+++ b/pkgs/tools/misc/arp-scan/default.nix
@@ -1,14 +1,31 @@
-{ stdenv, fetchurl, libpcap }:
+{ stdenv, fetchFromGitHub, autoreconfHook, libpcap, makeWrapper, perlPackages }:
 
 stdenv.mkDerivation rec {
-  name = "arp-scan-1.9";
+  name = "arp-scan-${version}";
+  version = "1.9.5";
 
-  src = fetchurl {
-    url = "http://www.nta-monitor.com/files/arp-scan/${name}.tar.gz";
-    sha256 = "14nqjzbmnlx2nac7lwa93y5m5iqk3layakyxyvfmvs283k3qm46f";
+  src = fetchFromGitHub {
+    owner = "royhills";
+    repo = "arp-scan";
+    rev = "4de863c2627a05177eda7159692a588f9f520cd1";
+    sha256 = "15zpfdybk2kh98shqs8qqd0f9nyi2ch2wcyv729rfj7yp0hif5mb";
   };
 
-  buildInputs = [ libpcap ];
+  perlModules = with perlPackages; [
+    HTTPDate
+    HTTPMessage
+    LWPUserAgent
+    URI
+  ];
+
+  nativeBuildInputs = [ autoreconfHook ];
+  buildInputs = [ libpcap makeWrapper ];
+
+  postInstall = ''
+    for name in get-{oui,iab}; do
+      wrapProgram "$out/bin/$name" --set PERL5LIB "${stdenv.lib.makePerlPath perlModules }"
+    done;
+  '';
 
   meta = with stdenv.lib; {
     description = "ARP scanning and fingerprinting tool";
@@ -19,6 +36,6 @@ stdenv.mkDerivation rec {
     homepage = http://www.nta-monitor.com/wiki/index.php/Arp-scan_Documentation;
     license = licenses.gpl3;
     platforms = platforms.linux;
-    maintainers = [ maintainers.bjornfor ];
+    maintainers = with maintainers; [ bjornfor mikoim ];
   };
 }