Sbopkg
Една от най-честите критики към Slackware е липсата на богато хранилище с допълнителен софтуер. Съществуващите (неофициални) пакети в хранилища като linuxpackages [1] и slacky [2], понякога са смятани за ненадеждни, а тяхното използване за непрепоръчително. За много потребители, инсталирането на допълнителни програми представляваше ръчното им компилиране и пакетиране с checkinstall [3]. С появата на SlackBuilds.org (SBo) [4] през 2006 г, създаването и инсталирането на пакети от изходен код стана значително по-лесно. SBo представлява колекция от скриптове за компилирането на софтуер. Хранилището е разделено на версии, съответстващи на версиите на Slackware. За да се инсталира дадена програма, например gnumeric е необходимо първо да се свали архивa съдържащ скрипта (в случая gnumeric.tar.gz), от съответната секция [5]. След разархивиране на gnumeric.tar.gz, новосъздадената директория съдържа няколко файла:
./gnumeric
README (информация за програмата, инсталирането ѝ, и зависимости)
doinst.sh (след-инсталационни скриптове)
gnumeric.SlackBuild (скрипт за създаване на пакет)
gnumeric.info (информация за архивирания изходен код)
slack-desc (описание на пакета, което се появява в pkgtool)
Архивът на изходния код трябва да се намира в същата директория наред с гореизброените файлове. Стартирането на gnumeric.SlackBuild е с администраторски права, и след компилацията готовият пакет се намира в /tmp обозначен с окончанието _SBo.
Всичко това може да се улесни и полу-автоматизира със sbopkg [6], инструмент за инсталиране на софтуер от SBo. Проектът е започнат от Chess Griffin [7] през 2008 г, а в момента програмата се разработва от Mauro Giachero и slakmagik. Изгледът на sbopkg (Фиг. 1) е ncurses-базиран и напомня на pkgtool и slackpkg.
Фигура 1. Стартовото меню на sbopkg.
Конфигурационният файл sbopkg.conf, се намира в
Други важни за sbopkg места (могат да се променят от sbopkg.conf), включват:
/var/lib/sbopkg/SBo (колекцията със SlackBuild скриптове)
/var/cache/sbopkg (архивираният изходен код на инсталираните програми)
/var/lib/sbopkg/queues (build queues, вижте по-долу)
/tmp/SBo (работната директория)
/tmp (готовите пакети се създават тук)
Първото нещо след инсталация на програмата е да се избере опцията Sync, която ще синхронизира sbopkg с хранилището на SBo. Ако е необходимо да се промени хранилището, това става от Utilities > Repository (Фиг. 2).
Фигура 2. Избор на хранилище.
Интересна и много удобна възможност на програмата са така наречените build queues. Например, gnumeric има като зависимост goffice, който има като зависимост GConf2, и т.н. Най-лесният начин да се реши този проблем е да се свали готовата колекция от build queues [8]. След разархивиране, файловете с разширение *.sqf се поставят в:
След рестартиране на sbopkg, достатъчно е да се избере Queue > Load за да се покаже списък на всички готови build queues. Избирайки gnumeric и след това Process, sbopkg ще покаже неговите непосредствени зависимости и на свой ред техните собствени зависимости (Фиг 3). След натискане на OK, трябва да се укаже пакетите да се инсталират веднага след като бъдат създадени (Фиг. 4), преодолявайки елегантно проблема със зависимостите. Разбира се, build queues могат да се създават и ръчно, не само в случаите когато е необходимо разрешаване на зависимости. Например, за да се инсталират добавки към XFCE е достатачно да се потърси “xfcе”, чрез Search и от списъка да се изберат желаните добавки чрез Add to Queue (Фиг. 5). След това просто Main Menu > Queue > Process.
Фигура 3. Показване на build queue. ORBit2 и GConf са обозначени като "new", тъй като са инсталирани от /extra хранилището на Slackware и им липсва обозначението _SBo.
Фигура 4. Инсталиране на пакетите, веднага след тяхното създаване.
Фигура 5. Ръчно добавяне на софтуер към build queue.
Препратки:
- http://www.linuxpackages.net/
- http://slacky.eu/
- http://www.asic-linux.com.mx/~izto/checkinstall/ и ftp://ftp.slackware.com/pub/slackware/slackware-11.0/extra/checkinstall/
- http://slackbuilds.org/
- http://slackbuilds.org/repository/13.37/office/gnumeric/
- http://sbopkg.org/
- http://blog.chessgriffin.com/
- http://sbopkg.org/queues.php и http://gitorious.org/sbopkg-slackware-queues