nixpkgs/pkgs/tools/compression/dtrx/default.nix
2023-11-23 21:04:16 +01:00

56 lines
1.1 KiB
Nix

{ lib
, fetchFromGitHub
, gitUpdater
, python3Packages
, gnutar
, unzip
, lhasa
, rpm
, binutils
, cpio
, gzip
, p7zip
, cabextract
, unrar
, unshield
, bzip2
, xz
, lzip
, unzipSupport ? false
, unrarSupport ? false
}:
python3Packages.buildPythonApplication rec {
pname = "dtrx";
version = "8.5.3";
src = fetchFromGitHub {
owner = "dtrx-py";
repo = "dtrx";
rev = version;
sha256 = "sha256-LB3F6jcqQPRsjFO4L2fPAPnacDAdtcaadgGbwXA9LAw=";
};
makeWrapperArgs =
let
archivers = lib.makeBinPath (
[ gnutar lhasa rpm binutils cpio gzip p7zip cabextract unshield bzip2 xz lzip ]
++ lib.optional (unzipSupport) unzip
++ lib.optional (unrarSupport) unrar
);
in [
''--prefix PATH : "${archivers}"''
];
nativeBuildInputs = [ python3Packages.invoke ];
passthru.updateScript = gitUpdater { };
meta = with lib; {
description = "Do The Right Extraction: A tool for taking the hassle out of extracting archives";
homepage = "https://github.com/dtrx-py/dtrx";
license = licenses.gpl3Plus;
maintainers = [ ];
mainProgram = "dtrx";
};
}