ripunzip: init at 1.1.0
A setup hook script is provided to make possible to use `ripunzip` as a replacement of `unzip` in `fetchzip`.
This commit is contained in:
parent
ee291783e5
commit
935d25c7e6
2 changed files with 54 additions and 0 deletions
48
pkgs/by-name/ri/ripunzip/package.nix
Normal file
48
pkgs/by-name/ri/ripunzip/package.nix
Normal file
|
@ -0,0 +1,48 @@
|
|||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, rustPlatform
|
||||
, openssl
|
||||
, darwin
|
||||
, pkg-config
|
||||
, testers
|
||||
, fetchzip
|
||||
, ripunzip
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "ripunzip";
|
||||
version = "1.1.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "google";
|
||||
repo = "ripunzip";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-GyP4OPnPKhu9nXYXIfWCVLF/thwWiP0OqAQY/1D05LE=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-Jv9bCHT5xl/2CPnSuWd9HZuaGOttBC5iAbbpr3jaIhM=";
|
||||
|
||||
buildInputs = [ openssl ]
|
||||
++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [ Security SystemConfiguration ]);
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
|
||||
setupHook = ./setup-hook.sh;
|
||||
|
||||
passthru.tests = {
|
||||
fetchzipWithRipunzip = testers.invalidateFetcherByDrvHash (fetchzip.override { unzip = ripunzip; }) {
|
||||
url = "https://github.com/google/ripunzip/archive/cb9caa3ba4b0e27a85e165be64c40f1f6dfcc085.zip";
|
||||
hash = "sha256-BoErC5VL3Vpvkx6xJq6J+eUJrBnjVEdTuSo7zh98Jy4=";
|
||||
};
|
||||
version = testers.testVersion {
|
||||
package = ripunzip;
|
||||
};
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
description = "A tool to unzip files in parallel";
|
||||
homepage = "https://github.com/google/ripunzip";
|
||||
license = with lib.licenses; [ mit asl20 ];
|
||||
maintainers = [ maintainers.lesuisse ];
|
||||
};
|
||||
}
|
6
pkgs/by-name/ri/ripunzip/setup-hook.sh
Normal file
6
pkgs/by-name/ri/ripunzip/setup-hook.sh
Normal file
|
@ -0,0 +1,6 @@
|
|||
unpackCmdHooks+=(_tryRipunzip)
|
||||
_tryRipunzip() {
|
||||
if ! [[ "$curSrc" =~ \.zip$ ]]; then return 1; fi
|
||||
|
||||
ripunzip unzip-file "$curSrc" 2> /dev/null
|
||||
}
|
Loading…
Reference in a new issue