[2025-jun-17] The SlackDocs Wiki has moved to a new server, in order to make it more performant.
Содержание
Сборка и установка пакетов с помощью sbopkg
Sbopkg — это консольный инструмент с текстовым интерфейсом (на базе диалоговых окон), предназначенный для синхронизации с репозиторием SlackBuilds.org («SBo»), который представляет собой коллекцию сторонних сценариев SlackBuild для сборки пакетов Slackware. Программа имеет интерфейс на базе библиотеки curses, который позволяет выбирать и компоновать программы, которые вы хотите скомпилировать из исходного кода в готовые пакеты. Её также можно использовать в неинтерактивном режиме, если вы заранее знаете свою цель — в таком случае она работает по принципу «запустил и забыл».
Следующая информация поможет вам установить sbopkg и запустить его в Slackware.
sbopkg собирает пакеты Slackware. Как и в случае с любой другой программой управления пакетами в Slackware, для использования этой программы вам нужно быть root! Выполните su -
чтобы получить командную строку root с правильно настроенным окружением.
Скачивание sbopkg:
Скачайте sbopkg по ссылке: https://www.sbopkg.org/downloads.php
Вы можете получить исходные коды и собрать пакет самостоятельно или же просто взять готовый пакет Slackware. В следующем разделе этой статьи предполагается, что вы скачали уже готовый собранный пакет.
Установка sbopkg
- Предполагая, что скачанный вами в текущий каталог файл пакета
sbopkgимеет имя sbopkg-0.38.0-noarch-1_wsr.tgz, командаinstallpkgдля установки sbopkg (или его обновления, если он уже присутствовал в вашей системе) выглядит следующим образом:
$ su - # cd /path/to/downloaded/file/ # upgradepkg --install-new sbopkg-0.38.0-noarch-1_wsr.tgz
Настройка sbopkg
- Прочитайте документацию
sbopkg! Посетите https://www.sbopkg.org/docs.php , а также не забывайте, что дляsbopkgсуществует man-страница. - При первом запуске
sbopkgвас спросят, согласны ли вы с тем, чтобы программа создала необходимые конфигурационные файлы:
# sbopkg
The following directories do not exist:
Variable Assignment
-------- ----------
REPO_{ROOT,NAME,BRANCH} -> /var/lib/sbopkg/,SBo/,14.2
LOGFILE directory -------> /var/log/sbopkg
QUEUEDIR ----------------> /var/lib/sbopkg/queues
SRCDIR ------------------> /var/cache/sbopkg
TMP ---------------------> /tmp/SBo
You can have sbopkg create them or, if these values are incorrect, you can
abort to edit your config files or pass different flags.
(C)reate or (A)bort?:
Выберите C чтобы создать эти необходимые каталоги.
После этого программа отобразит свой главный экран:
- Ваша первая задача — синхронизироваться с репозиторием SlackBuilds.org, то есть позволить
sbopkgсоздать локальную копию всех записей SlackBuild с удаленного сервера для той версии Slackware, которую вы используете. Вы можете использовать для этого либо первый пункт меню на главном экране интерфейса curses, либо сделать это из командной строки:# sbopkg -r Syncing with the remote repository into /var/lib/sbopkg/SBo/14.2. receiving incremental file list <long list of filenames...> sent 451288 bytes received 36904793 bytes 371702.30 bytes/sec total size is 35271012 speedup is 0.94 Rsync with the SBo repository for Slackware 14.2 complete. Importing SBo repository for Slackware 14.2 GPG Key... Import done. ***SYNC COMPLETE***
- Теперь вы готовы к выбору пакетов, которые вы хотите, чтобы
sbopkgсобрал из исходного кода.
Использование файлов очередей (Queuefiles) в sbopkg
Программа sbopkg сама по себе обеспечивает высокий уровень автоматизации: интерактивный интерфейс на базе curses помогает вам справляться с рутиной по скачиванию архивов с исходным кодом, позволяя выбирать сразу несколько программ, а затем компилировать и упаковывать их все за один проход.
Но вы можете автоматизировать этот процесс ещё сильнее, используя sqg — генератор очередей для sbopkg (входит в состав основного пакета начиная с версии 0.38.0).
sqg может генерировать файл очереди (queuefile) для каждого или для всех пакетов в репозитории SBo:
sqg -p <filezilla> # this will only generate queue file for filezilla package only sqg -a # this will generate queue files for all packages in SBo repository
Обратите внимание, что каждый раз, когда объявляется публичное обновление или становится доступен новый репозиторий, рекомендуется запускать команду sqg -a для генерации обновленных файлов очередей, поскольку зависимости могут быть добавлены или удалены.
Пример использования sbopkg
В качестве примера давайте установим Gramps. В файле очереди для Gramps перечислены следующие зависимости в порядке их установки:
orbit2 pyorbit libbonobo gnome-mime-data gnome-vfs libgnome gnome-python gramps
Загрузите файл очереди «gramps.sqf» в curses-интерфейс программы sbopkg, и Gramps будет успешно собран в вашей системе Slackware 14.2 и установлен вместе со всеми своими зависимостями.
В качестве альтернативы вы можете использовать менее интерактивный интерфейс командной строки:
sbopkg -i gramps
Both a queuefile and a package were found with the name "gramps".
Use (Q)ueuefile, (P)ackage, or (A)bort?: q
###########################################
New queue process started on:
Fri Aug 19 04:57:12 WIB 2016
###########################################
+++++++++++++++++++++++++++++++++++++++++++
PRE-CHECK LOG
Using the SBo repository for Slackware 14.2
Queue Process: Download, build, and install
ORBit2:
Checking GPG for ORBit2.tar.gz ... OK
Processing ORBit2 2.14.19-3
Using original .info file
Using original SlackBuild file
No build options selected.
pyorbit:
Checking GPG for pyorbit.tar.gz ... OK
Processing pyorbit 2.24.0-1
Using original .info file
Using original SlackBuild file
No build options selected.
libbonobo:
Checking GPG for libbonobo.tar.gz ... OK
Processing libbonobo 2.32.1-3
Using original .info file
Using original SlackBuild file
No build options selected.
gnome-mime-data:
Checking GPG for gnome-mime-data.tar.gz ... OK
Processing gnome-mime-data 2.18.0-2
Using original .info file
Using original SlackBuild file
No build options selected.
gnome-vfs:
Checking GPG for gnome-vfs.tar.gz ... OK
Processing gnome-vfs 2.24.4-3
Using original .info file
Using original SlackBuild file
No build options selected.
libgnome:
Checking GPG for libgnome.tar.gz ... OK
Processing libgnome 2.32.1-2
Using original .info file
Using original SlackBuild file
No build options selected.
gnome-python:
Checking GPG for gnome-python.tar.gz ... OK
Processing gnome-python 2.28.1-1
Using original .info file
Using original SlackBuild file
No build options selected.
gramps:
Checking GPG for gramps.tar.gz ... OK
Processing gramps 3.4.3-1
Using original .info file
Using original SlackBuild file
No build options selected.
+++++++++++++++++++++++++++++++++++++++++++
Pre-check complete.
Do you wish to proceed based on the search results above? Packages not
found will be skipped during the process.
(P)roceed or (Q)uit?: P
При нажатии P начнётся сборка и установка указанных пакетов.
Остальные пакеты можно установить по такому же принципу.
Ссылки по sbopkg
Источники
- Originally written by ldkraemer
- Contributions by Eric Hameleers
- Contributions by Willy Sudiarto Raharjo
- Translated by Dmitri Meyer