Cara menghapus instalan semua versi paket macports yang tidak digunakan sekaligus

32

Saat memelihara paket macports, saya lebih suka menghapus paket lama ketika saya menggantinya dengan yang baru. Namun, seiring berjalannya waktu ketika paket ditingkatkan, Anda berakhir dengan masalah seperti:

$ 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.

Apakah ada perintah macports untuk menghapus semua versi paket sekaligus?

Dana si Sane
sumber

Jawaban:

38

Jika Anda ingin menghapus semua versi lama (tidak aktif) coba ini:

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

Jika Anda bermaksud menghapus semua versi (non-aktif dan aktif) dari postgresql83port (mis.) , Cobalah ini:

port -y uninstall installed and postgresql83
  # if you like what you see, change “port -y” to “sudo port”
Chris Johnsen
sumber
Itu berhasil bagi saya, terlalu buruk port tidak menangani pembaruan ketergantungan ke postgres84 secara otomatis sekalipun.
Dana the Sane
2
@Dana the Sane Jika Anda bermaksud menghapus paket yang bergantung pada postgres84 secara otomatis, Anda dapat menggunakan argumen --follow-dependents.
Nick
@Nick Saya akan coba lain kali saya uninstall sesuatu.
Dana the Sane
Pendekatan kedua bekerja dengan baik untuk saya, tetapi yang pertama dengan -utampaknya memberikan peringatan yang sama tentang beberapa versi yang diinstal seolah-olah saya belum pernah menggunakan -usama sekali
matt b
Perintah ini tidak berfungsi (pada Mac OSX Mavericks).
bzero
44
sudo port uninstall inactive

Ini akan menghapus port tidak aktif Anda.

sprotsman
sumber