Solo me pregunto si hay algún comando de Terminal para hacer esto, porque creo que mi OSX ya estaba estropeado con algunas instalaciones .pkg incompatibles. Gracias.
Respuesta
¿Demasiados anuncios?El sistema de gestión de paquetes utilizado por OS X es rudimentario en comparación con contrapartes de Linux como RPM o DEB. Afortunadamente, operaciones básicas como listar paquetes y su contenido son posibles:
Cada vez que se instala un archivo .pkg
se almacena un archivo BOM en /private/var/db/receipts/
. Puedes hacer ls
en ese directorio o usar pkgutil
para listar los paquetes instalados:
$ pkgutil --packages
(...)
com.apple.pkg.HP_Scan
com.apple.pkg.HP_Scan3
com.apple.pkg.HP_SmartX
com.apple.pkg.InstallMacOSX
com.apple.pkg.JavaEssentials
com.apple.pkg.JavaForMacOSX107
com.apple.pkg.JavaMDNS
com.apple.pkg.JavaSecurity
com.apple.pkg.JavaTools
com.apple.pkg.MBP91
com.apple.pkg.MediaFiles
com.apple.pkg.MobileDevice
com.apple.pkg.MobileDeviceDevelopment
com.apple.pkg.OxfordDictionaries
(...)
Para consultar el contenido del archivo .pkg
utiliza pkgutil
:
$ pkgutil --files com.apple.pkg.Pages4 | less
Applications
Applications/Pages.app
Applications/Pages.app/Contents
Applications/Pages.app/Contents/CodeResources
Applications/Pages.app/Contents/Frameworks
Applications/Pages.app/Contents/Frameworks/Inventor.framework
Applications/Pages.app/Contents/Frameworks/Inventor.framework/Inventor
o lsbom
:
$ lsbom /private/var/db/receipts/com.apple.pkg.Pages4.bom | less
. 40775 0/0
./Applications 40775 0/80
./Applications/Pages.app 40755 0/0
./Applications/Pages.app/Contents 40755 0/0
./Applications/Pages.app/Contents/CodeResources 120755 0/0 28 2941952436 _CodeSignature/CodeResources
./Applications/Pages.app/Contents/Frameworks 40755 0/0
./Applications/Pages.app/Contents/Frameworks/Inventor.framework 40755 0/0
(...)
Consulta man pkgutil y man lsbom para otras opciones.