Не так давно в зависимости мета-пакетов был добавлен sys-kernel/linux-firmware
и у меня на домашнем компе выскочила такая вот коллизия:
...
[binary N #] sys-kernel/linux-firmware-20110604 USE="-savedconfig"
[uninstall ] x11-drivers/radeon-ucode-20110302
[blocks b ] x11-drivers/radeon-ucode ("x11-drivers/radeon-ucode" is blocking sys-kernel/linux-firmware-20110604)
[binary U #] sys-kernel/calckernel-3.4.15-r10 [3.4.15-r8]
[binary U #] sys-apps/calculate-builder-2.2.18 [2.2.16-r4]
[binary U #] sys-apps/calculate-utilities-2.2.18 [2.2.16-r9]
[blocks B ] net-wireless/iwl6050-ucode ("net-wireless/iwl6050-ucode" is blocking sys-kernel/linux-firmware-20110604)
* Error: The above package list contains packages which cannot be
* installed at the same time on the same system.
(net-wireless/iwl6050-ucode-41.28.5.1::gentoo, installed) pulled in by
net-wireless/iwl6050-ucode required by @selected
(sys-kernel/linux-firmware-20110604::gentoo, binary scheduled for merge) pulled in by
sys-kernel/linux-firmware required by (sys-kernel/calckernel-3.4.15-r10::calculate, binary scheduled for merge)
For more information about Blocked Packages, please refer to the following
section of the Gentoo Linux x86 Handbook (architecture is irrelevant):
http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?full=1#blocked
Надо сказать, что беспроводные сети у меня выключены, в /etc/make.conf
стоит:
CALCULATE=“nowireless”
Тупиковая ситуация, противоречащая всем законам физики. С одной стороны, пакет sys-kernel/linux-firmware
конфликтует с net-wireless/iwl6050-ucode
, с другой - net-wireless/iwl6050-ucode
должен быть принудительно удален обновленным app-misc/cl-wireless-meta
. Ну это на случай, если бы у меня не была отключена поддержка беспроводных карт.
Попробовал так:
emerge -a app-misc/cl-wireless-meta
Получил туже ошибку.
Закомментировал CALCULATE="nowireless"
- тоже не помогло.
Вспомнил тот совет, который сам же всем даю - не засоряйте мир!
Смотрим:
cat /var/lib/portage/world
app-emulation/virtualbox-bin
app-misc/calculate-meta
media-tv/xbmc
media-video/minitube
media-video/mplayer2
net-misc/whois
net-p2p/ktorrent
www-client/firefox
x11-drivers/nvidia-drivers
net-wireless/iwl6050-ucode
Вывод
Не помню по какой причине, но я обновлял отдельно пакет net-wireless/iwl6050-ucode
. Он благополучно вписался в world
, содержащий установленные пакеты - те, что вы ставили командой emerge
без зависимостей. На смену net-wireless/iwl6050-ucode
пришел пакет sys-kernel/linux-firmware
, который конфликтует с net-wireless/iwl6050-ucode
. Чтобы избежать конфликта, app-misc/cl-wireless-meta
пытается его удалить (к слову, это одна из причин перехода на мета-пакеты). Но удалить из world
не так-то просто! Вообще я не знаю других путей, кроме как отредактировать этот файл вручную. После этого все конечно же заработало.
Совет
# Если вы обновляете установленные в системе пакеты, используйте опцию -1
, например так:
emerge -a1 net-wireless/iwl6050-ucode
# Старайтесь вместо обновления отдельных пакетов, обновлять весь мир:
emerge -uDNa world
Все установленные дополнительно программы можно всегда посмотреть в /var/lib/portage/world
.