X-Git-Url: https://git.hcoop.net/jackhill/guix/guix.git/blobdiff_plain/af07095516b56dcdd38bf1874da27de9c4c841f6..b03ee02f0d111bf75f8a87c9948c372974dcb243:/gnu/packages/man.scm diff --git a/gnu/packages/man.scm b/gnu/packages/man.scm index 712622aee8..3763292fe4 100644 --- a/gnu/packages/man.scm +++ b/gnu/packages/man.scm @@ -1,6 +1,9 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2012, 2014 Ludovic Courtès +;;; Copyright © 2012, 2014, 2015 Ludovic Courtès ;;; Copyright © 2014 David Thompson +;;; Copyright © 2015, 2016 Ricardo Wurmus +;;; Copyright © 2015 Alex Kost +;;; Copyright © 2015, 2016 Efraim Flashner ;;; ;;; This file is part of GNU Guix. ;;; @@ -22,18 +25,20 @@ #:use-module (guix download) #:use-module (guix packages) #:use-module (guix build-system gnu) + #:use-module (gnu packages databases) #:use-module (gnu packages flex) - #:use-module (gnu packages gdbm) + #:use-module (gnu packages gawk) #:use-module (gnu packages groff) #:use-module (gnu packages less) #:use-module (gnu packages lynx) #:use-module (gnu packages perl) - #:use-module (gnu packages pkg-config)) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages linux)) (define-public libpipeline (package (name "libpipeline") - (version "1.3.0") + (version "1.4.0") (source (origin (method url-fetch) (uri (string-append @@ -41,7 +46,7 @@ version ".tar.gz")) (sha256 (base32 - "12d6ldcj7kv2nv832b23v97g7035d0ybq0ig7h0yr7xk9czd3z7i")))) + "1dlvp2mxlhg5zbj509kc60h7g39hpgwkzkpdf855cyzizgkmkivr")))) (build-system gnu-build-system) (home-page "http://libpipeline.nongnu.org/") (synopsis "C library for manipulating pipelines of subprocesses") @@ -53,41 +58,52 @@ a flexible and convenient way.") (define-public man-db (package (name "man-db") - (version "2.6.6") + (version "2.7.5") (source (origin (method url-fetch) (uri (string-append "mirror://savannah/man-db/man-db-" version ".tar.xz")) (sha256 (base32 - "1hv6byj6sg6cp3jyf08gbmdm4pwhvd5hzmb94xl0w7prin6hzabx")))) + "056a3il7agfazac12yggcg4gf412yq34k065im0cpfxbcw6xskaw")))) (build-system gnu-build-system) (arguments '(#:phases - (alist-cons-after - 'patch-source-shebangs 'patch-test-shebangs - (lambda* (#:key outputs #:allow-other-keys) - ;; Patch shebangs in test scripts. - (let ((out (assoc-ref outputs "out"))) - (for-each (lambda (file) - (substitute* file - (("#! /bin/sh") - (string-append "#!" (which "sh"))))) - (remove file-is-directory? - (find-files "src/tests" ".*"))))) - %standard-phases) + (modify-phases %standard-phases + (add-after 'patch-source-shebangs 'patch-test-shebangs + (lambda* (#:key outputs #:allow-other-keys) + ;; Patch shebangs in test scripts. + (let ((out (assoc-ref outputs "out"))) + (for-each (lambda (file) + (substitute* file + (("#! /bin/sh") + (string-append "#!" (which "sh"))))) + (remove file-is-directory? + (find-files "src/tests" ".*")))))) + (add-after 'unpack 'patch-iconv-path + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "src/man.c" + (("\"iconv\"") + (string-append "\"" (which "iconv") "\""))) + #t))) #:configure-flags (let ((groff (assoc-ref %build-inputs "groff")) (less (assoc-ref %build-inputs "less")) (gzip (assoc-ref %build-inputs "gzip")) - (bzip2 (assoc-ref %build-inputs "bzip2")) - (xz (assoc-ref %build-inputs "xz"))) + (bzip2 (assoc-ref %build-inputs "bzip2")) + (xz (assoc-ref %build-inputs "xz")) + (util (assoc-ref %build-inputs "util-linux"))) ;; Invoke groff, less, gzip, bzip2, and xz directly from the store. (append (list "--disable-setuid" ;; Disable setuid man user. (string-append "--with-pager=" less "/bin/less") (string-append "--with-gzip=" gzip "/bin/gzip") (string-append "--with-bzip2=" bzip2 "/bin/gzip") - (string-append "--with-xz=" xz "/bin/xz")) + (string-append "--with-xz=" xz "/bin/xz") + (string-append "--with-col=" util "/bin/col") + ;; Default value is "/usr/lib/tmpfiles.d" (not + ;; prefix-sensitive). + (string-append "--with-systemdtmpfilesdir=" + %output "/lib/tmpfiles.d")) (map (lambda (prog) (string-append "--with-" prog "=" groff "/bin/" prog)) '("nroff" "eqn" "neqn" "tbl" "refer" "pic")))) @@ -101,7 +117,8 @@ a flexible and convenient way.") ("gdbm" ,gdbm) ("groff" ,groff) ("less" ,less) - ("libpipeline" ,libpipeline))) + ("libpipeline" ,libpipeline) + ("util-linux" ,util-linux))) (native-search-paths (list (search-path-specification (variable "MANPATH") @@ -117,15 +134,20 @@ the traditional flat-text whatis databases.") (define-public man-pages (package (name "man-pages") - (version "3.69") + (version "4.09") (source (origin (method url-fetch) - (uri (string-append + (uri + (list + (string-append "mirror://kernel.org/linux/docs/man-pages/man-pages-" - version ".tar.xz")) + version ".tar.xz") + (string-append + "mirror://kernel.org/linux/docs/man-pages/Archive/" + "man-pages-" version ".tar.xz"))) (sha256 (base32 - "18zzmdzjihdnyg4vamk0jp6v6826vrsgal3kqqxvfq9bzyrh8xm2")))) + "1740gq9sq28dp5a5sjn1ya7cvrv8mbky6knb7734v8k29a7a0x55")))) (build-system gnu-build-system) (arguments '(#:phases (alist-delete 'configure %standard-phases) @@ -151,7 +173,7 @@ Linux kernel and C library interfaces employed by user-space programs.") (define-public help2man (package (name "help2man") - (version "1.46.4") + (version "1.47.4") (source (origin (method url-fetch) @@ -159,7 +181,7 @@ Linux kernel and C library interfaces employed by user-space programs.") version ".tar.xz")) (sha256 (base32 - "0csn7jx7nhlrflalw1992p3l5afawlpdyjdff2q5bk5hadgz3rqs")))) + "0lvp4306f5nq08f3snffs5pp1zwv8l35z6f5g0dds51zs6bzdv6l")))) (build-system gnu-build-system) (arguments `(;; There's no `check' target. #:tests? #f)) @@ -167,7 +189,7 @@ Linux kernel and C library interfaces employed by user-space programs.") `(("perl" ,perl) ;; TODO: Add these optional dependencies. ;; ("perl-LocaleGettext" ,perl-LocaleGettext) - ;; ("gettext" ,gnu-gettext) + ;; ("gettext" ,gettext-minimal) )) (home-page "http://www.gnu.org/software/help2man/") (synopsis "Automatically generate man pages from program --help") @@ -176,3 +198,28 @@ Linux kernel and C library interfaces employed by user-space programs.") \"--help\" and \"--version\" command-line arguments into a manual page automatically.") (license gpl3+))) + +(define-public txt2man + (package + (name "txt2man") + (version "1.6.0") + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/mvertes/txt2man/archive/txt2man-" + version ".tar.gz")) + (sha256 + (base32 + "168cj96974n2z0igin6j1ic1m45zyic7nm5ark7frq8j78rrx4zn")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; no "check" target + #:make-flags (list (string-append "prefix=" (assoc-ref %outputs "out"))) + #:phases (alist-delete 'configure %standard-phases))) + (inputs + `(("gawk" ,gawk))) + (home-page "https://github.com/mvertes/txt2man") + (synopsis "Convert text to man page") + (description "Txt2man converts flat ASCII text to man page format.") + (license gpl2+)))