depot/third_party/nixpkgs/pkgs/by-name/dt/dtrx/package.nix

71 lines
1.3 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";
};
}