# Руководство TazPKG

## НАЗВАНИЕ

TazPKG — менеджер пакетов в системе SliTaz GNU/Linux.

## СИНТАКСИС

    tazpkg [команда] [пакет|папка|шаблон|список|категория|--опции] [папка|--опции]

## ОПИСАНИЕ

TazPKG — это сверхлегкий (~ 80 КБ) менеджер пакетов, позволяющий устанавливать, выдавать список, загружать, обновлять и удалять бинарные пакеты в системе GNU/Linux. TazPKG предоставляет команды для поиска и создания пакетов, он был создан независимо от проекта. Пакеты с расширением *.tazpkg — это архивы CPIO, содержащие сжатую при помощи GZip файловую систему, рецепт и дополнительное описание. TazPKG также управляет зависимостями на основе рецептов, находящихся в пакетах. Каждый рецепт содержит полную информацию о пакете, а также может содержать пре- и пост-установочные функции. Тот же самый рецепт использует Cookutils для компиляции исходников и создания пакетов `.tazpkg`.

TazPKG разработан полностью с нуля, он написан на скрипте, совместимом с Bash. TazPKG работает под управлением Ash, который входит в состав проекта BusyBox. TazPKG распространяется под свободной лицензией GNU GPL v3.

## КОМАНДЫ

### list

Список пакетов, установленных в системе. Эта команда может выводить список всех установленных пакетов, список категорий, список пакетов определенной категории, и список пакетов заблокированных от обновления. Вы можете также использовать команду `search` для вывода списка на основе условия или названия пакета:

    # tazpkg list
    # tazpkg list cat
    # tazpkg list категория
    # tazpkg list blocked

### xhtml-list

Эта команда сохраняет список всех пакетов, установленных в системе, в файл формата xHTML для просмотра в браузере. Команду может запускать обычный пользователь, она создает файл `installed-packages.html` в той папке, откуда она была запущена. Обратите внимание, что вы можете изменить имя файла с помощью командной строки:

    # tazpkg xhtml-list
    # tazpkg xhtml-list имя-списка.html

### list-mirror

Список пакетов, доступных на зеркале. Эта команда покажет файл `packages.list`, загруженный с зеркала. Если этого файла нет, вам будет предложено запустить `tazpkg recharge` с правами администратора (root), чтобы получить список доступных пакетов. Параметр `--diff` позволяет отобразить различия между новым и текущим списками пакетов:

    # tazpkg list-mirror
    # tazpkg list-mirror --diff

### info

Показать всю информацию по интересующему вас пакету. Информация содержится в рецепте пакета — его версия, категория, разработчик, сайт и все зависимости (см. также Cookutils для получения дополнительной информации по рецептам):

    # tazpkg info busybox

### desc

Описание пакета (если оно существует). Эта команда выводит файл `description.txt` из каждого пакета (простой текстовый файл, шириной до 80 символов, чтобы поместиться в стандартном терминале):

    # tazpkg desc busybox

### list-config

Список конфигурационных системных файлов. Параметр `--box` отображает список в виде таблицы:

    # tazpkg list-config
    # tazpkg list-config --box

### list-files

Список всех файлов, которые устанавливаются при установке пакета. Эта команда просто читает и отображает файл `files.list` каждого пакета (он создается автоматически при создании пакета, а также используется для удаления файлов при удалении пакета). Чтобы получить список файлов, установленных пакетом bc:

    # tazpkg list-files bc

### search

Поиск пакета по имени владельца или названию пакета. Эта команда будет искать в списке установленных пакетов и в списке пакетов, доступных на зеркале. Для того, чтобы получить новейший список пакетов с зеркала, просто запустите `tazpkg recharge` перед началом проведения поиска:

    # tazpkg search gcc

### search-file

Эта команда ищет файл среди всех файлов, которые были установлены с пакетами. Это бывает очень полезно, когда нужно найти полный путь к файлу или определить, присутствует ли файл в системе. Пример:

    $ tazpkg search-file libnss

### install

Эта команда позволяет устанавливать ранее загруженный пакет с расширением `.tazpkg`. См. `get-install`, если вы хотите установить пакет из интернета. Обратите внимание, что вы можете выполнить принудительную установку с параметром `--forced`, удалить и переустановить пакет с параметрами `uninstall` и `reinstall` соответственно. Также вы можете указать путь к корню файловой системы, в которую вы хотите установить пакет, с помощью параметра `--root=…`:

    # tazpkg install пакет-1.0.tazpkg
    # tazpkg install путь/к/пакету-1.0.tazpkg --forced
    # tazpkg install путь/к/пакету-1.0.tazpkg --root=/mnt/rootfs

### install-list
get-install-list

Установить набор пакетов, перечисленных в файле. Команда `install-list` позволяет вам установить за один раз несколько ранее загруженных пакетов, а команда `get-install-list` перед установкой списка пакетов предварительно загружает их из интернета. Эти команды также понимают параметр форсированной установки:

    # tazpkg install-list мои-пакеты.list
    # tazpkg get-install-list мои-пакеты.list --forced

### link

Эта команда позволяет установить пакет, уже установленный на другом носителе. Установка заключается в создании символьных ссылок и требует очень мало памяти. Обычно это применяется, когда система работает в оперативной памяти и нужно установить дополнения с USB-флэш:

    # tazpkg link openoffice /media/usbdisk

### remove

Удалить пакет. Вас спросят о подтверждении (y/N). Эта команда удаляет все файлы, которые устанавливались в составе пакета. Для просмотра списка файлов, используйте команду `list-files` с названием пакета. Пример удаления пакета bc:

    # tazpkg remove bc

