App Installer Miniconf

FlorianFesti ffesti at redhat.com
Thu Jan 27 08:53:08 UTC 2011


As you already may have read there was a cross distro meeting in Nürnberg about a shared app installer effort.

For me  - who didn't even know about the meeting two weeks in advance - the main concern was what kind of people would be there and how we ever could get to an agreement on anything. And even if we did how could this ever be transformed into something working. It turned out that the people from the different distribution have pretty much the same mind set and a very fine sense on what they don't want to have forced onto their own and onto everybody elses' distribution. So although there is a lot of actual (meta) data that we all considerd a) difficult to create and b) worth sharing we all very quickly came to a - not even spoken out - agreement not to share any actual data or infrastructure. Instead shared data should either live upstream or every one has it's own copy and we think - and talk - about sharing or syncing later. So for now this is basically about sharing code and formats.

The second thing that became clear very soon was that if the whole project should come to life soon it needs to be build out of existing part. Sure there would be a lot of glue missing but writing things from scratch would not get us anywhere. Using a existing projects and infrastructure hopefully would make it easier to get the overall plan accepted. As a result each distribution is contributing a few pieces.

So the overall plan has 4 parts:

Static meta data that can be shiped within the repository and also works offline from a CD/DVD. This is not completely unlike the optional packages in comps but with a bit more data about the applications. The idea is to autocreate this data from desktop files - which may be enhanced a bit. We'll see how far this really works and if we need to add manually created data or not. So there is a mid term perspective to also add non GUI stuff to this but we'll go for desktop apps only in the first step.

For fancy new things like comments and ratings there will be servers where this data is stored and can be maintained by a user community online. There already is an API that covers this. The Social Desktop API "Open Collaboration Server" (OCS) has a module for "content" - applications in our case. How exactly the OCS will be used is still to be determined. This is really not my area of expertise. As far as I understood you can have per user account and friends and suggestions and what ever or just comments and ratings. This is probably up to whoever is going to actually run the service.

Screen shots will be stored on a different (http) server but linked from the OCS. As there already is screenshots.debian.net we might use that (via proxy) for the start before we setup something like that on our own. (Elite diplomats looking for a challenge can also go for an agreement for a shared server.)

These three data sources are then brought together within the client. The idea is that as there are different repositories there also are different OCS servers - either providing information for different applications or different information on the same applications. This way comments or ratings could be shared between distributions without any of them loosing control over their own data. Details being determined by the per distro or even per user configuration.
The client can be an GUI application or a server offering a web interface (IIRC one of the Mageia guys said he's going to write one). To get a GUI client there will be some steroids added to the Ubuntu Software Center which already has a similar functionality using it's own data formats and protocols.


Ok, this is the overall plan. There already is an announcement containing more technical details and further pointers:

http://lists.freedesktop.org/archives/distributions/2011-January/000411.html

Be aware that there are still a lot of people to convince (including you) and technical issues to solve to really make that happen. Take the technical details with a grain of salt. Also there will need to get more people involved. I'll give a talk on the upcoming FudCon to help with that.


Florian


PS: There are two side project that I personally consider as interesting: The first is a way to match packages between different distros. I could imagine that the package db offers links to the specs and patches of the other distributions. May be someone in this area wants to pick that up.

Second thing may be adapting the Debian tagging system (Debtags) for Fedora. With the package matching in place we could start with a quite big data set instead of zero. But there probably also is quite some work to do - and be it just porting their tools from dpkg to rpm...




More information about the devel mailing list