diff options
author | Nicolas Goaziou <mail@nicolasgoaziou.fr> | 2023-05-13 16:21:07 +0200 |
---|---|---|
committer | Nicolas Goaziou <mail@nicolasgoaziou.fr> | 2023-07-18 18:10:51 +0200 |
commit | 17cdf29a9ce380a1ae9643d3d900876cb2b97f2e (patch) | |
tree | e907dd2747838b6b3cca9f01bb9b8ad350814e65 /gnu | |
parent | bd12824e56cfcbf13fa9564c0efa42c3a9430d8b (diff) | |
download | guix-17cdf29a9ce380a1ae9643d3d900876cb2b97f2e.tar.gz |
gnu: texlive-latex-frankenstein -> texlive-frankenstein.
* gnu/packages/tex.scm (texlive-frankenstein): New variable. (texlive-latex-frankenstein): Deprecate variable.
Diffstat (limited to 'gnu')
-rw-r--r-- | gnu/packages/tex.scm | 90 |
1 files changed, 59 insertions, 31 deletions
diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 16f6b71da9..057a0f9883 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -6744,45 +6744,73 @@ that also takes care of the involved internal macros.") (define-deprecated-package texlive-latex-letltxmacro texlive-letltxmacro) -(define-public texlive-latex-frankenstein +(define-public texlive-frankenstein (package - (name "texlive-latex-frankenstein") + (name "texlive-frankenstein") (version (number->string %texlive-revision)) - (source (origin - (method svn-fetch) - (uri (svn-reference (url (string-append - "svn://www.tug.org/texlive/tags/" - %texlive-tag "/Master/texmf-dist/" - "/tex/latex/frankenstein")) - (revision %texlive-revision))) - (file-name (string-append name "-" version "-checkout")) - (sha256 - (base32 - "1zhdvn3zgdarlzfcyq8nzilvw0v0bqgl4m0y7j233cbqw8wiil4z")))) - (build-system trivial-build-system) + (source (texlive-origin + name version + (list "bibtex/bib/frankenstein/" + "bibtex/bst/frankenstein/" + "doc/latex/frankenstein/" + "source/latex/frankenstein/" + "tex/latex/frankenstein/") + (base32 + "1x494vl4acl0bhfshs96ap8j47xk4m4njfincfhg2b0mi7l5mj1i"))) + (outputs '("out" "doc")) + (build-system texlive-build-system) (arguments - `(#:modules ((guix build utils)) - #:builder (begin - (use-modules (guix build utils)) - (let ((target (string-append (assoc-ref %outputs "out") - "/share/texmf-dist/tex/latex/frankenstein"))) - (mkdir-p target) - (copy-recursively (assoc-ref %build-inputs "source") - target) #t)))) + (list + #:modules '((guix build texlive-build-system) + (guix build utils) + (ice-9 match)) + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'set-TEXINPUTS + ;; The ".ins" files strip comments from ".sty", turning them into + ;; faster ".stq" (and ".bsq") files. Unfortunately, the ".ins" + ;; and the ".sty" files are not located in the same + ;; directory. This phase extends TEXINPUTS so everyone can see + ;; each other, including the docstrip utility. + (lambda* (#:key inputs #:allow-other-keys) + (setenv "TEXINPUTS" + (let ((cwd (getcwd))) + (string-append + cwd "/tex/latex/frankenstein//:" + cwd "/source/latex/frankenstein//:" + (string-join + (map (match-lambda ((_ . dir) dir)) inputs) + "//:")))))) + (add-before 'install 'install-faster-files + (lambda _ + ;; Replace ".sty" and ".bst" files with their faster + ;; counterpart. + (copy-file "build/achicago.bsq" + "bibtex/bst/frankenstein/achicago.bst") + ;; "build/tex/.../xxx.stq" -> "tex/.../xxx.sty" + (for-each (lambda (file) + (copy-file file + (string-append "tex/latex/frankenstein/" + (basename file ".stq") + ".sty"))) + (find-files "build/tex" "\\.stq$"))))))) + (propagated-inputs + (list texlive-relsize texlive-tools texlive-url)) (home-page "https://ctan.org/pkg/frankenstein") - (synopsis "Collection of unrelated LaTeX packages") + (synopsis "Collection of LaTeX packages") (description - "Frankenstein is a bundle of LaTeX packages serving various purposes and a -BibTeX bibliography style. The individual packages are: @code{abbrevs}, + "Frankenstein is a bundle of LaTeX packages serving various purposes +and a BibTeX bibliography style. The individual packages are: @code{abbrevs}, @code{achicago}, @code{achicago} bibstyle, @code{attrib}, @code{blkcntrl}, -@code{compsci}, @code{dialogue}, @code{lips}, @code{moredefs}, @code{newclude}, -@code{slemph} and @code{titles}. Note: The installation follows the suboptimal -``Quick and dirty'' recipe, rendering some features unavailable.") - ;; README mentions an unspecified version of GNU GPL and points to COPYING, - ;; which is missing. However, the individual files mention LPPL 1.2 or - ;; later. +@code{compsci}, @code{dialogue}, @code{lips}, @code{moredefs}, +@code{newclude}, @code{slemph} and @code{titles}.") + ;; README mentions an unspecified version of GNU GPL and points to + ;; COPYING, which is missing. However, the individual files mention LPPL + ;; 1.2 or later. (license license:lppl1.2+))) +(define-deprecated-package texlive-latex-frankenstein texlive-frankenstein) + (define-public texlive-listings (let ((template (simple-texlive-package |