[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#35880] [PATCH 0/7] Lzip support for 'guix publish' and 'guix substi
From: |
Ludovic Courtès |
Subject: |
[bug#35880] [PATCH 0/7] Lzip support for 'guix publish' and 'guix substitute' |
Date: |
Fri, 24 May 2019 15:31:59 +0200 |
Hi!
As a followup to Pierre’s work on (guix lzlib), these patches implement
‘lzip’ support for ‘guix substitute’ and ‘guix publish’. With these,
you can now run:
./pre-inst-env guix publish -Clzip …
on one side, and on another machine:
./pre-inst-env guix-daemon --build-users-group=guixbuild
and from there the client machine should be able to fetch
lzip-compressed substitutes.
These patches do not address the transitioning issue that we discussed
earlier, where we have clients lacking lzip support talking to an
lzip-capable server. As discussed earlier, clients will have to send
a special HTTP header, ‘X-Guix-Accept-Encoding’.
For the server-side, I’m still hesitating between implementing it in ‘guix
publish’ or simply running two instances of ‘guix publish’ side-by-side
(one gzip and one lzip) and letting nginx dispatch between the two. :-)
Note that we’ll have to adjust our nginx mirror configs to take that
header into account!
Comments?
Ludo’.
Ludovic Courtès (7):
lzlib: Add 'make-lzip-input-port/compressed'.
utils: Test 'compressed-port' and 'decompressed-port' for both gzip
and xz.
utils: Support compression and decompression with lzip.
publish: Add support for lzip.
self: Add dependency on lzlib.
gnu: guix: Add dependency on lzlib.
lzlib: 'lzread!' never returns more than it was asked for.
.dir-locals.el | 2 +
doc/guix.texi | 25 +++++--
gnu/packages/package-management.scm | 1 +
guix/lzlib.scm | 101 ++++++++++++++++++++++------
guix/scripts/publish.scm | 84 +++++++++++++++++------
guix/self.scm | 13 +++-
guix/tests.scm | 1 +
guix/utils.scm | 27 ++++++--
tests/lzlib.scm | 10 +++
tests/publish.scm | 36 ++++++++++
tests/utils.scm | 62 +++++++++++------
11 files changed, 284 insertions(+), 78 deletions(-)
--
2.21.0
- [bug#35880] [PATCH 0/7] Lzip support for 'guix publish' and 'guix substitute',
Ludovic Courtès <=