gnu: sbcl-cl-cffi-gtk: Update to 20200417.
[jackhill/guix/guix.git] / gnu / packages / texinfo.scm
index 3d0894b..4042353 100644 (file)
@@ -2,8 +2,9 @@
 ;;; Copyright © 2012, 2013, 2015, 2016, 2017, 2019 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2014, 2016 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
-;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
+;;; Copyright © 2017, 2019 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
 (define-module (gnu packages texinfo)
   #:use-module (guix licenses)
   #:use-module (guix packages)
+  #:use-module (guix utils)
   #:use-module (guix download)
+  #:use-module (guix git-download)
   #:use-module (guix build-system gnu)
   #:use-module (gnu packages)
+  #:use-module (gnu packages autotools)
   #:use-module (gnu packages compression)
+  #:use-module (gnu packages gettext)
   #:use-module (gnu packages ncurses)
-  #:use-module (gnu packages perl))
+  #:use-module (gnu packages perl)
+  #:use-module (gnu packages readline))
 
 (define-public texinfo
   (package
@@ -109,32 +115,32 @@ is on expressing the content semantically, avoiding physical markup commands.")
     (inherit texinfo)
     (name "info-reader")
     (arguments
-     `(,@(substitute-keyword-arguments (package-arguments texinfo)
-           ((#:phases phases)
-            `(modify-phases ,phases
-               (add-after 'install 'keep-only-info-reader
-                 (lambda* (#:key outputs #:allow-other-keys)
-                   ;; Remove everything but 'bin/info' and associated
-                   ;; files.
-                   (define (files)
-                     (scandir "." (lambda (file)
-                                    (not (member file '("." ".."))))))
-
-                   (let ((out (assoc-ref outputs "out")))
-                     (with-directory-excursion out
-                       (for-each delete-file-recursively
-                                 (fold delete (files) '("bin" "share"))))
-                     (with-directory-excursion (string-append out "/bin")
-                       (for-each delete-file (delete "info" (files))))
-                     (with-directory-excursion (string-append out "/share")
-                       (for-each delete-file-recursively
-                                 (fold delete (files)
-                                       '("info" "locale"))))
-                     #t))))))
-       #:disallowed-references ,(assoc-ref (package-inputs texinfo)
+     `(#:disallowed-references ,(assoc-ref (package-inputs texinfo)
                                            "perl")
+
        #:modules ((ice-9 ftw) (srfi srfi-1)
-                  ,@%gnu-build-system-modules)))
+                  ,@%gnu-build-system-modules)
+
+       #:phases (modify-phases %standard-phases
+                  (add-after 'install 'keep-only-info-reader
+                    (lambda* (#:key outputs #:allow-other-keys)
+                      ;; Remove everything but 'bin/info' and associated
+                      ;; files.
+                      (define (files)
+                        (scandir "." (lambda (file)
+                                       (not (member file '("." ".."))))))
+
+                      (let ((out (assoc-ref outputs "out")))
+                        (with-directory-excursion out
+                          (for-each delete-file-recursively
+                                    (fold delete (files) '("bin" "share"))))
+                        (with-directory-excursion (string-append out "/bin")
+                          (for-each delete-file (delete "info" (files))))
+                        (with-directory-excursion (string-append out "/share")
+                          (for-each delete-file-recursively
+                                    (fold delete (files)
+                                          '("info" "locale"))))
+                        #t))))))
     (synopsis "Standalone Info documentation reader")))
 
 (define-public texi2html
@@ -182,3 +188,64 @@ of the GNU Texinfo implementation) do not intend to make further releases of
 Texi2HTML.")
     ;; Files in /lib under lgpl2.1+ and x11
     (license gpl2+)))
+
+(define-public texi2html-1.82
+  (package
+    (inherit texi2html)
+    (version "1.82")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://savannah/texi2html/"
+                           "texi2html-" version ".tar.bz2"))
+       (sha256
+        (base32 "1wdli2szkgm3l0vx8rf6lylw0b0m47dlz9iy004n928nqkzix76n"))))))
+
+(define-public pinfo
+  (package
+    (name "pinfo")
+    (version "0.6.13")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/baszoetekouw/pinfo.git")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "173d2p22irwiabvr4z6qvr6zpr6ysfkhmadjlyhyiwd7z62larvy"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'remove-Werror
+           (lambda _
+             (substitute* "configure.ac"
+               (("-Werror") ""))
+             #t))
+         (add-after 'unpack 'embed-reference-to-clear
+           (lambda* (#:key inputs #:allow-other-keys)
+             (substitute* '("src/manual.c"
+                            "src/mainfunction.c"
+                            "src/utils.c")
+               (("\"clear\"")
+                (string-append "\"" (which "clear") "\"")))
+             #t)))))
+    (inputs
+     `(("ncurses" ,ncurses)
+       ("readline" ,readline)))
+    (native-inputs
+     `(("autoconf" ,autoconf)
+       ("automake" ,automake)
+       ("gettext" ,gettext-minimal)
+       ("libtool" ,libtool)
+       ("texinfo" ,texinfo)))
+    (home-page "https://github.com/baszoetekouw/pinfo")
+    (synopsis "Lynx-style Info file and man page reader")
+    (description
+     "Pinfo is an Info file viewer.  Pinfo is similar in use to the Lynx web
+browser.  You just move across info nodes, and select links, follow them, etc.
+It supports many colors.  Pinfo also supports viewing of manual pages -- they
+are colorized like in the midnight commander's viewer, and additionally they
+are hypertextualized.")
+    (license gpl2+)))