aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--guix/import/texlive.scm14
1 files changed, 9 insertions, 5 deletions
diff --git a/guix/import/texlive.scm b/guix/import/texlive.scm
index 17c17f690c..81f9177443 100644
--- a/guix/import/texlive.scm
+++ b/guix/import/texlive.scm
@@ -246,11 +246,15 @@ of those files are returned that are unexpectedly installed."
(define (tlpdb->package name version package-database)
(and-let* ((data (assoc-ref package-database name))
(dirs (files->directories
- (map (lambda (dir)
- (string-drop dir (string-length "texmf-dist/")))
- (append (or (assoc-ref data 'docfiles) (list))
- (or (assoc-ref data 'runfiles) (list))
- (or (assoc-ref data 'srcfiles) (list))))))
+ (filter-map (lambda (dir)
+ ;; Ignore any file not starting with the
+ ;; expected prefix. Nothing good can come
+ ;; from this.
+ (and (string-prefix? "texmf-dist/" dir)
+ (string-drop dir (string-length "texmf-dist/"))))
+ (append (or (assoc-ref data 'docfiles) (list))
+ (or (assoc-ref data 'runfiles) (list))
+ (or (assoc-ref data 'srcfiles) (list))))))
(name (guix-name name))
;; TODO: we're ignoring the VERSION argument because that
;; information is distributed across %texlive-tag and