16.07.2013 18:47, Alexander Shikoff написав(ла):
Приветствую!

Смигрировал сегодня на pkgng.
Появился вопрос: раньше я удалял ненужные пакеты, от которых ничего не зависит,
с помощью ports-mgmt/pkg_cutleaves.

Теперь же:

# pkg_cutleaves
** Didn't find any leaves to work with, exiting.
** If this is unexpected, check your exclude file, please.
** Deinstalled packages:
** Number of deinstalled packages: 0

Сам pkg я так понял тоже не умеет удалять "листья".

Кто чем пользуется? Спасибо!


pkg autoremove

Сразу после конвертации база немного не в себе, всмысле не знает что ставилось вручную а что автоматом. Править это прийдётся вручную:

pkg query -e %a=0 '%#r %o' | awk '$1!~/^0$/{print$2}' | xargs pkg set -y -A1

Этот скрипт выбирает все пакеты которые были установлены не автоматически, но от которых зависят другие пакеты, и маркирует их как автоустановленные.

Теперь можно выбрать пакеты которые установлены вручную и просмотреть их:

pkg query -e %a=0 '%o' > package.list

Из package.list удаляем те которые нам нужны, а оставляем те, которые не нужны. Оставшиеся помечаем как автоматически установленные:

xargs pkg set -y -A1 < package.list

Вот теперь можно запускать pkg autoremove.

ЗЫЖ Поскольку раньше не всегда зависимости сохранялись правильно очень вероятен случай когда при удалении уйдёт пакет который был нужен. sysutils/bsdadminscripts pkg_libchk в помощь.

--
Sphinx of black quartz, judge my vow.

Ответить