depot/third_party/nixpkgs/pkgs/tools/compression/pigz/default.nix

46 lines
1.3 KiB
Nix
Raw Normal View History

{ lib, stdenv, fetchFromGitHub, fetchpatch, zlib, util-linux }:
stdenv.mkDerivation rec {
pname = "pigz";
version = "2.7";
src = fetchFromGitHub {
owner = "madler";
repo = pname;
rev = "refs/tags/v${version}";
sha256 = "sha256-RYp3vRwlI6S/lcib+3t7qLYFWv11GUnj1Cmxm9eaVro=";
};
patches = [
# needed to build the pigzn test binary
(fetchpatch {
url = "https://github.com/madler/pigz/commit/67fd6e436f4f479aead529a719e24d6864cf1dfa.patch";
sha256 = "sha256-FkzLYob/WIVIB7eh03cdzpLy6SzoHLqEMsWyHdMTjbU=";
})
];
enableParallelBuilding = true;
buildInputs = [ zlib ] ++ lib.optional stdenv.isLinux util-linux;
makeFlags = [ "CC=${stdenv.cc}/bin/${stdenv.cc.targetPrefix}cc" ];
doCheck = stdenv.isLinux;
checkTarget = "tests";
installPhase = ''
install -Dm755 pigz "$out/bin/pigz"
ln -s pigz "$out/bin/unpigz"
install -Dm755 pigz.1 "$out/share/man/man1/pigz.1"
ln -s pigz.1 "$out/share/man/man1/unpigz.1"
install -Dm755 pigz.pdf "$out/share/doc/pigz/pigz.pdf"
'';
meta = with lib; {
homepage = "https://www.zlib.net/pigz/";
description = "A parallel implementation of gzip for multi-core machines";
maintainers = with maintainers; [ ];
license = licenses.zlib;
platforms = platforms.unix;
};
}