Pakete umwandeln mit Alien

Aus LinuxUser 07/2006

Pakete umwandeln mit Alien

Fremde Welten

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.

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

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.

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

Pakete für andere Distributionen finden Sie über die gängigen Suchmaschinen PBone [1] oder RPMSeek [2]; den Quellcode gibt es unter [3].

Aus <C>.rpm<C> wird <C>.deb<C>

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:

# alien --to-deb --keep-version ?mplayer-skins-1.0pre4-62693cl.i3?86.rpm
mplayer-skins_1.0pre4-62693cl_i3?
86.deb generated

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

# dpkg -i mplayer-skins_1.0pre4-?62693cl_i386.deb
Wähle vormals abgewähltes Paket ?
mplayer-skins.
(Lese Datenbank … 159920 Datei?
en und Verzeichnisse sind derzei?
t installiert.)
Entpacke mplayer-skins (aus mpla?
yer-skins_1.0pre4-62693cl_i386.d?
eb) …
Richte mplayer-skins ein (1.0pre?
4-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.

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

Von <C>.deb<C> nach <C>.rpm<C>

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):

# alien --to-rpm --keep-version ?mplayer-skins_1.0pre4-62693cl_i3?86.deb
mplayer-skins-1.0pre4-62693cl.i3?
86.rpm generated
# rpm -ivh mplayer-skins-1.0pre4?-62693cl.i386.rpm
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.

Glossar

Dpkg

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

Infos

[1] RPM-PBone-Suche: http://rpm.pbone.net/

[2] RPMSeek-Website: http://www.rpmseek.com/

[3] Alien-Quellcode: ftp://ykbsb2.yk.psu.edu/pub/alien/

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