[APPLIED] Re: [Lucid][SRU][PATCH 1/1] UBUNTU: Remove conflicts statements for compat-wireless meta packages

Leann Ogasawara leann.ogasawara at canonical.com
Fri Dec 3 16:59:21 UTC 2010


On Fri, 2010-12-03 at 06:06 -0700, Tim Gardner wrote:
> On 12/03/2010 01:51 AM, Stefan Bader wrote:
> > On 12/03/2010 03:56 AM, Leann Ogasawara wrote:
> >> On Thu, 2010-12-02 at 10:55 -0700, Tim Gardner wrote:
> >>> On 12/02/2010 10:11 AM, Stefan Bader wrote:
> >>>> On 12/02/2010 05:45 PM, Leann Ogasawara wrote:
> >>>>> On Thu, 2010-12-02 at 14:55 +0100, Stefan Bader wrote:
> >>>>>> On 12/02/2010 03:11 AM, Leann Ogasawara wrote:
> >>>>>>> BugLink: http://bugs.launchpad.net/bugs/683944
> >>>>>>>
> >>>>>>> SRU Justification:
> >>>>>>>
> >>>>>>> Examining the Lucid compat-wireless LBM meta packages it appears the
> >>>>>>> 'Conflicts:' statements in each of the debian/control.d flavours is
> >>>>>>> unnecessary. The LBM packages themselves already have the appropriate
> >>>>>>> 'Conflicts:' statements. Furthermore, they are coded in only one
> >>>>>>> location in each of the LBM packages
> >>>>>>> (debian/control.d/flavour-control.stub) which is much simpler to track
> >>>>>>> and update vs multiple separate files in each of the meta package
> >>>>>>> flavours.
> >>>>>>>
> >>>>>>> Impact: The package resolver should do the right thing given each
> >>>>>>> compat-wireless-2.6.3X package has correct 'Conflicts"' statements in
> >>>>>>> its dependencies, thus there should be no impact.
> >>>>>>>
> >>>>>>> Test Case: Test installing the LBM compat-wireless meta packages and
> >>>>>>> confirm multiple versions of the compat-wireless package are not
> >>>>>>> installable at the same time.
> >>>>>>>
> >>>>>> Apart from it seeming in various states of being commented out, when testing,
> >>>>>> was there a difference in that the meta package was started to install and when
> >>>>>> pulling the real binary package, failed? Or just as before immediately fails
> >>>>>> when trying to install a conflicting meta package?
> >>>>>
> >>>>> In my testing I saw the following:
> >>>>>
> >>>>> Selecting previously deselected package
> >>>>> linux-backports-modules-wireless-2.6.35-lucid-generic.
> >>>>> (Reading database ... 218140 files and directories currently installed.)
> >>>>> Unpacking linux-backports-modules-wireless-2.6.35-lucid-generic (from
> >>>>> linux-backports-modules-wireless-2.6.35-lucid-generic_2.6.32.26.29_amd64.deb) ...
> >>>>> Selecting previously deselected package
> >>>>> linux-backports-modules-compat-wireless-2.6.35-2.6.32-26-generic.
> >>>>> dpkg:
> >>>>> regarding .../linux-backports-modules-compat-wireless-2.6.35-2.6.32-26-generic_2.6.32-26.25_amd64.deb containing linux-backports-modules-compat-wireless-2.6.35-2.6.32-26-generic:
> >>>>>    linux-backports-modules-compat-wireless-2.6.35-2.6.32-26-generic
> >>>>> conflicts with
> >>>>> linux-backports-modules-compat-wireless-2.6.36-2.6.32-26-generic
> >>>>>     linux-backports-modules-compat-wireless-2.6.36-2.6.32-26-generic
> >>>>> (version 2.6.32-26.25) is present and installed.
> >>>>> dpkg: error
> >>>>> processing ../linux-backports-modules-compat-wireless-2.6.35-2.6.32-26-generic_2.6.32-26.25_amd64.deb (--install):
> >>>>>    conflicting packages - not installing
> >>>>> linux-backports-modules-compat-wireless-2.6.35-2.6.32-26-generic
> >>>>> dpkg: dependency problems prevent configuration of
> >>>>> linux-backports-modules-wireless-2.6.35-lucid-generic:
> >>>>>    linux-backports-modules-wireless-2.6.35-lucid-generic depends on
> >>>>> linux-backports-modules-compat-wireless-2.6.35-2.6.32-26-generic;
> >>>>> however:
> >>>>>     Package
> >>>>> linux-backports-modules-compat-wireless-2.6.35-2.6.32-26-generic is not
> >>>>> installed.
> >>>>> dpkg: error processing
> >>>>> linux-backports-modules-wireless-2.6.35-lucid-generic (--install):
> >>>>>    dependency problems - leaving unconfigured
> >>>>> Errors were encountered while processing:
> >>>>>    ../linux-backports-modules-compat-wireless-2.6.35-2.6.32-26-generic_2.6.32-26.25_amd64.deb
> >>>>>    linux-backports-modules-wireless-2.6.35-lucid-generic
> >>>>>
> >>>>
> >>>> Ok, so if I read that correctly the effect would be that the meta package gets
> >>>> installed but is left unconfigured because the binary package conflicts. While,
> >>>> I think, with the conflicts in the meta packages too, the meta package would
> >>>> reject being installed.
> >>>> So thinking further, maybe this would allow de-installing the binary package,
> >>>> then installing the meta package, but leaving any previous meta package alone?
> >>>> Which probably could be an issue.
> >>>> Which we already should have on Maverick then. Just that maybe not many people
> >>>> really do this.
> >>>>
> >>>> Stefan
> >>>
> >>> I think the effect is that, given the conflicts, neither the meta
> >>> package or its dependencies could be installed. Furthermore, I do not
> >>> think you can remove a binary package upon which the meta package is
> >>> dependent without also removing the meta package.
> >>
> >> After testing, Tim is correct that you cannot remove a binary package
> >> upon which the meta package is dependent without also removing the meta
> >> package.
> >>
> >> I've subsequently done the following series of tests for the meta
> >> package.  The first series of tests leaves the Conflicts statements
> >> applied.  The second series of tests has the Conflicts statements
> >> removed...
> >>
> >> == With the Conflicts statements applied ==
> >> 1. Install lbm-wireless-2.6.35 and lbm-wireless-2.6.35-meta (confirm
> >> they are installed via dpkg -l):
> >>
> >> $ COLUMNS=290 dpkg -l "linux-backports-modules*"
> >> Desired=Unknown/Install/Remove/Purge/Hold
> >> | Status=Not/Inst/Cfg-files/Unpacked/Failed-cfg/Half-inst/trig-aWait/Trig-pend
> >> |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
> >> ||/ Name                                                               Version          Description
> >> +++-==================================================================-================-================================================
> >> ii  linux-backports-modules-compat-wireless-2.6.35-2.6.32-26-generic   2.6.32-26.25     compat-wireless Linux modules for version 2.6.32 on x86/x86_64
> >> ii  linux-backports-modules-wireless-2.6.35-lucid-generic              2.6.32.26.29     Backported wireless drivers for generic kernel image
> >>
> >> 2. Attempt to install lbm-wireless-2.6.36 and lbm-wireless-2.6.36-meta
> >> (fails as expected, confirm via dpkg -l):
> >>
> >> $ COLUMNS=290 dpkg -l "linux-backports-modules*"
> >> Desired=Unknown/Install/Remove/Purge/Hold
> >> | Status=Not/Inst/Cfg-files/Unpacked/Failed-cfg/Half-inst/trig-aWait/Trig-pend
> >> |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
> >> ||/ Name                                                               Version          Description
> >> +++-==================================================================-================-================================================
> >> ii  linux-backports-modules-compat-wireless-2.6.35-2.6.32-26-generic   2.6.32-26.25     compat-wireless Linux modules for version 2.6.32 on x86/x86_64
> >> in  linux-backports-modules-compat-wireless-2.6.36-2.6.32-26-generic<none>            (no description available)
> >> ii  linux-backports-modules-wireless-2.6.35-lucid-generic              2.6.32.26.29     Backported wireless drivers for generic kernel image
> >> in  linux-backports-modules-wireless-2.6.36-lucid-generic<none>            (no description available)
> >>
> >> == With the Conflicts statements removed ==
> >> 1. Install lbm-wireless-2.6.35 and lbm-wireless-2.6.35-meta (confirm with dpkg -l):
> >>
> >> $ COLUMNS=290 dpkg -l "linux-backports-modules*"
> >> Desired=Unknown/Install/Remove/Purge/Hold
> >> | Status=Not/Inst/Cfg-files/Unpacked/Failed-cfg/Half-inst/trig-aWait/Trig-pend
> >> |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
> >> ||/ Name                                                               Version          Description
> >> +++-==================================================================-================-================================================
> >> ii  linux-backports-modules-compat-wireless-2.6.35-2.6.32-26-generic   2.6.32-26.25     compat-wireless Linux modules for version 2.6.32 on x86/x86_64
> >> ii  linux-backports-modules-wireless-2.6.35-lucid-generic              2.6.32.26.29     Backported wireless drivers for generic kernel image
> >>
> >> 2. Attempt to install lbm-wireless-2.6.36 and lbm-wireless-2.6.36-meta
> >> (fails as expected, confirm with dpkg -l):
> >>
> >> $ COLUMNS=290 dpkg -l "linux-backports-modules*"
> >> Desired=Unknown/Install/Remove/Purge/Hold
> >> | Status=Not/Inst/Cfg-files/Unpacked/Failed-cfg/Half-inst/trig-aWait/Trig-pend
> >> |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
> >> ||/ Name                                                               Version          Description
> >> +++-==================================================================-================-================================================
> >> ii  linux-backports-modules-compat-wireless-2.6.35-2.6.32-26-generic   2.6.32-26.25     compat-wireless Linux modules for version 2.6.32 on x86/x86_64
> >> in  linux-backports-modules-compat-wireless-2.6.36-2.6.32-26-generic<none>            (no description available)
> >> ii  linux-backports-modules-wireless-2.6.35-lucid-generic              2.6.32.26.29     Backported wireless drivers for generic kernel image
> >> iU  linux-backports-modules-wireless-2.6.36-lucid-generic              2.6.32.26.29     Backported wireless drivers for generic kernel image
> >>
> >> == Overall Analysis ==
> >>
> >> The only discrepancy that you'll notice is for the meta package which
> >> has the Conflicts statement removed (ie. proposed patch applied), it
> >> doesn't install the meta package, but does leave it Unpacked:
> >>
> >> iU  linux-backports-modules-wireless-2.6.36-lucid-generic              2.6.32.26.29     Backported wireless drivers for generic kernel image
> >>
> >> The meta package which leaves the Conflicts statement applied (ie. don't
> >> apply proposed patch), it doesn't Unpack:
> >>
> >> in  linux-backports-modules-wireless-2.6.36-lucid-generic<none>            (no description available)
> >>
> >> So leaving the Conflicts statement applied in the meta package does
> >> leave your system in a slightly cleaner state.  However, LBM is an
> >> elective install, and thusly I assume any user who is comfortable
> >> installing LBM should be comfortable enough to clean up in the event
> >> they try to install multiple LBM compat-wireless meta packages.  But I
> >> understand if the majority feels this discrepancy is enough to result in
> >> the rejection of this SRU for both Lucid and Maverick.
> >>
> >> Thanks,
> >> Leann
> >>
> > Up to now we don't have any majority (at least not from the number of people
> > alone). There is Tim and me and you in between. :) I am sort of also in between.
> > I see the maintenance advantage of not having to care about the conflicts in the
> > meta package. My main concern was that this may lead to situations with
> > dependencies messed up but your testing removes that.
> > So the only change is the half-installed meta until you clean up. I guess this
> > is not a big issue. On the other hand there likely will be the valid question of
> > "why do you change things if they are not broken" (even more as the change could
> > turn things into slightly more brokenness depending on the point of view).
> > Especially doing that change for an LTS. But, as you say, the package is an
> > elective install.
> > So a little bit more on the ack than then nak side here. I guess you are
> > similar. So I think if nobody steps up here and voices issues, lets do it.
> >
> > -Stefan
> 
> The maintenance benefits of removing the conflicts statements far 
> outweigh the noise of an unpacked package, something that an 'apt-get 
> install -f' will quickly clean-up.
> 
> Without actually having tested synaptics, I'm betting it won't even let 
> you get to the point where you even _notice_ you have an unpacked package.
> 
> rtg

Given the above feedback from Stefan and Tim, I've gone ahead and
applied this to Lucid linux-meta.

Thanks,
Leann





More information about the kernel-team mailing list