diff options
Diffstat (limited to 'nixpkgs/pkgs/tools/compression/xz/default.nix')
-rw-r--r-- | nixpkgs/pkgs/tools/compression/xz/default.nix | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/tools/compression/xz/default.nix b/nixpkgs/pkgs/tools/compression/xz/default.nix new file mode 100644 index 000000000000..cc021a1ef051 --- /dev/null +++ b/nixpkgs/pkgs/tools/compression/xz/default.nix @@ -0,0 +1,56 @@ +{ lib, stdenv, fetchurl +, enableStatic ? stdenv.hostPlatform.isStatic +}: + +# Note: this package is used for bootstrapping fetchurl, and thus +# cannot use fetchpatch! All mutable patches (generated by GitHub or +# cgit) that are needed here should be included directly in Nixpkgs as +# files. + +stdenv.mkDerivation rec { + name = "xz-5.2.5"; + + src = fetchurl { + url = "https://tukaani.org/xz/${name}.tar.bz2"; + sha256 = "1ps2i8i212n0f4xpq6clp7h13q7m1y8slqvxha9i8d0bj0qgj5si"; + }; + + outputs = [ "bin" "dev" "out" "man" "doc" ]; + + configureFlags = lib.optional enableStatic "--disable-shared"; + + doCheck = true; + + preCheck = '' + # Tests have a /bin/sh dependency... + patchShebangs tests + ''; + + # In stdenv-linux, prevent a dependency on bootstrap-tools. + preConfigure = "CONFIG_SHELL=/bin/sh"; + + postInstall = "rm -rf $out/share/doc"; + + meta = with lib; { + homepage = "https://tukaani.org/xz/"; + description = "A general-purpose data compression software, successor of LZMA"; + + longDescription = + '' XZ Utils is free general-purpose data compression software with high + compression ratio. XZ Utils were written for POSIX-like systems, + but also work on some not-so-POSIX systems. XZ Utils are the + successor to LZMA Utils. + + The core of the XZ Utils compression code is based on LZMA SDK, but + it has been modified quite a lot to be suitable for XZ Utils. The + primary compression algorithm is currently LZMA2, which is used + inside the .xz container format. With typical files, XZ Utils + create 30 % smaller output than gzip and 15 % smaller output than + bzip2. + ''; + + license = with licenses; [ gpl2Plus lgpl21Plus ]; + maintainers = with maintainers; [ sander ]; + platforms = platforms.all; + }; +} |