Commit graph

142218 commits

Author SHA1 Message Date
Nicolas Goaziou
9dc279e2fd
guix: import texlive: Handle versions.
* guix/import/texlive.scm (texlive-repository):
(texlive-repository-location):
(svn-command):
(version->revision):
(current-day):
(latest-texlive-tag):
(texlive->svn-multi-reference): New variables.
(tlpdb-file) Remove function.
(tlpdb): Add VERSION argument.
* guix/import/texlive.scm (list-upstream-inputs): Add VERSION and DATABASE
arguments.
(tlpdb->package): Do not use fixed version.  Instead, make use of the version
provided as an argument.  Add DATABASE argument for testing.
(texlive->guix-package): Do not memoize.  Allow providing any TeX Live release
tag as version.  Default to latest tag.  Add DATABASE argument for testing.
Improve docstring.

* tests/texlive.scm ("texlive->guix-package, no docfiles"):
("texlive->guix-package"):
("texlive->guix-package, with METAFONT files"):
("texlive->guix-package, with catalogue entry, no inputs"):
("texlive->guix-package, multiple licenses"):
("texlive->guix-package, meta-package"):
("texlive->guix-package, with TeX format"):
("texlive->guix-package, execute but no TeX format"):
("texlive->guix-package, translate dependencies"):
("texlive->guix-package, lonely `hyphen-base' dependency and ARCH"):
("texlive->guix-package, single script, no extension"):
("texlive->guix-package, multiple scripts, with extensions"):
("texlive->guix-package, script with associated input"):
("texlive->guix-package, propagated binaries, no script"):
("texlive->guix-package, propagated binaries and scripts"):
("texlive->guix-package, with skipped propagated binaries"): Update tests.

Change-Id: I7576b6e31e9ec3ff84258b71d0c4dd180d2b5c38
2024-08-31 10:45:32 +02:00
Nicolas Goaziou
1e2d90214c
guix: import texlive: Factorize package inputs listing.
* guix/import/texlive.scm (list-upstream-inputs):
(upstream-inputs->texlive-inputs): New functions.
(tlpdb->package): Use new functions.

Use <upstream-input> record to store associated inputs.

Change-Id: I70d42d291347feaade36eef83a04218fb100aae9
2024-08-31 10:45:32 +02:00
Nicolas Goaziou
9afdc7df1c
guix: import texlive: Move a comment.
* guix/import/texlive.scm (latex-bin-dependency-tree): Move comment inside the
variable.

