Programme installieren mit Klik

Aus LinuxUser 07/2006

Programme installieren mit Klik

Hin und mit

Klik macht möglich, wovon viele Anwender träumen: Es installiert Software auf einen Mausklick und ohne Abhängigkeitsprobleme.

Der Weg zur begehrten Software kann unter Linux machmal steinig sein. Enthalten die Repositories der Distribution das gewünschte Paket nicht, hilft eventuell ein Blick ins Internet. Oft bietet die Homepage der Lieblingsanwendung kein passendes Binärpaket an – dann hilft nur der Griff zu Quellcode und Compiler. Noch härter trifft es die Anwender von Live-Distributionen: Hier überleben nachträglich installierte Programme den Neustart nicht, es bleibt nur die Sicherung der herunter geladenen Pakete und die Neuinstallation nach jedem Neustart.

Derartige Probleme kennen Apple-Anwender nicht. Sie arbeiten mit “Bundles”: Dabei handelt es sich um nichts anderes als ein komprimiertes Archiv, das eine komplette Anwendung samt aller notwendigen Bibliotheken beherbergt. Ein Mausklick auf das Bundle genügt, und schon startet das darin enthaltene Programm. Alle dazu nötigen Aktionen und Abläufe übernimmt das Betriebssystem automatisch im Hintergrund.

Da eine Anwendung nun genau einer Datei entspricht, lassen sich auch verschiedene Versionen eines Programms nebeneinander betreiben. Zudem verschwinden keine Programme und Bibliotheken mehr auf Nimmerwiedersehen in den Tiefen des Verzeichnisbaumes. Auch die Deinstallation vereinfacht sich drastisch: Um eine Anwendung wieder loszuwerden, zieht man das entsprechende Bundle einfach in den Papierkorb.

Will haben!

“Diesen Komfort wollen wir auch unter Linux”, sagten sich die Initiatoren des Klik-Projektes [1] und entwickelten kurzerhand den KDE-based Live Installer for Knoppix+Kanotix. Wie der Name bereits andeutet, dachten die Erfinder primär an einen Einsatz auf Live-CDs. Mittlerweile ist das ebenso geniale wie einfache System aber auch für viele andere Distributionen zu haben. Dazu zählen derzeit Suse Linux 10 und höher, Fedora Core ab Version 4 sowie alle Debian-basierten Systeme, wie etwa (K)Ubuntu oder Knoppix und dessen Derivate. Beim verwendeten Desktop ist Klik nicht ganz so wählerisch: Zwar war es ursprünglich ganz auf KDE geeicht, kommen inzwischen aber auch mit Gnome zurecht.

TIPP

Um Klik unter (K)Ubuntu zu betreiben, müssen Sie einige Pakete nachrüsten. Dies erledigen Sie am schnellsten auf der Kommandozeile mit dem Befehl:

sudo apt-get install binutils?
 libstdc++5 rpm

Unterstützt Ihre Distribution Klik, benötigen Sie als nächstes den Klik-Client. Er holt später die Anwendungen aus dem Internet und sorgt für deren reibungslosen Start. Jeder Benutzer, der später Software aus Bundles nutzen möchte, muss den Client gesondert einrichten. Dazu dient der Befehl:

# wget klik.atekon.de/client/?
install -O -|sh

Dies kopiert den Klik-Client in Ihr Home-Verzeichnis, bereitet den Desktop auf das neue System vor und passt – nach Abfrage des Root-Passworts – einige systemweite Einstellungen für den Betrieb von Klik an. Hat die Installation geklappt, erscheint ein entsprechendes Bestätigungsfenster. Anschließend öffnet sich der Web-Browser mit der Klik-Homepage. Hier finden Sie ein umfangreiches Archiv mit Klik-fähigen Anwendungen (Abbildung 1).

Abbildung 1: Auf der Klik-Homepage finden Sie ein umfangreiches Software-Archiv, sortiert nach Kategorien.

Abbildung 1: Auf der Klik-Homepage finden Sie ein umfangreiches Software-Archiv, sortiert nach Kategorien.

Derzeit umfasst der Katalog über 4000 Programme, neue kommen ständig hinzu. Haben Sie eine interessante Anwendung gefunden, genügt ein Mausklick auf den Link und schon wandert das Programm auf Ihre Festplatte (Abbildung 2).

Abbildung 2: Folgen Sie auf der Klik-Homepage dem Paketnamen, so erscheint eine Seite mit Programminformationen, sowie einem Link, über den man das entsprechende Bundle beziehen kann. Hier im Bild ist die Informationsseite zu Xvier.

Abbildung 2: Folgen Sie auf der Klik-Homepage dem Paketnamen, so erscheint eine Seite mit Programminformationen, sowie einem Link, über den man das entsprechende Bundle beziehen kann. Hier im Bild ist die Informationsseite zu Xvier.

Deinstallation 

Um das Klik-System wieder loszuwerden, steht ein Deinstallationsskript zur Verfügung. Sie starten es auf der Kommandozeile mit dem Befehl:

wget klik.atekon.de/client/?
uninstall -O -|sh

