Pakete umwandeln mit Alien

Pakete umwandeln mit Alien

Redaktion LinuxUser
16.06.2006

Gibt es Ihre Lieblingsanwendung nicht für die eigene Distribution, müssen Sie es entweder aus den Quellen installieren, ein eigenes Paket bauen -- oder Sie greifen zu Alien. Dieses Kommandozeilen-Tool wandelt fremde Pakete für die eigene Linux-Distribution um. Alien ist ein Perl-Skript und kann mit den Formaten RPM, DEB, SLP, TGZ und PKG umgehen.

von Heike Jurzik

Dieser Artikel wurde ursprünglich in LinuxUser Ausgabe 07/2006 veröffentlicht und exklusiv für die Linux-Community ausgewählt. Weitere Beiträge findet ihr auch auf der LinuxUser-Homepage. Wie immer interessiert uns euer Feedback. Schreibt uns hier eure Meinung, sodass wir in Zukunft weitere interessante Artikel aus unseren Heften auswählen können.

Manche Programme gibt es einfach nicht fertig verpackt für die eigene Distribution. Hier ist guter Rat oft teuer -- wer nicht aus den Quellen installieren oder eigene Pakete bauen möchte, greift einfach zu Alien: Der Wanderer zwischen den Welten konvertiert Pakete verschiedener Formate und hilft dabei, Außerirdisches zu integrieren.

Alien wandelt zwischen den Paketformaten RPM, DEB, SLP (Stampede Linux), TGZ (Slackware) und PKG (Solaris) um. Die Entwickler klassifizieren es als experimentelle Software (und wird dieses wohl auch immer bleiben). Prüfen Sie immer zunächst gründlich, ob das gesuchte Paket nicht doch für Ihre Distribution vorhanden ist, bevor Sie zu Alien greifen: Oft verwendet ein Paket Bibliotheken, die nicht oder nicht in der richtigen Version auf dem Zielsystem vorhanden sind. Wichtige Systemkomponenten wie Init oder die Libc sollten Sie keinesfalls mit Alien konvertieren -- die Dokumentation gibt dazu als Richtlinie einen guten Rat: "Können Sie ein Paket nicht entfernen, ohne ein inkonsistentes System zu riskieren, ersetzen Sie es nicht durch eine mit Alien gebaute Version."

Installation

Benutzer von Debian GNU/Linux und anderen Dpkg-basierten Systemen finden das Programm im gleichnamigen Paket alien. Installieren Sie dieses als Administrator, beispielsweise auf der Kommandozeile, mit dem Befehl:

aptitude install alien

Dpkg

Die Basis der Paketverwaltung von Debian und das grundlegende Programm zum Installieren von Software-Paketen.

Das Paketverwaltungswerkzeug löst dabei Abhängigkeiten zu anderen Komponenten automatisch auf und spielt verschiedene andere Pakete, darunter den Red Hat Package Manager und die benötigten Bibliotheken, selbständig ein.

Auch Suse Linux hat das praktische Konvertierungs-Tool mit im Gepäck; hier spielen Sie das Paket alien über das Software-Modul von YaST ein. Abhängigkeiten zu anderen Komponenten, wie Perl, Deb und Make, löst YaST selbständig auf (Abbildung 1).

Abbildung 1: Alien ist bei den meisten Distributionen mit an Bord.

Pakete für andere Distributionen finden Sie über die gängigen Suchmaschinen PBone oder RPMSeek; den Quellcode gibt es hier.

Aus .rpm wird .deb

Um eine RPM-Datei in ein Debian-Paket umzuwandeln, setzen Sie den Schalter -d (oder in seiner langen Version --to-deb) ein. Dabei übergeben Sie als Parameter die Namen der umzuwandelnden RPM-Datei und des neuen Pakets:

alien -d Paket.rpm Paket.deb

Alternativ verwenden Sie zusätzlich die Option --keep-version, und Alien setzt den Namen und die Versionsnummer des neuen Pakets direkt selbst:

# <b>alien --to-deb --keep-version mplayer-skins-1.0pre4-62693cl.i386.rpm</b>
mplayer-skins_1.0pre4-62693cl_i386.deb generated

