From: ng0 <contact.ng0@cryptolab.net>
To: Tobias Geerinckx-Rice <me@tobias.gr>, guix-devel@gnu.org
Subject: Re: [PATCH 3/3] gnu: Add zpaq.
Date: Sat, 28 Jan 2017 17:51:49 +0000 [thread overview]
Message-ID: <87o9yrvzre.fsf@wasp.i-did-not-set--mail-host-address--so-tickle-me> (raw)
In-Reply-To: <20170127195924.22959-3-me@tobias.gr>
Tobias Geerinckx-Rice <me@tobias.gr> writes:
> * gnu/packages/compression.scm (zpaq): New variable.
> ---
Cool! Thanks for working on it.
Functionality seems okay:
...Creating an archive:
ng0@wasp /g/s/q/bin> ./zpaq a /home/ng0/test.zpaq /home/ng0/News
Creating /home/ng0/test.zpaq at offset 0 + 0
Adding 0.000000 MB in 0 files -method 14 -threads 2 at 2017-01-28
17:45:52.
+ /home/ng0/News/
+ /home/ng0/News/drafts/
+ /home/ng0/News/drafts/drafts/
+ /home/ng0/News/drafts/queue/
4 +added, 0 -removed.
0.000000 + (0.000000 -> 0.000000 -> 0.000584) = 0.000584 MB
0.014 seconds (all OK)
...and listing its content:
ng0@wasp /g/s/q/bin> ./zpaq l /home/ng0/test.zpaq
zpaq v7.15 journaling archiver, compiled Jan 28 2017
/home/ng0/test.zpaq: 1 versions, 4 files, 0 fragments, 0.000584
MB
- 2016-10-27 14:27:19 0 d0755 /home/ng0/News/
- 2016-10-27 14:27:19 0 d0755 /home/ng0/News/drafts/
- 2016-11-21 11:19:39 0 d0755
- /home/ng0/News/drafts/drafts/
- 2016-10-27 14:27:19 0 d0755
- /home/ng0/News/drafts/queue/
0.000000 MB of 0.000000 MB (4 files) shown
-> 0.000000 MB (0 refs to 0 of 0 frags) after dedupe
-> 0.000584 MB compressed.
0.001 seconds (all OK)
> gnu/packages/compression.scm | 60 +++++++++++++++++++++++++++++++++++++++++++-
> 1 file changed, 59 insertions(+), 1 deletion(-)
>
> diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm
> index 2e4de81..ca5509c 100644
> --- a/gnu/packages/compression.scm
> +++ b/gnu/packages/compression.scm
> @@ -10,7 +10,7 @@
> ;;; Copyright © 2015, 2016 Efraim Flashner <efraim@flashner.co.il>
> ;;; Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
> ;;; Copyright © 2016 Danny Milosavljevic <dannym@scratchpost.org>
> -;;; Copyright © 2016 Tobias Geerinckx-Rice <me@tobias.gr>
> +;;; Copyright © 2016, 2017 Tobias Geerinckx-Rice <me@tobias.gr>
> ;;; Copyright © 2016 David Craven <david@craven.ch>
> ;;; Copyright © 2016 Kei Kebreau <kei@openmailbox.org>
> ;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com>
> @@ -46,6 +46,8 @@
> #:use-module (gnu packages perl)
> #:use-module (gnu packages pkg-config)
> #:use-module (gnu packages valgrind)
> + #:use-module (gnu packages zip)
> + #:use-module (ice-9 match)
> #:use-module ((srfi srfi-1) #:select (last)))
>
> (define-public zlib
> @@ -1001,3 +1003,59 @@ handles the 7z format which features very high compression ratios.")
> (description "gzstream is a small library for providing zlib
> functionality in a C++ iostream.")
> (license license:lgpl2.1+)))
> +
> +(define-public zpaq
> + (package
> + (name "zpaq")
> + (version "7.15")
> + (source
> + (origin
> + (method url-fetch/zipbomb)
> + (uri (string-append "http://mattmahoney.net/dc/zpaq"
> + (string-delete #\. version) ".zip"))
> + (sha256
> + (base32
> + "066l94yyladlfzri877nh2dhkvspagjn3m5bmv725fmhkr9c4pp8"))
> + (modules '((guix build utils)))
> + (snippet
> + ;; Delete irrelevant pre-compiled binaries.
> + '(for-each delete-file (find-files "." "\\.exe$")))))
> + (build-system gnu-build-system)
> + (arguments
> + `(#:phases
> + (modify-phases %standard-phases
> + (delete 'configure)) ; no ‘configure’ script
> + #:make-flags
> + (list
> + (string-append "CPPFLAGS=-Dunix"
> + ,(match (or (%current-target-system)
> + (%current-system))
> + ("x86_64-linux" "")
> + ("i686-linux" "")
> + (_ " -DNOJIT")))
> + (string-append "CXXFLAGS=-O3 -mtune=generic -DNDEBUG"
> + ,(match (or (%current-target-system)
> + (%current-system))
> + ("x86_64-linux" " -march=nocona")
> + ("i686-linux" " -march=i686")
> + (_ "")))
Can you add a comment on the CPPFLAGS?
Otherwise, LGTM!
> + (string-append "PREFIX="
> + (assoc-ref %outputs "out")))))
> + (native-inputs
> + `(("perl" ,perl))) ; for pod2man
> + (home-page "http://mattmahoney.net/dc/zpaq.html")
> + (synopsis "Incremental journaling archiver")
> + (description "ZPAQ is a command-line archiver that backs up faster and
> +compresses better than most other popular archivers in realistic situations
> +with many duplicate and already compressed files. It backs up only those files
> +modified since the last update. All previous versions remain untouched and can
> +be independently recovered. Identical files are only stored once (known as
> +@dfn{de-duplication}). Archives can also be encrypted.
> +ZPAQ is intended to back up user data, not entire operating systems. It ignores
> +owner and group IDs, ACLs, extended attributes, or special file types like
> +devices, sockets, or named pipes. It does not follow or restore symbolic links
> +or junctions, and always follows hard links.")
> + (license (list license:public-domain
> + ;; libzpaq.cpp contains a mix of public-domain and
> + ;; expat-licenced (or ‘MIT’) code.
> + license:expat))))
> --
> 2.9.3
>
>
--
♥Ⓐ ng0 -- https://www.inventati.org/patternsinthechaos/
next prev parent reply other threads:[~2017-01-28 17:52 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-01-27 19:59 [PATCH 1/3] download: url-fetch/tarball: Make ‘name’ truly optional Tobias Geerinckx-Rice
2017-01-27 19:59 ` [PATCH 2/3] download: Add ‘url-fetch/zipbomb’ Tobias Geerinckx-Rice
2017-01-28 17:55 ` ng0
2017-01-30 22:52 ` Ludovic Courtès
2017-01-27 19:59 ` [PATCH 3/3] gnu: Add zpaq Tobias Geerinckx-Rice
2017-01-28 17:51 ` ng0 [this message]
2017-01-28 18:02 ` Tobias Geerinckx-Rice
2017-01-30 22:54 ` Ludovic Courtès
2017-01-30 23:12 ` Tobias Geerinckx-Rice
2017-01-28 18:22 ` [PATCH 1/3] download: url-fetch/tarball: Make ‘name’ truly optional ng0
2017-01-30 22:51 ` Ludovic Courtès
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87o9yrvzre.fsf@wasp.i-did-not-set--mail-host-address--so-tickle-me \
--to=contact.ng0@cryptolab.net \
--cc=guix-devel@gnu.org \
--cc=me@tobias.gr \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.