[maemo-developers] maemo-developers Digest, Vol 59, Issue 25

From: Marius Vollmer marius.vollmer at nokia.com
Date: Fri Mar 26 13:08:22 EET 2010
"ext urho.konttori at gmail.com" <urho.konttori at gmail.com> writes:

>> I don't think the centralized nature is a problem here. Our current
>> processes and implementations might not scale well enough, but
>> getting rid of a centralized repository will not help much, if at
>> all.
>
> If we would actually start supporting repository delta files, then you
> would be at least partially right.

Te delta files would cut down on the communication volume (which is
probably significant and should be done), but the amount of data that
HAM has to sift through would not decrease.

> At the moment, one of the big issues in scaling repositories is the
> sheer size of the databases.  Sure, we do ok now, but imagine the
> iphone app counts.  Keeping such repo in sync on the device is insane.

Yes, and we are not even going to try.  But instead of giving up on the
idea of keeping packages indexed in a central place, we fix our tools to
cope with the size.  Roughly, everything that happens on the device must
be independent of the number of available packages.

>> The resources needed to maintain a centralized repository can be quite
>> easily parallized to make the repository itself scale: there can be many
>> buildbots, many mirrors, a CDN, many testers, and many maintainers.
>
> Sure, but still, users only need some dozens of apps from the repo,
> while devices are synching repo db totally unnecessary for the other
> hundreds (or thousands ... or more) packages. This doesn't scale.

Yes, but accessing a big repository with a device is a very separate
issue from maintaining the content of that big repository.  I am just
trying to make it clear that we can get away with fixing our devices, we
do not need to give up on big repositories.

>> For HAM performance, the important variable is the number of available
>> versions, not the number of repositories. You can regain performance by
>> reducing the number of available packages and versions. Forgetting
>> about repositories altogether and installing everything from standalone
>> .debs is one way to do that, but it's not a good way.
>
> Sure, but many repositories allows the device to not to have to even
> ever care about those thousands of apps you couldn't care less about.

True, but now we are getting into the terminology grey area.  I would
prefer to call this "showing only conistent subsets of a repository to
apt", not "distributing the packages over many repositories".

For example, there has been the idea of splitting the big repo into
smaller ones based on the first letter of the package name to get some
scalability.  You might get some, but in my opinion we can do much
better than that.

> Still, central repo is mandatory for shared libraries, but not for the apps
> built on top of them.

We will have decent support for installing standalone .deb files as
well.

>> - A maemo.org specific 'discovery client'. It interfaces with
>>   downloads.maemo.org over a custom protocol for browsing available
>>   applications. [...]
>
> I didn't even know of this.  Is it community or nokia effort? Can we
> get url to the code repo?

I think it is this:

    https://garage.maemo.org/projects/appmanager/
    https://garage.maemo.org/plugins/ggit/browse.php/?p=appmanager
More information about the maemo-developers mailing list