ALR-Wiki/usage.md

178 lines
8.0 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
- [Команды](#команды)
- [Установка](#install)
- [Удаление](#remove)
- [Обновление пакетов](#upgrade)
- [Информация о пакете](#info)
- [Список пакетов](#list)
- [Сборка](#build)
- [Добавление репозитория](#addrepo)
- [Удаление репозитория](#removerepo)
- [Обновление изменений](#refresh)
- [Исправление](#fix)
- [Версия](#version)
- [Переменные окружения](#переменные-окружения)
- [Дистрибутивы](#alr_distro)
- [Формат пакета](#alr_pkg_format)
- [Архитектура](#alr_arm_variant)
- [Кросс-упаковка для других дистрибутивов](#кросс-упаковка-для-других-дистрибутивов)
## команды
Аргумент имени пакета не обязан быть точными(для пакетов из репозитория ALR).
### install
Команда `install` устанавливает пакет из репозиториев ALR. Любые пакеты, которых нет в репозиториях ALR, передаются в системный менеджер пакетов для установки. ALR проверит массив и сообщит, если точное совпадение не найдено. Также поддерживается использование `%` в качестве замены. Если найдено несколько пакетов, вы будете проинформированы о выборе пакета для установки. По умолчанию, если пакет уже был собран, ALR установит кэшированный пакет вместо повторной пересборки. Используйте флаг `-c` или `--clean`, чтобы принудительно пересобрать пакет.
Примеры:
```sh
alr in alr-bin # найдёт только alr-bin
alr in alr # находит alr-bin и alr-git
alr in it% # находит alr-bin, alr-git и itgui-git
alr in -c alr-bin
```
### remove
Команда `remove` предназначена для удобства. Она просто перенаправляет команду удаления в системный менеджер пакетов.
Пример:
```sh
alr rm firefox
```
### upgrade
Команда `upgrade` просматривает установленные в вашей системе пакеты и проверяет, соответствуют ли они пакетам из репозиториев ALR. Если да, то их версии сравниваются с использованием алгоритма `rpmvercmp`. Если в репозиториях ALR содержится более новая версия, пакет обновляется.
По умолчанию, если пакет уже был собран, ALR установит кэшированный пакет, а не пересоберёт его. Используйте флаг `-c` или `--clean`, чтобы принудительно пересобрать.
Пример:
```sh
alr up
```
### info
Команда `info` отображает информацию о пакете в репозиториях ALR.
Если найдено несколько пакетов, вам будет предложено выбрать, какой из них вы хотите просмотреть.
Пример:
```sh
alr info alr-bin # находит только alr-bin
alr info alr # находит alr-bin и alr-git
alr info it% # находит alr-bin, alr-git и itgui-git
```
### list
Команда `list` отображает все пакеты из репозитория ALR, а также их версии.
Эта команда принимает один необязательный аргумент. Этот аргумент представляет собой шаблон для фильтрации найденных пакетов.
Существует флаг `-I` или `--installed`, который фильтрует пакеты, установленные в системе.
Примеры:
```sh
alr ls # выводит все пакеты alr
alr ls -I # выводит все установленные пакеты
alr ls i% # выводит все пакеты, начинающиеся с "i"
alr ls %d # выводит все пакеты, заканчивающиеся на "d"
alr ls -I i% # выводит все установленные пакеты, начинающиеся с "i"
```
### build
Команда `build` собирает пакет с использованием скрипта сборки `alr.sh` в текущем каталоге. Путь к скрипту можно изменить с помощью флага `-s`.
Пример:
```sh
alr build
```
### addrepo
Команда `addrepo` добавляет репозиторий в ALR, если он еще не существует. Флаг `-n` устанавливает имя репозитория, а флаг `-u` — это URL репозитория. Оба являются обязательными.
Пример:
```sh
alr ar -n default -u https://gitea.plemya-x.ru/xpamych/xpamych-alr-repo.git
```
### removerepo
Команда `removerepo` удаляет репозиторий из ALR и удаляет его содержимое, если он существует. Флаг `-n` указывает имя репозитория, который необходимо удалить.
Пример:
```sh
alr rr -n default
```
### refresh
Команда `refresh` загружает все изменения из всех репозиториев ALR, которые были изменены.
Пример:
```sh
alr ref
```
### fix
Команда `fix` пытается исправить проблемы с ALR, удаляя и пересобирая кэш ALR.
Пример:
```sh
alr fix
```
### version
Команда version возвращает текущую версию ALR и завершает выполнение.
Пример:
```sh
alr version
```
## Переменные окружения
### ALR_DISTRO
Переменная окружения `ALR_DISTRO` должна быть установлена в дистрибутив, для которого должен быть собран пакет. Это говорит ALR, какие переопределения использовать. Значения должны совпадать с полем `ID` в `/etc/os-release` или `/usr/lib/os-release`. Возможные значения включают:
```sh
arch
alpine
opensuse
debian
```
### ALR_PKG_FORMAT
Переменная окружения `ALR_PKG_FORMAT` должна быть установлена в формат упаковки, который следует использовать. Допустимые значения:
```
archlinux
apk
rpm
deb
```
### ALR_ARM_VARIANT
Переменная окружения `ALR_ARM_VARIANT` указывает, для какого варианта ARM следует собирать, если ALR работает на ARM-системе. Возможные значения включают:
```
arm5
arm6
arm7
```
### Кросс-упаковка для других дистрибутивов
Вы можете создавать пакеты для различных дистрибутивов, устанавливая переменные окружения `ALR_DISTRO` и `ALR_PKG_FORMAT`, как указано выше.
Примеры:
```sh
alr_DISTRO=arch alr_PKG_FORMAT=archlinux alr build
alr_DISTRO=alpine alr_PKG_FORMAT=apk alr build
alr_DISTRO=opensuse alr_PKG_FORMAT=rpm alr build
alr_DISTRO=debian alr_PKG_FORMAT=deb alr build
```