TeX Live
De Wiki de la communauté Mandriva.
Si vous voulez contribuer, cliquez simplement sur l'onglet modifier. Consultez également les autres pages dont le contenu est à réviser.
Logo de TeX:
Sommaire |
Installer TeX Live sous Mandriva
Installer TeX Live sous Mandriva (> 2009.1) n'est pas compliqué. Utilisez, au choix, votre gestionnaire de paquetages préféré ou l'utilitaire en ligne de commandes.
| Pour installer texlive, lancez Sélectionnez-le et cliquez sur Appliquer (Aide). Vous pouvez également l'installer en utilisant la console en tant qu'administrateur avec la commande suivante : urpmi texlive |
Packaging
Cette partie de la page va être mise à profit pour organiser l'empaquetage de la dernière version de TeX Live. Merci donc de ne pas l'éditer si vous ne savez pas trop ce que vous faites. Moi, Sandro Cazzaniga (Kharec, kharec(at)mandriva.org), me suis proposé pour organiser et concrétiser ce travail. J'ai créé cette page, et je gérerai, avec tous ceux qui voudront aider, la partie "Packaging" aussi longtemps que durera l'empaquetage.
Le TODO suivant est écrit pour tous ceux qui veulent participer. Et actualisé (de même que la section "erreur de compilations") en fonction de l'avancement du travail et des étapes franchies.
TODO
- Dénicher l'archive contenant les dernières sources stables ---> OK (cf ftp://tug.org/texlive/historic/2009/texlive-20091107-source.tar.xz)
- Adapter le spec et les patches aux nouvelles sources
- Prendre en compte les remarques de G. Ghibo
- Lister les programmes basés encore sur TeTex qui doivent être testés
- Y croire (important, ça.)
- Organiser les paquets de manière à ce que les paquets de base n'aient pas de dépendance vers X11
- Dans le paquet texlive de la 2010.0 (version 2007), les programmes dvipng et xdvi-xaw3d.bin dépendent de la libX11 (et quelques autres libX*).
- xdvi-xaw3d.bin devrait être déplacé dans le paquet texlive-xdvi (ou supprimé, a-t-il vraiment un intérêt?)
- Pour dvipng, sa dépendance est bizarre (l'équivalent dans le paquet tetex n'a pas cette dépendance), peut-être est-il possible de le patcher pour retirer cette dépendance?
- dvipng dans la version 2009 compile aussi avec des dépendances vers libX11 (probablement une conséquence de l'utilisation de freetype ou de t1lib, qui ne sont pas optionnelles), il reste la possibilité de packager dvipng à part (dans un paquet texlive-dvipng, comme ça se fait déjà pour dvipdfm ou dvips), mais cela nécessite alors de vérifier que les programes qui dépendent de texlive (ou tetex) ne dépendent pas implicitement de dvipng.
Points importants à considérer
- De la part de l'ancien mainteneur (Giuseppe Ghibo)
Being teTeX maintainer for 10 years, as well as a competent LaTeX user for almost 18, if you plan to throw into this stuff, here is my list of advices:
1) Have patience.
2) Have even more patience.
3) Your ally is teTeX.
4) Don't follow strictly the fedora texlive SPEC file. The way it's actually packaged with all such subpackages and crossdeps is actually insane...
5) If you don't want to produce a "bad package" (maybe a newer package but anyway a bad package) don't follow the mindset of a packager. The TeX philosophy is a little bit different. My advice is that in this context the mindset of a TeX|LaTeX user comes first, then comes the packager.
6) Don't be too hurry to release the package or doing the BIG switch with teTeX, until it's ready, hoping that someone other then will fix later if not working (problems were very subtle to discover, from "fork bombs" in the scripts to missed styles or format files). And consider it's used into the building of the docs of many other packages.
7) Learn the differences between teTeX, TeXlive and how the engines works.
8) Don't ever EVER think to split the package in zillions of subpackages, one per class or per style or per font: this is the point of view of a packager (so that he can easily upgrade one tiny package without touching the rest and minimal efforts), but in the LaTeX real word this doesn't work (unless of course you, as end user, are an expert of both worlds, which rarely happens) and lead to think: "hey, why there isn't style XXX, who packaged this thing? I can't find it, and can't work on my documents anymore...". On the other side don't think to do a HUGE monolithic package with everything there, because it's 2GB.
9) Be sure all the security patches are included. TeXlive is cross-os, which means that it's not said that in internal scripts they use for instance the safer "mktemp" instead of the tmp.$$ stuff, and this kind of things is usually "fixed" by distro extra patches (indeed sound there isn't too much attention in the upstream to this kind of stuff).
10) Look at the other teTeX patches and see if they are or not implemented into TeXlive. If not, try to backports them. Many of such things are there for several reasons and it's not said they were included into upstream. For instance comes to my mind the script dvipdfpress (which was used also to produce the Mandriva documentation) or the patches for the internal .cnf memory array size, adjusted for the same reasons. Ditto for the way currently the teTeX subpackages are splitten. E.g.: the mfwin subpackage is standalone because in this way you have the base tetex not depending from any X11 package, so you might have a full working TeX package without any X installed. On the other hand the mf-nowin executable is included in main package for automatic font generation. E.g. a typical mistake is to split ALL the fonts into a standalone subpackage (RHEL made also this mistake with teTeX): e.g. if you remove all the fonts (and their .mf sources) from the main package you'll loose the possibility to build automatically the fonts on the fly, which is one of the TeX(Web2C) basic feature.
11) Don't stuck only to the main upstream release (either 2007, 2008 or 2009). texlive has an svn too. For certain LaTeX macros (like hyperref) after a little test, is worthwhile to include the latest beyond the milestone release. Sometimes you have to look also at CTAN.
Now a little bit more info about TeXlive. TeXlive currently provides maybe the 90% of the TeX and LaTeX packages available in CTAN. Which means almost everything. But it was born for being used "live" (i.e. without installation) directly from a CD and (now from a DVD), so the more there was there the better was. That's why so big. teTeX was much more balanced in the feature and file provided and includes package and macros choosen wisely (i.e. choosen by users, previous packagers, tomas esser, and their EXPERIENCE). That's also why teTeX (at least our package where I tried to keep the things the most uptodate possible) is still usable, though in some field it's a bit outdated. In a nutshell TeXlive is a superset of teTeX. What has teXlive newer than teTeX, apart a bigger number of packages? Well the first is a newer Web2C engine (which includes a newer kpathsea library), under which some of these tool is build against. Furthermore there is a newer version of the pdftex engine, required for a newer conTeXt, etc.; so my advice is here to try to reproduce the tetex subpackaging. All what is not included in current tetex you might move to a texlive-extras subpackage, all what is included in tetex-<subpackage>, you move to the corrisponding texlive-<subpackage>.
Better to not list directly the filenames, one by one into the SPEC file itself. Rather use a "system" or a method for getting or generating the filelist (or even and external list) plus "exceptions" (i.e. files to be moved manually from one subpackage to another) for minor adjustements. Later there might be a 2nd round for further splitting this "extras" or moving files around according to experience. Note also that LaTeX macro package are not that big (you might have thousands of macro packages into a few megabytes). What is big are the PDFs of their documentation which usually are already in a standalone package.
Hope this helps. Good luck.
Bye Giuseppe.
- Voir aussi du côté de archlinux (Eugeni Dodonov):
http://wiki.archlinux.org/index.php/TeX_Live#List_of_all_texlive-.2A_packages
Erreurs de compilation rencontrées
Celle-là je vois d'ou elle vient, mais pas comment la corriger... En tout cas le boulot est sur mon /home/kharec/current, sur un des noeuds, pour ceux qui veulent s'y essayer...
mdvsys build -v texlive.spec
Building package from spec file texlive.spec
managing build dependencies
Running urpmi in restricted mode...
Some requested packages cannot be installed:
texlive-texmf-2007-24.r6295.8mdv2010.1.noarch (in order to keep tetex-3.0-49mdv2010.1.i586)
texlive-texmf-common-2007-24.r6295.8mdv2010.1.noarch (in order to keep tetex-3.0-49mdv2010.1.i586)
texlive-texmf-dvipdfm-2007-24.r6295.8mdv2010.1.noarch (in order to keep tetex-3.0-49mdv2010.1.i586)
texlive-texmf-dvips-2007-24.r6295.8mdv2010.1.noarch (in order to keep tetex-dvips-3.0-49mdv2010.1.i586)
texlive-texmf-fonts-2007-24.r6295.8mdv2010.1.noarch (due to unsatisfied texlive-texmf-dvips[== 0:2007-24.r6295.8mdv2010.1])
texlive-texmf-latex-2007-24.r6295.8mdv2010.1.noarch (in order to keep tetex-latex-3.0-49mdv2010.1.i586)
error: Failed build dependencies:
texlive-texmf = 20091107 is needed by texlive-0:20091107-1mdv2010.1.src
texlive-texmf-afm = 20091107 is needed by texlive-0:20091107-1mdv2010.1.src
texlive-texmf-dvipdfm = 20091107 is needed by texlive-0:20091107-1mdv2010.1.src
texlive-texmf-dvips = 20091107 is needed by texlive-0:20091107-1mdv2010.1.src
texlive-texmf-fonts = 20091107 is needed by texlive-0:20091107-1mdv2010.1.src
texlive-texmf-latex = 20091107 is needed by texlive-0:20091107-1mdv2010.1.src
Error performing action build: Can't build package: Build error
at /usr/lib/perl5/vendor_perl/5.10.1/MDV/Repsys.pm line 387
at /usr/bin/mdvsys line 596
Avancement
Bon, on est un peu bloqué. Surtout moi (sandro) mais je n'abandonne pas!
Remerciements
Dans cette sous-section, je remercie ceux qui m'aident et m'auront aidé dans cette tâche :)
- Sandro Cazzaniga
- Stéphane Téletchéa
- Giuseppe Ghibo
- Denis Bitouzé
- Eugeni Dodonov
- Renaud Michel
- André Salaün

