Наверное, все пользователи ICQ рано или поздно сталкивались с обновлением протокола OSCAR, являющегося основой служб ICQ и AIM. Следствие такого обновления - неправильное функционирование всех ICQ-клиентов, кроме, пожалуй, официального. Как с этим бороться? Очевидно что нужно установить самую последнюю версию своего клиента.
Однако тут есть небольшая проблема: хотя исправления достаточно быстро появляются в SVN/CVS/Git-репозиториях программ - стабильные версии выходят не так часто, и иногда приходится ждать стабильную версию с исправлениями по несколько месяцев.
Код в репозиториях иногда бывает нестабильным и может содержать как исправления одних ошибок, так и новые ошибки. Если вас это не смущает - вы можете смело поставить код из таких репозиториев. Сделать это не трудно, тем более что на сайтах большинства клиентов есть подробные инструкции как это сделать.
У всех этих инструкций есть один минус - они все подразумевают работу в обоход родного менеджера пакетов вашего дистрибутива. Если же хочется установить нестабильную версию штатными средствами - нужно делать свой пакет. Эта заметка описывает установку клиента SIM-IM в дистрибутиве Gentoo.
Поиск в Google особых результатов не даёт. Единственное что может представлять интерес - вот этот ebuild, но он достаточно старый, и потому не рабочий. Однако, на его основе оказалось вполне возможным написать пригодный к использованию. Итак, приступим.
Для начала сохраним следующий текст в файл /usr/local/portage/net-im/sim/sim-9999.ebuild:
inherit eutils subversion kde-functions LICENSE="GPL-2" DESCRIPTION="An ICQ v8 Client. Supports File Transfer, Chat, Server-Side Contactlist, ..." HOMEPAGE="http://sim-im.org" KEYWORDS="x86" SLOT="0" IUSE="ssl kde debug arts kdeenablefinal" ESVN_REPO_URI="svn://svn.berlios.de/sim-im/trunk" RDEPEND="ssl? ( dev-libs/openssl ) kde? ( || ( kde-base/kdebase-startkde kde-base/kdebase ) ) !kde? ( <=x11-libs/qt-4.0 ) app-text/sablotron sys-devel/flex >=sys-devel/automake-1.7 >=sys-devel/autoconf-2.5 dev-libs/libxslt arts? ( kde-base/arts )" src_compile() { export WANT_AUTOCONF=2.5 export WANT_AUTOMAKE=1.7 set-qtdir 3 set-kdedir 3 addwrite "${QTDIR}/etc/settings" make -f admin/Makefile.common econf\ `use_with ssl` \ `use_with arts` \ `use_enable kdeenablefinal final` \ `use_enable kde` \ `use_enable debug` \ || die "Configuration failed!" make clean || die emake || die } src_install() { make DESTDIR=${D} install || die dodoc TODO README ChangeLog COPYING AUTHORS }
Далее выполняем следующую последовательность команд:
ebuild /usr/local/portage/net-im/sim/sim-9999.ebuid digest ebuild /usr/local/portage/net-im/sim/sim-9999.ebuid merge
Всё. SIM последней версии установлен. Чтобы убедится в этом - запустите SIM, в главном меню выберите пункт "О приложении SIM" и посмотрите на версию. Должно быть написано "SIM 0.9.5 SVN"
![SIM 0.9.5 SVN SIM 0.9.5 SVN](/images/2007/sim-im.png)
Нужно отметить, что дерево исходных текстов занимает примерно семьдесят мегабайт. И, примерно, такое количество трафика придётся потратить на его загрузку.
Для того, чтобы загрузить, собрать и установить самую последнюю версию исходных текстов - просто введите команду:
ebuild /usr/local/portage/net-im/sim/sim-9999.ebuid merge
Или воспользуйтесь утилитой rep-rebuild, об установке и использовании которой можно прочитать, например, здесь.
На этом всё. Надеемся, что эта заметка окажется вам полезной.
LilFox 2007-09-23 01:57:58 (#)