echo "20110615 $post" >> /life/notebook/UPDATING

Jun 16, 2011 15:14

15:10 16.06.2011

echo "20110615 $post" >> /life/notebook/UPDATING

Что то меня на днях пробило обновить систему, в принципе я это делаю довольно систематично, но из за приступа хандры как то поднакопилось обновлений, в том числе довольно критичных. Так что решил не только

# portmaster -ad
прогнать, но и наконец то очистить /etc/libmap.conf от скопившегося там хлама.
Для начала почему portmaster, так как вроде раньше не писал. Ну во первых это клёво, и всего навсего набор .sh скриптов, кстати для тех кто хочет поучить sh говорят весьма познавательно. Но работает просто таки на ура, так что всем тем кто ещё не пробовал очень советую. Основные патерны использования, как это не странно описаны в man, и можно зачастую ими и ограничится, хотя из частого я ещё смотрю что обновилось и иногда "чиню" зависимости

# portmaster -L | grep New
# portmaster -y --index --check-depends
в связи с экспериментами с AWS EC2, думаю ещё будет актуально поднять своё зеркало пакетов, с нужными зависимостями, и юзать флаг -PP, да и для VPS ки может пригодится, хотя и не так актуально. Да с portmaster есть одно примечание, если долго не обновляетесь, а это весьма динамично изменяющийся пакет, то его стоит обновить первым, и отдельно от остальных.

Итак потом была чистка /etc/libmap.conf, вообще то этого файла у многих нет и это пожалуй правильно, но иногда он весьма удобен, особенно если вы пользуетесь CURRENT, но иногда ленитесь подолгу обновлять софт, ну или апгрейдитесь между ветками и тоже с софтом возится лениво.

Принцип несложен, коментируете всё его содержание, если не трусы, то просто затираете и запускаем что надо, следя за выводом в консоли или в файле ~/.xsession-errors, ошибка обычно выглядит как то так

/libexec/ld-elf.so.1: Shared object "libutil.so.7" not found, required by "sudo"
Хотя иногда не так банально написано для чего нужна эта библиотека, может быть другая либа, или вообще функция. Так же может выдавать схожую ошибку при сборке какого то порта. Если в required by указана не программа виновник, то оно в принципе довольно легко обычно ищется в первых страницах гугла.

Ну а найдя "виновника" его нужно просто пересобрать. И так до полного пропадания таких ошибок, обычно их не так уж и много, если не запускать процесс.

Ещё был прикол с xmonad, собственно из-за него то этот libmap.conf вроде и завёлся, так как папочка ~/.xmonad/ исправно переезжала наверное, как раз с 7-й версии FreeBSD :)

А Xmonad с тех пор успел нехило изменится, вернее его базовые библиотеки и система подбора компонентов, в пакеты. Хитрость в том, что при значительных апдейтах, как раз из этой папочки надо убивать файл .xmonad/xmonad-x86_64-freebsd этот бинарник компилируется из .xmonad/xmonad.hs при запуске, и если его не убить как раз и требует старых библиотек. Остальные файлы там тоже можно безболезненно убить, ну кроме истории, и самописных скриптов, хотя я так и ленюсь их там завести.

Вот такая небольшая памятка, да в данный момент ещё немного сломан порт sysutils/tmux его сборка прерывается, при установленной опции

LIBEVENT2=on "Use libevent version 2"
метод по исправлению, предложен в рассылке, но из за не универсальности его не комитят в дерево портов :(











read more at записки юного БСДешника

rss2lj

programs, xmonad, freebsd, про меня

Previous post Next post
Up