ALR-Wiki/conventions.md

3.0 KiB
Raw Permalink Blame History

Общие рекомендации

Пакеты должны содержать название(я) того, что они содержат, в массивах provides и conflicts. Таким образом, пользователи могут устанавливать их, не зная полного названия пакета. Например, существуют два пакета admc для ADMC: admc и admc-git. Оба из них имеют массивы provides и conflicts, указывающие на две команды, которые они устанавливают. Это означает, что если пользователь хочет установить ADMC, ему просто нужно ввести alr in admc, и ALR предложит ему выбрать, какой из них он хочет установить.

Бинарные пакеты

Пакеты, которые устанавливают загруженные и установленные предварительно скомпилированные бинарные файлы, должны иметь суффикс -bin.

Пакеты Git

Пакеты, которые собирают и устанавливают программы из исходного кода, клонируемого непосредственно из Git, должны иметь суффикс -git.

Версии этих пакетов должны состоять из количества ревизий, за которым следует текущая ревизия, разделенные точкой. Например: 183.80187b0. Обратите внимание, что в отличие от AUR, в начале нет r. Это связано с тем, что некоторые менеджеры пакетов отказываются устанавливать пакеты, номера версий которых не начинаются с цифры.

Этот номер версии можно получить с помощью следующей команды:

printf "%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"

Функция version() для таких пакетов должна использовать предоставленную ALR функцию git-version, следующим образом:

version() {
cd "$srcdir/$name"
git-version
}

Это использует встроенную реализацию Git от alr, что гарантирует, что пользователю не нужно устанавливать Git на свою систему для установки пакетов -git.

Прочие пакеты

Пакеты, которые загружают исходники для конкретной версии программы, не должны иметь никаких суффиксов, даже если эти исходники загружаются из Git.