На довольно интересную мысль натолкнул сегодня Родион []{.RodionD}. Если утилита cl-unmask есть, значит ее нужно заставлять работать. Родион выполнил cl-unmask =kde-base/kde-meta-4.3.2 и с горечью наблюдал как вот уже 3 часа размаскировывается каждый пакет KDE…
Конечно же мы не ждем 3 часа, хотя размаскировываем каждый пакет. Помогает в этом переменная #keywords:kde-base# из профиля /usr/calculate/install/builder/profile/0builder/etc/portage/package.keywords/kde?calculate=CLD, создающая в системе файл /etc/portage/package.keywords/kde. В этом файле размаскировываются до последней версии все пакеты, имеющие суффикс kde из списка пакетов сборки CLD. Разумеется есть еще зависимости, которые как раз подтягиваются при помощи cl-unmask.
Итак, для обновления KDE выполните следующие действия:
* Обновите портежи и оверлей calculate:
eix-sync
* Создайте новый профиль. Для примера назовем его “update”.
mkdir -p /usr/calculate/share/profile/update
* Создадим в профиле файл etc/portage/package.keywords/kde, в который впишем переменную #keywords:kde-base#:
cd /usr/calculate/share/profile/update
mkdir -p etc/portage/package.keywords
echo "#-keywords:kde-base-#" > etc/portage/package.keywords/kde
* Наложим наш новый профиль на систему:
calculate -P share/update
* Размаскируем оставшиеся зависимости:
cl-unmask world
* Последний штрих перед сборкой. Разрешим некоторые коллизии, вызванные пакетом x11-libs/libxcb-1.1
emerge libxcb
/usr/portage/x11-libs/libxcb/files/xcb-rebuilder.sh
emerge x11-libs/libX11
revdep-rebuild -L libxcb-xlib.so.0
* Теперь можно приступить к установке пакетов!
emerge -uD world
* В конце не забудьте выполнить:
dispatch-conf
P.S. Такой подход выглядит более правильным, и является Calculate-way, т.к. meta-пакет потянет за собой много лишнего, то что отбрасывается в CLD на этапе сборки. Возможно воспользовавшись режимом интерактивной сборки, мы в скором времени предложим обновление с KDE 4.3.2, выполненное по описанной методике.