I suspect I will get flamed for this heretical suggestion, and I did search around the forum to see if it had been suggested before but I could find no signs.

Let me start by saying that I *do* get the Klik concept. It's as startlingly simple as it is to use. Amazing and it's a real gem in the Linux crown!

Now, onto the thing:
What if Klik could search the system for libraries (and whatnot) that are *already* installed?
If so:
1. The stuff that needs downloading could be lessened.
2. You could have a more efficient way of installing software (less hdd space used etc)

Example:
A klik URL is clicked
It fetches its list of ingredients.
It checks the system to see what is *already on the system*
It makes sym-links within the .cmg to the system files already available.
It fetched those files that *are not there*
It runs the app.

This would cover the situation when you move the .cmg file to another system and that system does not have all the needed libraries. The Klik would then *freshen* the .cmg file with the needed stuff.

You could also have a .cmg that contains the common libraries (and it can grow per klik) so that the other klik files would sym-link into it for their common libraries. Common libraries could be marked as such over time (lke Qt and GTK etc) so that they don't get downloaded again and again and again.
(In fact libraries that are already on the system could be *copied* into the common.cmg so that they can move wherever it goes.)

This way, you would still divorce the klik apps from the system, but you would maximise the sharing that could be done and increase the efficiency and reduce the bandwidth needs.

I do see that it begins to blur with yum or apt-get at this point, but it's still as simple as a klik URL and it's still clean and separate from your actual system's files.

You could also produce Klik DVDs and CDs with loads of "run-anywhere" (on Linux) software on them because they would not ALL be reproducing the same shared code again and again.

Well, that's my 00001010 cents.