aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicolas Goaziou <mail@nicolasgoaziou.fr>2023-05-15 13:28:55 +0200
committerNicolas Goaziou <mail@nicolasgoaziou.fr>2023-07-18 18:11:26 +0200
commit0918ae8668613ab071330abe298cdb25fc92e43b (patch)
tree1b05f0eda4d03ceea10969ca3860b0784eb072c3
parent467f367920f81dfc783a75a66f8e0984dca55ff9 (diff)
downloadguix-0918ae8668613ab071330abe298cdb25fc92e43b.tar.gz
guix-0918ae8668613ab071330abe298cdb25fc92e43b.zip
gnu: texlive-eurosym: Refresh package definition.
* gnu/packages/tex.scm (texlive-eurosym): Remove SIMPLE-TEXLIVE-PACKAGE call. [arguments]<#:phases>: Build font metrics.
-rw-r--r--gnu/packages/tex.scm89
1 files changed, 68 insertions, 21 deletions
diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm
index d2051e6af4..daa391f6c2 100644
--- a/gnu/packages/tex.scm
+++ b/gnu/packages/tex.scm
@@ -11696,27 +11696,74 @@ OpenType fonts.")
(license license:lppl1.3+)))
(define-public texlive-eurosym
- (let ((template (simple-texlive-package
- "texlive-eurosym"
- (list "/doc/fonts/eurosym/"
- "/fonts/map/dvips/eurosym/"
- "/fonts/source/public/eurosym/"
- "/fonts/tfm/public/eurosym/"
- "/fonts/type1/public/eurosym/"
- "/tex/latex/eurosym/eurosym.sty")
- (base32
- "0ml24rxbl1yir4s3fjjxm0z7axklc3p33syg41b76zc7hck9mk8s")
- #:trivial? #true)))
- (package
- (inherit template)
- (home-page "https://www.ctan.org/pkg/eurosym")
- (synopsis "METAFONT and macros for Euro sign")
- (description "This package provides the European currency symbol for the
-Euro implemented in METAFONT, using the official European Commission
-dimensions, and providing several shapes (normal, slanted, bold, outline).
-The package also includes a LaTeX package which defines the macro,
-pre-compiled font files, and documentation.")
- (license (license:non-copyleft "file:///doc/fonts/eurosym/COPYING")))))
+ (package
+ (name "texlive-eurosym")
+ (version (number->string %texlive-revision))
+ (source (texlive-origin
+ name version
+ (list "doc/fonts/eurosym/"
+ "fonts/map/dvips/eurosym/"
+ "fonts/source/public/eurosym/"
+ "fonts/tfm/public/eurosym/"
+ "fonts/type1/public/eurosym/"
+ "tex/latex/eurosym/")
+ (base32
+ "0ml24rxbl1yir4s3fjjxm0z7axklc3p33syg41b76zc7hck9mk8s")))
+ (outputs '("out" "doc"))
+ (build-system texlive-build-system)
+ (arguments
+ (list
+ #:modules
+ '((guix build texlive-build-system)
+ (guix build utils)
+ (srfi srfi-1)
+ (srfi srfi-26))
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-before 'install 're-generate-fonts-metrics
+ (lambda _
+ (let ((mf #$(this-package-native-input "texlive-metafont"))
+ (cm #$(this-package-native-input "texlive-cm"))
+ (root (getcwd)))
+ (mkdir-p "build")
+ (with-directory-excursion "fonts/source/public/eurosym"
+ ;; Tell mf where to find mf.base.
+ (setenv "MFBASES"
+ (string-append mf "/share/texmf-dist/web2c"))
+ ;; Tell mf where to look for source files.
+ (setenv "MFINPUTS"
+ (string-append
+ (getcwd) ":"
+ mf "/share/texmf-dist/metafont/base:"
+ cm "/share/texmf-dist/fonts/source/public/cm"))
+ ;; Build font metrics (tfm).
+ (for-each (lambda (font)
+ (format #t "building font ~a\n" font)
+ (invoke "mf" "-progname=mf"
+ (string-append "-output-directory="
+ root "/build")
+ (string-append "\\"
+ "mode:=ljfour; "
+ "mag:=1; "
+ "batchmode; "
+ "input "
+ (basename font ".mf"))))
+ (find-files "." "[0-9]+\\.mf$")))
+ ;; Install font metrics at the appropriate location.
+ (for-each
+ (cut install-file <> "fonts/tfm/public/eurosym")
+ (find-files "build/" "\\.tfm$"))))))))
+ (native-inputs
+ (list texlive-bin texlive-cm texlive-metafont))
+ (home-page "https://ctan.org/pkg/eurosym")
+ (synopsis "METAFONT and macros for Euro sign")
+ (description
+ "The European currency symbol for the Euro implemented in METAFONT, using
+the official European Commission dimensions, and providing several
+shapes (normal, slanted, bold, outline). The package also includes a LaTeX
+package which defines the macro, pre-compiled @file{tfm} files, and
+documentation.")
+ (license (license:non-copyleft "file:///doc/fonts/eurosym/COPYING"))))
(define-public texlive-kastrup
(package