summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--pkgs/tools/security/john/default.nix28
-rw-r--r--pkgs/top-level/all-packages.nix2
2 files changed, 30 insertions, 0 deletions
diff --git a/pkgs/tools/security/john/default.nix b/pkgs/tools/security/john/default.nix
new file mode 100644
index 00000000000..97f67dfbd71
--- /dev/null
+++ b/pkgs/tools/security/john/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, fetchgit, openssl, nss, nspr, krb5, gmp, zlib, libpcap, re2 }:
+
+with stdenv.lib;
+
+stdenv.mkDerivation rec {
+  name = "JohnTheRipper-${version}";
+  version = "8a3e3c1d";
+  buildInputs = [ openssl nss nspr krb5 gmp zlib libpcap re2 ];
+  preConfigure = ''cd src'';
+  installPhase = ''
+    ensureDir $out/share/john/
+    ensureDir $out/bin
+    cp -R ../run/* $out/share/john
+    ln -s $out/share/john/john $out/bin/john
+  '';
+  src = fetchgit {
+    url = https://github.com/magnumripper/JohnTheRipper.git;
+    rev = "93f061bc41652c94ae049b52572aac709d18aa4c";
+    sha256 = "1rnfi09830n34jcqaxmsam54p4zsq9a49ic2ljh44lahcipympvy";
+  };
+  meta = {
+    description = "John the Ripper password cracker";
+    license = licenses.gpl2;
+    homepage = https://github.com/magnumripper/JohnTheRipper/;
+    maintainers = with maintainers; [offline];
+    platforms = with platforms; unix;
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 4fe7a5cd355..e30d149c95e 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -1394,6 +1394,8 @@ let
 
   jnettop = callPackage ../tools/networking/jnettop { };
 
+  john = callPackage ../tools/security/john { };
+
   jq = callPackage ../development/tools/jq {};
 
   jscoverage = callPackage ../development/tools/misc/jscoverage { };