Das neue Paket installieren Sie nun beispielsweise mithilfe des Programms Dpkg:

# <b>dpkg -i mplayer-skins_1.0pre4-62693cl_i386.deb</b>
Wähle vormals abgewähltes Paket mplayer-skins.
(Lese Datenbank ... 159920 Dateien und Verzeichnisse sind derzeit installiert.)
Entpacke mplayer-skins (aus mplayer-skins_1.0pre4-62693cl_i386.deb) ...
Richte mplayer-skins ein (1.0pre4-62693cl) ...

Einen weiteren Arbeitsschritt sparen Sie, wenn Sie zusätzlich den Schalter -i (--install) einsetzen -- Alien installiert das neue Paket direkt im Anschluss. Falls es Sie interessiert, welche Schritte dabei im Hintergrund ablaufen, hängen Sie des weiteren --verbose an den Aufruf an (Abbildung 2).

Abbildung 2: Alien zeigt sich informativ und installiert auf Wunsch das neue Paket direkt in einem Rutsch.

Von .deb nach .rpm

In die andere Richtung geht es entsprechend mit dem Parameter -r (Langform: --to-rpm). Die bereits geschilderten Parameter --keep-version, --install und --verbose dürfen auch hier zum Einsatz kommen.

Auf Nummer sicher gehen Sie allerdings, wenn Sie das Paket zuerst bauen und dann mit dem rpm auf der Shell installieren. Dabei verwenden Sie die Optionen -i ("Installation"), -v ("verbose", ausführliche Anzeige) und -h (blendet Fortschrittsbalken ein):

# <b>alien --to-rpm --keep-version mplayer-skins_1.0pre4-62693cl_i386.deb</b>
mplayer-skins-1.0pre4-62693cl.i386.rpm generated
# <b>rpm -ivh mplayer-skins-1.0pre4-62693cl.i386.rpm</b>
Preparing...      ####################################### [100%]
 1:mplayer-skins  ####################################### [100%]

Noch mehr Optionen

Wie bereits eingangs erwähnt, können Sie mit Alien auch andere Paketformate konvertieren. Zusammen mit der Option -t (Langform: --to-tgz) erstellen Sie TGZ-Pakete; --to-slp (keine Kurzform vorhanden) erstellt SLP-Pakete und -p (Langform --to-pkg) konvertiert ins PKG-Format.

Praktisch ist außerdem der Parameter -g (Langform: --generate), der kein Paket erstellt, sondern ein temporäres Verzeichnis mit den einzelnen Dateien des Pakets anlegt. So können Sie vorher noch Dateien umbenennen oder an eine andere Stelle in der internen Struktur verschieben, bevor Sie sich ans Bauen des Pakets begeben. (jlu)

Ähnliche Artikel

  • Pakete umwandeln mit Alien
    Gibt es Ihre Lieblingsanwendung nicht für die eigene Distribution, müssen Sie es entweder aus den Quellen installieren, ein eigenes Paket bauen – oder Sie greifen zu Alien.

Kommentare

Aktuelle Fragen

PCLinuxOS Version 2014.08 "FullMonty" Umstellung auf deutsch
Karl-Heinz Welz, 19.12.2014 09:55, 3 Antworten
Hallo, liebe Community, ich bin 63 Jahre alt und möchte jetzt nach Jahrzehnten Windows zu Linux...
ICEauthority
Thomas Mann, 17.12.2014 14:49, 2 Antworten
Fehlermeldung beim Start von Linux Mint: Could not update ICEauthority file / home/user/.ICEauth...
Linux einrichten
Sigrid Bölke, 10.12.2014 10:46, 5 Antworten
Hallo, liebe Community, bin hier ganz neu,also entschuldigt,wenn ich hier falsch bin. Mein Prob...
Externe USB-Festplatte mit Ext4 formatiert, USB-Stick wird nicht mehr eingebunden
Wimpy *, 02.12.2014 16:31, 0 Antworten
Hallo, ich habe die externe USB-FP, die nur für Daten-Backup benutzt wird, mit dem YaST-Partition...
Steuern mit Linux
Siegfried Markner, 01.12.2014 11:56, 2 Antworten
Welches Linux eignet sich am besten für Steuerungen.