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

dpkg and dependencies



Ian Jackson and I have had several exchanges by private email 
having to do with the dependencies in dpkg, following my bug reports:
#4262 (dpkg-source requires cpio) and #4263 (dpkg-source requires patch).

We have now come to an impasse.  Ian suggested if I were to bring this
to debian-devel "perhaps someone there will set you straight."

Here are the arguments:

I> cpio is only required by dpkg-source, and not to install packages.

I> I've added it to Suggests and mentioned it in the Description.  This
I> will be in 1.3.10.

   (ditto for patch.)

S> Now I'm confused.  I would have thought that since a command within the
S> dpkg package requires cpio in order to operate, that the whole dpkg package
S> would be said to "Depend" on cpio.  

I> No.

S> This is not my reading of the programmer's manual, which says:
S> "Suggests:
S> This is used to declare that one package may be more useful with one
S> or more others.  Using this field tells the packaging system and the
S> user that the listed packages are be [sic] related to this one and can
S> perhaps enhance its usefulness, but that installing this one without
S> them is perfectly reasonable."

I> The manual is correct.  I believe dpkg is in accordance with it now.

S> It is unreasonable to install software (dpkg-source) which won't 
S> function at all without additional files.  

I> So are you suggesting that I should split dpkg up into half a dozen
I> packages ?  Since debian-changelog-mode.el won't work without Emacs I
I> have to make dpkg depend on Emacs ?  Since you can't use
I> dpkg --print-architecture to determine the build architecture unless
I> you have GCC and libc installed I should make dpkg depend on those ?
I> Since dpkg's NFS installation method won't work without NFS loaded
I> into the kernel I should refuse to allow dpkg to install properly if
I> you don't have that configured in ?

S> Yes.

S> In any case, what is the mechanism to warn the user that only 1 
S> (or perhaps 0, 2, or some other number) of components of a package 
S> he's got installed ought to be expected to work?

I> Suggests, plus the Description, and the manuals for the package
I> components if this is thought necessary.

S> I find this logic absurd.  If it is "reasonable" to install software that
S> won't work, then what is the reason?  Just to remind oneself of its
S> existence?  

S> Debian users should be told during the initial installation they will
S> have 2 choices:
S> -- realize that some, most, or perhaps all of the software they just 
S>    thought they installed won't work at all, and that they'll need to read 
S>    every doc and every man page and every info page associated with the 
S>    package in order to identify the components that won't work, or 
S> -- follow religiously every suggestion made by every package.

S> I doubt this is the common understanding of the word "suggests", except
S> perhaps in the world of organized crime.

S> The package dependency mechanism does little good if there is not a common
S> understanding and use of it.


OK, will someone please "set me staight"?

Susan Kleinmann



Reply to: