Hey Ludo! > This can be decomposed in several steps: > > 1. We can start using ‘guile-zlib’ as extensions for gexps: in (guix > scripts pack), (guix download), etc. Easy, no risk. There's an attached patch that should cover this first step. An issue here is that (guix build download-nar) is built in both "make" and "guix pull" commands, so I cannot use a bare: --8<---------------cut here---------------start------------->8--- #:use-module (zlib) --8<---------------cut here---------------end--------------->8--- so, I used: --8<---------------cut here---------------start------------->8--- #:autoload (zlib) (call-with-gzip-input-port) --8<---------------cut here---------------end--------------->8--- that seems to work but produces a lot of warnings when running "make". Would it be acceptable as a first step? > > 2. Use guile-zlib & co. in Guix itself: (guix scripts substitute), > (guix scripts publish), etc. Keep (guix zlib) and (guix lzlib) in > parallel. I'm not sure how it can work without step 4. For me, including (zlib) in Guix itself requires that build machinery and (guix self) are updated, but maybe I'm missing something. > > 3. Update ‘guix’ package with these two new dependencies. Seems fair! > The rest LGTM. Thanks a lot for all the work! Thanks for having a look :) Mathieu