3.0 KiB
Общие рекомендации
Пакеты должны содержать название(я) того, что они содержат, в массивах 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.