From fa247fa213be33c2ffd31419bde909457b261ded Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 27 Jan 2016 02:45:20 +0100 Subject: [PATCH] zstd: init at 0.4.7 --- pkgs/tools/compression/zstd/default.nix | 45 +++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 47 insertions(+) create mode 100644 pkgs/tools/compression/zstd/default.nix diff --git a/pkgs/tools/compression/zstd/default.nix b/pkgs/tools/compression/zstd/default.nix new file mode 100644 index 00000000000..d60b4b3614a --- /dev/null +++ b/pkgs/tools/compression/zstd/default.nix @@ -0,0 +1,45 @@ +{ stdenv, fetchFromGitHub +, legacySupport ? false }: + +stdenv.mkDerivation rec { + name = "zstd-${version}"; + version = "0.4.7"; + + src = fetchFromGitHub { + sha256 = "09l917979qfqk44dbgsa9vs37a2qj4ga43553zcgvnps02wlja8s"; + rev = "v${version}"; + repo = "zstd"; + owner = "Cyan4973"; + }; + + # The Makefiles don't properly use file targets, but blindly rebuild + # all dependencies on every make invocation. So no nice phases. :-( + phases = [ "unpackPhase" "installPhase" "fixupPhase" ]; + + makeFlags = [ + "ZSTD_LEGACY_SUPPORT=${if legacySupport then "1" else "0"}" + ]; + + installFlags = [ + "PREFIX=$(out)" + ]; + + meta = with stdenv.lib; { + description = "Zstandard real-time compression algorithm"; + longDescription = '' + Zstd, short for Zstandard, is a fast lossless compression algorithm, + targeting real-time compression scenarios at zlib-level compression + ratio. Zstd can also offer stronger compression ratio at the cost of + compression speed. Speed/ratio trade-off is configurable by small + increment, to fit different situations. Note however that decompression + speed is preserved and remain roughly the same at all settings, a + property shared by most LZ compression algorithms, such as zlib. + ''; + homepage = http://www.zstd.net/; + # The licence of the CLI programme is GPLv2+, that of the library BSD-2. + license = with licenses; [ gpl2Plus bsd2 ]; + + platforms = platforms.linux; + maintainers = with maintainers; [ nckx ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 96f91be7505..9d5f304d756 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3759,6 +3759,8 @@ let zsh-navigation-tools = callPackage ../tools/misc/zsh-navigation-tools { }; + zstd = callPackage ../tools/compression/zstd { }; + zsync = callPackage ../tools/compression/zsync { }; zxing = callPackage ../tools/graphics/zxing {};