[ubuntu-x] Testing enablement mechanics (or are there better solutions?)
Christopher James Halse Rogers
raof at ubuntu.com
Fri May 18 08:14:01 UTC 2012
On Wed, 2012-05-16 at 14:25 +0200, Maarten Lankhorst wrote:
> Hey,
>
> Doing some more testing I haven't found a good way to do this yet. I
> tried doing things similar to the way the xorg rename script is going
> to work, and I just can't get a good way of automatically forcing a
> upgrade. The official way of upgrading to a renamed package is to
> provide a 'transitional' package that's empty and just depends on the
> new name, and it would the only way to make this work without breaking
> everything. However in this case I don't see an advantage to just
> using exactly the same names.
The advantage is that we can have multiple stacks in the archive at once
- Q, R, S, and T. The plan was to support each of those stacks in 12.04
for as long as the release they're based on is supported.
>
> For example there are some non-trivial depends on x11proto packages:
> $ apt-cache rdepends x11proto.*
> The most important one being x11proto-core-dev. However in the generic
> case it will stay backwards compatible, so they will all have to be
> reviewed to make sure existing code won't break.
Those should be safe, but they will indeed need review.
>
> Some more digging even finds a versioned depends on xserver-xorg-core,
> so renaming won't work. virtualbox-guest-x11 depends on Xorg >= 7.
That sounds like virtualbox-guest-x11 should also be renamed. After
all, it is a DDX; it'll need to be backported/rebuilt against the new
stack.
>
> Similarly, some input and video drivers have dependencies:
> gpointing-device-settings depends on input-synaptics, open-vm-toolbox
> on vmmouse, xserver-xorg-input-wacom has ubuntustudio-graphics and
> kde-config-tablet, bunch of others too.
Stupid packages ☺. Are any of these dependencies versioned? Can they be
satisfied by the renamed packages Provide: ing their un-renamed package?
Alternatively, if it's a small set of packages we could SRU them to
remove the dependency.
> More fun is that if you try to install the unrenamed package, your
> package manager will solve the conflict by removing the enablement
> package and downgrade to it. This seems like a recipe for disaster and
> not really suitable as a working solution.
As long as users need to *deliberately* install the un-renamed package I
think this is ok. We have a limited ability to prevent people from
shooting themselves in their feet.
This was, however, the sort of thing that I was concerned about in the
session.
> Also the enablement package won't automatically upgrade to newer
> versions, so you will stay on lts-q for the rest of the release unless
> you manually force an upgrade.
We should be able to handle that when the lts-q stack drops out of
support by uploading a new lts-q metapackage that depends on lts-t (or
whatever we decided the upgrade path was). Obviously this needs testing,
though!
>
> ppa would be fine for testing, but I don't think it's set up to have
> millions of computers pull updates from it, and companies want to have
> their own mirroring set up to save unnecessary bandwidth. Would it
> really be impossible to poke the launchpad devs some more for this,
> since it seems to be the only clean solution to have either only the
> stable stack in main and an updated stack in backports (which can be
> held back on a large scale with pinning as needed) or the use of
> multiple pockets.
>
> I don't believe we should go with the rename route at this point,
> until we figure out a way to do it cleanly and automatically.
>
> I created 2 test repos, enable the normal one and the lts-q one for
> testing, lts-r is unused atm:
> https://launchpad.net/~mlankhorst
>
> You can force installing dummy-enablement to the original version, and
> simulate what would happen if you upgrade to the current version, and
> see it's going to be held back. Furthermore dummy-dev will fail to
> install after upgrading and won't suggest dummy-dev-lts-q or anything.
>
> ~Maarten
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: This is a digitally signed message part
URL: <https://lists.ubuntu.com/archives/ubuntu-x/attachments/20120518/09ab7ec5/attachment.pgp>
More information about the Ubuntu-x
mailing list