summaryrefslogtreecommitdiff
path: root/gnu/packages
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages')
-rw-r--r--gnu/packages/man.scm11
1 files changed, 10 insertions, 1 deletions
diff --git a/gnu/packages/man.scm b/gnu/packages/man.scm
index ca6fd351d5..334ebe2906 100644
--- a/gnu/packages/man.scm
+++ b/gnu/packages/man.scm
@@ -5,6 +5,7 @@
;;; Copyright © 2015 Alex Kost <alezost@gmail.com>
;;; Copyright © 2015, 2016 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -80,11 +81,19 @@ a flexible and convenient way.")
(string-append "#!" (which "sh")))))
(remove file-is-directory?
(find-files "src/tests" ".*"))))))
- (add-after 'unpack 'patch-iconv-path
+ (add-after 'unpack 'patch-absolute-paths
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "src/man.c"
(("\"iconv\"")
(string-append "\"" (which "iconv") "\"")))
+ ;; Embed an absolute reference to "preconv", otherwise it
+ ;; falls back to searching in PATH and ultimately fails
+ ;; to render unicode data (see <https://bugs.gnu.org/30785>).
+ (substitute* "lib/encodings.c"
+ (("groff_preconv = NULL")
+ (string-append "groff_preconv = \""
+ (assoc-ref inputs "groff-minimal")
+ "/bin/preconv\"")))
#t)))
#:configure-flags
(let ((groff (assoc-ref %build-inputs "groff"))