summary refs log tree commit diff
path: root/gnu/packages/texinfo.scm
diff options
context:
space:
mode:
authorMaxime Devos <maximedevos@telenet.be>2022-01-12 12:08:34 +0000
committerNicolas Goaziou <mail@nicolasgoaziou.fr>2022-01-12 22:22:46 +0100
commitc4b3f9421ec5e4457e87c6c09912cf07381047da (patch)
tree3348cf21216531aeb7b8864d94286b698477036f /gnu/packages/texinfo.scm
parent49e1396cf5130a80bdb6f09c62f7d0fa6f7c73aa (diff)
downloadguix-c4b3f9421ec5e4457e87c6c09912cf07381047da.tar.gz
gnu: info-reader: Reference gzip by absolute path.
This allows doing "guix shell --pure info-reader guile -- info guile".

* gnu/packages/texinfo.scm (info-reader)[arguments]: Add
'absolute-binary-path' phase to refer to gzip by the absolute store
file name.
[inputs]: Add 'gzip'.

Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
Diffstat (limited to 'gnu/packages/texinfo.scm')
-rw-r--r--gnu/packages/texinfo.scm16
1 files changed, 15 insertions, 1 deletions
diff --git a/gnu/packages/texinfo.scm b/gnu/packages/texinfo.scm
index 13fb92d14a..fc1dac9df9 100644
--- a/gnu/packages/texinfo.scm
+++ b/gnu/packages/texinfo.scm
@@ -8,6 +8,7 @@
 ;;; Copyright © 2019, 2020 Mathieu Othacehe <m.othacehe@gmail.com>
 ;;; Copyright © 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
 ;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
+;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -156,6 +157,17 @@ is on expressing the content semantically, avoiding physical markup commands.")
      `(,@(substitute-keyword-arguments (package-arguments texinfo)
            ((#:phases phases)
             `(modify-phases ,phases
+               ;; Make sure 'info-reader' can read compressed info files
+               ;; in a pure environment.  There are also a few other
+               ;; uncompressors listed in this file (lzip, unxz, bunzip2, ...)
+               ;; but let's not include them because info manuals in Guix
+               ;; are always compressed with 'gzip'.
+               ;; TODO(core-updates): maybe move to the 'texinfo' package.
+               (add-after 'unpack 'absolute-binary-path
+                 (lambda* (#:key inputs #:allow-other-keys)
+                   (substitute* "info/filesys.c"
+                     (("gunzip") (search-input-file inputs "/bin/gunzip"))
+                     (("gzip") (search-input-file inputs "/bin/gzip")))))
                (add-after 'install 'keep-only-info-reader
                  (lambda* (#:key outputs #:allow-other-keys)
                    ;; Remove everything but 'bin/info' and associated
@@ -179,7 +191,9 @@ is on expressing the content semantically, avoiding physical markup commands.")
                                            "perl")
        #:modules ((ice-9 ftw) (srfi srfi-1)
                   ,@%gnu-build-system-modules)))
-    (synopsis "Standalone Info documentation reader")))
+    (synopsis "Standalone Info documentation reader")
+    (inputs (modify-inputs (package-inputs texinfo)
+              (prepend gzip)))))
 
 (define-public texi2html
   (package