Re: [Deskbar] Pushing handler updates from a central repo



On Wed, 2006-04-26 at 23:17 +0200, Mikkel Kamstrup Erlandsen wrote:
> * Should distros be allowed to overwrite the repo url, to provide?
> Should they be encouraged/discouraged to do so?
> 

Overwrite, no way to prevent that.
I think we should just maintain our own repository on the website. If
distro want to ship their handler, they can do it in their packaging, or
patch the sources to add more than one source to get the plugins.

I think we should support a list of repositories so this is possible.

> * Each version of deskbar should have a unique repo (to avoid api
> mess)
> 

We are talking about each major version. We are committing to a stable
API for each 2.X version. Minor version won't break api in an
incompatible way.

I suggest having a 2.14/ and 2.16/ subdirectory on the server

> * Are updates stored in ~/.gnome2/deskbar-applet/handlers or in
> $PREFIX/lib/deskbar-applet/handlers (for prefix typically being /usr).
> Storing updates in home folders can become a pain for us and sysadmins
> alike. Requiring root privs seems like a bad idea on the other hand. 

We will install downloaded handlers in the home dir, it's the way it
works for all other apps, and in the unix world afaik.

> 
> * Should updates be automatic in the background or manual? I hope
> manual, since we don't want even slower sartup times.
> 

I propose updates to be automatic, and non-blocking so they won't slow
down the startup and it allows us to push updates and fixes. People
never manually update anyway and this is a big problem.

Let's see this as a RSS feed of handlers that we provide on the website,
if a new item is newer than another one, we replace it.

> * Security? Do we need to start signing handlers..? Maybe not - I'm
> kinda groggy atm... 
> 

No, overkill, people are responsible for any third party modules they
install. We maintain an official repository, but it's by no mean
guaranteed to work (as usual with software)

> 
> > * Are updates stored in ~/.gnome2/deskbar-applet/handlers or in
> > $PREFIX/lib/deskbar-applet/handlers (for prefix typically
> being /usr).
> > Storing updates in home folders can become a pain for us and
> sysadmins
> > alike. Requiring root privs seems like a bad idea on the other
> hand. 
> 
> They definitely shouldn't require sysadmin intervention to install.
> What
> might help is 1) if the handlers are versioned so that you can have an
> updated version of a global handler installed locally, and 2) have the
> version and location (local/global) of the handler listed in the
> preferences pane.
> 
> You also have to handle the situation whereby some package has been
> updated and the global handler is now newer than the local handler.

Handlers will have a simple number to indicate version. The higher the
number, the more recent the handler and thus the latest should be used.
If a global and local package provide the same class, the one with the
higher number should be used.

It would be also easier for same handlers to be in same .py file. The
version can be added in the HANDLERS structure.

Why did you prefer manual updates ?

To summarize:
* Hardcoded list of web repositories (by default set to one element)
* Web repository for each major version of deskbar + stable api for each
major release
* Auto-update of remote handlers, taking latest remote version
* Local handlers are not auto-updated, unless the user choose it
* Auto-remove old handlers to not leave cruft.
* missed anything ?

Raf




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]