summary refs log tree commit diff
AgeCommit message (Collapse)Author
2023-07-18guix: Let texlive importer handle linked scripts.Nicolas Goaziou
* 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-18guix: texlive-build-system: Add #:link-scripts argument.Nicolas Goaziou
* 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-18doc: texlive-build-system: Mention #:tex-engine argument.Nicolas Goaziou
* doc/guix.texi (Build Systems): Mention #:TEX-ENGINE. Also fix capitalization for Metafont.
2023-07-18gnu: texlive-bin: Update to 20230313.Nicolas Goaziou
* 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-18guix: texlive importer: Set #:texlive-latex-bin? when appropriate.Nicolas Goaziou
* 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-18gnu: Replace texlive-latex-base with texlive-latex-bin.Nicolas Goaziou
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-18gnu: Simplify texlive-default-updmap.cfg.Nicolas Goaziou
* gnu/packages/tex.scm (texlive-default-updmap.cfg): Use TEXLIVE-ORIGIN. (texlive-updmap.cfg): * guix/profiles.scm (texlive-font-maps): Update accordingly.
2023-07-18gnu: Deprecate texlive-base in favor of texlive-scheme-basic.Nicolas Goaziou
* 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-18gnu: Install missing files for updmap in texlive-bin.Nicolas Goaziou
* 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-18gnu: Add texlive-aeguill.Nicolas Goaziou
* gnu/packages/tex.scm (texlive-aeguill): New variable.
2023-07-18gnu: Add texlive-scheme-minimal.Nicolas Goaziou
* gnu/packages/tex.scm (texlive-scheme-minimal): New variable.
2023-07-18gnu: Add texlive-scheme-basic.Nicolas Goaziou
* gnu/packages/tex.scm (texlive-scheme-basic): New variable.
2023-07-18gnu: Add texlive-collection-latex.Nicolas Goaziou
* gnu/packages/tex.scm (texlive-collection-latex): New variable.
2023-07-18gnu: Add texlive-pspicture.Nicolas Goaziou
* gnu/packages/tex.scm (texlive-pspicture): New variable.
2023-07-18gnu: Add texlive-pslatex.Nicolas Goaziou
* gnu/packages/tex.scm (texlive-pslatex): New variable.
2023-07-18gnu: Add texlive-pagesel.Nicolas Goaziou
* gnu/packages/tex.scm (texlive-pagesel): New variable.
2023-07-18gnu: Add texlive-ltxmisc.Nicolas Goaziou
* gnu/packages/tex.scm (texlive-ltxmisc): New variable.
2023-07-18gnu: Add texlive-mfnfss.Nicolas Goaziou
* gnu/packages/tex.scm (texlive-mfnfss): New variable.
2023-07-18gnu: Add texlive-latex-bin.Nicolas Goaziou
* gnu/packages/tex.scm (texlive-latex-bin): New variable.
2023-07-18gnu: Add texlive-fix2col.Nicolas Goaziou
* gnu/packages/tex.scm (texlive-fix2col): New variable.
2023-07-18gnu: Add texlive-babelbib.Nicolas Goaziou
* gnu/packages/tex.scm (texlive-babelbib): New variable.
2023-07-18gnu: Add texlive-collection-basic.Nicolas Goaziou
* gnu/packages/tex.scm (texlive-collection-basic): New variable.
2023-07-18gnu: Add texlive-xdvi.Nicolas Goaziou
* gnu/packages/tex.scm (texlive-xdvi): New variable.
2023-07-18gnu: Add texlive-makeindex.Nicolas Goaziou
* gnu/packages/tex.scm (texlive-makeindex): New variable.
2023-07-18gnu: Add texlive-hyphenex.Nicolas Goaziou
* gnu/packages/tex.scm (texlive-hyphenex): New variable.
2023-07-18gnu: Add texlive-luahbtex.Nicolas Goaziou
* gnu/packages/tex.scm (texlive-luahbtex): New variable.
2023-07-18guix: texlive importer: Fix build system and arguments for meta-packages.Nicolas Goaziou
* 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-18guix: texlive importer ignores dependencies unnecessary in Guix.Nicolas Goaziou
* 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-18gnu: Clear or deprecate hyphen-related texlive packages or functions.Nicolas Goaziou
* 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-18gnu: texlive-context: Create formats.Nicolas Goaziou
* gnu/packages/tex.scm (texlive-context)[arguments]: Create CONT-EN, CONT-FR, CONT-IT, CONT-NL, CONT-RO formats.
2023-07-18gnu: texlive-xetex: Create formats.Nicolas Goaziou
* gnu/packages/tex.scm (texlive-xetex)[arguments]: Create XELATEX and XETEX formats. [propagated-inputs]: Replace TEXLIVE-LATEX-BASE with TEXLIVE-LATEX.
2023-07-18gnu: texlive-jadetex: Rely on build system to create formats.Nicolas Goaziou
* 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-18gnu: texlive-csplain: Create formats.Nicolas Goaziou
* 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-18gnu: Add texlive-luatex85.Nicolas Goaziou
* gnu/packages/tex.scm (texlive-luatex85): New variable.
2023-07-18gnu: texlive-xmltex: Rely on build system to create formats.Nicolas Goaziou
* 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-18gnu: texlive-luatex: Create formats.Nicolas Goaziou
* 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-18gnu: texlive-latex-base: Simplify package.Nicolas Goaziou
* 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-18gnu: texlive-babel: Do not rely on TEXLIVE-LATEX-BASE.Nicolas Goaziou
* gnu/packages/tex.scm (texlive-babel)[arguments]: Do not rely on TEXLIVE-LATEX-BASE. [native-inputs]: Add TEXLIVE-DOCSTRIP, TEXLIVE-PDFTEX.
2023-07-18gnu: texlive-pdftex: Create formats.Nicolas Goaziou
* 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-18gnu: Add texlive-latex.Nicolas Goaziou
* gnu/packages/tex.scm (texlive-latex): New variable.
2023-07-18gnu: Add texlive-hyphen-completeNicolas Goaziou
* gnu/packages/tex.scm (texlive-hyphen-complete): New variable.
2023-07-18gnu: Add texlive-tex.Nicolas Goaziou
* gnu/packages/tex.scm (texlive-tex): New variable.
2023-07-18guix: Let texlive importer suggest format creation.Nicolas Goaziou
* 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-18guix: texlive-build-system: Generate TeX formats.Nicolas Goaziou
* 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-18gnu: texlive: Improve package style.Nicolas Goaziou
* gnu/packages/tex.scm (texlive)[version]: Inherit from TEXLIVE-BIN. [inputs]: Remove labels. [arguments]: Use G-expressions. Remove trailing #T from phases.
2023-07-18gnu: texlive-texmf: Improve package style.Nicolas Goaziou
* 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-18gnu: faif: Update texlive package names.Nicolas Goaziou
* 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-18gnu: Add texlive-mfware.Nicolas Goaziou
* gnu/packages/tex.scm (texlive-mfware): New variable.
2023-07-18gnu: Add texlive-etex-pkg.Nicolas Goaziou
* gnu/packages/tex.scm (texlive-etex-pkg): New variable.
2023-07-18guix: import: Improve importing texlive meta packages.Nicolas Goaziou
* 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.