From 7b67f66039cc9567cf72f86ad95519adc7badfc6 Mon Sep 17 00:00:00 2001 From: Zebreus Date: Thu, 18 Apr 2024 18:12:09 +0200 Subject: [PATCH] autopsy: init at 4.21.0 --- pkgs/by-name/au/autopsy/package.nix | 49 +++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 pkgs/by-name/au/autopsy/package.nix diff --git a/pkgs/by-name/au/autopsy/package.nix b/pkgs/by-name/au/autopsy/package.nix new file mode 100644 index 000000000000..359a7affa3a0 --- /dev/null +++ b/pkgs/by-name/au/autopsy/package.nix @@ -0,0 +1,49 @@ +{ stdenv, lib, makeWrapper, fetchzip, testdisk, imagemagick, jdk, findutils, sleuthkit, ... }: +let + jdkWithJfx = jdk.override (lib.optionalAttrs stdenv.isLinux { + enableJavaFX = true; + }); +in +stdenv.mkDerivation rec { + pname = "autopsy"; + version = "4.21.0"; + + src = fetchzip { + url = "https://github.com/sleuthkit/autopsy/releases/download/autopsy-${version}/autopsy-${version}.zip"; + sha256 = "32iOQA3+ykltCYW/MpqCVxyhh3mm6eYzY+t0smAsWRw="; + }; + + nativeBuildInputs = [ makeWrapper findutils ]; + buildInputs = [ testdisk imagemagick jdkWithJfx ]; + + installPhase = '' + runHook preInstall + + cp -r . $out + + # Run the provided setup script to make files executable and copy sleuthkit + TSK_JAVA_LIB_PATH="${sleuthkit}/share/java" bash $out/unix_setup.sh -j '${jdkWithJfx}' -n autopsy + + substituteInPlace $out/bin/autopsy \ + --replace-warn 'APPNAME=`basename "$PRG"`' 'APPNAME=autopsy' + wrapProgram $out/bin/autopsy \ + --run 'export SOLR_LOGS_DIR="$HOME/.autopsy/dev/var/log"' \ + --run 'export SOLR_PID_DIR="$HOME/.autopsy/dev"' \ + --prefix PATH : "${lib.makeBinPath [ testdisk imagemagick jdkWithJfx ]}" + + runHook postInstall + ''; + + meta = { + description = "Graphical interface to The Sleuth Kit and other open source digital forensics tools"; + homepage = "https://www.sleuthkit.org/autopsy"; + changelog = "https://github.com/sleuthkit/autopsy/releases/tag/autopsy-${version}"; + # Autopsy brings a lot of vendored dependencies + license = with lib.licenses; [ asl20 ipl10 lgpl3Only lgpl21Only zlib wtfpl bsd3 cc-by-30 mit gpl2Only ]; + maintainers = with lib.maintainers; [ zebreus ]; + mainProgram = "autopsy"; + sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ]; + # Autopsy theoretically also supports darwin + platforms = lib.platforms.x86_64; + }; +}