diff options
Diffstat (limited to 'pkgs/tools/compression/dtrx/default.nix')
-rw-r--r-- | pkgs/tools/compression/dtrx/default.nix | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/pkgs/tools/compression/dtrx/default.nix b/pkgs/tools/compression/dtrx/default.nix new file mode 100644 index 0000000000000..392c2b960f277 --- /dev/null +++ b/pkgs/tools/compression/dtrx/default.nix @@ -0,0 +1,52 @@ +{ lib +, fetchFromGitHub +, 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.2.1"; + + src = fetchFromGitHub { + owner = "dtrx-py"; + repo = "dtrx"; + rev = version; + sha256 = "sha256-ayQ52teXWpw3ZvPhfqxFHxMZatQK9NKv/97ovANFZcE="; + }; + + postInstall = + 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 '' + wrapProgram "$out/bin/dtrx" --prefix PATH : "${archivers}" + ''; + + buildInputs = [ python3Packages.twine ]; + + 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 = [ maintainers.spwhitt ]; + }; +} |