lol
at release-16.03-start 50 lines 1.4 kB view raw
1{ stdenv, fetchurl, p7zip, patchelf, gmp }: 2 3assert stdenv.isLinux; 4 5let 6 bits = if stdenv.system == "x86_64-linux" then "64" else "32"; 7 libPath = stdenv.lib.makeLibraryPath [ stdenv.cc.libc gmp ]; 8 9 fixBin = x: '' 10 patchelf --interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \ 11 --set-rpath ${libPath} ${x} 12 ''; 13in 14stdenv.mkDerivation rec { 15 name = "hashcat-${version}"; 16 version = "0.49"; 17 18 src = fetchurl { 19 url = "http://hashcat.net/files/${name}.7z"; 20 sha256 = "0va07flncihgmnri5wj0jn636w86x5qwm4jmj2halcyg7qwqijh2"; 21 }; 22 23 buildInputs = [ p7zip patchelf ]; 24 25 unpackPhase = "7z x $src > /dev/null && cd ${name}"; 26 27 installPhase = '' 28 mkdir -p $out/bin $out/libexec 29 cp -R * $out/libexec 30 31 echo -n "/" > $out/bin/eula.accepted 32 ln -s $out/libexec/hashcat-cli${bits}.bin $out/bin/hashcat 33 ln -s $out/libexec/hashcat-cliXOP.bin $out/bin/hashcat-xop 34 ln -s $out/libexec/hashcat-cliAVX.bin $out/bin/hashcat-avx 35 ''; 36 37 fixupPhase = '' 38 ${fixBin "$out/libexec/hashcat-cli${bits}.bin"} 39 ${fixBin "$out/libexec/hashcat-cliXOP.bin"} 40 ${fixBin "$out/libexec/hashcat-cliAVX.bin"} 41 ''; 42 43 meta = { 44 description = "Fast password cracker"; 45 homepage = "http://hashcat.net/hashcat/"; 46 license = stdenv.lib.licenses.unfreeRedistributable; 47 platforms = stdenv.lib.platforms.linux; 48 maintainers = [ stdenv.lib.maintainers.thoughtpolice ]; 49 }; 50}