about summary refs log tree commit diff
path: root/pkgs/applications/networking/sniffnet
diff options
context:
space:
mode:
authorfigsoda <figsoda@pm.me>2022-12-04 22:58:15 -0500
committerfigsoda <figsoda@pm.me>2022-12-04 23:23:23 -0500
commit61aacee77d6c293d7e36e6655408479c5868360c (patch)
tree02a9d6a19f1444c281640ef64e7f11d955cc77d4 /pkgs/applications/networking/sniffnet
parentbd118caf88a0c792411422581a994da3971fd5e8 (diff)
sniffnet: init at 1.0.1
Diffstat (limited to 'pkgs/applications/networking/sniffnet')
-rw-r--r--pkgs/applications/networking/sniffnet/default.nix51
1 files changed, 51 insertions, 0 deletions
diff --git a/pkgs/applications/networking/sniffnet/default.nix b/pkgs/applications/networking/sniffnet/default.nix
new file mode 100644
index 0000000000000..6dc59e1432ab3
--- /dev/null
+++ b/pkgs/applications/networking/sniffnet/default.nix
@@ -0,0 +1,51 @@
+{ lib
+, rustPlatform
+, fetchCrate
+, pkg-config
+, libpcap
+, stdenv
+, fontconfig
+, libGL
+, xorg
+, darwin
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "sniffnet";
+  version = "1.0.1";
+
+  src = fetchCrate {
+    inherit pname version;
+    sha256 = "sha256-8K774j04BOEuJjnFYjaSctPwBrKYYKqjFS2+PyxJ2FM=";
+  };
+
+  cargoSha256 = "sha256-096i4wDdoJCICd0L2QNY+7cKHQnijK22zj4XaQNuko8=";
+
+  nativeBuildInputs = [ pkg-config ];
+
+  buildInputs = [
+    libpcap
+  ] ++ lib.optionals stdenv.isLinux [
+    fontconfig
+    libGL
+    xorg.libX11
+    xorg.libXcursor
+    xorg.libXi
+    xorg.libXrandr
+  ] ++ lib.optionals stdenv.isDarwin [
+    darwin.apple_sdk.frameworks.AppKit
+  ];
+
+  postFixup = lib.optionalString stdenv.isLinux ''
+    patchelf $out/bin/sniffnet \
+      --add-rpath ${lib.makeLibraryPath [ libGL xorg.libX11 ]}
+  '';
+
+  meta = with lib; {
+    description = "Cross-platform application to monitor your network traffic with ease";
+    homepage = "https://github.com/gyulyvgc/sniffnet";
+    changelog = "https://github.com/gyulyvgc/sniffnet/blob/main/CHANGELOG.md";
+    license = with licenses; [ mit /* or */ asl20 ];
+    maintainers = with maintainers; [ figsoda ];
+  };
+}