Re: Think I found errors in apt-get, need help with wine package
On Tue, 2004-11-30 at 01:59 -0800, Scott Ritchie wrote:
> My package is a rather unusual change, so it wouldn't surprise me if
> I've uncovered a few bugs in apt-get. I know for certain I've found at
> least one.
Not that haven't already been reported, afaics.
> This doesn't make any sense, since the package replaces libwine-twain as
> well. dpkg should be removing them both.
It looks like dpkg is parsing the Replaces/Conflicts headers in the
order in which they're written. Does it work if you move libwine-twain
before libwine in those headers?
If not, turn on dpkg's debugging features and examine the output.
> The second thing to notice is that when I run apt-get install wine I get
> the following:
>
> Reading Package Lists... Done
> Building Dependency Tree... Done
> Suggested packages:
> wine-utils winesetup binfmt-support
> The following packages will be REMOVED:
> libwine libwine-alsa libwine-arts libwine-dev libwine-jack libwine-nas
> libwine-print libwine-twain wine-doc winesetuptk
> The following packages will be upgraded:
> wine
> 1 upgraded, 0 newly installed, 10 to remove and 0 not upgraded.
> Need to get 13.5MB of archives.
> After unpacking 3855kB disk space will be freed.
> Do you want to continue? [Y/n]
>
>
> Two things are wrong here. For starters, the suggested packages being
> displayed are wrong - those were only suggested in the old version of
> the package, and are now obsolete (and even conflicted) by the new
> version.
Yep, that would be
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=243943 and the bug
merged with it. (As a 30-second look at the bug page would have shown,
fwiw).
> The second is that, although apt is removing libwine-dev, it
> is not replacing it with wine-dev.
That's to be expected, you appear to be misunderstanding what a
Replaces: header does. The purpose of the Replaces: is to say "if I
install wine-dev, then remove libwine-dev first". It does *not* mean
"automatically install wine-dev if libwine-dev is removed".
In the apt-get invocation you quoted, libwine-dev is being remove due to
the fact that it depends on libwine, not for any reason associated with
the new `wine-dev' package. If you want both installed, then you either
need to `apt-get install wine wine-dev' or `apt-get install wine-dev',
which will automatically pull in wine due to the dependency.
> So, what's the verdict: Bug in my package control file, bug in apt, bug
> in dpkg, or combination of all three?
A known bug in apt, a probable feature of dpkg, and a bug in your
understanding, afaics.
Hope this helps,
Adam
Reply to: