[tldistro] TexLive on MSYS2

Norbert Preining norbert at preining.info
Thu Apr 8 03:23:39 CEST 2021


Hi

On Mon, 05 Apr 2021, Naveen M K wrote:
> First, get `texlive.tlpdb` from one of the mirrors. Then, that must be

You need to use the very same tlpdb that is used for the actual
packages (archive/*.tar.xz), not "any".

> parsed (I had a working implementation in python, I will just reuse it).

THere are Perl modules in tlpkg/TeXLive/ which are the authorative API
modules. Then there is a very old
	Master/tlpkg/archive/lib/python/TeXLive.py

> Then I think Archlinux texlive-core package is based of `scheme-medium`[0],
> so I would get all the packages which belong to that scheme and recursively
> get the package parsing `depend` (I got around 1000), then those must be
> downloaded from the mirror and create the source archive which arch people
> already created.

Yes, that is what we are doing in Debian.

> After that, `texlive-core.fmts` can be created by getting all the things in
> defined as
> 
> 	execute AddFormat ...
> 
> in `texlive.tlpdb` for the packages which we wanted. For example, I am

Yes

> picking a line from `texlive.tlpdb` under xetex package
> 
> 	execute AddFormat name=xetex engine=xetex patterns=language.def
> options="-etex xetex.ini"
> fmttriggers=cm,hyphen-base,tex-ini-files,unicode-data,etex,plain
> 
> From this the corresponding line in `texlive-core.fmts` should be
> 
> 	xetex xetex language.def -etex xetex.ini
> 
> Is this understanding correct about `.fmts` files?

Yes (btw, there is an utility function in TeXLive/TLUtils.pm that does
the parsing and constructing of proper fmtutil.cnf/updmap.cfg lines ;-)

> 	execute addMap original-context-symbol.map
> 	Map original-context-symbol.map

Yes, but don't forget there is also MixedMap and KanjiMap ;-)

> accordingly and I can configure hooks to run `mktexlsr`, `fmtutil-sys` and
> `updmap-sys` on each upgrade and install.

Yes, or call fmtutil-sys only when new formats are installed.

> Finally, all things should be placed in correct directories, which I need to
> find out.

Yes.

> I just read `./runscript --help` and it says, it automatically searches the
> `texmf-dist/scripts` directory? I attached the help message. What I think I
> should now is just rename `runscript.exe` to things they have symlinked.
> Also, there already exists `fmtutil.exe`,`updmap.exe`...

Yes, all of them are copies of runscript.exe

> And for the engine I think I should copy the executable and not rename
> `runscript.exe` as they should be only working for things in script.

Yes, the format links can not be treated with runscript.exe. That is
done via shared libs loading and minimal stubs.

> If I understand correctly, my work would be to just copy `runscript.exe`
> which was build when building binaries to necessary scripts as I told above
> and other things should be handled automatically. It simplifies a lot of
> works thanks.

Yes, basically that is the idea. Don't forget to install runscript.tlu
into the same directory as the binaries (AFAIR...)

Best

Norbert

--
PREINING Norbert                              https://www.preining.info
Fujitsu                 + IFMGA Guide + TU Wien + TeX Live + Debian Dev
GPG: 0x860CDC13   fp: F7D8 A928 26E3 16A1 9FA0 ACF0 6CAC A448 860C DC13


More information about the tldistro mailing list.