### extract

Распаковать пакет в папку. Если вы не укажете папку назначения, то пакет будет распакован в папку с именем `пакет-версия`, которая будет создана в текущей папке:

    # tazpkg extract пакет.tazpkg
    # tazpkg extract пакет.tazpkg папка/назначения

### pack

Эта команда создаст пакет из заранее подготовленной папки или из распакованного пакета. Используя эту команду вы можете создать пакет .tazpkg вручную (см. документацию Cookutils по вопросу автоматического создания пакетов). Упаковать пакет:

    # tazpkg pack пакет-версия

### repack

Эта команда позволяет восстановить пакет из файлов в системе, где он был ранее установлен. Переупаковать пакет:

    # tazpkg repack пакет

### repack-config

Эта команда воссоздает пакет с конфигурационными системными файлами (см. `list-config`). Для того, чтобы восстановить текущую конфигурацию, потом достаточно будет установить созданный пакет. Упаковать конфигурационные файлы:

    # tazpkg repack-config

### recharge

Обновление списка пакетов, доступных на зеркале. Эта команда загрузит с зеркала самый последний список устанавливаемых пакетов `packages.list` и, прежде чем продолжить, сохранит старый список. После обновления списка, вы можете использовать команды `list` и `search`. Для просмотра списка различий используйте команду `list-mirror --diff`, а для просмотра и обновления пакетов просто скомандуйте `upgrade`. Обновить список пакетов:

    # tazpkg recharge

### up
upgrade

Команда позволяет обновить все установленные пакеты, доступные на текущем зеркале. Обновление пакетов — важная составляющая безопасности системы, и вы можете чувствовать себя в безопасности с последними обновлениями и исправлениями. Хотя проект SliTaz и крохотный, но он обеспечивает регулярные обновления по безопасности и как правило, предоставляет последние версии ПО. Обратите внимание, что эта функция предназначена для людей, установивших SliTaz на жесткий диск. Обновленные пакеты в режиме LiveCD, будут потеряны при выключении системы. Обновить или показать все параметры команды `up`:

    # tazpkg up
    # tazpkg --help-up
    # tazpkg up --recharge --install
    # tazpkg up -r -i

### check

Эта команда может проверить зависимости установленных пакетов и определить, все ли файлы, необходимые для переупаковки пакета присутствуют:

    # tazpkg check пакет

### block
unblock

Команды позволяют вам блокировать и разблокировать установленную версию пакета. Заблокированный пакет не будет обновляться командой `upgrade`. Список заблокированных пакетов находится в файле `/var/lib/tazpkg/blocked-packages.list`. Этот файл также можно отредактировать вручную. Для блокирования или разблокирования пакета Grub:

    # tazpkg block grub
    # tazpkg unblock grub

### get

Загрузить пакет с зеркала (если он существует). Загруженный пакет сохраняется в текущей папке. Чтобы узнать текущий путь, вы можете использовать команду `pwd`. Для загрузки пакета Grub:

    # tazpkg get grub

### get-install

Загрузить и установить пакет с зеркала в интернете. Эта команда сначала проверяет, существует ли пакет на зеркале и был ли он уже загружен. Для получения списка пакетов на зеркале, используйте команду `list-mirror`. Для установки пакета Grub:

    # tazpkg get-install grub

### clean-cache

Удалить пакеты *.tazpkg, загруженные в кэш. Во время установки TazPKG сохраняет копии пакетов, загруженных из интернета. Это сделано для того, чтобы сохранить трафик в случае переустановки, но вы можете захотеть освободить место на жестком диске или повторно загрузить пакеты:

    # tazpkg clean-cache

### setup-mirror

Установка адреса зеркала. Эта команда запросит URL нового зеркала. Можно указать несколько адресов, разделенных пробелами. Обратите внимание, что вы также можете изменить основной файл `/var/lib/tazpkg/mirror`. URL-адрес должен указывать на папку, содержащую пакеты и файл `packages.list`:

    # tazpkg setup-mirror

### reconfigure

Повторяет пост-установочный скрипт из пакета. Пример использования для GCC:

    # tazpkg reconfigure gcc

### depends
rdepends

Отображает дерево зависимостей и обратное дерево зависимостей пакета, соответственно. Пример использования для MPD:

    # tazpkg depends mpd
    # tazpkg rdepends mpd

### add-undigest
setup-undigest

Устанавливает адрес дополнительного неофициального зеркала для тестирования пакетов, которые еще не присутствуют на официальных зеркалах. Обратите внимание, вы можете также вручную редактировать файлы в `/var/lib/tazpkg/undigest/имя_репозитория`. URL-адрес должен указывать на папку, содержащую пакеты и файл `packages.list`:

    # tazpkg add-undigest public-repository http://my.home.org/slitaz
    # tazpkg setup-undigest local-repository /home/slitaz/packages

### remove-undigest

Удаляет адрес неофициального зеркала:

    # tazpkg remove-undigest my-repository

### list-undigest

Список дополнительных неофициальных зеркал:

    # tazpkg list-undigest

### convert

Преобразует пакеты Debian (.deb), Redhat (.rpm), Slackware (.tgz) и Archlinux (.pkg.tar.gz) в пакеты SliTaz (.tazpkg):

    # tazpkg convert чужой-пакет

### set-release

Эта команда меняет текущую версию и обновляет все пакеты до последнего релиза выбранной версии:

    # tazpkg set-release cooking

### bugs

Генерирует список известных ошибок в пакетах:

    # tazpkg bugs

## МЭЙНТЕЙНЕР

Christophe Lincoln <pankso at slitaz.org>