ngz pushed a commit to branch tex-team
in repository guix.

commit 1ab1076a7dcf8ec62d5a4cf9089ac5cc1fa9d07b
Author: Nicolas Goaziou <m...@nicolasgoaziou.fr>
AuthorDate: Sat Jun 22 11:19:55 2024 +0200

    guix: import texlive: Add UPSTREAM-NAME property when necessary.
    
    * guix/import/texlive.scm (tlpdb->package): Add UPSTREAM-NAME property when 
necessary.
    * tests/texlive.scm ("texlive->guix-package, with upstream-name property"):
    Add new test.
    
    Change-Id: I134a065cbe0a7f0ff4d72b0929dba4e4d46cfaeb
---
 guix/import/texlive.scm |  4 ++++
 tests/texlive.scm       | 35 +++++++++++++++++++++++++++++++++++
 2 files changed, 39 insertions(+)

diff --git a/guix/import/texlive.scm b/guix/import/texlive.scm
index e4e0654b78..6d04cc25ee 100644
--- a/guix/import/texlive.scm
+++ b/guix/import/texlive.scm
@@ -703,6 +703,10 @@ at VERSION."
           ,@(if (assoc-ref data 'docfiles)
                 '((outputs '("out" "doc")))
                 '())
+          ,@(if (string= upstream-name
+                         (string-drop name (string-length "texlive-")))
+                '()
+                `((properties '((upstream-name . ,upstream-name)))))
           ;; Build system.
           ;;
           ;; Use trivial build system only when the package contains no files,
diff --git a/tests/texlive.scm b/tests/texlive.scm
index 0e21c2e9b0..8e7e596962 100644
--- a/tests/texlive.scm
+++ b/tests/texlive.scm
@@ -191,6 +191,9 @@
      (shortdesc . "x86_64-linux files of pax")
      (binfiles
       "bin/x86_64-linux/pdfannotextractor"))
+    ("r_und_s"
+     (name . "r_und_s")
+     (runfiles "texmf-dist/tex/latex/r_und_s/r_und_s.sty"))
     ("stricttex"
      . ((name
          . "stricttex")
@@ -952,4 +955,36 @@ completely compatible with Plain TeX.")
                (format #t "~s~%" result)
                (pk 'fail result #f)))))))
 
+(test-assert "texlive->guix-package, with upstream-name property"
+  ;; Replace network resources with sample data.
+  (mock ((guix build svn) svn-fetch
+         (lambda* (url revision directory
+                       #:key (svn-command "svn")
+                       (user-name #f)
+                       (password #f)
+                       (recursive? #t))
+           (mkdir-p directory)
+           (with-output-to-file (string-append directory "/foo")
+             (lambda ()
+               (display "source")))))
+        (let ((result (texlive->guix-package "r_und_s"
+                                             #:version "0"
+                                             #:database %fake-tlpdb)))
+          (match result
+            (('package
+               ('name "texlive-r-und-s")
+               ('version _)
+               ('source _)
+               ('properties _)
+               ('build-system 'texlive-build-system)
+               ('home-page _)
+               ('synopsis _)
+               ('description _)
+               ('license _))
+             #true)
+            (_
+             (begin
+               (format #t "~s~%" result)
+               (pk 'fail result #f)))))))
+
 (test-end "texlive")

Reply via email to