summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSandro <sandro.jaeckel@gmail.com>2021-01-31 19:37:56 +0100
committerGitHub <noreply@github.com>2021-01-31 19:37:56 +0100
commit78291d95e49c3dfe03dea83036f436e453a2267b (patch)
tree9e0ea566321ae2c175e990383e3a945bb83ecee8
parent2b55866016abdd9bcd8ce86b12a503ad63677692 (diff)
parent9e503d344364715fe7a97331d24e3ed36b06912e (diff)
Merge pull request #107870 from siraben/driftnet-update
driftnet: 1.1.5 -> 1.3.0
-rw-r--r--pkgs/tools/networking/driftnet/default.nix67
-rw-r--r--pkgs/tools/networking/driftnet/fix-darwin-build.patch61
2 files changed, 111 insertions, 17 deletions
diff --git a/pkgs/tools/networking/driftnet/default.nix b/pkgs/tools/networking/driftnet/default.nix
index a9f9305169ce..042f29d3ca31 100644
--- a/pkgs/tools/networking/driftnet/default.nix
+++ b/pkgs/tools/networking/driftnet/default.nix
@@ -1,31 +1,64 @@
-{ stdenv, lib, fetchFromGitHub, libpcap, libjpeg , libungif, libpng
-, giflib, glib, gtk2, cairo, pango, gdk-pixbuf, atk
-, pkg-config, autoreconfHook }:
+{ stdenv
+, lib
+, fetchFromGitHub
+, fetchpatch
+, autoreconfHook
+, cairo
+, giflib
+, glib
+, gtk2-x11
+, libjpeg
+, libpcap
+, libpng
+, libwebsockets
+, pkg-config
+, libuv
+, openssl
+}:
-with lib;
-
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
pname = "driftnet";
- version = "1.1.5";
-
- nativeBuildInputs = [ pkg-config ];
- buildInputs = [
- libpcap libjpeg libungif libpng giflib
- glib gtk2 glib cairo pango gdk-pixbuf atk autoreconfHook
- ];
+ version = "1.3.0";
src = fetchFromGitHub {
owner = "deiv";
repo = "driftnet";
- rev = "0ae4a91";
- sha256 = "1sagpx0mw68ggvqd9c3crjhghqmj7391mf2cb6cjw1cpd2hcddsj";
+ rev = "v${version}";
+ sha256 = "0kd22aqb25kf54jjv3ml8wy8xm7lmbf0xz1wfp31m08cbzsbizib";
};
- meta = {
+ # https://github.com/deiv/driftnet/pull/33
+ # remove on version bump from 1.3.0
+ patches = [
+ (fetchpatch {
+ name = "fix-darwin-build";
+ url = "https://github.com/deiv/driftnet/pull/33/commits/bef5f3509ab5710161e9e21ea960a997eada534f.patch";
+ sha256 = "1b7p9fkgp7dxv965l7q7y632s80h3nnrkaqnak2h0hakwv0i4pvm";
+ })
+ ];
+
+ enableParallelBuilding = true;
+
+ nativeBuildInputs = [ pkg-config autoreconfHook ];
+
+ buildInputs = [
+ cairo
+ giflib
+ glib
+ gtk2-x11
+ libjpeg
+ libpcap
+ libpng
+ libwebsockets
+ openssl
+ libuv
+ ];
+
+ meta = with lib; {
description = "Watches network traffic, and picks out and displays JPEG and GIF images for display";
homepage = "https://github.com/deiv/driftnet";
maintainers = with maintainers; [ offline ];
- platforms = platforms.linux;
+ platforms = platforms.linux ++ platforms.darwin;
license = licenses.gpl2;
};
}
diff --git a/pkgs/tools/networking/driftnet/fix-darwin-build.patch b/pkgs/tools/networking/driftnet/fix-darwin-build.patch
new file mode 100644
index 000000000000..d1bde0f2e605
--- /dev/null
+++ b/pkgs/tools/networking/driftnet/fix-darwin-build.patch
@@ -0,0 +1,61 @@
+diff --git a/src/compat/compat.h b/src/compat/compat.h
+index 6add422..ea80406 100644
+--- a/src/compat/compat.h
++++ b/src/compat/compat.h
+@@ -17,7 +17,7 @@
+ #include <config.h>
+ #endif
+
+-#ifdef __FreeBSD__
++#if defined(__FreeBSD__) || defined(__APPLE__)
+ #include <sys/types.h>
+ #endif
+
+diff --git a/src/network/layer2.c b/src/network/layer2.c
+index 763f0ac..2497b72 100644
+--- a/src/network/layer2.c
++++ b/src/network/layer2.c
+@@ -14,7 +14,7 @@
+
+ #include <string.h>
+
+-#ifdef __FreeBSD__
++#if defined(__FreeBSD__) || defined(__APPLE__)
+ #include <netinet/in_systm.h>
+ #include <netinet/in.h>
+ #else
+@@ -29,7 +29,7 @@
+ /*
+ * Freebsd and Cygwin doesn't define 'ethhdr'
+ */
+-#if defined(__FreeBSD__) || defined(__CYGWIN__)
++#if defined(__FreeBSD__) || defined(__CYGWIN__) || defined(__APPLE__)
+
+ #define ETH_ALEN 6 /* Octets in one ethernet addr */
+ #define ETH_P_IP 0x0800 /* Internet Protocol packet */
+diff --git a/src/network/layer3.c b/src/network/layer3.c
+index 7864126..aae2041 100644
+--- a/src/network/layer3.c
++++ b/src/network/layer3.c
+@@ -15,7 +15,7 @@
+ #include <string.h>
+ #include <assert.h>
+
+-#ifdef __FreeBSD__
++#if defined(__FreeBSD__) || defined(__APPLE__)
+ #include <netinet/in_systm.h>
+ #include <netinet/in.h>
+ #include <sys/socket.h>
+diff --git a/src/pid.c b/src/pid.c
+index 621834e..94e7dcc 100644
+--- a/src/pid.c
++++ b/src/pid.c
+@@ -14,7 +14,7 @@
+
+ #include "compat/compat.h"
+
+-#ifdef __FreeBSD__
++#if defined(__FreeBSD__) || defined(__APPLE__)
+ #include <sys/stat.h>
+ #endif
+ #include <fcntl.h>