Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 427388 - app-text/texlive is (unnecessarily?) split in many packages
Summary: app-text/texlive is (unnecessarily?) split in many packages
Status: RESOLVED WONTFIX
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: TeX project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-07-20 20:05 UTC by poletti.marco
Modified: 2012-07-21 17:07 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description poletti.marco 2012-07-20 20:05:28 UTC
Maybe there's a good reason for the split, but app-text/texlive is splitted in a lot of packages under dev-texlive/*.
At least some of them (maybe even all) are triggered by appropriate USE flags for app-text/texlive. I wonder why they aren't merged in the main package and built/installed accordingly to the use flags as it's commonly done in Gentoo.
There is also a app-text/texlive-core that should be merged with app-text/texlive as well.

This is especially strange for language support. There are:
24 dev-texlive/texlive-documentation-* packages
31 dev-texlive/texlive-lang* packages

As well as these other packages:

dev-texlive/texlive-basic
dev-texlive/texlive-bibtexextra
dev-texlive/texlive-context
dev-texlive/texlive-fontsextra
dev-texlive/texlive-fontsrecommended
dev-texlive/texlive-fontutils
dev-texlive/texlive-formatsextra
dev-texlive/texlive-games
dev-texlive/texlive-genericextra
dev-texlive/texlive-genericrecommended
dev-texlive/texlive-htmlxml
dev-texlive/texlive-humanities
dev-texlive/texlive-latex
dev-texlive/texlive-latexextra
dev-texlive/texlive-latexrecommended
dev-texlive/texlive-luatex
dev-texlive/texlive-mathextra
dev-texlive/texlive-metapost
dev-texlive/texlive-music
dev-texlive/texlive-omega
dev-texlive/texlive-pictures
dev-texlive/texlive-plainextra
dev-texlive/texlive-pstricks
dev-texlive/texlive-publishers
dev-texlive/texlive-science
dev-texlive/texlive-texinfo
dev-texlive/texlive-xetex


Reproducible: Always
Comment 1 Martin Väth 2012-07-21 07:02:58 UTC
I am only a texlive user on gentoo, but I think that the current state
is more appropriate for a huge project like tex, mainly for two reasons:

1. It makes sense to split such a huge project:

a) Installing the whole thing in one run is a major issue on machines
with limited harddisk scpae. E.g. on my laptop I could not keep
all *.tar.bz2 files and the installed data simultaneously;
installing "in portions" (from several smaller *.tar.bz2 files)
is possible.

b) When upgrading some part (e.g. for security issues) only that part
needs to be reinstalled. (For tex the issue is not the compilation time,
but the point mentioned in a).

2. The fine-granulation e.g. for the languages makes perfectly sense
for TeX: You might want to install lots of languages if you receive
many different tex-files you have to compile, but you will probably
want to install the corresponding docs or sources only for the languages
you are actively using. So I like it very much that I can set USE="doc source"
per language/package.
Comment 2 Jeroen Roovers (RETIRED) gentoo-dev 2012-07-21 14:36:18 UTC
(In reply to comment #0)
> Maybe there's a good reason for the split, but app-text/texlive is splitted
> in a lot of packages under dev-texlive/*.
> At least some of them (maybe even all) are triggered by appropriate USE
> flags for app-text/texlive. I wonder why they aren't merged in the main
> package and built/installed accordingly to the use flags as it's commonly
> done in Gentoo.

Packages distributions that used to be monolithic ebuilds and are split ebuilds now, off the top of my head:

- GNOME
- KDE
- TeX
- Qt
- X11

There are probably a few more. The reasoning? When you need an additional, small TeX library, you don't need to recompile the one huge bulk of the distribution all over.
Comment 3 poletti.marco 2012-07-21 16:07:45 UTC
Note that most of these packages aren't actually built, the build time is negligible (except for app-text/texlive-core, which takes ~7minutes on my system, and dev-texlive/texlive-fontsextra which takes ~2 minutes).

Splitting each language in a different package is not done in any of the other huge projects you mentioned, so it surprised me to see it in a smaller one as TeX.

The points raised by Martin (especially point 2) may be good reasons though, at least for some users.

@Martin:
Note that except texlive-core (126MB), most other packages have much smaller distfiles, and the total (at least in my system) is ~360MB, but your figures may be different if you installed more of these packages.
Which packages do you need to merge separately because of disk space?
Comment 4 Jeroen Roovers (RETIRED) gentoo-dev 2012-07-21 17:07:15 UTC
(In reply to comment #3)
> Note that most of these packages aren't actually built, the build time is
> negligible (except for app-text/texlive-core, which takes ~7minutes on my
> system, and dev-texlive/texlive-fontsextra which takes ~2 minutes).

Actual build times vary widely across the plethora of devices great and small, old and new, that Gentoo supports. On one of my systems, a >10 year old UNIX workstation, app-text/texlive-core alone takes more than an hour to emerge on average, (optimistically calculated because I didn't filter out binary merges).

With low-cost, low-power devices with little processing power, narrow system buses and low storage space becoming increasingly popular, using typical workstation performance as a measure for comparison is a bit unfair.

> Splitting each language in a different package is not done in any of the
> other huge projects you mentioned, so it surprised me to see it in a smaller
> one as TeX.

Why are you generalising like this? Maybe it doesn't make sense to split languages into separate ebuilds for the other projects, or it's impractical to build those separately, or it's impractical to maintain them separately, or language support is controlled through LINGUAS. 

> The points raised by Martin (especially point 2) may be good reasons though,
> at least for some users.

First of all, I was mainly interested in establishing that monolithic ebuilds are not "commonly done in Gentoo".

Secondly, the single reason I gave you why texlive should be split is perfectly valid: you often find that you want a specific text to have a certain feature that you didn't foresee, or indeed a new language, or some documentation about a module, and waiting for 7 minutes, let alone an hour, to be able to use that feature is rather counter-productive.