Change-Id: Ia3fd8b49b9680122c0f85dca0226db42b0dd3927
2024-08-31 10:45:32 +02:00
Nicolas Goaziou
5cb3eaed15
guix: import texlive: Remove `files-differ?' function.
* guix/import/texlive.scm (files-differ?): Remove no longer used function.

Change-Id: I472b628da779c187fd315a929546c8e9bcefdcd3
2024-08-31 10:45:31 +02:00
Nicolas Goaziou
ae43ee7e09
guix: import texlive: Sort modules alphabetically.
* guix/import/texlive.scm: Sort modules alphabetically.

Change-Id: I02099403e9a6e64840a54ad07bb82e719dcdc60d
2024-08-31 10:45:31 +02:00
Nicolas Goaziou
4cd299c643
guix: import texlive: Rename some functions.
* guix/import/texlive.scm (filter-depends): Rename from `translate-depends'.
Clarify docstring.
(list-formats): Renamed from `formats'.
(tlpdb->package): Apply renaming.

Change-Id: If573cb8bde8be3ac65186298cf439f71f733f8eb
2024-08-31 10:45:31 +02:00
Nicolas Goaziou
7d6a97d6ce
gnu: texlive-hyphen-complete: Fix locations.
* gnu/packages/tex.scm (texlive-hyphen-complete)[source]: Add missing trailing
forward slash characters in some locations.

Change-Id: Ib1661c36f4fbde58c577dd7b4e859755fee759a5
2024-08-31 10:45:31 +02:00
Nicolas Goaziou
0a8cc69fb7
gnu: python-sphinx: Fix build.
* gnu/packages/sphinx.scm (python-sphinx)[propagated-inputs]: Add
TEXLIVE-SCHEME-BASIC in order to propagate an autonomous TeX Live tree.  Also
add TEXLIVE-ANYFONTSIZE, TEXLIVE-CM-SUPER, TEXLIVE-FONTSPEC, TEXLIVE-LUATEX85,
TEXLIVE-LUATEXBASE, TEXLIVE-POLYGLOSSIA and TEXLIVE-TEX-GYRE.  Remove
TEXLIVE-AMSFONTS, TEXLIVE-AMSMATH, TEXLIVE-CARLISLE, TEXLIVE-FANCYHDR,
TEXLILVE-GEOMETRY, TEXLIVE-HYPERREF, TEXLIVE-KVOPTIONS, TEXLIVE-LATEX-BIN,
TEXLIVE-LTXCMDS, TEXLIVE-OBERDIEK and TEXLIVE-TOOLS, all included in
TEXLIVE-SCHEME-BASIC.
[native-inputs]: Add FONTCONFIG, FONT-GNU-FREEFONT, TEXLIVE-CM-SUPER, and
TEXLIVE-TEX-GYRE.  Also call TEXLIVE-UPMAP.CFG to generate proper font maps
during tests.

Change-Id: Ifc5c5eb37ea6568c5a602ddff66dc8a92a1a6072
2024-08-31 10:45:31 +02:00
spencerpeters
f194e84685
gnu: texlive-scripts: Add missing "mktexfmt" symlink.
* gnu/packages/tex.scm (texlive-scripts)[arguments]<#:phases>: Add missing
"mktexfmt" symlink during LINK-SCRIPTS phase.

Change-Id: I7100fc3d92ab625ff4d6a0a6945d5ab4c5121ed8
Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
2024-08-31 10:45:31 +02:00
Nicolas Goaziou
23527273c6
gnu: texlive-texdirflatten: Add missing Perl input.
* gnu/packages/tex.scm (texlive-texdirflatten)[inputs]: Add PERL.

Change-Id: Ie1089d37e0fb95cccdb3bc5bfed8dff4eb0074d3
2024-08-31 10:45:31 +02:00
Nicolas Goaziou
1c51c3a289
gnu: texlive-xits: Fix typo in description.
* gnu/packages/tex.scm (texlive-xits)[description]: Add two spaces between sentences.

Change-Id: I296db7b68388d2728e6bc76e0203d220e585ba34
2024-08-31 10:45:30 +02:00
Nicolas Goaziou
4983df5bff
gnu: Update commentary section in "tex.scm".
* gnu/packages/tex.scm: Describe new bootstrap story in "tex.scm".

Change-Id: I713c225c02169deec077ef06f165d559b2625779
2024-08-31 10:45:30 +02:00
Nicolas Goaziou
af87549d9a
gnu: texlive-docstrip: Remove it.
* gnu/packages/tex.scm (texlive-docstrip): Export it.
(texlive-atveryend)[native-inputs]:
(texlive-graphics)[native-inputs]:
(texlive-l3kernel)[native-inputs]:
(texlive-l3backend)[native-inputs]:
(texlive-l3packages)[native-inputs]:
(texlive-lualibs)[native-inputs]:
(texlive-babel)[native-inputs]:
(texlive-cyrillic)[native-inputs]:
(texlive-firstaid)[native-inputs]:
(texlive-atbegshi)[native-inputs]: Use TEXLIVE-LATEX instead of
TEXLIVE-DOCSTRIP (and possibly TEXLIVE-PDFTEX).
(texlive-hyphen-complete)[arguments]<#:phases>: Add a phase to include
"docstrip.tex" in the build process.
[native-inputs]: Replace TEXLIVE-DOCSTRIP with TEXLIVE-LATEX checkout.
(texlive-docstrip): Remove variable.

Change-Id: Id6ae34787acc2956cb51dcdd403b332ac6d1ba94
2024-08-31 10:45:30 +02:00
Nicolas Goaziou
b4ce7359fb
guix: import texlive: Propagate binaries when necessary.
* guix/import/texlive.scm (no-bin-propagation-packages): New variable.
(list-binfiles): New function.
(linked-scripts): Renamed to...
(list-linked-scripts): ... this.  Now always return a list.
(tlpdb->package): Handle binary propagation.
* tests/texlive.scm (%fake-tlpdb): Add data for new tests.
("texlive->guix-package, propagated binaries, no script"):
("texlive->guix-package, propagated binaries and scripts"):
("texlive->guix-package, with skipped propagated binaries"): New tests.

Change-Id: I707ba33a10aa98ad27151724d3ecc4158db6b7cc
2024-08-31 10:45:30 +02:00
Nicolas Goaziou
36c31674bf
gnu: texlive-xindy: Build binary separately.
* gnu/packages/tex.scm (texlive-xindy-bin): New variable.
(texlive-xindy): Use source from TEXLIVE-ORIGIN and make it a regular TeX
Live package.
[arguments]: Remove it.
[propagated-inputs]: Add TEXLIVE-XINDY-BIN.

Change-Id: I589b192dcd8fb35deab5d4017c411001a4d05dda
2024-08-31 10:45:30 +02:00
Nicolas Goaziou
80be3a4a46
gnu: texlive-axodraw2: Build binary separately.
* gnu/packages/tex.scm (texlive-axodraw2-bin): New variable.
(texlive-axodraw2): Use source from TEXLIVE-SOURCE and make it a regular TeX
Live package.
[arguments]: Remove it.
[inputs]: Remove OPENLIBM.
[propagated-inputs]: Add TEXLIVE-AXODRAW2-BIN.

Change-Id: I119617e48ef419e4e09887002a29a591eaa27e9e
2024-08-31 10:45:30 +02:00
Nicolas Goaziou
bf25c373ac
gnu: texlive-musixtnt: Build binary separately.
* gnu/packages/tex.scm (texlive-musixtnt-bin): New variable.
(texlive-musixtnt): Do not use prerex source. Make it a regular TeX Live
package instead.
[arguments]: Remove it.
[propagated-inputs]: Add TEXLIVE-MUSIXTNT-BIN.

Change-Id: I24bbdb6ba5cc2b5205e20db9fdeb1c00f08a9d82
2024-08-31 10:45:29 +02:00
Nicolas Goaziou
823276ad77
gnu: texlive-dvipos: Build binaries separately.
* gnu/packages/tex.scm (texlive-dvipos-bin): New variable.
(texlive-dvipos): Do not inherit from TEXLIVE-BIN.  Make it a regular TeX
Live package instead.
[source]: Use TEXLIVE-ORIGIN.
[arguments]: Remove it.
[propagated-inputs]: Add TEXLIVE-DVIPOS-BIN.

Change-Id: I0f1e169b7f078e022b65a13045b24a11099e8303
2024-08-31 10:45:29 +02:00
Nicolas Goaziou
144ce84f84
gnu: texlive-ps2pk: Build binaries separately.
* gnu/packages/tex.scm (texlive-ps2pk-bin): New variable.
(texlive-ps2pk): Do not inherit from TEXLIVE-BIN.  Make it a regular TeX
Live package instead.
[source]: Use TEXLIVE-ORIGIN.
[arguments]: Remove it.
[propagated-inputs]: Add TEXLIVE-PS2PK-BIN.

Change-Id: I73619d2d8254b0bba320a7c83408a024d7218964
2024-08-31 10:45:29 +02:00
Nicolas Goaziou
06c2c0cde5
gnu: texlive-dviout-util: Build binaries separately.
* gnu/packages/tex.scm (texlive-dviout-util-bin): New variable.
(texlive-dviout-util): Do not inherit from TEXLIVE-BIN.  Make it a regular TeX
Live package instead.
[source]: Use TEXLIVE-ORIGIN.
[arguments]: Remove it.
[propagated-inputs]: Add TEXLIVE-DVIOUT-UTIL-BIN.

Change-Id: Id6c82baf15df8d253cd15aa6bd31d2d1e707c5fd
2024-08-31 10:45:29 +02:00
Nicolas Goaziou
b7572bbbc6
gnu: Add texlive-mflua-bin.
* gnu/packages/tex.scm (texlive-mflua-bin): New variable.
(texlive-mflua)[arguments]<#:link-scripts>: Remove keyword, since "fmlua.lua"
is a not meant to be symlinked to "bin/".
[propagated-inputs]: Add TEXLIVE-MFLUA-BIN.

Change-Id: I7dc275c169afbc4bdada02feec83fa9470d49f94
2024-08-31 10:45:29 +02:00
Nicolas Goaziou
ff21fa3c23
gnu: Add texlive-luajittex-bin.
* gnu/packages/tex.scm (texlive-luajittex-bin): New variable.
(texlive-luajittex)[arguments]<#:create-formats>: Build "luajithbtex" and
"luajittex" formats only on platforms where LuaJIT is supported.
[propagated-inputs]: Likewise, only add TEXLIVE-LUAJITTEX-BIN on such
platforms.

Change-Id: I7ce923642268e0db12802f368042703f14dc4a64
2024-08-31 10:45:29 +02:00
Nicolas Goaziou
66ed294e5a
gnu: Add texlive-xml2pmx-bin.
* gnu/packages/tex.scm (texlive-xml2pmx-bin): New variable.
(texlive-xml2pmx)[propagated-inputs]: Add TEXLIVE-XML2PMX-BIN.

Change-Id: I112c29945b0643374cced1eb24d598d2cd2259ea
2024-08-31 10:45:28 +02:00
Nicolas Goaziou
c1ab21bff9
gnu: texlive-kpathsea: Propagate the binaries.
* gnu/packages/tex.scm (texlive-kpathsea)[propagated-inputs]: Add TEXLIVE-LIBKPATHSEA.
* gnu/packages/tex.scm (texlive-collection-basic): Update comment about
TEXLIVE-BIN, since GUIX_TEXMF is now specifed by TEXLIVE-KPATHSEA.

Change-Id: I2a5a39d7980f835fa3cdb819c7fbade7e48802ce
2024-08-31 10:45:28 +02:00
Nicolas Goaziou
125085025b
gnu: Add texlive-xpdfopen-bin.
* gnu/packages/tex.scm (texlive-xpdfopen-bin): New variable.
(texlive-xpdfopen)[propagated-inputs]: Add TEXLIVE-XPDFOPEN-BIN.

Change-Id: I1dc9aced9c0a601be60e60157deb36a752bea6f9
2024-08-31 10:45:28 +02:00
Nicolas Goaziou
c2624353ff
gnu: texlive-texdoctk: Fix runtime error.
* gnu/packages/tex.scm (texlive-texdoctk)[arguments]<#:phases>: Wrap Perl
libraries.
[inputs]: Add PERL-TK.

Change-Id: Iec7a96ddf4378780a1720e1ad09197fcfc4616b7
2024-08-31 10:45:28 +02:00
Nicolas Goaziou
8f0b6c5ac1
gnu: Add texlive-t1utils-bin.
* gnu/packages/tex.scm (texlive-t1utils-bin): New variable.
(texlive-t1utils)[propagated-inputs]: Add TEXLIVE-T1UTILS-BIN.

Change-Id: I35fff0ac6bc176da248a43e8d434c746830875e0
2024-08-31 10:45:28 +02:00
Nicolas Goaziou
550227d2b1
gnu: Add texlive-ps2eps-bin.
* gnu/packages/tex.scm (texlive-ps2eps-bin): New variable.
(texlive-ps2eps)[arguments]<#:link-scripts, #:phases>: Remove arguments.
[inputs]: Remove PERL.
[propagated-inputs]: Add TEXLIVE-PS2EPS-BIN.

Change-Id: Ie3152ae25c9444bd9839559a81fd68139e4f1df1
2024-08-31 10:45:28 +02:00
Nicolas Goaziou
0fdbe1dd70
gnu: Add texlive-seetexk-bin.
* gnu/packages/tex.scm (texlive-seetexk-bin): New variable.
(texlive-seetexk)[propagated-inputs]: Add TEXLIVE-SEETEXK-BIN.

Change-Id: I6ea1f8cd3100267cf3ba8593f49370f7739d40f2
2024-08-31 10:45:28 +02:00
Nicolas Goaziou
b64307b38b
gnu: Add texlive-lacheck-bin.
* gnu/packages/tex.scm (texlive-lacheck-bin): New variable.
(texlive-lacheck)[propagated-inputs]: Add TEXLIVE-LACHECK-BIN.

Change-Id: Ibc2032c323f7631469d00291d9769327620b82de
2024-08-31 10:45:27 +02:00
Nicolas Goaziou
92f9c9975f
gnu: Add texlive-lcdftypetools-bin.
* gnu/packages/tex.scm (texlive-lcdftypetools-bin): New variable.
(texlive-lcdftypetools)[propagated-inputs]: Add TEXLIVE-LCDFTYPETOOLS-BIN.

Change-Id: I3091f6122365dc087d030d0e1458ce412fd94e30
2024-08-31 10:45:27 +02:00
Nicolas Goaziou
98bb563bf9
gnu: Add texlive-dvisvgm-bin.
* gnu/packages/tex.scm (texlive-dvisvgm-bin): New variable.
(texlive-dvisvgm)[propagated-inputs]: Add TEXLIVE-DVISVGM-BIN.

Change-Id: I0e43627712943efd9e81204dfe76042e19368ea6
2024-08-31 10:45:27 +02:00
Nicolas Goaziou
67f29f0064
gnu: Add texlive-dvipng-bin.
* gnu/packages/tex.scm (texlive-dvipng-bin): New variable.
(texlive-dvipng)[propagated-inputs]: Add TEXLIVE-DVIPNG-BIN.

Change-Id: I63d8c06ea96d3f153f94abac1a7830aaa54b315c
2024-08-31 10:45:27 +02:00
Nicolas Goaziou
e4aa0fd03a
gnu: Add texlive-dviljk-bin.
* gnu/packages/tex.scm (texlive-dviljk-bin): New variable.
(texlive-dviljk)[propagated-inputs]: Add TEXLIVE-DVILJK-BIN.

Change-Id: I204c06b42175150eec618ed58a1f4e46d6aeb9c5
2024-08-31 10:45:27 +02:00
Nicolas Goaziou
3a73a83a29
gnu: Add texlive-dvidvi-bin.
* gnu/packages/tex.scm (texlive-dvidvi-bin): New variable.
(texlive-dvidvi)[propagated-inputs]: Add TEXLIVE-DVIDVI-BIN.

Change-Id: I4327b4685048c6bb4833512a4ee80b87d72d6f8c
2024-08-31 10:45:27 +02:00
Nicolas Goaziou
941cff8c50
gnu: Add texlive-dvi2tty-bin.
* gnu/packages/tex.scm (texlive-dvi2tty-bin): New variable.
(texlive-dvi2tty)[propagated-inputs]: Add TEXLIVE-DVI2TTY-BIN.

Change-Id: I4b583f4edb7205cacbe9fcb00286af0513bc88bb
2024-08-31 10:45:26 +02:00
Nicolas Goaziou
08f55f34fe
gnu: Add texlive-dtl-bin.
* gnu/packages/tex.scm (texlive-dtl-bin): New variable.
(texlive-dtl)[propagated-inputs]: Add TEXLIVE-DTL-BIN.

Change-Id: I27ea9d82451f96f3548f6556e9260736c96137c9
2024-08-31 10:45:26 +02:00
Nicolas Goaziou
0823bab5f4
gnu: Add texlive-detex-bin.
* gnu/packages/tex.scm (texlive-detex-bin): New variable.
(texlive-detex)[propagated-inputs]: Add TEXLIVE-DETEX-BIN.

Change-Id: I42aa0aad1a47287705e30184228df62a18799b41
2024-08-31 10:45:26 +02:00
Nicolas Goaziou
7c6fb4667d
gnu: Add texlive-chktex-bin.
* gnu/packages/tex.scm (texlive-chktex-bin): New variable.
(texlive-chktex)[arguments]<#:link-scripts>: Remove as those are now provided
by TEXLIVE-CHKTEX-BIN.
[inputs]: Remove PERL.
[propagated-inputs]: Add TEXLIVE-CHKTEX-BIN.

Change-Id: If9801ba8bf677899c6e96b20d17f2f41da0fdc50
2024-08-31 10:45:26 +02:00
Nicolas Goaziou
102a3a3a04
gnu: Add texlive-cjkutils-bin.
* gnu/packages/tex.scm (texlive-cjkutils-bin): New variable.
(texlive-cjkutils)[propagated-inputs]: Add TEXLIVE-CJKUTILS-BIN.

Change-Id: I0790442c9295a00fdb7024d844a75dcac2f9ad3a
2024-08-31 10:45:26 +02:00
Nicolas Goaziou
f16db7fd1b
gnu: Add texlive-vlna-bin.
* gnu/packages/tex.scm (texlive-vlna-bin): New variable.
(texlive-vlna)[propagated-inputs]: Add TEXLIVE-VLNA-BIN.

Change-Id: I98c4345f732488f43491a31c5faea54b231d3846
2024-08-31 10:45:26 +02:00
Nicolas Goaziou
9ccd4f8dd4
gnu: Add texlive-metapost-bin.
* gnu/packages/tex.scm (texlive-metapost-bin): New variable.
(texlive-metapost)[propagated-inputs]: Add TEXLIVE-METAPOST-BIN.

Change-Id: I6826d2c74d107ef5d58651b1bb6838aec0fdb6aa
2024-08-31 10:45:26 +02:00
Nicolas Goaziou
c0b05e765f
gnu: Add texlive-makeindex-bin.
* gnu/packages/tex.scm (texlive-makeindex-bin): New variable.
(texlive-makeindex)[propagated-inputs]: Add TEXLIVE-MAKEINDEX-BIN.

Change-Id: I00a5600d3260696c3c67f89902e7f69ea98ba30d
2024-08-31 10:45:25 +02:00
Nicolas Goaziou
9a9f1a5aab
gnu: Add texlive-gsftopk-bin.
* gnu/packages/tex.scm (texlive-gsftopk-bin): New variable.
(texlive-gsftopk)[propagated-inputs]: Add TEXLIVE-GSFTOPK-BIN.

Change-Id: I91c459392b4fb4b433b4abd47d09170e3927fefc
2024-08-31 10:45:25 +02:00
Nicolas Goaziou
9a9a454495
gnu: Add texlive-upmendex-bin.
* gnu/packages/tex.scm (texlive-upmendex-bin): New variable.
(texlive-upmendex)[propagated-inputs]: Add TEXLIVE-UPMENDEX-BIN.

Change-Id: I4212732a116800942577fc2e1fa7b8179fe094b0
2024-08-31 10:45:25 +02:00
Nicolas Goaziou
a3756547f5
gnu: Add texlive-ttfutils-bin.
* gnu/packages/tex.scm (texlive-ttfutils-bin): New variable.
(texlive-ttfutils)[propagated-inputs]: Add TEXLIVE-TTFUTILS-BIN.

Change-Id: I03fdd5a6522f9c486e9efa4f19630881007a53e8
2024-08-31 10:45:25 +02:00
Nicolas Goaziou
11d0061108
gnu: Add texlive-tpic2pdftex-bin.
* gnu/packages/tex.scm (texlive-tpic2pdftex-bin): New variable.
(texlive-tpic2pdftex)[propagated-inputs]: Add TEXLIVE-TPIC2PDFTEX-BIN.

Change-Id: I8b48c82c8df632c8bbe2d0aac76f1a7421116c2b
2024-08-31 10:45:25 +02:00
Nicolas Goaziou
cde7374a9e
gnu: Add texlive-xdvi-bin.
* gnu/packages/tex.scm (texlive-xdvi-bin): New variable.
(texlive-xdvi)[propagated-inputs]: Add TEXLIVE-XDVI-BIN.

Change-Id: I305992d58740cf23e89aa175fa81109fa1923f04
2024-08-31 10:45:25 +02:00
Nicolas Goaziou
ac9798bf4b
gnu: Add texlive-tex4ht-bin.
* gnu/packages/tex.scm (texlive-tex4ht-bin): New variable.
(texlive-tex4ht)[arguments]<#:link-scripts>: Remove as those are now provided by
TEXLIVE-TEX4HT-BIN.
[inputs]: Remove PERL.
[propagated-inputs]: Add TEXLIVE-TEX4HT-BIN.

Change-Id: Ib9a677d61a86419db4f5d60401566d340fbcf80d
2024-08-31 10:45:25 +02:00
Nicolas Goaziou
309ca0e772
gnu: Add texlive-psutils-bin.
* gnu/packages/tex.scm (texlive-psutils-bin): New variable.
(texlive-psutils)[arguments]<#:link-scripts>: Remove as those are now provided
by TEXLIVE-PSUTILS-BIN.
[inputs]: Remove PERL.
[propagated-inputs]: Add TEXLIVE-PSUTILS-BIN.

Change-Id: I9435ed4216237893e503487f94c42ad9cc8c268f
2024-08-31 10:45:24 +02:00