1{ lib
2, fetchFromGitHub
3, stdenvNoCC
4, nss
5, wrapPython
6}:
7
8stdenvNoCC.mkDerivation rec {
9 pname = "firefox_decrypt";
10 version = "unstable-2021-12-29";
11
12 src = fetchFromGitHub {
13 owner = "unode";
14 repo = pname;
15 rev = "a3daadc09603a6cf8c4b7e49a59776340bc885e7";
16 sha256 = "0g219zqbdnhh9j09d9a0b81vr6j44zzk13ckl5fzkr10gqndiscc";
17 };
18
19 nativeBuildInputs = [ wrapPython ];
20
21 buildInputs = [ nss ];
22
23 installPhase = ''
24 runHook preInstall
25
26 install -Dm 0755 firefox_decrypt.py "$out/bin/firefox_decrypt"
27
28 runHook postInstall
29 '';
30
31 makeWrapperArgs = [ "--prefix" "LD_LIBRARY_PATH" ":" (lib.makeLibraryPath [ nss ]) ];
32
33 postFixup = ''
34 wrapPythonPrograms
35 '';
36
37 passthru.updateScript = ./update.sh;
38
39 meta = with lib; {
40 homepage = "https://github.com/unode/firefox_decrypt";
41 description = "A tool to extract passwords from profiles of Mozilla Firefox and derivates";
42 license = licenses.gpl3Plus;
43 maintainers = with maintainers; [ schnusch ];
44 };
45}