Zu Redaktionsschluss war es jedoch nicht in der Lage, alle vom Installationsskript vorgenommenen Änderungen wieder zurückzunehmen. Es entfernte lediglich die beiden wichtigsten Dateien:

  • $HOME/.klik (der eigentliche Klik-Client)
  • $HOME/.zAppRun (wird ausgeführt, wenn man ein Bundle anklickt)

Für eine erfolgreiche Deinstallation nicht zwingend erforderlich ist es, einige weitere vom Installationsskript manipulierte Dateien auf ihre ursprünglichen Inhalte zurückzusetzen. Das gilt es wie erwähnt derzeit händisch zu erledigen, betroffen sind folgende Dateien:

  • $KDEHOME/share/services/klik.protocol (klik://-Protokoll)
  • $KDEHOME/share/applnk/klik/klik.desktop (klik://-Protokoll)
  • $KDEHOME/share/applnk/klik/.directory (K-Menü-Eintrag)
  • $KDEHOME/share/mimelnk/all/cmg.desktop (KDE erkennt .cmg-Dateien)
  • $KDEHOME/share/applnk/.hidden/AppRun.desktop (Klik verarbeitet .cmg-Dateien zuständig)
  • /etc/fstab (Verzeichnisse in /tmp/app, in die Klik die Bundles zur Laufzeit einhängt)

Adressen

Neben dem Anwendungskatalog gibt es noch eine andere Möglichkeit, an eine Klik-fähige Anwendung zu gelangen: Während der Installation hat der Klik-Client den Web-Browser um das Protokoll klik:// bereichert (siehe Kasten “Klik im Browser”). Das macht die Installation eines Programms so einfach wie das Aufrufen einer Internetseite.

Geben Sie beispielsweise im Browser die Adresse klik://xvier ein, so nimmt der Browser automatisch Kontakt mit der Klik-Homepage auf und lädt die Anwendung xvier herunter (Abbildung 3). Dabei handelt es sich um eine Umsetzung des Spiels “Vier gewinnt”, die sich aufgrund ihrer geringen Größe hervorragend für einen ersten Test eignet.

Abbildung 3: Bevor Klik einen Download startet, zeigt es an, von welchem Internet-Server es die Anwendung tatsächlich holt.

Abbildung 3: Bevor Klik einen Download startet, zeigt es an, von welchem Internet-Server es die Anwendung tatsächlich holt.

Der Bezeichner hinter klik:// leitet sich dabei intuitiv aus dem jeweiligen Programmnamen ab. Den für Ihr Lieblingsprogramm gültigen Namen finden Sie entweder über die Homepage der Anwendung oder im bereits angesprochenen Klik-Katalog.

Klik im Browser

Klik arbeitet mit einer ganzen Reihe von Web-Browsern zusammen – darunter Konqueror, Firefox und Opera und Firefox. Das Installationsskript erkennt sie automatisch und bereitet sie für Klik vor. Bei anderen Browsern muss man das Klik-Protokoll (klik://...) selbst anmelden – wo und wie, unterscheidet sich von Browser zu Browser. Meist existiert ein Punkt Programme oder Externe Programme. Dort wählt man für das Protokoll einfach den Bezeichner klik und als zugehörige Anwendung .klik aus dem Home-Verzeichnis.

Abbildung 4: Beim Download eines Bundles über Firefox erscheint diese Warnmeldung. Bei der angesprochenen Anwendung handelt es sich um das Skript <code srcset=

.klik, weshalb Sie die Ausführung gestatten können.” width=”300″ height=”127″ /> Abbildung 4: Beim Download eines Bundles über Firefox erscheint diese Warnmeldung. Bei der angesprochenen Anwendung handelt es sich um das Skript .klik, weshalb Sie die Ausführung gestatten können.

Auspacken

Egal für welche Methode Sie sich entschieden haben: Als Ergebnis landet stets eine einzelne Datei mit der Endung .cmg auf Ihrer Festplatte. In der Regel finden Sie das Bundle direkt auf dem Desktop (Abbildung 5). Sobald Sie mit der Maus auf die Datei klicken, startet das darin verborgene Programm.

Die Bundles lassen sich bei Bedarf auch auf einem Wechselmedium – etwa einem USB-Stick – für den späteren Gebrauch archivieren. Das macht speziell für Live-CD-Systeme Sinn. Doch Vorsicht: Ein Bundle läuft nur unter der Distribution, auf der es herunter geladen wurde.

Abbildung 5: Das aus dem Netz herunter geladene Bundle erscheint direkt auf dem Desktop.

Abbildung 5: Das aus dem Netz herunter geladene Bundle erscheint direkt auf dem Desktop.

Erhalten Sie noch während des Downloads die Fehlermeldung Error while trying to run Programm, so liegt ein Netzwerkfehler vor. Entweder stimmt dann etwas mit Ihrer Internet-Verbindung nicht, oder aber der Klik-Server ist mal wieder in die Knie gegangen. Diese zum Jahresbeginn recht massiven Stabilitätsprobleme scheinen die Klik-Betreiber aber mittlerweile in den Griff bekommen zu haben.

Einschränkungen

Wer auf den Geschmack gekommen ist und jetzt fleißig verschiedene Klik-Pakete startet, wird irgendwann unsanft gebremst. Der Klik-Client erlaubt leider nur eine recht begrenzte Anzahl gleichzeitig laufender Programme. Um zu verstehen, warum diese auf den ersten Blick unnötig erscheinende Limitierung existiert, hilft ein kleiner Blick unter die Motorhaube.

Bei einem Klik-Bundle mit der Dateiendung .cmg handelt es sich um nichts anderes als eine gepackte Mini-Festplatte. Sie enthält alle Verzeichnisse und Dateien, die eine Anwendung auch bei ihrer normalen Installation anlegen würde. Das funktioniert genau so wie bei den bekannten ISO-Images von CD-ROMs (siehe Kasten “Hinter den Kulissen”). Klicken Sie ein Bundle an, dann hängt das Hilfsskript .zApp es einfach in ein Unterverzeichnis von /tmp/app ein. Dazu nutzt es das so genannte Loop-Device – eine Funktion, die alle modernen Linux-Distributionen von Haus aus mitbringen. Anschließend wechselt Klik in das neue Verzeichnis und führt dort die nun zugängliche Anwendung aus. Allerdings stellt Linux in der Voreinstellung derzeit nur acht Loop-Devices gleichzeitig zur Verfügung. Daher können sie maximal acht aus einem Bundle stammende Anwendungen parallel ausführen.

Hinter den Kulissen

Um zu einem fertigen Bundle zu gelangen, erstellt Klik zunächst ein Arbeitsverzeichnis, in dem alle Verzeichnisse des Programms samt ihren Inhalten landen. Damit Klik später weiß, wie die ausführbare Datei heißt und wie es sie genau starten muss, kommt noch ein Skript namens wrapper hinzu.

Da der Ordner jetzt eine komplette Anwendung enthält, bezeichnet man ihn auch als AppDir (“Application Directory”). Der mit entsprechender Intelligenz geimpfte Desktop-Manager entdeckt beim Versuch, in dieses Verzeichnis zu wechseln, das Skript wrapper und führt es aus. Auf diese Weise entsteht für den Benutzer die Illusion, er habe das Programm direkt aufgerufen.

Damit das Arbeitsverzeichnis keinen Platz verschwendet, packt man es in ein Paket – das alt bekannte Bundle. Klik macht sich hier extra viel Mühe und verwendet das so genannte Cramfs-Dateisystem. Die fertige Datei erhält entsprechend die Endung .cmg (“Cramfs Image”).

Über Tricks lässt sich diese Anzahl zwar noch erhöhen, etwa mittels des Eintrags options loop max_loop=64 in der Datei /etc/modules.conf. Dennoch lässt sich damit kein komplettes Linux-System ausschließlich aus Bundles aufbauen. Das verhindern zum einen Performance-Probleme, die bei einer solchen Einbindung über das Loop-Device auftauchen.

Zum anderen eignet sich nicht jede Anwendung für ein Bundle. Hierunter fallen beispielsweise alle Programme, die unbedingt nach einer festen Verzeichnisstruktur verlangen. So erwarten beispielsweise viele Anwendungen die Bilder für ihre Symbolleisten unter /usr/local/share. Ähnliches gilt, wenn die Anwendung ihre Konfigurationsdateien quer über das Dateisystem verstreuen möchte.

Fazit

Klik macht einfach Spaß: Mit nur zwei Mausklicks probiert man auch größere Programme aus, ohne dabei ein überquellendes oder vermülltes System fürchten zu müssen. Live-CD-Benutzer lagern die Bundles auf einen USB-Stick aus und haben so die häufig benötigten, aber auf der CD fehlenden Programme immer griffbereit dabei.

Dennoch sollte man im Auge behalten, dass Klik unter einigen Einschränkungen leidet. So gibt es derzeit keinen Mechanismus, der fertige Bundles auf den neuesten Stand bringt. Besonders ärgerlich ist zudem die Beschränkung auf nur acht gleichzeitig laufende Klik-Anwendungen.

Weiterführende Informationen zu Klik sowie ausführliche Anleitungen zum Erstellen eigener Bundles liefert das Klik-Wiki unter [2].

Glossar

Cramfs

Compressed ROM Filesystem, im Anklang an “to cram” (etwa: vollstopfen). Ein komprimiertes, nur lesbares Dateisystem. Beschränkungen: Dateigröße maximal 16 MByte, Größe des Dateisystems maximal 256 MByte.

Infos

[1] Klik-Homepage und Software-Warenhaus: http://klik.atekon.de/

[2] Informationen für Entwickler: http://klik.atekon.de/wiki/index.php/Architecture

LinuxUser 07/2006 KAUFEN
EINZELNE AUSGABE
ABONNEMENTS
TABLET & SMARTPHONE APPS
E-Mail Benachrichtigung
Benachrichtige mich zu:

Hinweis: Dieser Artikel ist älter als ein Jahr, enthaltene Informationen sind möglicherweise veraltet.

0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben