depot/third_party/nixpkgs/pkgs/by-name/sc/scalpel/package.nix

56 lines
1.2 KiB
Nix

{ lib
, fetchFromGitHub
, stdenv
, autoconf
, automake
, libtool
, tre
}:
stdenv.mkDerivation (finalAttrs: {
pname = "scalpel";
version = "2.1";
src = fetchFromGitHub {
owner = "sleuthkit";
repo = "scalpel";
rev = "35e1367ef2232c0f4883c92ec2839273c821dd39";
hash = "sha256-0lqU1CAcWXNw9WFa29BXla1mvABlzWV+hcozZyfR0oE=";
};
nativeBuildInputs = [
autoconf
automake
libtool
tre
];
postPatch = ''
sed -i \
-e 's|#define\s*SCALPEL_DEFAULT_CONFIG_FILE\s.*"scalpel.conf"|#define SCALPEL_DEFAULT_CONFIG_FILE "${placeholder "out"}/share/scalpel/scalpel.conf"|' \
src/scalpel.h
'';
env.CXXFLAGS = "-std=c++14" + lib.optionalString stdenv.cc.isClang " -Wno-error=reserved-user-defined-literal";
preConfigure = ''
./bootstrap
'';
configureFlags = [
"--with-pic"
];
postInstall = ''
install -Dm644 scalpel.conf -t $out/share/scalpel/
'';
meta = with lib; {
homepage = "https://github.com/sleuthkit/scalpel";
description = "Recover files based on their headers, footers and internal data structures, based on Foremost";
mainProgram = "scalpel";
maintainers = with maintainers; [ shard7 ];
platforms = platforms.unix;
license = with licenses; [ asl20 ];
};
})