Алексей Федорчук
В репозиториях Эрика не предусмотрено контроля зависимостей, поэтому при работе с ними slapt-get
и Gslapt оказываются бессильными. Так что следовало прибегнуть к более иной системе управления пакетами — slackpkg
в сочетании с плагином для неё, slackpkg+
. Первый пакет элементарно находится в репозитории Salix’а:
$ sudo slapt-get --search slackpkg slackpkg-2.82.0-noarch-13 [inst=нет]: slackpkg
Откуда он и устанавливается:
$ sudo slapt-get --install slackpkg
А пакет slackpkg+ следует скачать с сайта его разработчика, Маттео Россини aka zerouno. И затем установить через
$ sudo installpkg path2/slackpkg+-1.3.2-noarch-1mt.txz
Или, как советуют резонные люди, путём
$ sudo upgradepkg --install-new path2/slackpkg+-1.3.2-noarch-1mt.txz
Далее следует отредактировать два новообразованных конфига — /etc/slackpkg/slackpkg.conf
и /etc/slackpkg/slackpkgplus.conf
. Как именно это сделать в общем случае — подробно описано в man (5) slackpkg.conf для первого первого и в /usr/share/doc/slackpkg+-1.3.2/README
для второго (или русском переводе последнего). Поэтому я остановлюсь только на своих действиях применительно поставленной задаче — апгрейду KDE.
В /etc/slackpkg/slackpkg.conf
я ограничился самой минимальной правкой — указанием архитектуры
ARCH=x86_64
и отключением проверки ключей GPG
CHECKSIZE=off
поскольку ряд рекомендованных Маттео сторонних репозиториев таковые не поддерживают. Далее в файле /etc/slackpkg/mirrors
, описывающем зеркала официального репозитория Slackware, я раскомментировал единственную строку в секции Slackware64-current —
http://mirror.yandex.ru/slackware/slackware64-current/
Не из патриотических побуждений, и не в низкопоклонстве перед маленьким гигантом большого секса поиска, а по сугубо практическим причинам: в наших условиях зеркало Яндекса реально оказывается обычно самым быстрым.
Затем я выполнил предписанные команды:
$ sudo slackpkg update gpg $ sudo slackpkg update
После чего взялся за «плюсовой» конфиг.
Как известно, в первозданном своём виде slackpkg
работает с любым репозиторием, но только единственным, и при условии, что этот репозиторий — официальный Slackware’вский. Его работу со множественными сторонними репозиториями как раз и обеспечивает плагин slackpkg+, но после редактирования его собственного конфига. Каковая применительно к моей задаче свелась к приведению нескольких строк из /etc/slackpkg/slackpkgplus.conf
к следующему виду:
# Приоритет репозиториев: PKGS_PRIORITY=( ktown:.* ) # "Плюсуемый" репозиторий: REPOPLUS=( ktown ) # И его адрес для Slackware current, x86_64: MIRRORPLUS['ktown']=http://alien.slackbook.org/slackware/ktown/current/latest/x86_64/
Здесь ktown — имя собственное репозитория Эрика, в котором хранятся собранные им пакеты актуальных на данный момент версий KDE, на данный момент latest
— это KDE 4.14.1. Последнюю строку можно было бы заменить на такую:
# Тестовая комбинация из KDE Frameworks 5.2.0 и Plasma 5.0.2 для Slackware current MIRRORPLUS['ktown']=http://alien.slackbook.org/slackware/ktown/current/testing/x86_64/
Но я этого делать не стал.
Надо сказать, что указанный репозиторий Эрика отличается исключительной задумчивостью, скорость скачивания с него бывает иногда вполне модемной. Есть его зекрало:
#MIRRORPLUS['ktown']=http://taper.alienbase.nl/mirrors/alien-kde/current/latest/x86_64/
Однако оно у меня при выполнении обязательной заключительной процедуры
$ sudo slackpkg update
выдало сообщение об ошибке контрольных сумм, и «плюсоваться» отказалось. Как, впрочем, и все остальные репозитории, которые Маттео указывает в качестве совместимых в /usr/share/doc/slackpkg+-1.3.2/repositories.txt
, и которые показались мне полезными (restricted
от Alien Bob’а, slackers, slackel). Не прошёл проверку на вшивость контрольных сумм и репозиторий slackpkgplus’а:
# use this to keep the slackpkg+ package updated #MIRRORPLUS['slackpkgplus']=http://slakfinder.org/slackpkg+/
А вот репозиторий Маттео в ипостаси Zerouno испытание выдержал:
# Slackware current - x86_64 #MIRRORPLUS['zerouno']=http://www.z01.eu/repo-slack/slackware64-current/
Правда, для себя я в нём ничего полезного не углядел. Так что, повторяю, ограничился «плюсованием» ktown’а — и приступил к апгрейду KDE.
Ошибки контрольных сумм на указанных репозиториях обычно вызваны неудачно выбранным временем обновления, совпавшим по той или иной причине с обновлением того самого зеркала и его нахождения в рассогласованом состоянии (суммы обновились, а пакеты ещё нет, или наоборот), бывает.
Спасибо, я что-то подобное и подозревал…