summary refs log tree commit diff
path: root/pkgs/tools/compression
diff options
context:
space:
mode:
authorBrian McKenna <bmckenna@atlassian.com>2022-01-07 10:13:50 +1000
committerBrian McKenna <bmckenna@atlassian.com>2022-01-20 12:56:43 +1100
commitab001e250a4abc8f57db6257864c00d1cd807179 (patch)
tree4e2330b341508c143589d20ad7e81761de66783f /pkgs/tools/compression
parent700df62dd48934dc4def6c3164e0311c29536b3d (diff)
downloadnixpkgs-ab001e250a4abc8f57db6257864c00d1cd807179.tar
nixpkgs-ab001e250a4abc8f57db6257864c00d1cd807179.tar.gz
nixpkgs-ab001e250a4abc8f57db6257864c00d1cd807179.tar.bz2
nixpkgs-ab001e250a4abc8f57db6257864c00d1cd807179.tar.lz
nixpkgs-ab001e250a4abc8f57db6257864c00d1cd807179.tar.xz
nixpkgs-ab001e250a4abc8f57db6257864c00d1cd807179.tar.zst
nixpkgs-ab001e250a4abc8f57db6257864c00d1cd807179.zip
dtrx: 7.1 -> 8.2.1 (resurrected)
The original developer has abandoned this package but some Ubuntu
developers have forked it and maintain it. This means the tests now
work and the package supports Python 3.
Diffstat (limited to 'pkgs/tools/compression')
-rw-r--r--pkgs/tools/compression/dtrx/default.nix52
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 00000000000..392c2b960f2
--- /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 ];
+  };
+}