SUPER KLIK
From openSUSE
Imagine a .rpm that you can run directly without installing it: that's .cmg
klik developer probono has offered to integrate this into SUSE.
klik website - IRC channel #klik on irc.freenode.net
This is a proof of concept and part of SUPER as it is experimental and certainly not "officially" blessed by Novell.
If Novell ever does a consumer product, then it will have to have something like this or just this.
Repository with pre-built and tested cmg files [http://opensuse.linux.co.nz/klik/10.0/]
Contents |
Brainstorming
How do cmg files work
If you want to run a new application, you simply download a .cmg file, a compressed image file that contains the application together with everything that is needed to run it. Basically it is a compressed filesystem image containing an AppDir.
A .cmg file is an AppDir, packed into a cramfs filesystem image. AppRun autmatically mounts the cramfs and runs the application. Afterwards, it unmounts again.
This could revolutionize Linux application packaging. It's click-and-run as it was meant to be ;-) And it's available today!
How to use
If you want to try:
1. Open and quit firefox
2. Press Alt-F2 and paste:
wget klik.atekon.de/client/install -O - | sh
3. In the konsole:
su (password) sh klik-cmg-install-root
4. Done. The following applications have been tested with OpenSUSE SUPER KDE (unfortunately this wiki doesn't link them, so so have to enter the klik addresses in Konqueror or Firefox or Alt-F2:
- klik://amule - eMule compatible client
- klik://aim - Official AIM client
- klik://pente - Board game
- klik://xdemineur - Minesweeper game
- klik://lmemory - Memory game
- klik://xmule - Another eMule compatible client
- klik://skype - Skype client
- klik://krita - KDE image editing application
- klik://opera - Web browser
5. You find each application on your desktop in a cmg (Compressed Application Image) file each. You can move and copy those just as you want. klik leaves temporary files in /tmp/klik, you can delete those afterwards. Remember, the whole application and all files it needs is contained in one single file per application.
6. The cmg file is either downloaded from http://opensuse.linux.co.nz/klik/10.0/ or created on-the-fly on the client machine.
Advantages
The advantages are numerous:
- Easy: Every application is one single file.
- Works instantly: No messing around with installers or package managers.
- Flexible: Applications can be stored and run from anywhere, including CDs and USB sticks.
- Secure: No need to be root in order to try out new software.
- Clean: No way to mess the (package) system by running new software.
- Efficient: Applications and all their files are stored compressed at all times.
- Fast: Just download and run, no need to install.
- Transparent: Total transparency about what is installed where (one .cmg file per app)
- Unintrusive: If something doesn't work, simply remove one .cmg file and everything is reverted
What is currently there technically
The hard part about .cmg compressed application images is to create them. There are thousands of applications out there that need to be repackaged as .cmg files. Fortunately, there is an advanced technology available that can automate this process: klik. This has been working for quite a while (on klik.atekon.de, which was originally designed for use with Live CDs), and the general approach works quite well with OpenSUSE, too.
What needs to be done to get it into SUSE
One should carefully distinguish between the core Operating system (the "Base System") and add-on applications. While .cmg is ideal for add-on applications (which the end user want to run without the need for installing), it is not a suitable format for the Base System.
SUSE could come as a bare-bones base system plus a collection of .cmg files. The applications could be run directly from the CD and/or be copied to the hard disk.
This approach implies:
- Commonly required libraries and interpreters should be part of the base system, e.g., libstdc++5, a Java-compatible interpreter, libgtk, Python-QT, Python-KDE, Tcl/Tk, gambas and kommander runtimes,...
- Applications can be left out of the base system, e.g., OpenOffice.org, Firefox, GIMP
Integrate http://www.knoppix.net/forum/viewtopic.php?t=21173 - this will remove the need for setting up fstab for klik, and it will remove the limitation to 7 apps at a time
Any ideas to integrate while we are at it
I am a Digikam user and also a kipi-plugin developer, recently the digikam team released the klik://digikam-latest using klik. Kipi plugin integrated with digikam and other apps by storing the libraries at the globally known place(something like /usr/lib/ or somewhere), now when digikam is installed using klik the kipi installed using rpm or source installation won't be accessible. Also this kipi-plugins cannot be possible released using klik installs the way they integrate in to digikam and other apps.
So the point of my comment is is there any way that the locally installed application (using klik) use the globally accessible libraries? also otherwise allow the libraries to be installed so that they are installed within the local installed apps root? you can look at both the apps in kde extragear and chat with the devels at #digikam




