Ouvrir un RPM sur un Mac?

54

Je suis sur un MacBook Pro exécutant Apple Leopard (Mac OS X 10.5.8).

Je voudrais décompresser un fichier RPM et afficher les fichiers contenus dans le fichier wget-1.11.4-2.el5_4.1.src.rpm . Je n'ai pas besoin d'installer les fichiers dans un emplacement particulier ni d'exécuter des scripts% postinstall ou quoi que ce soit. Je veux juste décompresser ce fichier RPM afin de pouvoir afficher les fichiers source en dessous.

Est-il possible de décompresser un fichier RPM sur un système autre que RedHat / CentOS?

Stefan Lasiewski
la source

Réponses:

44

Vous pouvez installer rpm via les ports Darwin ou Fink ou Mac, ou même un port Darwin, rpm4darwin .

Pour extraire des fichiers d’un paquetage rpm sans l’installer, utilisez l’utilitaire compagnon rpm2cpio, par exemple

rpm2cpio foo.rpm | cpio -i -d 

Il existe également un rpm2cpioscript portable si vous ne voulez pas ou ne pouvez pas obtenir la version fournie avec l' rpmutilitaire (le script peut ne pas fonctionner avec les versions plus anciennes ou plus récentes du format rpm).

Gilles, arrête de faire le mal
la source
On dirait que je veux rpm2cpio, et j'utilise des ports Mac, mais malheureusement, rpm2cpio n'est pas disponible dans macports . Peut-être que je vais essayer l'une de ces alternatives.
Stefan Lasiewski
@Stefan: L' rpm2cpioutilitaire n'est-il pas dans le rpmport? Sinon, essayez le script.
Gilles 'SO- arrête d'être méchant'
@Giles: Il en est ainsi /opt/local/bin/rpm! Le chemin dans mon ancien environnement doit avoir été foiré.
Stefan Lasiewski
8
Il est également disponible dans l'homebrew: $ brew install rpm2cpio
Raymond Kroeker
Apparaît que rpm2cpio est en fait dans la rpmbière ces jours-ci ...
rogerdpack
26

À partir de la ligne de commande, vous pouvez utiliser la tarcommande. Par exemple, tar -tf example.rpm | lesspour lister tous les fichiers dans le rpm.

jonashdown
la source
2
Pouvez-vous donner plus de détails ?
Archemar
5
@Archemar tar -tvzf some.rpmpour lister le contenu tar -xvzf some.rpmà extraire
jonashdown
7

Pour décompresser tous les fichiers dans le répertoire local:

tar -xvzf some.rpm

sans avoir besoin d'installer de nouveaux outils

Andrew Mackenzie
la source
6

Homebrew a également une recette pour l'installation de rpm, il suffit de lancer

brew install rpm
Andrew
la source
4

Je penserais que (comme Windows et Linux) tout programme d’archivage devrait pouvoir le décompresser. iArchiver , le unArchiver et Archiver répertorient tous les "RPM en lecture seule" dans leurs formats pris en charge.

mlschechter
la source
Je suppose que la plupart des archiveurs populaires pour Windows - comme WinRAR - n’ont pas cette option.
Maciej Piechotka Le
De mon point de vue « archiveur » fait référence à des outils à usage unique comme /usr/bin/tar, cpio, etc.
Stefan Lasiewski
2

Le script portable rpm2cpio est vraiment bon!

Robin Liu
la source