Le mardi 15 mai 2007 à 16:28 +0200, Frank Küster a écrit : > TeX Live is one big thing upstream (one DVD) and has been split for > Debian packaging into one arch:any and four arch:all source packages > with numerous binary packages each. Generally, you cannot assume a > system to work properly which has a mixture of different upstream > versions of these packages installed. But how should we achieve that? > > A. The straightforward approach is the most ugly one: The packages of > course frequently declare "Depends: texlive-some-other-package", and > we could switch all of these depends into versioned depends, (>= > $upstream-version). But that would really look ugly, e.g. from > texlive-latex-extra: > > -Depends: preview-latex-style, texlive-common (>= 2007), texlive-pictures, texlive-latex-base > +Depends: preview-latex-style, texlive-common (>= 2007), texlive-pictures (>= 2007), texlive-latex-base (>= 2007) It's ugly but it's the right thing to do. Unfortunately it doesn't prevent texlive-latex-extra 2007 from being installed with texlive-common 2008. > B. texlive-common could declare > > Conflicts: <long_list_of_texlive_packages_each_with_old_upstreamversion> > > But how would that work upon upgrade? Technically, there's no > problem, first all texlive packages except texlive-common would be > unpacked, then texlive-common could be unpacked and configured, after > that the others can be configured. > > But usually dpkg tries to do unpacking and configuring in the same > order; would it be confused by this situation? dpkg handles this case right, but it's really painful in the long term. > C. Ignore the problem and just expect from users to handle their > upgrades in a sane way and not put individual packages on hold? Not setting strong enough dependencies is a RC bug. For GNOME packages, we opted for a solution similar to A, but with the notion of a "next upstream version". For example, epiphany-extensions declares: Depends: epiphany-browser (>= ${gnome:Version}), epiphany-browser (<< ${gnome:NextVersion}) The two variables are expanded (e.g. to 2.18 and 2.19 for GNOME 2.18.X) by a specific rule. We can afford to do that for almost all packages because upstream guarantees compatibility inside a major release. -- .''`. : :' : We are debian.org. Lower your prices, surrender your code. `. `' We will add your hardware and software distinctiveness to `- our own. Resistance is futile.
Attachment:
signature.asc
Description: Ceci est une partie de message =?ISO-8859-1?Q?num=E9riquement?= =?ISO-8859-1?Q?_sign=E9e?=