[Oneiric-Foundations-Topic] networked client app updates
Scott Kitterman
ubuntu at kitterman.com
Thu Apr 21 15:29:22 UTC 2011
On Thursday, April 21, 2011 11:14:17 AM Allison Randal wrote:
> The Ubuntu One developers have an interesting technical conundrum that
> would benefit greatly from all of your thoughts. They've started
> collecting ideas, and would like to collect more, and hopefully settle
> down on a plan for the next cycle in a UDS session.
>
> The basic problem is in keeping a networked client in sync with a
> networked service. In the wider world this is generally handled by
> releasing an update for the client whenever the service changes. Ubuntu
> One has been tying the development cycle for their service to Ubuntu's
> six month cycle, so client feature updates only happen in new distro
> releases. But, even that doesn't quite work, because once you change the
> service then clients on older distro releases (especially LTSs) still
> need the feature updates to connect to the updated service. Sometimes
> these feature updates depend on newer versions of libraries than exist
> on the older distro releases.
>
> The category of lightweight client apps for a remote service is becoming
> more and more common, so ideally a solution for Ubuntu One will be one
> we can recommend to all app developers. Here's a grab bag of
> brainstorming so far:
>
> - Only ship a very small shim for the client on the CD (advantage of
> small footprint), and do the rest of the install the first time someone
> uses Ubuntu One.
>
> - Ship Ubuntu One client in extras, backports, commercial, or partner
> repository. (Better if it's on by default than requiring a manual step
> to enable the repository.)
>
> - Ship Ubuntu One client (only) in a PPA.
>
> - Implement "self updating" within the client, similar to
> Firefox/Thunderbird (on non-packaged installs). This is the most complex
> technically, so not the most appealing.
>
> - Pull some update dependencies into /opt/.../UbuntuOne/lib, to keep
> them completely isolated from the rest of the system, but available to
> the Ubuntu One client.
>
> Do you all have more ideas or suggestions?
Go through the tech board (as Landscape did) and show your QA/updating process
is sufficiently robust to be able to ship needed feature updates in *-updates.
While this doesn't scale well and doesn't work at all for clients without
someone working on updating specifically for Ubuntu, for Ubuntu One it should
be doable. The larger issue is updates to client libraries that have other
users.
Scott K
More information about the Ubuntu-devel-discuss
mailing list