me
/
guix
Archived
1
0
Fork 0
Commit Graph

117919 Commits (ec97cf15693a0567daa741ecf6d21e6e7ec68134)

Author SHA1 Message Date
Nicolas Goaziou ec97cf1569
guix: Let texlive importer handle linked scripts.
* guix/import/texlive.scm (tlpdb): Also retrieve so-called binfiles.
(formats):
(linked-scripts): New functions.
(tlpdb->package): Use new functions to set #:LINK-SCRIPTS argument and
possibly INPUTS.
* tests/texlive.scm (%fake-tlpdb): Add test data.
("texlive->guix-package, single script, no extension"):
("texlive->guix-package, multiple scripts, with extensions"):
("texlive->guix-package, script with associated input"):  New tests.
2023-07-18 18:15:05 +02:00
Nicolas Goaziou c8e75dfa24
guix: texlive-build-system: Add #:link-scripts argument.
* doc/guix.texi (Build Systems): Document argument.
* guix/build-system/texlive.scm (texlive-build): Add #:LINK-SCRIPTS argument.
* guix/build/texlive-build-system.scm (link-scripts):
(patch-shell-scripts): New function.
(%standard-phases): Add new functions as phases.
2023-07-18 18:15:05 +02:00
Nicolas Goaziou 24e6732b15
doc: texlive-build-system: Mention #:tex-engine argument.
* doc/guix.texi (Build Systems): Mention #:TEX-ENGINE.  Also fix
capitalization for Metafont.
2023-07-18 18:15:04 +02:00
Nicolas Goaziou e99e70503e
gnu: texlive-bin: Update to 20230313.
* gnu/packages/tex.scm (texlive-bin): Update to 20230313.
[arguments]<#:parallel-tests?>:  Disable them to prevent a test failure.
<#:phases>: Do not link manpages, which are taken care of in their respective
texlive package.
(texlive-extra-src): Remove variable.  Actually merge it within TEXLIVE-BIN so
the version string is used only once.
* gnu/packages/tex.scm (texlive-texmf): Update it too.
2023-07-18 18:15:04 +02:00
Nicolas Goaziou ecc1c3af11
guix: texlive importer: Set #:texlive-latex-bin? when appropriate.
* guix/import/texlive.scm (latex-bin-dependency-tree): New function.
(tlpdb->package): Set #:TEXLIVE-LATEX-BIN? when appropriate.
* tests/texlive.scm ("texlive->guix-package, lonely `hyphen-base' dependency
and ARCH"): Update test.
2023-07-18 18:15:03 +02:00
Nicolas Goaziou 520551a596
gnu: Replace texlive-latex-base with texlive-latex-bin.
Although `latex-base' is clearly defined on CTAN, it isn't a proper TeX Live
package.  Since we're trying to follow as closely as possible this TeX
distribution, we replace the package with the closest one, which is
`texlive-latex-bin'.  As a consequence, the #:TEXLIVE-LATEX-BASE argument
becomes #:TEXLIVE-LATEX-BIN?, emphasizing the fact that the meaningful values
for it are booleans.

* gnu/packages/graphviz.scm (dot2tex)[propagated-inputs]: Remove
TEXLIVE-GRAPHICS, TEXLIVE-LATEX-BASE.  Add TEXLIVE-LATEX-BIN.
* gnu/packages/plotutils.scm (asymptote)[native-inputs]: Remove
TEXLIVE-LATEX-BASE, TEXLIVE-GRAPHICS, TEXLIVE-L3BACKEND.  Use
TEXLIVE-UPDMAP.CFG.
* gnu/packages/sphinx.scm (python-sphinx)[propagated-inputs]: Remove
TEXLIVE-GRAPHICS, TEXLIVE-LATEX-BASE.  Add TEXLIVE-LATEX-BIN.
* gnu/packages/tex.scm (texlive-latex-base): Deprecate variable.
(texlive-hyphen-complete):
(texlive-tex):
(texlive-latex):
(texlive-docstrip):
(texlive-unicode-data):
(texlive-hyphen-base):
(texlive-tex-ini-files):
(texlive-metafont):
(texlive-modes):
(texlive-knuth-lib):
(texlive-latex-fonts):
(texlive-etex):
(texlive-plain):
(texlive-kpathsea):
(texlive-latexconfig):
(texlive-latex-bin):
(texlive-l3kernel):
(texlive-l3backend):
(texlive-l3packages):
(texlive-luatex):
(texlive-luahbtex):
(texlive-babel):
(texlive-cyrillic):
(texlive-pdftex):
(texlive-cm)[arguments]: Replace #:TEXLIVE-LATEX-BASE with #:TEXLIVE-LATEX-BIN?.
(texlive-lm):
(texlive-lua-alt-getopt):
(texlive-luaotfload):
(texlive-graphics-def):
(texlive-graphics-cfg): Set #:TEXLIVE-LATEX-BIN? to #F.
(texlive-graphics):
(texlive-lualibs):
(texlive-firstaid):
(texlive-atveryend)[arguments]: Set #:TEXLIVE-LATEX-BIN? to #F.
[native-inputs]: Add TEXLIVE-DOCSTRIP, TEXLIVE-PDFTEX.
(texlive-updmap.cfg): Remove TEXLIVE-CM, TEXLIVE-GRAPHICS,
TEXLIVE-LATEX-BASE.  Add TEXLIVE-LATEX-BIN.
(texlive-atbegshi)[arguments]: Set #:TEXLIVE-LATEX-BIN? to #F.
[native-inputs]: Add TEXLIVE-DOCSTRIP, TEXLIVE-PDFTEX.
[propagated-inputs]: Remove TEXLIVE-IFTEX, TEXLIVE-INFWARERR and
TEXLIVE-LTXCMDS.
(texlive-everyshi)[arguments]: Build package with a temporary "latex.fmt"
file.
(texlive-cyrillic): Set #:TEXLIVE-LATEX-BIN? to #T.
* guix/build-system/texlive.scm (default-texlive-latex-base): Rename to
TEXLIVE-LATEX-BIN.
(lower): Set default value for TEXLIVE-LATEX-BIN? to #TRUE.
* gnu/packages/statistics.scm (r-with-tests): Remove TEXLIVE-LATEX-BASE and
TEXLIVE-GRAPHICS.
* doc/guix.texi (Build Systems): Document #:TEXLIVE-LATEX-BIN? argument.
Remove reference to #:TEXLIVE-LATEX-BASE.
2023-07-18 18:15:03 +02:00
Nicolas Goaziou 0d7e2380b6
gnu: Simplify texlive-default-updmap.cfg.
* gnu/packages/tex.scm (texlive-default-updmap.cfg): Use TEXLIVE-ORIGIN.
(texlive-updmap.cfg):
* guix/profiles.scm (texlive-font-maps): Update accordingly.
2023-07-18 18:15:03 +02:00
Nicolas Goaziou 36d7acf003
gnu: Deprecate texlive-base in favor of texlive-scheme-basic.
* gnu/packages/tex.scm (texlive-base): Deprecate variable.
(texlive-updmap.cfg): Use default packages from now deprecated TEXLIVE-BASE.
Also remove already implemented TODO.
* doc/build.scm (pdf-manual):
* gnu/packages/statistics.scm: Replace TEXLIVE-BASE with call to
TEXLIVE-UPDMAP.CFG.
* guix/profiles.scm (texlive-font-maps): Trigger TeX Live hook whenever
a texlive package is included in the manifest.
2023-07-18 18:15:02 +02:00
Nicolas Goaziou f1b21bcfb1
gnu: Install missing files for updmap in texlive-bin.
* gnu/packages/tex.scm (texlive-scripts): New variable.
(texlive-bin)[inputs]: Use new variable.
[arguments]<#:phases>: Copy font files in addition to scripts.
(texlive-tetex): Remove variable.
(texlive-base): Remove reference to TEXLIVE-TETEX.
2023-07-18 18:15:02 +02:00
Nicolas Goaziou 016fd706b3
gnu: Add texlive-aeguill.
* gnu/packages/tex.scm (texlive-aeguill): New variable.
2023-07-18 18:15:02 +02:00
Nicolas Goaziou 7e92d1c84f
gnu: Add texlive-scheme-minimal.
* gnu/packages/tex.scm (texlive-scheme-minimal): New variable.
2023-07-18 18:15:01 +02:00
Nicolas Goaziou 14e6091b84
gnu: Add texlive-scheme-basic.
* gnu/packages/tex.scm (texlive-scheme-basic): New variable.
2023-07-18 18:13:01 +02:00
Nicolas Goaziou 975ddd136d
gnu: Add texlive-collection-latex.
* gnu/packages/tex.scm (texlive-collection-latex): New variable.
2023-07-18 18:13:01 +02:00
Nicolas Goaziou 95c473ad8b
gnu: Add texlive-pspicture.
* gnu/packages/tex.scm (texlive-pspicture): New variable.
2023-07-18 18:13:00 +02:00
Nicolas Goaziou ba03db6809
gnu: Add texlive-pslatex.
* gnu/packages/tex.scm (texlive-pslatex): New variable.
2023-07-18 18:13:00 +02:00
Nicolas Goaziou b27c1f5723
gnu: Add texlive-pagesel.
* gnu/packages/tex.scm (texlive-pagesel): New variable.
2023-07-18 18:12:59 +02:00
Nicolas Goaziou 3a6a5d1661
gnu: Add texlive-ltxmisc.
* gnu/packages/tex.scm (texlive-ltxmisc): New variable.
2023-07-18 18:12:59 +02:00
Nicolas Goaziou 6eb4a3e492
gnu: Add texlive-mfnfss.
* gnu/packages/tex.scm (texlive-mfnfss): New variable.
2023-07-18 18:12:59 +02:00
Nicolas Goaziou 752779d98a
gnu: Add texlive-latex-bin.
* gnu/packages/tex.scm (texlive-latex-bin): New variable.
2023-07-18 18:12:58 +02:00
Nicolas Goaziou 07e76f9e06
gnu: Add texlive-fix2col.
* gnu/packages/tex.scm (texlive-fix2col): New variable.
2023-07-18 18:12:58 +02:00
Nicolas Goaziou 59b6b27a03
gnu: Add texlive-babelbib.
* gnu/packages/tex.scm (texlive-babelbib): New variable.
2023-07-18 18:12:57 +02:00
Nicolas Goaziou 4b61118ead
gnu: Add texlive-collection-basic.
* gnu/packages/tex.scm (texlive-collection-basic): New variable.
2023-07-18 18:12:57 +02:00
Nicolas Goaziou d224cf077b
gnu: Add texlive-xdvi.
* gnu/packages/tex.scm (texlive-xdvi): New variable.
2023-07-18 18:12:57 +02:00
Nicolas Goaziou a2e8d5d62e
gnu: Add texlive-makeindex.
* gnu/packages/tex.scm (texlive-makeindex): New variable.
2023-07-18 18:12:56 +02:00
Nicolas Goaziou 3556df7323
gnu: Add texlive-hyphenex.
* gnu/packages/tex.scm (texlive-hyphenex): New variable.
2023-07-18 18:12:56 +02:00
Nicolas Goaziou 09283bb0ab
gnu: Add texlive-luahbtex.
* gnu/packages/tex.scm (texlive-luahbtex): New variable.
2023-07-18 18:12:56 +02:00
Nicolas Goaziou 0224a8f400
guix: texlive importer: Fix build system and arguments for meta-packages.
* guix/import/texlive.scm (tlpdb->package): Meta packages should use trivial
build system and an appropriate builder.
* tests/texlive.scm ("texlive->guix-package, meta-package"):
("texlive->guix-package, translate dependencies"): Update tests.
2023-07-18 18:12:55 +02:00
Nicolas Goaziou 5f51601bd9
guix: texlive importer ignores dependencies unnecessary in Guix.
* guix/import/texlive.scm (translate-depends): New function.
(tlpdb->package): Use new function.
* tests/texlive.scm (%fake-tlpdb): Add test data.
("texlive->guix-package, translate dependencies"):
("texlive->guix-package, lonely `hyphen-base' dependency and ARCH"): New tests.
2023-07-18 18:12:55 +02:00
Nicolas Goaziou c769425a71
gnu: Clear or deprecate hyphen-related texlive packages or functions.
* gnu/packages/tex.scm (define-deprecated-package): Move near the top of the
module so it can be called earlier.
(hyph-utf8-scripts): Remove package.
(texlive-hyphen-package): Remove function.
(texlive-dehyph):
(texlive-generic-dehyph-exptl):
(texlive-generic-hyph-utf8):
(texlive-hyphen-afrikaans):
(texlive-hyphen-ancientgreek):
(texlive-hyphen-armenian):
(texlive-hyphen-basque):
(texlive-hyphen-belarusian):
(texlive-hyphen-bulgarian):
(texlive-hyphen-catalan):
(texlive-hyphen-chinese):
(texlive-hyphen-churchslavonic):
(texlive-hyphen-coptic):
(texlive-hyphen-croatian):
(texlive-hyphen-czech):
(texlive-hyphen-danish):
(texlive-hyphen-dutch):
(texlive-hyphen-english):
(texlive-hyphen-esperanto):
(texlive-hyphen-estonian):
(texlive-hyphen-ethiopic):
(texlive-hyphen-finnish):
(texlive-hyphen-french):
(texlive-hyphen-friulan):
(texlive-hyphen-galician):
(texlive-hyphen-georgian):
(texlive-hyphen-german):
(texlive-hyphen-greek):
(texlive-hyphen-hungarian):
(texlive-hyphen-icelandic):
(texlive-hyphen-indic):
(texlive-hyphen-indonesian):
(texlive-hyphen-interlingua):
(texlive-hyphen-irish):
(texlive-hyphen-italian):
(texlive-hyphen-kurmanji):
(texlive-hyphen-latin):
(texlive-hyphen-latvian):
(texlive-hyphen-lithuanian):
(texlive-hyphen-macedonian):
(texlive-hyphen-mongolian):
(texlive-hyphen-norwegian):
(texlive-hyphen-occitan):
(texlive-hyphen-pali):
(texlive-hyphen-piedmontese):
(texlive-hyphen-polish):
(texlive-hyphen-portuguese):
(texlive-hyphen-romanian):
(texlive-hyphen-romansh):
(texlive-hyphen-russian):
(texlive-hyphen-sanskrit):
(texlive-hyphen-schoolfinnish):
(texlive-hyphen-serbian):
(texlive-hyphen-slovak):
(texlive-hyphen-slovenian):
(texlive-hyphen-spanish):
(texlive-hyphen-swedish):
(texlive-hyphen-thai):
(texlive-hyphen-turkish):
(texlive-hyphen-turkmen):
(texlive-hyphen-ukrainian):
(texlive-hyphen-uppersorbian):
(texlive-hyphen-welsh):
(texlive-ruhyphen):
(texlive-ukrhyph): Deprecate package.
* gnu/packages/patches/texlive-hyph-utf8-no-byebug.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Unregister it.
2023-07-18 18:12:54 +02:00
Nicolas Goaziou 889327e4fb
gnu: texlive-context: Create formats.
* gnu/packages/tex.scm (texlive-context)[arguments]: Create CONT-EN, CONT-FR,
CONT-IT, CONT-NL, CONT-RO formats.
2023-07-18 18:12:54 +02:00
Nicolas Goaziou fe9081b27d
gnu: texlive-xetex: Create formats.
* gnu/packages/tex.scm (texlive-xetex)[arguments]: Create XELATEX and XETEX
formats.
[propagated-inputs]: Replace TEXLIVE-LATEX-BASE with TEXLIVE-LATEX.
2023-07-18 18:12:54 +02:00
Nicolas Goaziou 7009cd5995
gnu: texlive-jadetex: Rely on build system to create formats.
* gnu/packages/tex.scm (texlive-jadetex)[arguments]: Use #:CREATE-FORMATS.
Remove useless phase.
[native-inputs]: Move to propagated-inputs.
[propagated-inputs]: Do not use TEXLIVE-UPDMAP.CFG.  Remove TEXLIVE-JKNAPLTX.
Remove TEXLIVE-HYPHEN-BASE, TEXLIVE-HYPH-UTF8, TEXLIVE-DEHYPH, TEXLIVE-XMLTEX.
Add TEXLIVE-HYPHEN-COMPLETE.
2023-07-18 18:12:53 +02:00
Nicolas Goaziou 65d146a0c6
gnu: texlive-csplain: Create formats.
* gnu/packages/tex.scm (texlive-csplain)[argumets]: Generate CSPLAIN,
LUACSPLAIN and PDFCSPLAIN formats.
[propagated-inputs]: Remove TEXLIVE-HYPHEN-BASE, TEXLIVE-HYPH-UTF8.  Add
TEXLIVE-HYPHEN-COMPLETE, TEXLIVE-LUATEX, TEXLIVE-LUATEX85, TEXLIVE-PLAIN,
TEXLIVE-TEX.
2023-07-18 18:12:53 +02:00
Nicolas Goaziou 40d208e28d
gnu: Add texlive-luatex85.
* gnu/packages/tex.scm (texlive-luatex85): New variable.
2023-07-18 18:12:53 +02:00
Nicolas Goaziou 0eb2181d4b
gnu: texlive-xmltex: Rely on build system to create formats.
* gnu/packages/tex.scm (texlive-xmltex)[arguments]: Use #:CREATE-FORMATS.
Remove useless phase.
[propagated-inputs]: Remove call to TEXLIVE-UPDMAP.CFG.  Remove
TEXLIVE-AMSFONTS, TEXLIVE-COURIER, TEXLIVE-DEHYPH, TEXLIVE-HELVETIC,
TEXLIVE-HYPERREF, TEXLIVE-HYPHEN-BASE, TEXLIVE-HYPH-UTF8, TEXLIVE-STMARYRD,
TEXLIVE-SYMBOL, TEXLIVE-TIMES, TEXLIVE-TIPA, TEXLIVE-WASY, TEXLIVE-ZAPFDING.
Add TEXLIVE-HYPHEN-COMPLETE, TEXLIVE-LATEX, TEXLIVE-LATEXCONFIG,
TEXLIVE-PDFTEX, TEXLIVE-TEX, TEXLIVE-UNICODE-DATA.
2023-07-18 18:12:52 +02:00
Nicolas Goaziou 3801cb2b3e
gnu: texlive-luatex: Create formats.
* gnu/packages/tex.scm (texlive-luatex)[source]: Do not grab all files in
"tex/generic/config/" location.
[arguments]: Create DVILUATEX and LUATEX formats.
[propagated-inputs]: Remove TEXLIVE-HYPH-UTF8, TEXLIVE-HYPHEN-BASE.  Add
TEXLIVE-HYPHEN-COMPLETE.
2023-07-18 18:12:52 +02:00
Nicolas Goaziou df5ae55ff7
gnu: texlive-latex-base: Simplify package.
* gnu/packages/tex.scm (texlive-latex-base)[arguments]: Only build
DVILUALATEX, LATEX, LUALATEX and PDFLATEX formats.
[native-inputs]: Move them to propagated inputs.
[propagated-inputs]: Remove all specific hyphenation packages.  Replace them
with TEXLIVE-HYPHEN-COMPLETE.  Add TEXLIVE-BABEL, TEXLIVE-PDFTEX.
2023-07-18 18:12:52 +02:00
Nicolas Goaziou 1a95d34bb8
gnu: texlive-babel: Do not rely on TEXLIVE-LATEX-BASE.
* gnu/packages/tex.scm (texlive-babel)[arguments]: Do not rely on
TEXLIVE-LATEX-BASE.
[native-inputs]: Add TEXLIVE-DOCSTRIP, TEXLIVE-PDFTEX.
2023-07-18 18:12:51 +02:00
Nicolas Goaziou 9e1e34bd8c
gnu: texlive-pdftex: Create formats.
* gnu/packages/tex.scm (texlive-pdftex)[source]: Do not grab all files
"tex/generic/config/" location.
[arguments]<#phases>: Create ETEX, PDFETEX and PDFTEX formats.
[propagated-inputs]: Remove TEXLIVE-DEHYPH, TEXLIVE-HYPHEN-BASE,
TEXLIVE-HYPH-UTF8.  Add TEXLIVE-HYPHEN-COMPLETE.
2023-07-18 18:12:51 +02:00
Nicolas Goaziou d0e7910165
gnu: Add texlive-latex.
* gnu/packages/tex.scm (texlive-latex): New variable.
2023-07-18 18:12:50 +02:00
Nicolas Goaziou 3a43477862
gnu: Add texlive-hyphen-complete
* gnu/packages/tex.scm (texlive-hyphen-complete): New variable.
2023-07-18 18:12:50 +02:00
Nicolas Goaziou e8a3aaa97b
gnu: Add texlive-tex.
* gnu/packages/tex.scm (texlive-tex): New variable.
2023-07-18 18:12:49 +02:00
Nicolas Goaziou 47913ab452
guix: Let texlive importer suggest format creation.
* guix/import/texlive.scm (tlpdb): Store "execute" entries.
(tlpdb->package): Add #:CREATE-FORMATS argument when there is an AddFormat
execute action.
* tests/texlive.scm (%fake-tlpdb): Add test data.
("texlive->guix-package, with TeX format"):
("texlive->guix-package, execute but no TeX format"): New tests.
2023-07-18 18:12:49 +02:00
Nicolas Goaziou 7ce20143a7
guix: texlive-build-system: Generate TeX formats.
* guix/build-system/texlive.scm (texlive-build): Add #:CREATE-FORMATS argument.
* doc/guix.texi (Build Systems): Document it.
* guix/build/texlive-build-system.scm (texlive-input?): New function.
(generate-font-metrics): Use new function above.
(create-formats): New function.
(%standard-phases): Add function above to phases.
2023-07-18 18:12:49 +02:00
Nicolas Goaziou aab0dee520
gnu: texlive: Improve package style.
* gnu/packages/tex.scm (texlive)[version]: Inherit from TEXLIVE-BIN.
[inputs]: Remove labels.
[arguments]: Use G-expressions.  Remove trailing #T from phases.
2023-07-18 18:12:48 +02:00
Nicolas Goaziou dddb774ec4
gnu: texlive-texmf: Improve package style.
* gnu/packages/tex.scm (texlive-texmf)[version]: Inherit from TEXLIVE-BIN.
[source]: Use autonomous origin instead of relying on another layer.
[inputs]: Remove labels.  Sort alphabetically.
[arguments]: Use G-expressions.  Remove trailing #T from phases.
(texlive-texmf-src): Remove variable.
2023-07-18 18:12:48 +02:00
Nicolas Goaziou f4dadc5b49
gnu: faif: Update texlive package names.
* gnu/packages/fsf.scm (book-faif)[native-inputs]: Replace TEXLIVE-FONTS-EC,
TEXLIVE-LATEX-FNCYCHAP, TEXLIVE-LATEX-GEOMETRY, TEXLIVE-LATEX-UCS with
TEXLIVE-EC, TEXLIVE-FNCYCHAP, TEXLIVE-GEOMETRY, TEXLIVE-UCS.
2023-07-18 18:12:48 +02:00
Nicolas Goaziou 8fe63131ba
gnu: Add texlive-mfware.
* gnu/packages/tex.scm (texlive-mfware): New variable.
2023-07-18 18:12:47 +02:00
Nicolas Goaziou 62fad0e46e
gnu: Add texlive-etex-pkg.
* gnu/packages/tex.scm (texlive-etex-pkg): New variable.
2023-07-18 18:12:47 +02:00
Nicolas Goaziou d62b35bbe9
guix: import: Improve importing texlive meta packages.
* guix/import/texlive.scm (tlpdb->package): Generate more appropriate source,
home page and license fields when importing meta packages, i.e., TeX Live
collections and schemes.
* tests/texlive.scm (%fake-tlpdb): Add test data.
("texlive->guix-package, meta-package"): New test.
2023-07-18 18:12:47 +02:00