Cómo desinstalar todas las versiones no utilizadas de un paquete de macports a la vez


32

Al mantener los paquetes de macports, prefiero eliminar los paquetes viejos cuando los reemplazo por otros nuevos. Sin embargo, con el tiempo a medida que se actualizan los paquetes, terminas con problemas como:

$ sudo port uninstall -f postgresql83
--->  The following versions of postgresql83 are currently installed:
--->    postgresql83 @8.3.3_0
--->    postgresql83 @8.3.7_0
--->    postgresql83 @8.3.8_1 (active)
Error: port uninstall failed: Registry error: Please specify the full version as recorded in the port registry.

¿Existe un comando macports para eliminar todas las versiones de un paquete a la vez?

Respuestas:


38

Si desea desinstalar todas las versiones antiguas (no activas) intente esto:

port -y -u uninstall
  # if you like what you see, change “port -y” to “sudo port”

Si quiere decir que desea desinstalar todas las versiones (no activas y activas) de (por ejemplo) el postgresql83puerto, intente esto:

port -y uninstall installed and postgresql83
  # if you like what you see, change “port -y” to “sudo port”

Eso funcionó para mí, aunque el puerto malo no maneja las actualizaciones de dependencia a postgres84 automáticamente.
Dana the Sane

2
@Dana the Sane Si te refieres a eliminar paquetes que dependen de postgres84 automáticamente, puedes usar el argumento --follow-dependnts.
Nick

@ Nick Intentaré eso la próxima vez que desinstale algo.
Dana the Sane

El segundo enfoque funciona bien para mí, pero el primero -uparece dar la misma advertencia sobre la instalación de múltiples versiones como si no hubiera usado -unada
mate b

Estos comandos no funcionan (en Mac OSX Mavericks).
bzero

44
sudo port uninstall inactive

Esto eliminará sus puertos inactivos.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.