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?=