utils: Use Guile-zlib for gzip compression and decompression.
Fixes <https://bugs.gnu.org/46967>. * guix/utils.scm (decompressed-port): Call 'make-zlib-input-port' instead of invoking %GZIP. (compressed-output-port): Call 'make-zlib-output-port' instead of invoking %GZIP. * doc/guix.texi (Requirements): Require Guile-zlib >= 0.1.0.master
parent
97b45977f4
commit
a04aef2430
|
@ -831,7 +831,8 @@ Guile,, gnutls-guile, GnuTLS-Guile});
|
|||
@item
|
||||
@uref{https://notabug.org/guile-sqlite3/guile-sqlite3, Guile-SQLite3}, version 0.1.0
|
||||
or later;
|
||||
@item @uref{https://notabug.org/guile-zlib/guile-zlib, Guile-zlib};
|
||||
@item @uref{https://notabug.org/guile-zlib/guile-zlib, Guile-zlib},
|
||||
version 0.1.0 or later;
|
||||
@item @uref{https://notabug.org/guile-lzlib/guile-lzlib, Guile-lzlib};
|
||||
@item @uref{https://www.nongnu.org/guile-avahi/, Guile-Avahi};
|
||||
@item
|
||||
|
|
|
@ -45,6 +45,7 @@
|
|||
#:use-module (ice-9 match)
|
||||
#:use-module (ice-9 format)
|
||||
#:use-module ((ice-9 iconv) #:prefix iconv:)
|
||||
#:autoload (zlib) (make-zlib-input-port make-zlib-output-port)
|
||||
#:use-module (system foreign)
|
||||
#:re-export (<location> ;for backwards compatibility
|
||||
location
|
||||
|
@ -231,7 +232,8 @@ a symbol such as 'xz."
|
|||
((or #f 'none) (values input '()))
|
||||
('bzip2 (filtered-port `(,%bzip2 "-dc") input))
|
||||
('xz (filtered-port `(,%xz "-dc") input))
|
||||
('gzip (filtered-port `(,%gzip "-dc") input))
|
||||
('gzip (values (make-zlib-input-port input #:format 'gzip)
|
||||
'()))
|
||||
('lzip (values (lzip-port 'make-lzip-input-port input)
|
||||
'()))
|
||||
('zstd (values (zstd-port 'make-zstd-input-port input)
|
||||
|
@ -292,7 +294,8 @@ program--e.g., '(\"--fast\")."
|
|||
((or #f 'none) (values output '()))
|
||||
('bzip2 (filtered-output-port `(,%bzip2 "-c" ,@options) output))
|
||||
('xz (filtered-output-port `(,%xz "-c" ,@options) output))
|
||||
('gzip (filtered-output-port `(,%gzip "-c" ,@options) output))
|
||||
('gzip (values (make-zlib-output-port output #:format 'gzip)
|
||||
'()))
|
||||
('lzip (values (lzip-port 'make-lzip-output-port output)
|
||||
'()))
|
||||
('zstd (values (zstd-port 'make-zstd-output-port output)
|
||||
|
|
Reference in New Issue