Почему почти все пакеты помечены как установленные вручную?

11

Я только что установил Maverick и был удивлен, что почти все пакеты помечены как установленные вручную (linux-headers и wireless-crda - нет). Разве это не противоречит цели разграничения между автоматически и вручную установленными пакетами?

htorque
источник

Ответы:

9

Кажется, мои возможности Google были ослаблены: это известная ошибка (сконцентрируйтесь на комментариях Колина Уотсона), и она какое-то время висит без каких-либо исправлений:

Цитируя Колина Уотсона :
[...] Оставлять все пакеты как установленные вручную неприглядно, но последствия этой ошибки, как правило, ограничиваются тем, что не удается быть достаточно умным, чтобы удалять пакеты, которые больше не нужны. Недостаток в обратном направлении будет намного хуже, потому что это может привести к удалению пакетов, когда они все еще нужны. Принимая во внимание, что, похоже, не существует четко правильного исправления, лучше предупредить [sic] с осторожностью. [...]
htorque
источник
воздух? ошибаться, конечно.
TRiG
1
Да, но если бы я исправил это, это больше не было бы цитатой. : P
htorque
Что мне интересно, так это то, что этот «установленный вручную» раздел явно не имеет значения (непригоден для использования), почему они просто не скрывают его? Нет необходимости показывать это, если вы ничего не можете с этим поделать ... что, на мой взгляд, имеет место. Тогда, если они когда-нибудь получат исправление, они могут показать это снова. Это было в Ubuntu со времен Jaunty или Karmic, если я хорошо помню ...
Маленькая Джава
1
Хотя, когда он исправит это в следующем комментарии, я думаю, что вы можете изменить цитату. :)
@Little: Это может быть полезно для пакетов, которые вы устанавливаете позже, но не включайте ничего при первоначальной установке.
1

Хорошо, теперь это первое, что я делаю сразу после установки. Я отмечаю (почти) каждый пакет как автоматически установленный , и они остаются зависимостями ubuntu-desktop:

apt-mark showmanual | xargs sudo apt-mark auto
sudo apt-mark unmarkauto ubuntu-desktop 

В идеале этого было бы достаточно. Но, по словам Колина Уотсона , мир не так совершенен, и нам нужно еще полировать. Итерация:

apt-get autoremove --simulate
# ...
# output of what's to be autoremoved
sudo apt-mark unmarkauto <package>

где <package>для меня заканчивается , по крайней мере , как каждый из ubuntu-standard, ubuntu-minimal, ubuntu-restricted-addons. Также некоторые языковые пакеты.

Стоит также отметить aptitude, что с его TUI может помочь процессу.

После этого отчеты диспетчера пакетов моей системы выглядят намного приятнее и понятнее:

$ apt-mark showmanual
aptitude
dkms
git
subversion
ubuntu-desktop
ubuntu-minimal
ubuntu-restricted-addons
ubuntu-standard
vim
zsh

Вуаля!

ulidtko
источник
не пытайтесь ответить на этот вопрос последним Уилли. Вы
облажаетесь
@ StefanoMtangoo Я сам сделал это на хитрости. Сейчас у меня 97 пакетов, помеченных вручную, и 2455 пакетов, помеченных как авто. Эти 97 довольно точно представляют все, что apt-get installя сделал. Довольно чистое управление зависимостями, я бы сказал.
ulidtko
Я сделал это, и все, что я получил, это то, что почти все пакеты были настроены на автоматическое удаление, и пришлось пройти через боль удаления и установки обратно ... не очень хороший опыт
Стефано Мтангу
@ Стефано, вы заметили, что я описал цикл, за autoremove --simulateкоторым следовали unmarkautoотобранные вручную пакеты с зонтиками? Это ключ. Вы не должны на самом деле удалять и устанавливать обратно пакеты. Все изменения, которые вы делаете в системе, состоят в том, чтобы пометить пакеты как установленные вручную или автоматически - как зависимость (часто косвенную) от какого-либо другого установленного вручную пакета.
ulidtko