2023-10-14 12:58:27 +02:00
|
|
|
{ stdenv
|
|
|
|
, lib
|
|
|
|
, fetchurl
|
|
|
|
, guile
|
|
|
|
, autoreconfHook
|
|
|
|
, guile-gcrypt
|
|
|
|
, guile-lzma
|
|
|
|
, guile-quickcheck
|
2023-10-27 19:27:00 +02:00
|
|
|
, makeWrapper
|
2023-10-14 12:58:27 +02:00
|
|
|
, pkg-config
|
|
|
|
, zlib
|
|
|
|
}:
|
|
|
|
|
|
|
|
stdenv.mkDerivation rec {
|
2023-10-27 19:27:00 +02:00
|
|
|
pname = "disarchive";
|
2023-10-14 12:58:27 +02:00
|
|
|
version = "0.5.0";
|
|
|
|
|
|
|
|
src = fetchurl {
|
|
|
|
url = "https://files.ngyro.com/disarchive/disarchive-${version}.tar.gz";
|
|
|
|
hash = "sha256-Agt7v5HTpaskXuYmMdGDRIolaqCHUpwd/CfbZCe9Ups=";
|
|
|
|
};
|
|
|
|
|
2023-10-15 00:00:50 +02:00
|
|
|
strictDeps = true;
|
|
|
|
|
2023-10-14 12:58:27 +02:00
|
|
|
nativeBuildInputs = [
|
|
|
|
autoreconfHook
|
2023-10-15 00:00:50 +02:00
|
|
|
guile
|
2023-10-27 19:27:00 +02:00
|
|
|
guile-gcrypt
|
2023-10-24 11:55:17 +02:00
|
|
|
guile-lzma
|
2023-10-27 19:27:00 +02:00
|
|
|
makeWrapper
|
2023-10-14 12:58:27 +02:00
|
|
|
pkg-config
|
2023-10-15 00:00:50 +02:00
|
|
|
];
|
|
|
|
|
|
|
|
buildInputs = [
|
2023-10-14 12:58:27 +02:00
|
|
|
guile
|
|
|
|
zlib
|
|
|
|
];
|
|
|
|
|
|
|
|
propagatedBuildInputs = [
|
|
|
|
guile-gcrypt
|
|
|
|
guile-lzma
|
|
|
|
];
|
|
|
|
|
|
|
|
doCheck = !stdenv.isDarwin;
|
|
|
|
|
2023-10-27 19:27:00 +02:00
|
|
|
nativeCheckInputs = [
|
|
|
|
guile-quickcheck
|
|
|
|
];
|
|
|
|
|
|
|
|
postInstall = ''
|
|
|
|
wrapProgram $out/bin/disarchive \
|
|
|
|
--prefix GUILE_LOAD_PATH : "$out/${guile.siteDir}:$GUILE_LOAD_PATH" \
|
|
|
|
--prefix GUILE_LOAD_COMPILED_PATH : "$out/${guile.siteCcacheDir}:$GUILE_LOAD_COMPILED_PATH"
|
|
|
|
'';
|
|
|
|
|
2023-10-14 12:58:27 +02:00
|
|
|
meta = with lib; {
|
|
|
|
description = "Disassemble software into data and metadata";
|
|
|
|
homepage = "https://ngyro.com/software/disarchive.html";
|
|
|
|
license = licenses.gpl3Plus;
|
2023-10-27 19:27:00 +02:00
|
|
|
mainProgram = "disarchive";
|
2023-10-14 12:58:27 +02:00
|
|
|
maintainers = with maintainers; [ foo-dogsquared ];
|
|
|
|
platforms = guile.meta.platforms;
|
|
|
|
};
|
|
|
|
}
|