diff options
Diffstat (limited to 'gnu/packages/compression.scm')
-rw-r--r-- | gnu/packages/compression.scm | 75 |
1 files changed, 66 insertions, 9 deletions
diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm index c348c29d44..2693b7b5dc 100644 --- a/gnu/packages/compression.scm +++ b/gnu/packages/compression.scm @@ -10,7 +10,7 @@ ;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com> ;;; Copyright © 2016 Danny Milosavljevic <dannym@scratchpost.org> -;;; Copyright © 2016, 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2016–2021 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2016 David Craven <david@craven.ch> ;;; Copyright © 2016, 2019, 2020 Kei Kebreau <kkebreau@posteo.net> ;;; Copyright © 2016, 2018, 2019, 2020 Marius Bakke <mbakke@fastmail.com> @@ -621,14 +621,14 @@ archiving. Lzip is a clean implementation of the LZMA algorithm.") (define-public lziprecover (package (name "lziprecover") - (version "1.21") + (version "1.22") (source (origin (method url-fetch) (uri (string-append "mirror://savannah/lzip/lziprecover/" "lziprecover-" version ".tar.gz")) (sha256 (base32 - "094w2z8fz41yaq0gkyr61cl7pb1d7kchpl5dka7rvm3qvbb7ncd2")))) + "0qh8dnhr5rly2k9dnx43qqynqwqzi5kfb15pyd29qwppfl4qm5gx")))) (build-system gnu-build-system) (home-page "https://www.nongnu.org/lzip/lziprecover.html") (synopsis "Recover and decompress data from damaged lzip files") @@ -1614,6 +1614,55 @@ recreates the stored directory structure by default.") (license (license:non-copyleft "file://LICENSE" "See LICENSE in the distribution.")))) +(define-public ziptime + (let ((commit "2a5bc9dfbf7c6a80e5f7cb4dd05b4036741478bc") + (revision "0")) + (package + (name "ziptime") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://android.googlesource.com/platform/build") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0hrn61b3a97dlc4iqc28rwx8k8zf7ycbwzqqp93vj34zy5a541kn")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; no test suite + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'change-directory + (lambda _ + (chdir "tools/ziptime"))) + (delete 'configure) ; nothing to configure + (replace 'build + ;; There is no Makefile, only an ‘Android.bp’ file. Ignore it. + (lambda _ + (let ((c++ ,(cxx-for-target))) + (apply invoke c++ "-O2" "-o" "ziptime" + (find-files "." "\\.cpp$"))))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin")) + (doc (string-append out "/share/doc/" ,name "-" ,version))) + (install-file "ziptime" bin) + (install-file "README.txt" doc))))))) + ;; There is no separate home page for this tiny bundled build tool. + (home-page (string-append "https://android.googlesource.com/platform/build/" + "+/master/tools/ziptime/README.txt")) + (synopsis "Normalize @file{.zip} archive header timestamps") + (description + "Ziptime helps make @file{.zip} archives reproducible by replacing +timestamps in the file header with a fixed time (1 January 2008). + +``Extra fields'' are not changed, so you'll need to use the @code{-X} option to +@command{zip} to prevent it from storing the ``universal time'' field.") + (license license:asl2.0)))) + (define-public zziplib (package (name "zziplib") @@ -1799,14 +1848,14 @@ corrupted input.") (define-public plzip (package (name "plzip") - (version "1.8") + (version "1.9") (source (origin (method url-fetch) (uri (string-append "mirror://savannah/lzip/plzip/" "plzip-" version ".tar.gz")) (sha256 - (base32 "04indil809qgfmz776imb3dnhkysh7zk28jcv3mw0ahl2lyaxbzd")))) + (base32 "19zinpx7hssl6r3vilpvq2s7wha3545xan8b0vcvsxnyipdx3n0l")))) (build-system gnu-build-system) (inputs `(("lzlib" ,lzlib))) @@ -1854,7 +1903,7 @@ non-Windows systems without running the actual installer using wine.") (define-public google-brotli (package (name "google-brotli") - (version "1.0.7") + (version "1.0.9") (source (origin (method git-fetch) @@ -1863,7 +1912,15 @@ non-Windows systems without running the actual installer using wine.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "1811b55wdfg4kbsjcgh1kc938g118jpvif97ilgrmbls25dfpvvw")))) + (base32 "1fikasxf7r2dwlk8mv8w7nmjkn0jw5ic31ky3mvpkdzwgd4xfndl")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Cherry-picked from upstream since the latest release + ;; https://github.com/google/brotli/commit/09b0992b6acb7faa6fd3b23f9bc036ea117230fc + (substitute* (find-files "scripts" "^lib.*pc\\.in") + (("-R\\$\\{libdir\\} ") "")) + #t)))) (build-system cmake-build-system) (arguments `(#:phases @@ -2150,7 +2207,7 @@ file compression algorithm.") (define-public xarchiver (package (name "xarchiver") - (version "0.5.4.15") + (version "0.5.4.16") (source (origin (method git-fetch) @@ -2159,7 +2216,7 @@ file compression algorithm.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "0a3y54r5zp2c0cqm77r07qrl1vh200wvqmbhm35diy22fvkq5mwc")))) + (base32 "0nblyk65w1in0zpfbyzy6dw4x0fzx3q7xs85dby5ap4w0gjz9s44")))) (build-system glib-or-gtk-build-system) (native-inputs `(("gettext" ,gettext-minimal) |