fluffychat: 1.22.1 -> 1.23.0 (#364091)
[NixPkgs.git] / pkgs / by-name / au / autopsy / package.nix
blobe9fc15a1007634cb502f2863f5244e3ee4e777d6
2   stdenv,
3   lib,
4   makeWrapper,
5   fetchzip,
6   testdisk,
7   imagemagick,
8   jdk,
9   findutils,
10   sleuthkit,
11   ...
13 let
14   jdkWithJfx = jdk.override (
15     lib.optionalAttrs stdenv.hostPlatform.isLinux {
16       enableJavaFX = true;
17     }
18   );
20 stdenv.mkDerivation rec {
21   pname = "autopsy";
22   version = "4.21.0";
24   src = fetchzip {
25     url = "https://github.com/sleuthkit/autopsy/releases/download/autopsy-${version}/autopsy-${version}.zip";
26     hash = "sha256-32iOQA3+ykltCYW/MpqCVxyhh3mm6eYzY+t0smAsWRw=";
27   };
29   nativeBuildInputs = [
30     makeWrapper
31     findutils
32   ];
33   buildInputs = [
34     testdisk
35     imagemagick
36     jdkWithJfx
37   ];
39   installPhase = ''
40     runHook preInstall
42     cp -r . $out
44     # Run the provided setup script to make files executable and copy sleuthkit
45     TSK_JAVA_LIB_PATH="${sleuthkit}/share/java" bash $out/unix_setup.sh -j '${jdkWithJfx}' -n autopsy
47     substituteInPlace $out/bin/autopsy \
48       --replace-warn 'APPNAME=`basename "$PRG"`' 'APPNAME=autopsy'
49     wrapProgram $out/bin/autopsy \
50       --run 'export SOLR_LOGS_DIR="$HOME/.autopsy/dev/var/log"' \
51       --run 'export SOLR_PID_DIR="$HOME/.autopsy/dev"' \
52       --prefix PATH : "${
53         lib.makeBinPath [
54           testdisk
55           imagemagick
56           jdkWithJfx
57         ]
58       }"
60     runHook postInstall
61   '';
63   meta = {
64     description = "Graphical interface to The Sleuth Kit and other open source digital forensics tools";
65     homepage = "https://www.sleuthkit.org/autopsy";
66     changelog = "https://github.com/sleuthkit/autopsy/releases/tag/autopsy-${version}";
67     # Autopsy brings a lot of vendored dependencies
68     license = with lib.licenses; [
69       asl20
70       ipl10
71       lgpl3Only
72       lgpl21Only
73       zlib
74       wtfpl
75       bsd3
76       cc-by-30
77       mit
78       gpl2Only
79     ];
80     maintainers = with lib.maintainers; [ zebreus ];
81     mainProgram = "autopsy";
82     sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
83     # Autopsy theoretically also supports darwin
84     platforms = lib.platforms.x86_64;
85   };