Home > syncaur

syncaur

Syncaur is a project mainly written in ..., it's free.

bash script for managing AUR's PKGBUILD's

Syncaur - это пакет скриптов для сборки пакетов из AUR и отправки их по FTP. Используется мной для поддержания репозитория в актуальном состоянии. Скрипт имеет следующие возможности:

  1. Скачивает и затем следит за актуальностью PKGBUILD'ов.
  2. Собирает и отправляет пакеты по FTP.

В состав Syncaur входит 4 скрипта: 1.syncaur - общий скрипт, запускает синхронизацию PKGBUILD'ов основного дерева сборки и транка. Затем предлагает Вам запустить сборку пакетов. Если вы соглашаетесь, начинается сборка и отправка пакетов по FTP. После сборки пакетов, syncaur отправляет их по FTP на адрес указанный в .syncaurrc. Так как скрипт разрабатывался для поддержания репозитория в актуальном состоянии, то необходимо учесть, что на фтп должны содержаться директории с именами архитектур(i686, x86_64). Т.е. скрипт отправляет пакет по адресу: ftp://domain.zone/$ARCH Где $ARCH - используемая в вашей системе архитектура. Данный скрипт не имеет дополнительных опций.

  1. fecth - скрипт для управлнения деревом сборки и транком. Основаная его функция - получать и синхронизировать PKGBUILD'ы с AUR.

Использование: fetch <параметр> [...] параметры: -h --help помощь по использованию скрипта. -n --new <пакет> Добавление нового пакета в дерево сборки. Создает директорию с именем пакета, содержащую PKGBUILD и install-файл если он имеется. -s --sync Синхронизирует PKGBUILD'ы с AUR. -tn --trunknew <пакет> Делает то же самое, что и --new, только для пакетов из svn или git. -ts --trunksync Синхронизирует PKGBUILD'ы с svn или git. -d --del <пакет> Удаляет пакет из дерева сборки. -td --trunkdel <пакет> Удаляет svn/git-пакет из дерева сборки. -i --ignore <пакет> Перемещает пакет в директорию, где пакет будет игнорироваться. -ti --trunkignore <пакет> Перемещает svn/git-пакет в директорию, где пакет будет игнорироваться.

Логика игнорирования пакетов довольно простая - раз пакет игнорируется, значит за ним нужно следить самостоятельно и собирать так же, вручную.

  1. builder - скрипт для сборки пакетов. Данный скрипт смотрит PKGBUILD и сверяет версию(pkgver) и релиз(pkgrel) c предыдущей сборкой(версия и релиз содержатся в имени пакета). Если версии и релиз совпадают, builder пропускает этот пакет и переходит к другому, а иначе начинается сборка. Поэтому при первом запуске скрипта будут собираться все пакеты. При последующих запусках будут собираться только те пакеты, которые обновились.

Использование: builder <параметр> параметры: -h --help Помощь по использованию скрипта. <без параметров> Собирает и отправляет пакеты по FTP из основного дерева сборки. -t --trunk Собирает и отправляет по FTP пакеты из транка.

  1. upload - скрипт для отправки пакетов по FTP. Может использоваться для отправки пакетов по FTP без предварительной сборки. Например, когда вы переезжаете на другой сервер или просто создаете зеркало пакетов. Все пакеты, которые были до этого собраны builder'ом, зальются в ваш репозиторий.

Использование: upload <параметр> параметры: -h --help Помощь по использованию скрипта. <без параметров> Отправляет пакеты по FTP из основного дерева сборки. -t --trunk Oтправляет пакеты по FTP из svn/git-дерева сборки.

Для правильной работы скрипта необходимо создать конфигурационный файл .syncaurrc такого вида:

PKGDIR="/path/to/pkg" TRUNKDIR="/path/to/trunk" IGNOREDIR="/path/to/ignore" TEMPDIR="/path/to/temp" USER="user" PASS="pass" FTP="domain.zone"

Где PKGDIR - основное дерево сборки, используется мной для сборки стабильных пакетов. TRUNKDIR - транк, используется мной для сборки пакетов из git или svn. IGNOREDIR - директория с игнорируемыми пакетами. TEMPDIR - директория, в которую builder складывает собранные пакеты и после отправки, syncaur удаляет оттуда все содержимое.

Previous:Project1337