nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 stdenv,
4 fetchurl,
5 alglib,
6 unzip,
7 autoPatchelfHook,
8}:
9
10stdenv.mkDerivation rec {
11 pname = "rainbowcrack";
12 version = "1.8";
13
14 src = fetchurl {
15 url = "http://project-rainbowcrack.com/rainbowcrack-${version}-linux64.zip";
16 hash = "sha256-xMC9teHiDvBY/VHV63TsNQjdcuLqHGeXUyjHvRTO9HQ=";
17 };
18
19 nativeBuildInputs = [
20 unzip
21 autoPatchelfHook
22 ];
23
24 buildInputs = [ (lib.getLib stdenv.cc.cc) ];
25
26 dontConfigure = true;
27
28 dontBuild = true;
29
30 unpackPhase = ''
31 mkdir -p $out/{bin,share/rainbowcrack}
32 unzip $src -d $out || true
33 '';
34
35 installPhase = ''
36 install -Dm644 $out/rainbowcrack-1.8-linux64/*.txt $out/share/rainbowcrack
37 install -Dm755 $out/rainbowcrack-1.8-linux64/rt* $out/rainbowcrack-1.8-linux64/rcrack $out/bin
38 chmod +x $out/bin/*
39 rm -rf $out/rainbowcrack-1.8-linux64
40 '';
41
42 runtimeDependencies = [ alglib ];
43
44 meta = {
45 description = "Rainbow table generator used for password cracking";
46 homepage = "http://project-rainbowcrack.com";
47 maintainers = with lib.maintainers; [ tochiaha ];
48 license = lib.licenses.unfree;
49 mainProgram = "rcrack";
50 sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
51 platforms = [ "x86_64-linux64" ];
52 };
53}