SLACKBUILD REQUIRES:
в которой перечисляются зависимости пакета, собираемого данным слакбилдом (если они у него есть, разумеется). Например, в файле salix.hostingxtreme.com/sbo/14.1/SLACKBUILDS.TXT последние строки описания слакбилда для пакета EMBOSS выглядят так:
SLACKBUILD MD5SUM: cc3fca80cb0618deb10fa0d29fe90e4bSLACKBUILD MD5SUM_x86_64: SLACKBUILD REQUIRES: jdk SLACKBUILD SHORT DESCRIPTION: EMBOSS (European Molecular Biology Open Software Suite)
Тогда как в файле slackbuilds.org/14.1/SLACKBUILDS.TXT аналогичные строки имеют вид:
SLACKBUILD MD5SUM: cc3fca80cb0618deb10fa0d29fe90e4bSLACKBUILD MD5SUM_x86_64: SLACKBUILD SHORT DESCRIPTION: EMBOSS (European Molecular Biology Open Software Suite)
Именно различие в одну строку и позволяет учитывать зависимости при использовании слакбилдов из официального репозитория Salix в отличие от репозитория SlackBuilds.org. Хотя сами по себе слакбилды в них ничем между собой не различаются – более того, это просто одни и те же слакбилды.
А теперь давайте посмотрим, как это выглядит на практике. Для чего рассмотрим утилиту slapt-src, специально предназначенную для работы со слакбилдами.
Утилита slapt-src
Как уже говорилось, утилита slapt-src – не специфичный для Salix инструмент. Однако именно в этом дистрибутиве она заиграла всеми своими красками – в первую очередь благодаря описанным в предыдущем разделе его официальным репозиториям.
Утилита slapt-src написана тем же автором – Язоном Вудвардом, что и slapt-get, и работает в том же стиле.
Конструкция её команды требует указания действия (action — аналог target в slapt-get), в большинстве случаев – аргумента, то есть имени slackbuild'а, и, возможно, опций. Полный список действий и опций можно получить командой
$ slapt-src --help
или просто запустив slapt-src в «голом» виде. В отличие от slapt-get, в этой утилите какждое действие и каждая опция имеют как полную, так и краткую форму – так, вместо --help можно ввести -h. Действия и опции сопровождаются кристально ясными описаниями (в том числе и на русском), так что я остановлюсь .
Порядок действий при использовании slapt-src – точно тот же, что и при работе с slapt-get. Первое действие – запуск команды
$ sudo slapt-src -u
которая скачает данные о слакбилдах из подключённых репозиториев. А затем – с помощью
$ slapt-src -l
просматривается список всех доступных слакбилдов или посредством
$ slapt-src -s slackbuildname
отыскивается нужный. При необходимости командой
$ slapt-src -w [или --show] pkgname
просматривается его описание. После чего можно приступать к сборке:
$ slapt-src -i slackbuildname
Имя слакбилда всегда совпадает с именем пакета, который собирается с его помощью.
Как обычно, всё сказанное проще проиллюстрировать на примере, что я сейчас и проделаю. В конце прошлого раздела было приведено описание слакбилда для пакета EMBOSS – вот он примером и послужит. Во-первых, в силу своей компактности. А во-вторых – как иллюстрация того, для каких пакетов в принципе можно обнаружить слакбилды. Что косвенно указывает, на кого, в том числе, ориентирован дистрибутив Salix (как, впрочем, и материнская Slackware).
Начинаем, разумеется, с поиска:
$ slapt-src -s EMBOSSEMBASSY:6.6.0 - EMBASSY (EMBOSS associated software) EMBOSS:6.6.0 - EMBOSS (European Molecular Biology Open Software Suite)
Теперь можно просмотреть информацию о пакете:
$ slapt-src -w EMBOSSИмя слакбилда: EMBOSS Версия слакбилда: 6.6.0 Категория слакбилда: academic/EMBOSS/ Описание слакбилда: EMBOSS (European Molecular Biology Open Software Suite) Файлы слакбилда:
EMBOSS.SlackBuild EMBOSS.desktop EMBOSS.info EMBOSS.png README References doinst.sh slack-desc Требования слакбилда: jdk
Что делается, в том числе, и для определения его зависимостей, которые мы видим последней строкой вывода. Однако это – процедура совсем не обязательная. Потому что если приступить к установке командой
$ sudo slapt-src -i EMBOSS
то нам о них тут же после ввода пароля напомнят – и не просто напомнят, а предложат установить:
Следующие пакеты будут установлены: EMBOSS Следующие зависимые слакбилды будут собраны и установлены: jdk Продолжить? [y/N]
И если согласился с предложением, начнётся скачивание обоих слакбилдов и их исполнение в том порядке, который требуется зависимостями.
Простота использования slapt-src усугубляется элементарностью его настройки: все его конфигурируемые параметры лежат в файле /etc/slapt-get/slapt-srcrc и сводятся к указанию каталога для сборки пакетов, их «выходному» формату и перечислению подключённых репозиториев. Однако к вопросу настройки я ещё вернусь в следующей части цикла, которая будет посвящена Sourcery – графической настройке над slapt-src.
Глава 9. Управление пакетами: оболочка Sourcery
Предмет девятой части цикла – Sourcery, графическая оболочка для slapt-src. Она позволяет выполнять действия со слакбилдами если не проще, то, безусловно, наглядней. Если утилита slapt-src – средство, общее для всех дистрибутивов семейства Slackware, то её графическая оболочка Sourcery – это фирменный инструмент дистрибутива Salix, разработанный и поддерживаемый его создателем и одним из основных майнтайнеров – Геогием Влахавасом. Что, разумеется, не значит, будто её нельзя использовать и в составе родительской системы. Однако Salix – единственный дистрибутив, в котором Sourcery установлен по умолчанию.