diff options
author | Alyssa Ross <hi@alyssa.is> | 2022-12-06 19:57:55 +0000 |
---|---|---|
committer | Alyssa Ross <hi@alyssa.is> | 2023-02-08 13:48:30 +0000 |
commit | bf3aadfdd39aa197e18bade671fab6726349ffa4 (patch) | |
tree | 698567af766ed441d757b57a7b21e68d4a342a2b /nixpkgs/pkgs/tools/compression | |
parent | f4afc5a01d9539ce09e47494e679c51f80723d07 (diff) | |
parent | 99665eb45f58d959d2cb9e49ddb960c79d596f33 (diff) | |
download | nixlib-bf3aadfdd39aa197e18bade671fab6726349ffa4.tar nixlib-bf3aadfdd39aa197e18bade671fab6726349ffa4.tar.gz nixlib-bf3aadfdd39aa197e18bade671fab6726349ffa4.tar.bz2 nixlib-bf3aadfdd39aa197e18bade671fab6726349ffa4.tar.lz nixlib-bf3aadfdd39aa197e18bade671fab6726349ffa4.tar.xz nixlib-bf3aadfdd39aa197e18bade671fab6726349ffa4.tar.zst nixlib-bf3aadfdd39aa197e18bade671fab6726349ffa4.zip |
Merge commit '99665eb45f58d959d2cb9e49ddb960c79d596f33'
Diffstat (limited to 'nixpkgs/pkgs/tools/compression')
23 files changed, 350 insertions, 81 deletions
diff --git a/nixpkgs/pkgs/tools/compression/advancecomp/default.nix b/nixpkgs/pkgs/tools/compression/advancecomp/default.nix index 00ce6af1d593..e7db524e729a 100644 --- a/nixpkgs/pkgs/tools/compression/advancecomp/default.nix +++ b/nixpkgs/pkgs/tools/compression/advancecomp/default.nix @@ -1,40 +1,23 @@ { lib, stdenv , fetchFromGitHub -, fetchpatch , autoreconfHook , zlib }: stdenv.mkDerivation rec { pname = "advancecomp"; - version = "2.1"; + version = "2.3"; src = fetchFromGitHub { owner = "amadvance"; repo = "advancecomp"; rev = "v${version}"; - sha256 = "1pd6czamamrd0ppk5a3a65hcgdlqwja98aandhqiajhnibwldv8x"; + hash = "sha256-klyTqqZs5TwadgDP8LJ1wUhXlO+/kQPM6qhiSki31Q8="; }; nativeBuildInputs = [ autoreconfHook ]; buildInputs = [ zlib ]; - patches = [ - (fetchpatch { - name = "CVE-2019-9210.patch"; - url = "https://github.com/amadvance/advancecomp/commit/fcf71a89265c78fc26243574dda3a872574a5c02.patch"; - sha256 = "0cdv9g87c1y8zwhqkd9ba2zjw4slcvg7yzcqv43idvnwb5fl29n7"; - excludes = [ "doc/history.d" ]; - }) - - # Pull upstream fix for gcc-11: - (fetchpatch { - name = "gcc-11.patch"; - url = "https://github.com/amadvance/advancecomp/commit/7b08f7a2af3f66ab95437e4490499cebb20e5e41.patch"; - sha256 = "0gpppq6b760m1429g7d808ipdgb4lrqc1b6xk2457y66pbaiwc9s"; - }) - ]; - # autover.sh relies on 'git describe', which obviously doesn't work as we're not cloning # the full git repo. so we have to put the version number in `.version`, otherwise # the binaries get built reporting "none" as their version number. diff --git a/nixpkgs/pkgs/tools/compression/bzip2/CVE-2016-3189.patch b/nixpkgs/pkgs/tools/compression/bzip2/CVE-2016-3189.patch deleted file mode 100644 index eff324b32503..000000000000 --- a/nixpkgs/pkgs/tools/compression/bzip2/CVE-2016-3189.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff --git a/bzip2recover.c b/bzip2recover.c -index f9de049..252c1b7 100644 ---- a/bzip2recover.c -+++ b/bzip2recover.c -@@ -457,6 +457,7 @@ Int32 main ( Int32 argc, Char** argv ) - bsPutUChar ( bsWr, 0x50 ); bsPutUChar ( bsWr, 0x90 ); - bsPutUInt32 ( bsWr, blockCRC ); - bsClose ( bsWr ); -+ outFile = NULL; - } - if (wrBlock >= rbCtr) break; - wrBlock++; diff --git a/nixpkgs/pkgs/tools/compression/bzip2/cve-2019-12900.patch b/nixpkgs/pkgs/tools/compression/bzip2/cve-2019-12900.patch deleted file mode 100644 index bf3d13a7a691..000000000000 --- a/nixpkgs/pkgs/tools/compression/bzip2/cve-2019-12900.patch +++ /dev/null @@ -1,13 +0,0 @@ -https://gitlab.com/federicomenaquintero/bzip2/commit/74de1e2e6ffc9d -diff --git a/decompress.c b/decompress.c ---- a/decompress.c -+++ b/decompress.c -@@ -287,7 +287,7 @@ - GET_BITS(BZ_X_SELECTOR_1, nGroups, 3); - if (nGroups < 2 || nGroups > 6) RETURN(BZ_DATA_ERROR); - GET_BITS(BZ_X_SELECTOR_2, nSelectors, 15); -- if (nSelectors < 1) RETURN(BZ_DATA_ERROR); -+ if (nSelectors < 1 || nSelectors > BZ_MAX_SELECTORS) RETURN(BZ_DATA_ERROR); - for (i = 0; i < nSelectors; i++) { - j = 0; - while (True) { diff --git a/nixpkgs/pkgs/tools/compression/bzip2/default.nix b/nixpkgs/pkgs/tools/compression/bzip2/default.nix index da37cf9fbd8c..3b48195d11d6 100644 --- a/nixpkgs/pkgs/tools/compression/bzip2/default.nix +++ b/nixpkgs/pkgs/tools/compression/bzip2/default.nix @@ -10,33 +10,38 @@ stdenv.mkDerivation rec { pname = "bzip2"; - version = "1.0.6.0.2"; + version = "1.0.8"; - /* We use versions patched to use autotools style properly, - saving lots of trouble. */ src = fetchurl { - urls = map - (prefix: prefix + "/people/sbrabec/bzip2/tarballs/${pname}-${version}.tar.gz") - [ - "http://ftp.uni-kl.de/pub/linux/suse" - "ftp://ftp.hs.uni-hamburg.de/pub/mirrors/suse" - "ftp://ftp.mplayerhq.hu/pub/linux/suse" - "http://ftp.suse.com/pub" # the original patched version but slow - ]; - sha256 = "sha256-FnhwNy4OHe8d5M6iYCClkxzcB/EHXg0veXwv43ZlxbA="; + url = "https://sourceware.org/pub/bzip2/bzip2-${version}.tar.gz"; + sha256 = "sha256-q1oDF27hBtPw+pDjgdpHjdrkBZGBU8yiSOaCzQxKImk="; }; - nativeBuildInputs = [ autoreconfHook ]; + patchFlags = ["-p0"]; patches = [ - ./CVE-2016-3189.patch - ./cve-2019-12900.patch + (fetchurl { + url = "https://ftp.suse.com/pub/people/sbrabec/bzip2/for_downstream/bzip2-1.0.6.2-autoconfiscated.patch"; + sha256 = "sha256-QMufl6ffJVVVVZespvkCbFpB6++R1lnq1687jEsUjr0="; + }) ]; - + # Fix up hardcoded version from the above patch, e.g. seen in bzip2.pc or libbz2.so.1.0.N postPatch = '' - sed -i -e '/<sys\\stat\.h>/s|\\|/|' bzip2.c + patch <<-EOF + --- configure.ac + +++ configure.ac + @@ -3,3 +3,3 @@ + -AC_INIT([bzip2], [1.0.6], [Julian Seward <jseward@bzip.org>]) + +AC_INIT([bzip2], [${version}], [Julian Seward <jseward@bzip.org>]) + BZIP2_LT_CURRENT=1 + -BZIP2_LT_REVISION=6 + +BZIP2_LT_REVISION=${lib.versions.patch version} + EOF ''; + strictDeps = true; + nativeBuildInputs = [ autoreconfHook ]; + outputs = [ "bin" "dev" "out" "man" ]; configureFlags = @@ -44,6 +49,10 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; + postInstall = '' + ln -s $out/lib/libbz2.so.1.0.* $out/lib/libbz2.so.1.0 + ''; + meta = with lib; { description = "High-quality data compression program"; homepage = "https://www.sourceware.org/bzip2"; diff --git a/nixpkgs/pkgs/tools/compression/bzip3/default.nix b/nixpkgs/pkgs/tools/compression/bzip3/default.nix new file mode 100644 index 000000000000..c265a54a9813 --- /dev/null +++ b/nixpkgs/pkgs/tools/compression/bzip3/default.nix @@ -0,0 +1,43 @@ +{ lib +, stdenv +, fetchFromGitHub +, autoreconfHook +, pkg-config +}: + +stdenv.mkDerivation rec { + pname = "bzip3"; + version = "1.1.4"; + + outputs = [ "bin" "dev" "out" ]; + + src = fetchFromGitHub { + owner = "kspalaiologos"; + repo = "bzip3"; + rev = version; + hash = "sha256-rbJUvFm8WYgQLNpbX6kcXb5qAGAJfylTo4HgOvZVCu8="; + }; + + postPatch = '' + echo -n "${version}" > .tarball-version + patchShebangs build-aux + ''; + + nativeBuildInputs = [ + autoreconfHook + pkg-config + ]; + + configureFlags = [ + "--disable-arch-native" + ] ++ lib.optionals stdenv.isDarwin [ "--disable-link-time-optimization" ]; + + meta = { + description = "A better and stronger spiritual successor to BZip2"; + homepage = "https://github.com/kspalaiologos/bzip3"; + changelog = "https://github.com/kspalaiologos/bzip3/blob/${src.rev}/NEWS"; + license = lib.licenses.lgpl3Plus; + maintainers = with lib.maintainers; [ dotlambda ]; + platforms = lib.platforms.unix; + }; +} diff --git a/nixpkgs/pkgs/tools/compression/crabz/default.nix b/nixpkgs/pkgs/tools/compression/crabz/default.nix index 5eafb3f56145..67c4cffbc331 100644 --- a/nixpkgs/pkgs/tools/compression/crabz/default.nix +++ b/nixpkgs/pkgs/tools/compression/crabz/default.nix @@ -10,16 +10,16 @@ rustPlatform.buildRustPackage rec { pname = "crabz"; - version = "0.7.2"; + version = "0.7.5"; src = fetchFromGitHub { owner = "sstadick"; repo = pname; rev = "v${version}"; - sha256 = "0ch9cqarsakihg9ymbdm0ka6wz77z84n4g6cdlcskczc5g3b9gp9"; + sha256 = "sha256-9PZbrdgHX7zOftecvsyVjYUkBlFEt20lYtLSkFcb8dg="; }; - cargoSha256 = "sha256-nrCYlhq/f8gk3NmltAg+xppRJ533ooEpetWvaF2vmP0="; + cargoSha256 = "sha256-tT6RCL5pOAMZw7cQr0BCAde9Y/1FeBBLXF6uXfM1I0A="; nativeBuildInputs = [ cmake ]; diff --git a/nixpkgs/pkgs/tools/compression/efficient-compression-tool/default.nix b/nixpkgs/pkgs/tools/compression/efficient-compression-tool/default.nix new file mode 100644 index 000000000000..6a9615601276 --- /dev/null +++ b/nixpkgs/pkgs/tools/compression/efficient-compression-tool/default.nix @@ -0,0 +1,39 @@ +{ lib +, stdenv +, fetchFromGitHub +, boost +, cmake +, nasm +, libpng +}: + +stdenv.mkDerivation rec { + pname = "efficient-compression-tool"; + version = "0.9.1"; + + src = fetchFromGitHub { + owner = "fhanau"; + repo = "Efficient-Compression-Tool"; + rev = "v${version}"; + sha256 = "sha256-TSV5QXf6GuHAwQrde3Zo9MA1rtpAhtRg0UTzMkBnHB8="; + fetchSubmodules = true; + }; + + nativeBuildInputs = [ cmake nasm ]; + + patches = [ ./use-nixpkgs-libpng.patch ]; + + buildInputs = [ boost libpng ]; + + cmakeDir = "../src"; + + cmakeFlags = [ "-DECT_FOLDER_SUPPORT=ON" ]; + + meta = with lib; { + description = "Fast and effective C++ file optimizer"; + homepage = "https://github.com/fhanau/Efficient-Compression-Tool"; + license = licenses.asl20; + maintainers = [ maintainers.lunik1 ]; + platforms = platforms.linux; + }; +} diff --git a/nixpkgs/pkgs/tools/compression/efficient-compression-tool/use-nixpkgs-libpng.patch b/nixpkgs/pkgs/tools/compression/efficient-compression-tool/use-nixpkgs-libpng.patch new file mode 100644 index 000000000000..f165b2b95506 --- /dev/null +++ b/nixpkgs/pkgs/tools/compression/efficient-compression-tool/use-nixpkgs-libpng.patch @@ -0,0 +1,108 @@ +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index d18843c..a9df1fb 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -8,11 +8,6 @@ if(NOT CMAKE_BUILD_TYPE) + set(CMAKE_BUILD_TYPE Release) + endif() + +-# Check that submodules are present only if source was downloaded with git +-if(EXISTS "${CMAKE_SOURCE_DIR}/../.git" AND NOT EXISTS "${CMAKE_SOURCE_DIR}/../src/libpng/README") +- message (FATAL_ERROR "Submodules are not initialized. Run \n\tgit submodule update --init --recursive\n within the repository") +-endif() +- + add_executable(ect + main.cpp + gztools.cpp +@@ -56,7 +51,6 @@ add_subdirectory(lodepng EXCLUDE_FROM_ALL) + add_subdirectory(miniz EXCLUDE_FROM_ALL) + add_subdirectory(zlib EXCLUDE_FROM_ALL) + add_subdirectory(zopfli EXCLUDE_FROM_ALL) +-file(COPY ${CMAKE_SOURCE_DIR}/pngusr.h DESTINATION ${CMAKE_SOURCE_DIR}/libpng/) + add_subdirectory(optipng EXCLUDE_FROM_ALL) + # Mozjpeg changes the install prefix if it thinks the current is defaulted + set(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT FALSE) +diff --git a/src/Makefile b/src/Makefile +index cc24367..7aa9f0a 100755 +--- a/src/Makefile ++++ b/src/Makefile +@@ -18,7 +18,7 @@ CXXSRC = support.cpp zopflipng.cpp zopfli/deflate.cpp zopfli/zopfli_gzip.cpp zop + lodepng/lodepng.cpp lodepng/lodepng_util.cpp optipng/codec.cpp optipng/optipng.cpp jpegtran.cpp gztools.cpp \ + leanify/zip.cpp leanify/leanify.cpp + +-.PHONY: libpng mozjpeg deps bin all install ++.PHONY: mozjpeg deps bin all install + all: deps bin + + bin: deps +@@ -33,9 +33,6 @@ libz.a: + cd zlib/; \ + $(CC) $(UCFLAGS) -c adler32.c crc32.c deflate.c inffast.c inflate.c inftrees.c trees.c zutil.c gzlib.c gzread.c; \ + ar rcs ../libz.a adler32.o crc32.o deflate.o inffast.o inflate.o inftrees.o trees.o zutil.o gzlib.o gzread.o +-libpng: +- cp pngusr.h libpng/pngusr.h +- make -C libpng/ -f scripts/makefile.linux-opt CC="$(CC)" CFLAGS="$(UCFLAGS) -DPNG_USER_CONFIG -Wno-macro-redefined" libpng.a + mozjpeg: + cd mozjpeg/; \ + export CC="$(CC)"; \ +diff --git a/src/optipng/CMakeLists.txt b/src/optipng/CMakeLists.txt +index 1037a20..3c751e9 100644 +--- a/src/optipng/CMakeLists.txt ++++ b/src/optipng/CMakeLists.txt +@@ -16,16 +16,14 @@ add_library(optipng + add_library(optipng::optipng ALIAS optipng) + + #make sure that we are using custom zlib and custom libpng options +-set(PNG_BUILD_ZLIB ON CACHE BOOL "use custom zlib within libpng" FORCE) + set(ZLIB_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../zlib/ CACHE FILEPATH "custom zlib directory" FORCE) + if(NOT WIN32) + add_compile_options(-Wno-macro-redefined) + endif() + add_compile_definitions(PNG_USER_CONFIG) + +-add_subdirectory(../libpng libpng EXCLUDE_FROM_ALL) + target_link_libraries(optipng +- png_static) ++ png) + + # libpng generates some header files that we need to be able to include + target_include_directories(optipng +diff --git a/src/optipng/image.h b/src/optipng/image.h +index c439f84..8255fa0 100755 +--- a/src/optipng/image.h ++++ b/src/optipng/image.h +@@ -13,7 +13,7 @@ + #ifndef OPNGCORE_IMAGE_H + #define OPNGCORE_IMAGE_H + +-#include "../libpng/png.h" ++#include <png.h> + + #ifdef __cplusplus + extern "C" { +diff --git a/src/optipng/opngreduc/opngreduc.h b/src/optipng/opngreduc/opngreduc.h +index a7e6553..06ef956 100755 +--- a/src/optipng/opngreduc/opngreduc.h ++++ b/src/optipng/opngreduc/opngreduc.h +@@ -13,7 +13,7 @@ + + #include <stdbool.h> + +-#include "../../libpng/png.h" ++#include <png.h> + + + #ifdef __cplusplus +diff --git a/src/optipng/trans.h b/src/optipng/trans.h +index a2f7f3e..c0e8dc4 100755 +--- a/src/optipng/trans.h ++++ b/src/optipng/trans.h +@@ -13,7 +13,7 @@ + #ifndef OPNGTRANS_TRANS_H + #define OPNGTRANS_TRANS_H + +-#include "../libpng/png.h" ++#include <png.h> + + #ifdef __cplusplus + extern "C" { diff --git a/nixpkgs/pkgs/tools/compression/gzip/default.nix b/nixpkgs/pkgs/tools/compression/gzip/default.nix index 8bec5b481c90..bd28ca63e80a 100644 --- a/nixpkgs/pkgs/tools/compression/gzip/default.nix +++ b/nixpkgs/pkgs/tools/compression/gzip/default.nix @@ -11,11 +11,11 @@ stdenv.mkDerivation rec { pname = "gzip"; - version = "1.11"; + version = "1.12"; src = fetchurl { url = "mirror://gnu/gzip/${pname}-${version}.tar.xz"; - sha256 = "01vrly90rvc98af6rcmrb3gwv1l6pylasvsdka23dffwizb9b6lv"; + sha256 = "sha256-zl4D5Rn2N+H4FAEazjXE+HszwLur7sNbr1+9NHnpGVY="; }; outputs = [ "out" "man" "info" ]; diff --git a/nixpkgs/pkgs/tools/compression/gzrt/default.nix b/nixpkgs/pkgs/tools/compression/gzrt/default.nix index 664c1eb78565..59d87cf4f341 100644 --- a/nixpkgs/pkgs/tools/compression/gzrt/default.nix +++ b/nixpkgs/pkgs/tools/compression/gzrt/default.nix @@ -20,6 +20,7 @@ stdenv.mkDerivation rec { homepage = "https://www.urbanophile.com/arenn/hacking/gzrt/"; description = "The gzip Recovery Toolkit"; maintainers = with maintainers; [ ]; + mainProgram = "gzrecover"; license = licenses.gpl2Plus; platforms = platforms.unix; }; diff --git a/nixpkgs/pkgs/tools/compression/heatshrink/default.nix b/nixpkgs/pkgs/tools/compression/heatshrink/default.nix new file mode 100644 index 000000000000..290e2dc9d8ca --- /dev/null +++ b/nixpkgs/pkgs/tools/compression/heatshrink/default.nix @@ -0,0 +1,43 @@ +{ lib +, stdenv +, fetchFromGitHub +}: + +stdenv.mkDerivation rec { + pname = "heatshrink"; + version = "0.4.1"; + + src = fetchFromGitHub { + owner = "atomicobject"; + repo = "heatshrink"; + rev = "v${version}"; + hash = "sha256-Nm9/+JFMDXY1N90hmNFGh755V2sXSRQ4VBN9f8TcsGk="; + }; + + makeFlags = [ "PREFIX=$(out)" ]; + + preInstall = '' + mkdir -p $out/{bin,lib,include} + ''; + + doCheck = true; + checkTarget = "test"; + + doInstallCheck = true; + installCheckPhase = '' + runHook preInstallCheck + echo "Hello world" | \ + $out/bin/heatshrink -e - | \ + $out/bin/heatshrink -d - | \ + grep "Hello world" + runHook postInstallCheck + ''; + + meta = with lib; { + description = "A data compression/decompression library for embedded/real-time systems"; + homepage = "https://github.com/atomicobject/heatshrink"; + license = licenses.isc; + maintainers = with maintainers; [ fgaz ]; + platforms = platforms.all; + }; +} diff --git a/nixpkgs/pkgs/tools/compression/kzipmix/default.nix b/nixpkgs/pkgs/tools/compression/kzipmix/default.nix index 9072a24b7fb5..bde65af03e90 100644 --- a/nixpkgs/pkgs/tools/compression/kzipmix/default.nix +++ b/nixpkgs/pkgs/tools/compression/kzipmix/default.nix @@ -13,12 +13,13 @@ stdenv.mkDerivation rec { mkdir -p $out/bin cp amd64/{kzip,zipmix} $out/bin - patchelf --set-interpreter ${stdenv.glibc.out}/lib/ld-linux.so.2 $out/bin/kzip - patchelf --set-interpreter ${stdenv.glibc.out}/lib/ld-linux.so.2 $out/bin/zipmix + patchelf --set-interpreter ${stdenv.cc.libc}/lib/ld-linux.so.2 $out/bin/kzip + patchelf --set-interpreter ${stdenv.cc.libc}/lib/ld-linux.so.2 $out/bin/zipmix ''; meta = with lib; { description = "A tool that aggressively optimizes the sizes of Zip archives"; + sourceProvenance = with sourceTypes; [ binaryNativeCode ]; license = licenses.unfree; homepage = "http://advsys.net/ken/utils.htm"; maintainers = [ maintainers.sander ]; diff --git a/nixpkgs/pkgs/tools/compression/lhasa/default.nix b/nixpkgs/pkgs/tools/compression/lhasa/default.nix index 4f1ba702831f..a58f186129ed 100644 --- a/nixpkgs/pkgs/tools/compression/lhasa/default.nix +++ b/nixpkgs/pkgs/tools/compression/lhasa/default.nix @@ -19,6 +19,7 @@ stdenv.mkDerivation rec { license = licenses.isc; homepage = "http://fragglet.github.io/lhasa"; maintainers = [ maintainers.sander ]; + mainProgram = "lha"; platforms = platforms.unix; }; } diff --git a/nixpkgs/pkgs/tools/compression/lrzip/default.nix b/nixpkgs/pkgs/tools/compression/lrzip/default.nix index 4fe5512b4c6f..3bb1e29f0347 100644 --- a/nixpkgs/pkgs/tools/compression/lrzip/default.nix +++ b/nixpkgs/pkgs/tools/compression/lrzip/default.nix @@ -5,13 +5,13 @@ let in stdenv.mkDerivation rec { pname = "lrzip"; - version = "0.641"; + version = "0.651"; src = fetchFromGitHub { owner = "ckolivas"; repo = pname; rev = "v${version}"; - sha256 = "sha256-253CH6TiHWyr13C76y9PXjyB7gj2Bhd2VRgJ5r+cm/g="; + sha256 = "sha256-Mb324ojtLV0S10KhL7Vjf3DhSOtCy1pFMTzvLkTnpXM="; }; postPatch = lib.optionalString stdenv.isDarwin '' diff --git a/nixpkgs/pkgs/tools/compression/lzip/default.nix b/nixpkgs/pkgs/tools/compression/lzip/default.nix index 17abb6503c9b..7fa7b4e35c85 100644 --- a/nixpkgs/pkgs/tools/compression/lzip/default.nix +++ b/nixpkgs/pkgs/tools/compression/lzip/default.nix @@ -7,13 +7,14 @@ stdenv.mkDerivation rec { pname = "lzip"; - version = "1.22"; + version = "1.23"; + outputs = [ "out" "man" "info" ]; nativeBuildInputs = [ texinfo ]; src = fetchurl { url = "mirror://savannah/lzip/${pname}-${version}.tar.gz"; - sha256 = "sha256-wzQtQuZxOcFluLEo0DO1yWiToTrF8lkzGQMVIU6HqUg="; + sha256 = "sha256-R5LAR93xXvKdVbqOaKGiHgy3aS2H7N9yBEGYZFgvKA0="; }; configureFlags = [ diff --git a/nixpkgs/pkgs/tools/compression/pigz/default.nix b/nixpkgs/pkgs/tools/compression/pigz/default.nix index 6dbe190c400b..e7a1df5fd6cd 100644 --- a/nixpkgs/pkgs/tools/compression/pigz/default.nix +++ b/nixpkgs/pkgs/tools/compression/pigz/default.nix @@ -1,12 +1,14 @@ -{ lib, stdenv, fetchurl, zlib, util-linux }: +{ lib, stdenv, fetchFromGitHub, zlib, util-linux }: stdenv.mkDerivation rec { pname = "pigz"; version = "2.6"; - src = fetchurl { - url = "https://www.zlib.net/${pname}/${pname}-${version}.tar.gz"; - sha256 = "sha256-Lu17DXRJ0dcJA/KmLNYAXSYus6jJ6YaHvIy7WAnbKn0="; + src = fetchFromGitHub { + owner = "madler"; + repo = "${pname}"; + rev = "refs/tags/v${version}"; + sha256 = "146qkmzi199xwmmf6bllanqfyl702fm1rnad8cd5r5yyrp5ks115"; }; enableParallelBuilding = true; diff --git a/nixpkgs/pkgs/tools/compression/pixz/default.nix b/nixpkgs/pkgs/tools/compression/pixz/default.nix index ec05a44a5189..a8463f8abc4e 100644 --- a/nixpkgs/pkgs/tools/compression/pixz/default.nix +++ b/nixpkgs/pkgs/tools/compression/pixz/default.nix @@ -18,10 +18,8 @@ stdenv.mkDerivation rec { pname = "pixz"; version = "1.0.7"; - nativeBuildInputs = [ pkg-config ]; + nativeBuildInputs = [ pkg-config autoconf automake ]; buildInputs = [ - autoconf - automake libtool asciidoc libxslt diff --git a/nixpkgs/pkgs/tools/compression/pxz/default.nix b/nixpkgs/pkgs/tools/compression/pxz/default.nix index 0f509a3bd170..f61e80cbc065 100644 --- a/nixpkgs/pkgs/tools/compression/pxz/default.nix +++ b/nixpkgs/pkgs/tools/compression/pxz/default.nix @@ -1,7 +1,7 @@ { lib , stdenv , fetchFromGitHub -, testVersion +, testers , pxz , xz }: @@ -34,7 +34,7 @@ stdenv.mkDerivation rec { "MANDIR=${placeholder "out"}/share/man" ]; - passthru.tests.version = testVersion { + passthru.tests.version = testers.testVersion { package = pxz; }; diff --git a/nixpkgs/pkgs/tools/compression/xdelta/default.nix b/nixpkgs/pkgs/tools/compression/xdelta/default.nix index fbaab91d0931..27d0141ff75b 100644 --- a/nixpkgs/pkgs/tools/compression/xdelta/default.nix +++ b/nixpkgs/pkgs/tools/compression/xdelta/default.nix @@ -56,6 +56,7 @@ in stdenv.mkDerivation rec { ''; homepage = "http://xdelta.org/"; license = licenses.gpl2Plus; + mainProgram = "xdelta3"; platforms = platforms.unix; }; } diff --git a/nixpkgs/pkgs/tools/compression/xdelta/unstable.nix b/nixpkgs/pkgs/tools/compression/xdelta/unstable.nix index 03366e5b1ce3..2ac8398dbc2d 100644 --- a/nixpkgs/pkgs/tools/compression/xdelta/unstable.nix +++ b/nixpkgs/pkgs/tools/compression/xdelta/unstable.nix @@ -60,6 +60,7 @@ in stdenv.mkDerivation rec { ''; homepage = "http://xdelta.org/"; license = licenses.gpl2Plus; + mainProgram = "xdelta3"; platforms = platforms.linux; }; } diff --git a/nixpkgs/pkgs/tools/compression/xz/default.nix b/nixpkgs/pkgs/tools/compression/xz/default.nix index 8304c34af897..75a58d011cef 100644 --- a/nixpkgs/pkgs/tools/compression/xz/default.nix +++ b/nixpkgs/pkgs/tools/compression/xz/default.nix @@ -16,10 +16,12 @@ stdenv.mkDerivation rec { sha256 = "1ps2i8i212n0f4xpq6clp7h13q7m1y8slqvxha9i8d0bj0qgj5si"; }; + strictDeps = true; outputs = [ "bin" "dev" "out" "man" "doc" ]; configureFlags = lib.optional enableStatic "--disable-shared"; + enableParallelBuilding = true; doCheck = true; preCheck = '' diff --git a/nixpkgs/pkgs/tools/compression/zfp/default.nix b/nixpkgs/pkgs/tools/compression/zfp/default.nix new file mode 100644 index 000000000000..0b337f613366 --- /dev/null +++ b/nixpkgs/pkgs/tools/compression/zfp/default.nix @@ -0,0 +1,59 @@ +{ cmake, cudatoolkit, fetchFromGitHub, gfortran, lib, llvmPackages, python3Packages, stdenv, targetPlatform +, enableCfp ? true +, enableCuda ? false +, enableExamples ? true +, enableFortran ? builtins.elem targetPlatform.system gfortran.meta.platforms +, enableOpenMP ? true +, enablePython ? true +, enableUtilities ? true }: + +stdenv.mkDerivation rec { + pname = "zfp"; + version = "0.5.5"; + + src = fetchFromGitHub { + owner = "LLNL"; + repo = "zfp"; + rev = version; + sha256 = "19ycflz35qsrzfcvxdyy0mgbykfghfi9y5v684jb4awjp7nf562c"; + }; + + nativeBuildInputs = [ cmake ]; + + buildInputs = lib.optional enableCuda cudatoolkit + ++ lib.optional enableFortran gfortran + ++ lib.optional enableOpenMP llvmPackages.openmp + ++ lib.optionals enablePython (with python3Packages; [ cython numpy python ]); + + cmakeFlags = [ + # More tests not enabled by default + ''-DZFP_BINARY_DIR=${placeholder "out"}'' + ''-DZFP_BUILD_TESTING_LARGE=ON'' + ] + ++ lib.optionals targetPlatform.isDarwin [ + "-DCMAKE_INSTALL_BINDIR=bin" + "-DCMAKE_INSTALL_LIBDIR=lib" + ] + ++ lib.optional enableCfp "-DBUILD_CFP=ON" + ++ lib.optional enableCuda "-DZFP_WITH_CUDA=ON" + ++ lib.optional enableExamples "-DBUILD_EXAMPLES=ON" + ++ lib.optional enableFortran "-DBUILD_ZFORP=ON" + ++ lib.optional enableOpenMP "-DZFP_WITH_OPENMP=ON" + ++ lib.optional enablePython "-DBUILD_ZFPY=ON" + ++ ([ "-DBUILD_UTILITIES=${if enableUtilities then "ON" else "OFF"}" ]); + + preCheck = lib.optional targetPlatform.isDarwin '' + export DYLD_LIBRARY_PATH="$out/lib:$DYLD_LIBRARY_PATH" + ''; + + doCheck = true; + + meta = with lib; { + homepage = "https://computing.llnl.gov/projects/zfp"; + description = "Library for random-access compression of floating-point arrays"; + license = licenses.bsd3; + maintainers = [ maintainers.spease ]; + # 64-bit only + platforms = platforms.aarch64 ++ platforms.x86_64; + }; +} diff --git a/nixpkgs/pkgs/tools/compression/zstd/default.nix b/nixpkgs/pkgs/tools/compression/zstd/default.nix index 0bff5110c935..87d499614bff 100644 --- a/nixpkgs/pkgs/tools/compression/zstd/default.nix +++ b/nixpkgs/pkgs/tools/compression/zstd/default.nix @@ -41,6 +41,8 @@ stdenv.mkDerivation rec { tests/playTests.sh ''; + LDFLAGS = lib.optionalString stdenv.hostPlatform.isRiscV "-latomic"; + cmakeFlags = lib.attrsets.mapAttrsToList (name: value: "-DZSTD_${name}:BOOL=${if value then "ON" else "OFF"}") { BUILD_SHARED = !static; |