[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Should the X packages pre-depend on awk?



On Thu, Jul 31, 2008 at 09:27:10AM +0000, Jörg Sommer wrote:

> recently, I've installed a new system with a minimal configuration. Then
> I've imported my old package selection with dpkg --set-selections and run
> apt-get dselect-upgrade. This replaced the mawk package by the gawk
> package and installed some X package at the same time.

<snip>

> But x11-common and many other X packages use awk in their maintainer
> scripts.

<snip>

> So, must these packages pre‐depend on awk?

No, but I think we may have a bug in base-files here that no one's ever
noticed before.

base-files has a dependency on the virtual package 'awk', specifically so
that awk can be treated as "virtually essential" and packages can use it
without (pre-)depending on it.

But dependencies of essential packages are *not* part of the essential
closure; only essential packages, their pre-dependencies, and the
(transitive) dependencies of their pre-dependencies have this property.
Since awk is only a dependency of base-files rather than a pre-dependency,
it is by definition not required for the essential functionality of
base-files (== "works when unpacked but not yet configured"), so dpkg/apt
are allowed to remove awk from the system completely in the middle of an
upgrade!

So I think we have a bug here in base-files, which needs to Pre-Depend on
awk in order to actually get the semantics that were intended.

BTW, the packages backupninja, dlocate, gt5, linuxdoc-tools, and lsb-core
appear to have spurious dependencies on either 'awk' or 'mawk | gawk'.

-- 
Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
Ubuntu Developer                                    http://www.debian.org/
slangasek@ubuntu.com                                     vorlon@debian.org


Reply to: