Slackware/packages
А есть ли в Slackware менеджер пакетов?
Да. Не слишком навороченный, но со своими функциями вполне справляется. Основным пакетным менеджером Slackware является pkgtools, на носителе/репозитории поставляется ap/slackpkg.
Установить новые пакеты, удалить, просмотреть список установленных, а также провести базовую настройку системы (мышь, сеть, временная зона и т. д.) можно с помощью утилиты pkgtool. Не хуже с этими процедурами справляются и отдельные утилиты - installpkg, removepkg или upgradepkg.
Так, например, для того, чтобы обновить glibc можно сделать (предварительно прочитав UPGRADE.TXT):
root@linux# upgradepkg /root/slackware*/a/glibc-solibs-*.t?z
- А для обновления всей системы с установкой новых пакетов:
root@linux# upgradepkg --install-new /root/slackware*/*/*.t?z
- Но при этом поставятся все пакеты нового дистрибутива.
Далее, как уже упоминалось, в каталоге /ap присутствует фронтенд для pkgtools — slackpkg. К slackpkg есть плагин поддержки нескольких репозиториев slackpkg+
Существуют и другие менеджеры пакетов для Slackware:
spkg — «The Unofficial Slackware Linux Package Manager», тоже довольно неплохой менеджер пакетов и который может быть необходим, если вы предпочтете gslapt/slapt-get от Salix, там именно через него выполняются некоторые операции, если не во всех версиях этого дистрибутива, то по крайне мере в 14.1 точно.
Также весь функционал slackpkg предоставляет фронтенд к целому ряду популярных пакетных менеджеров под названием smartpm.
Дополнительно можно установить фронтенды с поддержкой зависимостей пакетов swaret и slapt-get. У slapt-get есть возможность указания приоритета для каждого репозитория: «default < official < preferred < custom» [1] .
Для pkgtools также существовал графический интерфейс на Qt — SlackIns, а для slapt-get — gslapt.
Для сборки пакетов из исходников есть sbopkg и slapt-src. К slapt-src есть программа с графическим интерфейсом — Sourcery.
Как собрать пакет?
SlackBuild
Написать SlackBuild, скрипт для сборки пакета — SlackBuild scripts. Таким способом собираются пакеты в основной системе, можно залезть в /source и посмотреть примеры, например: bash.
makepkg
С помощью утилиты makepkg, где-то так:
user@linux:~$ cd /usr/src/program-name user@linux:/usr/src/program_name$ ./configure user@linux:/usr/src/program_name$ make user@linux:/usr/src/program_name$ su root@linux:/usr/src/program_name# make install DESTDIR=/tmp/program-name root@linux:/usr/src/program_name# cd /tmp/program-name root@linux:/tmp/program_name# makepkg ../program-name-ver-arch-build.txz root@linux:/tmp/program_name# cd .. root@linux:/tmp/program_name# installpkg program-name-ver-arch-build.txz root@linux:/tmp/program_name# cd && rm -R /tmp/program-name
src2pkg
Если ничего из вышеперечисленного не нравится, использовать src2pkg.
Где найти готовые пакеты?
В первую очередь это http://packages.slackware.com/. Здесь в принципе все пакеты, которые вошли в релиз или входят в current.
Репозитории AlienBOB
- Slackware packages made by Alien — собранные слакбилды.
- Alien's Slackware packages — репозиторий в который время от времени Alien собирает и закидывает пакеты.
- Alien's 'ktown' repository — его репозиторий для KDE. Через этот репозиторий Вы сможете обновить Ваше KDE. Как обновлять в нем же для вашей ветки дистрибутива читайте README там все пошагово описано, например, последняя сборка для current: README (и даже рассказано, если захотите пересобрать KDE сами на своей машине). Репозиторий применим для релиза (например, для 14.1) и current.
Salix
- http://download.salixos.org/ или одно из их зеркал Repository_mirrors. Т. к. дистрибутив берет основную пакетную базу у slackware, далее они уже сами собирают отдельные пакеты и закидывают в свой реп, то почему бы не воспользоваться. Только тут стоит понимать различия, вот, например, срез репозитория от slackware: download.salixos.org/x86_64/slackware-14.1, конечно, возможно что-то там пересобрали они, но в основном пакетная база слаки, а вот собранное ими download.salixos.org/x86_64/14.1.
Slackel
- Slackel Repository — репозиторий дистрибутива который базируется на current и salix, но встречаются пакеты, которых нет в этих 2 репозиториях, например [2].
MSB
- MATE SlackBuilds (MSB) — там же адрес на репозиторий пакетов MATE (форка GNOME2). Как устанавливать читаем MSB_SLACKPKG+, в принципе установка ничем не отличается от той как если бы Вы ставили, обычные пакеты или к примеру пакеты из KTown, но если затруднения делайте, как они советуют.
SlackE17
- SlackE17 - e17 packages for Slackware — пакеты для установки e17 в Вашей Slackware.
SlaxXBMC
- SlaxXBMC — проект хоть и предоставляет свою версию дистрибутива, но в тоже время и собранные пакеты xbmc доступны и совместимы со Slackware.
WINE
- Wine Is Not an Emulator (WINE) — пакеты для Slackware
Далее, на http://linuxpackages.net и http://slacky.eu. Для поиска пакетов можно воспользоваться сайтом slakfinder.org. Оба репозитория можно подключить к slapt-get и swaret, для этого читайте faq на соответствующих сайтах
Еще есть http://darkstar.ist.utl.pt/slackware/addon, на котором собрано довольно много из выше перечисленных бинарных пакетов и скриптов SlackBuild (имеются также альтернативные сборки Gnome).
Кроме того можно брать пакеты из Zenwalk и, вероятно, Vector Linux (новые пакеты сжимаются lzma и имеют расширение .tlz. Установка .tlz пакетов требует наличие Slackware версии старше 12.2. Slackware 13.0 использует второе поколение lzma — xz, пакеты для 13-й версии имеют расширение .txz)
Где найти готовые SlackBuild'ы для сборки пакетов?
- Множество готовых SlackBuild'ов лежат на SBo (slackbuilds.org), с их помощью можно легко и просто собрать программу с нужными опциями, достаточно лишь положить в ту же директорию архив с исходниками и запустить скрипт.
- В большинстве случаев в самих собранных пакетах сборщики кладут SlackBuild'ы в пакет, открыв его в своем любимом архиваторе, найти можно в usr/doc/$PRGNAM-$VERSION. Те, кто не боятся проблем, могут использовать Slackware Current — текущее состояние разработки дистрибутива.
- Так же, в практически во всех репозиториях (которые были приведены выше) можно найти эти билды. Лежать они могут в том месте, где и сам пакет или в каталоге с названием src или source. Вот, как это реализовано у самого дистрибутива slackware в качестве примера MPlayer
- Стоит отметить, если Вы будете искать SlackBuild'ы у Salix , то скорей всего Вы их не найдете, т. к. там используется SLKBUILD, ничего страшного нет пакеты все равно совместимы, просто скрипт/системы сборки у них такой/ва и это все равно не должно Вам мешать подсмотреть ключи, операции над исходниками во время сборки, если есть необходимость при написании SlackBuild'а.
Плюс еще несколько дополнительных репозиториев:
- Alien's SlackBuilds содержит пакеты и билды, собранные при помощи них
- PhantomX, a collection of personal SlackBuilds
- willysr repositories SlackBuilds
Где ещё могут быть найдены уже собранные пакеты и написанные SlackBuild'ы?
Пользоваться готовыми пакетами от сторонних источников крайне не рекомендуется, т. е. это может противоречить в первую очередь безопасности и, вообще-то, стабильности уже собранного пакета, но никто не запрещает воспользоваться готовым слакбилдом, просмотреть его (и файлы к нему: описание, патчи, скрипты какие-нибудь) и на основе его собрать пакет, так что, как говорится: «доверяй, но проверяй» ©.
- http://slakfinder.org/slackpkg+/src/repositories.txt — Список поддерживаемых репозиториев для slackpkg+, в которых имеются уже собранные пакеты и которые также можно установить при помощи slackpkg+ (что это такое — читать выше)
- http://slackware.org.uk/ — Зеркало, на котором хранятся отзеркаленные репозитории различных slack-дистров-проектов, в том числе есть и пакеты, и слакбилды
- http://www.microlinux.fr/slackware/ — Extra Software for Slackware Linux, пакеты и slackbuild'ы проекта MLED, ссылка на git
- http://rlworkman.net/pkgs/ — Robby Workman's Slackware Packages
- http://schoepfer.info/slackware.xhtml — репозиторий пользователя, совместим со slapt-get, slackpkg.
- http://www.slackers.it/packages/ — пакеты и slackbuild'ы, git написанных SlackBuild'ов из этого ресурса
- http://ponce.cc/slackware/ — пакеты и slackbuild'ы, присутствуют lxde и razor-qt, есть поддержка rsync, информация от автора на LQ
- http://www.dawoodfall.net/ — David Woodfall's SlackBuilds and Scripts
- https://slackonly.com/ — Slackonly: packages built from SBo — SBo в бинарном варианте
- http://slack.isper.sk/pub/
- http://www.droplinegnome.org/#download
- http://sourceforge.net/projects/portable/files/
- http://www.nielshorn.net/slackware/slack_pkg.php
Где взять GNOME?
Несмотря на то, что Патрик начиная с версии 10.2 удалил Gnome из дистрибутива, на данный момент существуют сторонние сборки гнома для Slackware:
- Dropline — Следует помнить что Dropline дополнительно устанавливает в систему PAM и заменяет некоторые системные пакеты из категорий l/, x/ и xap/.
Экстремалы могут воспользоваться системой сборки Garnome.
MATE
- MSB (MATE SlackBuilds) — пакеты и SlackBuild'ы
- Salix Mate — версия Salix с MATE, для установки на систему без данного DE можно воспользоваться их нем же репозиторием, установив пакеты из salix-репозитория
- MATE installation — документация и информация по репозиториям и установке MATE в Slackware и Salix на Mate Desktop Environment wiki
Cinnamon
- Cinnamon SlackBuilds от willysr