summary refs log tree commit diff
path: root/guix
diff options
context:
space:
mode:
Diffstat (limited to 'guix')
-rw-r--r--guix/import/texlive.scm15
1 files changed, 15 insertions, 0 deletions
diff --git a/guix/import/texlive.scm b/guix/import/texlive.scm
index 33a0e7d1d9..fd772d3133 100644
--- a/guix/import/texlive.scm
+++ b/guix/import/texlive.scm
@@ -315,6 +315,21 @@ of those files are returned that are unexpectedly installed."
               '((outputs '("out" "doc")))
               '())
         (build-system texlive-build-system)
+        ;; Texlive build system generates font metrics whenever a font metrics
+        ;; file has the same base name as a Metafont file.
+        ,@(or (and-let* ((runfiles (assoc-ref data 'runfiles))
+                         (metrics
+                          (filter-map (lambda (f)
+                                        (and (string-suffix? ".tfm" f)
+                                             (basename f ".tfm")))
+                                      runfiles))
+                         ((not (null? metrics)))
+                         ((any (lambda (f)
+                                 (and (string-suffix? ".mf" f)
+                                      (member (basename f ".mf") metrics)))
+                               runfiles)))
+                '((native-inputs (list texlive-metafont))))
+              '())
         ,@(match filtered-depends
             (() '())
             (inputs