diff options
author | Ludovic Courtès <ludo@gnu.org> | 2023-09-02 23:18:48 +0200 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2023-09-11 22:58:02 +0200 |
commit | 3f76970fda82057f12429f81c41a47d8d8c3b954 (patch) | |
tree | f71e9066ae287ec9864ab809570f0270bd4b1aaf /gnu/packages/gnome.scm | |
parent | ab971e9c1922ae6eeec47401cb589ae15f29e15f (diff) |
gnu: yelp: Provide dependencies to display "man:" URIs.
Previously a command like the following one would fail to display the
expected man page:
guix shell yelp coreutils -C \
--expose=/tmp/.X11-unix --expose=/run/user \
--expose=/var/run/dbus --expose=/etc/machine-id -E ^DISPLAY -- \
/bin/sh -c \
'export MANPATH=$GUIX_ENVIRONMENT/share/man; echo $MANPATH; yelp man:ls'
* gnu/packages/gnome.scm (yelp)[arguments]: New field.
[inputs]: Add ‘man-db’ and ‘groff-minimal’.
Reported-by: Luis Felipe <sirgazil@zoho.com>
Diffstat (limited to 'gnu/packages/gnome.scm')
-rw-r--r-- | gnu/packages/gnome.scm | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 3b80692e90..36fe1a80a1 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -142,6 +142,7 @@ #:use-module (gnu packages geo) #:use-module (gnu packages gperf) #:use-module (gnu packages graphviz) + #:use-module (gnu packages groff) #:use-module (gnu packages gstreamer) #:use-module (gnu packages gtk) #:use-module (gnu packages guile) @@ -7336,6 +7337,28 @@ jQuery.Syntax JavaScript libraries.") (base32 "0h9vf4fx056imjf8ibmn03wg1c3hniipy1nsm2jqi62lp1m19c95")))) (build-system glib-or-gtk-build-system) + (arguments + (list #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'set-man-file-name + (lambda* (#:key inputs #:allow-other-keys) + ;; Invoke 'man' directly instead of searching $PATH. + (substitute* '("libyelp/yelp-man-parser.c" + "libyelp/yelp-uri.c") + (("\"man\"") + (string-append "\"" + (search-input-file inputs "bin/man") + "\"")) + (("G_SPAWN_SEARCH_PATH") + "0")))) + (add-after 'install 'help-man-find-its-dependencies + (lambda* (#:key inputs outputs #:allow-other-keys) + ;; XXX: Currently 'man' looks for 'groff' in $PATH in one + ;; case. This should be fixed in 'man-db' proper. + (wrap-program (string-append (assoc-ref outputs "out") + "/bin/yelp") + `("PATH" ":" prefix + (,(dirname (search-input-file inputs "bin/groff")))))))))) (native-inputs (list `(,glib "bin") ; for glib-genmarshal, etc. intltool @@ -7347,6 +7370,8 @@ jQuery.Syntax JavaScript libraries.") (list gsettings-desktop-schemas libhandy libxslt + man-db ;for URIs like "man:ls" + groff-minimal ;ditto sqlite webkitgtk yelp-xsl)) |