Алексей Федорчук - Погружение в Salix
Простота использования slapt-src усугубляется элементарностью его настройки: все его конфигурируемые параметры лежат в файле /etc/slapt-get/slapt-srcrc и сводятся к указанию каталога для сборки пакетов, их «выходному» формату и перечислению подключённых репозиториев. Однако к вопросу настройки я ещё вернусь в следующей части цикла, которая будет посвящена Sourcery – графической настройке над slapt-src.
Глава 9. Управление пакетами: оболочка Sourcery
Предмет девятой части цикла – Sourcery, графическая оболочка для slapt-src. Она позволяет выполнять действия со слакбилдами если не проще, то, безусловно, наглядней. Если утилита slapt-src – средство, общее для всех дистрибутивов семейства Slackware, то её графическая оболочка Sourcery – это фирменный инструмент дистрибутива Salix, разработанный и поддерживаемый его создателем и одним из основных майнтайнеров – Геогием Влахавасом. Что, разумеется, не значит, будто её нельзя использовать и в составе родительской системы. Однако Salix – единственный дистрибутив, в котором Sourcery установлен по умолчанию.
Вступление
Sourcery запускается из одноимённого пункта раздела Система главного меню Xfce, для начала требуя, как и Gslapt, ввода пользовательского пароля:
Рисунок 9-1. Запрос пароля
После этого при первом запуске предлагается скачать список доступных слакбилдов:
Рисунок 9-2. Первый запуск
И если с этим предложением согласиться (а отказываться от него нет смысла), он будет выглядеть следующим образом:
Рисунок 9-3. Вид по умолчанию
Интерфейс Sourcery похож на таковой Gslapt, только ещё проще: две управляющие кнопки для обновления списка слакбилдов (что было проделано только что) и выполнения всех заданий (которых пока нет), строка поиска, контекстное меню из двух пунктов (Установить – точнее, отметить для установки, и Получить информацию), и главное меню, к необходимым некоторым пунктам которого мы будем обращаться по ходу дела.
Пример применения
Порядок работы с Sourcery очевиден. Сначала в списке слакбилдов (или, что гораздо проще, через строку поиска) отыскивается требуемый пакет. Предположим, это будет TauDEM – пакет для работы с картографическими данными в DEM-формате (я продолжаю намекать, кому может быть полезен дистрибутив Salix). Затем на него (через главное или контекстное меню) ставится отметка Установить:
Рисунок 9-4. Выбор пакета для установки
И, в принципе, можно нажимать кнопку исполнения. Однако перед этим очень невредно обратиться к пункту контекстного меню Получить информацию, который выведет такую панель – здесь следует обратить внимание на строку Зависимости, содержащей в данном случае единственный пакет openmpi:
Рисунок 9-5. Информационная панель: общие сведения о пакете
Содержание следующей вкладки, Описание, понятно без комментариев:
Рисунок 9-6. Информационная панель: описание пакета
Обычно внимательного ознакомления требует вкладка Файл README – здесь могут содержаться сведения об опциях сборки пакета. Если таковые обнаружатся – их надо задать через пункт меню Установка опций вот таким образом:
Рисунок 9-7. Установка опций компиляции
Однако в нашем примере их нет. Вместо этого мы видим не менее полезную информацию – описание функционала пакета, краткое, но достаточное:
Рисунок 9-8. Информационная панель: файл README
После этого кнопкой выполнения, через меню Файл -> Выполнить или комбинацией клавиш Control+Enter вызывается панель подтверждения серьёзности намерений:
Рисунок 9-9. Подтверждение установки
При этом сообщается, что будет установлен не только «заказанный» пакет, то и его зависимости – тот самый пакет openmpi, который был указан в общих сведениях о пакете (см. рис. 9-5).
После этого слакбилды в порядке, требуемом для удовлетворения зависимостей, отправляются на выполнение – то есть в нашем примере сначала openmpi, а затем уже TauDEM. Ход выполнения заданий отображается в соответствующем окне, как в обычном терминале при сборке через slapt-src:
Рисунок 9-10. Выполнение заданий
По завершении отработки слакбилдов должно появиться сообщение, что все задания успешно выполнены:
Рисунок 9-11. Успешное завершение работы
Однако успешное выполнение слакбилда в общем случае не гарантируется – оно может оборваться, например, в результате нарушения зависимостей, не учтённых его автором. В этом случае в окне выполнения выводится сообщение об ошибке – именно так и произошло в нашем примере:
Рисунок 9-12. Сообщение об ошибке выполнения слакбилда
Однако здесь же предлагается и путь к её исправлению – для этого достаточно нажать кнопку Просмотреть, что выведет полный протокол всех выполнявшихся действий, в конце которых ошибка и крылась:
Рисунок 9-13. Отчёт о выполнении слакбилда
В данном случае для сборки пакета TauDEM потребовалась утилита cmake – и действительно, в базовой установке Salix её нет, что автору слакбилда не пришло в голову. Однако она имеется в стандартном репозитории и легко может быть установлена из бинарного пакета, например, с помощью slapt-get. После чего процедуру сборки слакбилда придётся повторить (с тем исключением, что зависимость пакета TauDEM, пакет openmpi, уже собрана и установлена). Наградой за что будет вожделенное сообщение об успехе (см. рис. 9-11).
Сразу замечу, что список отчётов обо всех выполненных через Sourcery действиях сохраняется в соответствующих лог-файлах, список которых можно вызвать через меню Просмотр -> Отчёты или горячими клавишами Control+L:
Рисунок 9-14. Список отчётов о выполнении слакбилдов
И каждый из этих отчётов, как успешный, так и не успешный, доступен для просмотра в любой момент.
Немного о настройке
Вот и всё, что нужно для успешного применения Sourcery. Осталось сказать несколько слов о его настройках. Поскольку это – оболочка для slapt-src, то главные из них концентрируются в том же файле /etc/slapt-get/slapt-srcrc, и могут быть изменены его прямым редактированием.
Однако имеется и визуальное средство для конфигурирования, предоставляющее некоторые дополнительные возможности. Это — панель Настройка, вызываемая через меню Правка -> Параметры (или через комбинацию Control+P). Здесь, во-первых, можно пополнить список источников слакбилдов и их приоритет (он задаётся порядком в списке, изменяемым простым перетаскиванием):
Рисунок 9-15. Панель настроек: источники скриптов
Впрочем, на мой взгляд, пополнять список репозиториев большого смысла не имеет, ибо, например, главный источник слакбилдов для всех времён и народов – SlackBuilds.org не содержит информации о зависимостях. А без неё Sourcery теряет всё свою прелесть.
Далее, можно изменить каталог для хранения слакбилдов и всего, что с ними связано: скачанных архивов исходных текстов, результатов их распаковки, собранных бинарных пакетов, входящих в их состав файлов, предназначенных уже для прямого включения в файловую иерархию. По умолчанию это /usr/src/slapt-src:
Рисунок 9-16. Панель настроек: рабочий каталог
Поскольку в этом каталоге содержится абсолютно всё, что может потребоваться применителю при желании модифицировать не только слакбилд, но и исходные тексты пакета, возможно, у него появится и желание поместить всё это хозяйство в какое-либо иное место. Однако более востребованная функция здесь – скорее очистка каталога от всех этих «продуктов жизнедеятельности» Sourcery (точнее, slapt-src).
Наконец, можно попросить Sourcery разрешать зависимости – именно попросить, потому что, как уже неоднократно подчёркивалось, он это сделает только в том случае, если информация о зависимостях данного слакбилда имеется в содержащем его репозитории:
Рисунок 9-17. Панель настроек: разрешение зависимостей
Так как оба штатных источника слакбилдов для Salix разрешение зависимостей поддерживают, озвученная «просьба» высказана по умолчанию. Так что скорее здесь может оказаться востребованной возможность разрешение зависимостей отключить: например, при включении хранилищ слакбилдов, в которых отношение к зависимостям несколько иное, нежели у разработчиков Salix.
Глава 10. «Фирменные» утилиты