all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* [bug#63604] Branch "tex-team-next" in need of review
@ 2023-05-20  9:38 Nicolas Goaziou
  2023-05-21 16:27 ` Nicolas Goaziou
                   ` (2 more replies)
  0 siblings, 3 replies; 8+ messages in thread
From: Nicolas Goaziou @ 2023-05-20  9:38 UTC (permalink / raw)
  To: 63604

Hello,

I just pushed branch named "tex-team-next", based on current "tex-team"
branch. At its core, it merely modifies the texlive build system.
Consequently, it also rewrites (almost) all texlive-prefixed packages
accordingly, and tweaks the texlive importer to follow suit.

The most obvious differences with the last iteration of this build
system are that `simple-texlive-package' function along with its
`#:trivial?' argument disappear, and the `#:tex-directory' keyword is no
longer used. Package definitions are now more regular, in comparison to
other packages in Guix.

Internally, this build system now:

- tries to build ".dtx" files when no build targets, through
  `#:build-targets keyword', are specified and no ".ins" file are
  present in the source;

- generates font metrics (".tfm") from Metafont files (".mf"), with the
  consequence of adding a new `#:ignore-metafont-files' keyword for
  a few tricky font packages;

- guarantees that no cruft, e.g., ".log" files, is installed in the
  output by comparing generated files with those expected by the TeX
  Live distribution;

Since these changes affected almost all packages in "tex.scm", I took
the opportunity to:

- normalize package names, so that every package is now named after the
  texlive-TEXLIVENAME scheme, where TEXLIVENAME is the name of the
  matching package in the TeX Live distribution;

- add appropriate propagated inputs, which will hopefully drastically
  reduce the number of packages to declare when installing a working,
  minimal, and modular bundle;

- created new packages required as propagated inputs, and a couple
  others to try out the font metrics generation on peculiar setups.

Unfortunately, these changes do not affect the "bootstrap" part of the
texlive packages, e.g., `texlive-bin', `texlive-latex-base', or
`texlive-hyphen-package'… While creating new texlive packages is
certainly, all of this doesn't help in updating packages individually or
as a whole. Neither does it solve the dreaded hyphenation issue. Sorry.

In order to help anyone interested in reviewing this 400+ packages set,
here are some guidelines. The noteworthy patches are:

- patches 1 and 389, about the real changes to the build system;
- patches 3, 4, 5, 6 and 390, about refinements to its relative
  importer.

These ones should be reviewed, since this is where the Guile code lives.
The others are not so interesting and can be merrily skipped. Anyway,

- patches 2, 360, and 388 are the steps taken to ultimately remove
  `simple-texlive-package' function without breaking every build right
  from the beginning;

- everything else (!) is just boring package rewriting, or addition.

Feedback welcome,

Regards,
-- 
Nicolas Goaziou




^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2023-08-27  9:43 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-05-20  9:38 [bug#63604] Branch "tex-team-next" in need of review Nicolas Goaziou
2023-05-21 16:27 ` Nicolas Goaziou
2023-05-28  6:38 ` Nicolas Goaziou
2023-06-06 16:01   ` Nicolas Goaziou
2023-06-14  9:24     ` Nicolas Goaziou
2023-06-29  9:14       ` Nicolas Goaziou
2023-08-27  8:37 ` [bug#63604] Closing? Andreas Enge
2023-08-27  9:42   ` bug#63604: Closing? Nicolas Goaziou

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.