diff --git a/pkgs/tools/networking/ngrep/default.nix b/pkgs/tools/networking/ngrep/default.nix index dcc0e8596e9..ca5e0b7c4f5 100644 --- a/pkgs/tools/networking/ngrep/default.nix +++ b/pkgs/tools/networking/ngrep/default.nix @@ -1,39 +1,35 @@ -{ stdenv, fetchurl, fetchpatch, libpcap, gnumake3, pcre }: +{ lib, stdenv, fetchFromGitHub, fetchpatch, autoreconfHook, libpcap, gnumake3, pcre }: stdenv.mkDerivation rec { - name = "ngrep-1.45"; + name = "ngrep-${version}"; + version = "1.47"; - src = fetchurl { - url = "mirror://sourceforge/ngrep/${name}.tar.bz2"; - sha256 = "19rg8339z5wscw877mz0422wbsadds3mnfsvqx3ihy58glrxv9mf"; + src = fetchFromGitHub { + owner = "jpr5"; + repo = "ngrep"; + rev = "V${lib.replaceStrings ["."] ["_"] version}"; + sha256 = "1x2fyd7wdqlj1r76ilal06cl2wmbz0ws6i3ys204sbjh1cj6dcl7"; }; patches = [ (fetchpatch { - url = "https://anonscm.debian.org/cgit/users/rfrancoise/ngrep.git/plain/debian/patches/10_debian-build.diff?h=debian/1.45.ds2-14"; - sha256 = "1p359k54xjbh6r0d0lv1l679n250wxk6j8yyz23gn54kwdc29zfy"; - }) - (fetchpatch { - url = "https://anonscm.debian.org/cgit/users/rfrancoise/ngrep.git/plain/debian/patches/10_man-fixes.diff?h=debian/1.45.ds2-14"; - sha256 = "1b66zfbsrsvg60j988i6ga9iif1c34fsbq3dp1gi993xy4va8m5k"; - }) - (fetchpatch { - url = "https://anonscm.debian.org/cgit/users/rfrancoise/ngrep.git/plain/debian/patches/20_setlocale.diff?h=debian/1.45.ds2-14"; - sha256 = "16xbmnmvw5sjidz2qhay68k3xad05g74nrccflavxbi0jba52fdq"; - }) - (fetchpatch { - url = "https://anonscm.debian.org/cgit/users/rfrancoise/ngrep.git/plain/debian/patches/40_ipv6-offsets.diff?h=debian/1.45.ds2-14"; - sha256 = "0fjlk1sav5nnjapvsa8mvdwjkhgm3kgc6dw7r9h1qx6d3b8cgl76"; + url = "https://patch-diff.githubusercontent.com/raw/jpr5/ngrep/pull/11.patch"; + sha256 = "0k5qzvj8j3r1409qwwvzp7m3clgs2g7hs4q68bhrqbrsvvb2h5dh"; }) ]; - buildInputs = [ gnumake3 libpcap pcre ]; + nativeBuildInputs = [ autoreconfHook gnumake3 ]; + buildInputs = [ libpcap pcre ]; + + configureFlags = [ + "--enable-ipv6" + "--enable-pcre" + "--disable-pcap-restart" + "--with-pcap-includes=${libpcap}/include" + ]; preConfigure = '' - # Fix broken test for BPF header file sed -i "s|BPF=.*|BPF=${libpcap}/include/pcap/bpf.h|" configure - - configureFlags="$configureFlags --enable-ipv6 --enable-pcre --disable-pcap-restart --with-pcap-includes=${libpcap}/include" ''; meta = with stdenv.lib; { @@ -47,7 +43,7 @@ stdenv.mkDerivation rec { null interfaces, and understands BPF filter logic in the same fashion as more common packet sniffing tools, such as tcpdump and snoop. ''; - homepage = http://ngrep.sourceforge.net/; + homepage = https://github.com/jpr5/ngrep/; # /doc/README.txt says that ngrep itself is licensed under a # 'BSD-like' license but that the 'regex' library (in the ngrep tarball) is # GPLv2.