Dealing with the Unity stuff (lenses, scopes)

Stéphane Graber stgraber at ubuntu.com
Mon Feb 20 22:59:04 UTC 2012


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Hello,

Sorry for the pretty long e-mail :(

After an interesting meeting today with the Technical Board regarding
Canonical's Community Team proposed policy change for the Unity lenses
and scopes, I tried to take a few minutes to think about the actual
problem rather than the current proposed solution.

So the problem is that there supposedly are 60 or so lenses/scopes
that absolutely want to make it to Ubuntu 11.10's extras repository
but can't because the scopes depend on the lenses and they aren't made
by the same author. (I have an hard time believing it's the case for
all of them, but well ...).

The proposed solution so far is to simply allow such dependencies at
the cost of:
 - Making removing a lens a nightmare (as we'll need to upload an
empty lens AND do the same for all the rdepends)
 - Making it look weird and confusing to the user (who'll suddenly end
up having possibly 10 packages show up in the software-center but that
are marked as being empty placeholder packages)
 - Making reviewing possible overlaps a bit harder as instead of just
checking against the archive, we'd now also need to check against
what's in extras.
 - Possible breakage if a lens is updated breaking the scopes
(unlikely but possible, for example if the path is changed).

As I believe I made it pretty clear, I'm against that solution as it's
a hack and a pretty ugly one of that. It'd additionally give a bad
precedent that I'm sure will be used to try and push more packages
depending on each other.


Thinking about it some more, especially thinking about the current
work the ARB is doing for pretty much everything that gets into the
queue, I believe the following proposal would be reasonable.

For the specific case of Unity lenses and scopes, the ARB will be
maintaining the source package. There will still be a single source
package per lens and all its scopes, with a binary package for each of
them.
The developers will submit through MyApps either a lens+a bunch of
scopes or just additional scopes for an existing lens.

The ARB will then merge these extra scopes in the existing source
package, vote on the addition and upload.


To ensure a proper removal of an extra packages, I'd propose we upload
a new "arb-blacklist" package that's a dependency of all other extras
packages but itself isn't an app and so won't appear in the software
center. If we need to remove a package, we'll just add it to
arb-blacklist's Conflicts list and remove the package from the PPA.


I believe this proposal should make little work difference for the
ARB, if not actually making it easier as we effectively would just be
reviewing 2-3 files, dumping them in a directory and uploading.
Only the initial upload (the lens) would need some packaging work that
should be mostly copy/paste from another.

This is assuming all the lenses/scopes we'll be getting are similar to
our current ones, which are just a few python scripts without any
particular packaging work, just copying the file at the right location
is enough.

One downside though is the need to upgrade all of them every time we
do a change and the lack of clear changelog, though lenses/scopes are
small enough that it really shouldn't be an issue.



This is just a proposal and I wanted to make sure it's on the list
before the meeting on Friday. I really encourage as many members as
possible to make it to the meeting so we can have the opinion of all
the ARB.

- -- 
Stéphane Graber
Ubuntu developer
http://www.ubuntu.com
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iQIcBAEBCgAGBQJPQtA4AAoJEMY4l01keS1nrCsP/jnPFYpn3vmiAl7MYbtqAeG2
jHdChEw7JrmXCbdRwm/ehU1saE7YBDMmRl0pchmg9g8WoYqtji4JIQ1iseZV42GZ
R6UFGvKT7gbd9fWy2Ff81/TEbF5u/guv8v9bVZAFDEdiVOTZXZFapTxyxkcqdW7P
zjc/55WvCJZKVL0K84y5S8rTNs9xdafHbXqW592hBCFBYgdwe/sf6S2axiTrIvkQ
P1kjB9DUU2Z1v0x1/B7PWrw08JAJBHAoB/+ojinOsLxP5EN0+l/57ot7VC9Wenyg
nyONJ3q65AlzSotC/sP3NCYp1x7xAGnxNvjWENoHeVx8ngxVYazswBVQgup9YpxE
BDFq/bGQFmxK653H26OWt9XQ8VRCbCh9OpNije0r263ePhQWCe19So1QZDATUem3
R2F7qL2IXv/kpz9h1VyVIvgIX5/PPtmdT3+uxZ3M8CuTS4RaflN91yI+VP3+Fh3M
mX95qKks7zLxbhEpQdDCJo7j/gM0ceJoG1vroLDrPpbgBJVoi4c8fnAUDV+GKRnv
mdiPM5qkZwbEeboEQOmyCLt5ZXl25y82yfFmiyCV6ROyWCAaaEt2DNUIXGiGf4Ed
rl+ck6e18Ut5Dh1g8cYSvbNSgoKcmbOZ3z0IbIlE1o/PaZxhHEgC8rkaJVRH3qFb
BSAVlYft3nNtzLed4No+
=9i6C
-----END PGP SIGNATURE-----



More information about the App-review-board mailing list