nixpkgs mirror (for testing) github.com/NixOS/nixpkgs
nix
at devShellTools-shell 67 lines 2.0 kB view raw
1{ 2 lib, 3 fetchFromGitHub, 4 rustPlatform, 5 openssl, 6 pkg-config, 7 testers, 8 fetchzip, 9 ripunzip, 10}: 11 12rustPlatform.buildRustPackage rec { 13 pname = "ripunzip"; 14 version = "2.0.3"; 15 16 src = fetchFromGitHub { 17 owner = "google"; 18 repo = "ripunzip"; 19 rev = "v${version}"; 20 hash = "sha256-giNaTALPZYOfQ+kPyQufbRTdTwwKLK7iDvg50YNfzDg="; 21 }; 22 23 cargoHash = "sha256-uz07yZBkmBTEGB64rhBYQ2iL0KbrY4UAM96utv8HCSE="; 24 25 buildInputs = [ openssl ]; 26 nativeBuildInputs = [ pkg-config ]; 27 28 checkFlags = [ 29 # Skip tests involving network 30 "--skip=unzip::http_range_reader::tests::test_with_accept_range" 31 "--skip=unzip::http_range_reader::tests::test_without_accept_range" 32 "--skip=unzip::seekable_http_reader::tests::test_big_readahead" 33 "--skip=unzip::seekable_http_reader::tests::test_random_access" 34 "--skip=unzip::seekable_http_reader::tests::test_small_readahead" 35 "--skip=unzip::seekable_http_reader::tests::test_unlimited_readahead" 36 "--skip=unzip::tests::test_extract_biggish_zip_from_ranges_server" 37 "--skip=unzip::tests::test_extract_from_server" 38 "--skip=unzip::tests::test_small_zip_from_no_content_length_server" 39 "--skip=unzip::tests::test_small_zip_from_no_range_server" 40 "--skip=unzip::tests::test_small_zip_from_ranges_server" 41 ]; 42 43 setupHook = ./setup-hook.sh; 44 45 passthru.tests = { 46 fetchzipWithRipunzip = 47 testers.invalidateFetcherByDrvHash (fetchzip.override { unzip = ripunzip; }) 48 { 49 url = "https://github.com/google/ripunzip/archive/cb9caa3ba4b0e27a85e165be64c40f1f6dfcc085.zip"; 50 hash = "sha256-BoErC5VL3Vpvkx6xJq6J+eUJrBnjVEdTuSo7zh98Jy4="; 51 }; 52 version = testers.testVersion { 53 package = ripunzip; 54 }; 55 }; 56 57 meta = with lib; { 58 description = "Tool to unzip files in parallel"; 59 mainProgram = "ripunzip"; 60 homepage = "https://github.com/google/ripunzip"; 61 license = with lib.licenses; [ 62 mit 63 asl20 64 ]; 65 maintainers = [ maintainers.lesuisse ]; 66 }; 67}