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

Irgend ein Notebook mit Linux Mint - vllt der Dell Latitude 3480???
Universit Freiburg, 26.06.2017 13:51, 0 Antworten
Hey Leute, bin am Verzweifeln weil ich super gerne auf Linux umsteigen würde aber kein Noteboo...
scannen mit LINUXMINT 18.0 - Brother DCP - 195 C
Christoph-J. Walter, 21.06.2017 08:47, 4 Antworten
Seit LM 18.0 kann ich nicht mehr direkt scannen. Obwohl ich die notwendigen Tools von der Brothe...
Anfänger Frage
Klaus Müller, 24.05.2017 14:25, 2 Antworten
Hallo erstmal. Habe von linux nicht so viel erfahrung müsste aber mal ne doofe frage stellen. A...
Knoppix-Live-CD (8.0 LU-Edition) im Uefiboot?
Thomas Weiss, 26.04.2017 20:38, 4 Antworten
Hallo, Da mein Rechner unter Windows 8.1/64Bit ein Soundproblem hat und ich abklären wollte, o...
Grub2 reparieren
Brain Stuff, 26.04.2017 02:04, 7 Antworten
Ein Windows Update hat mir Grub zerschossen ... der Computer startet nicht mehr mit Grub, sondern...