Часть 5. Репозитории

В Debian (и Ubuntu) уже существуют различные программы для ведения репозитория. Это DAK (Debian Archive Kit), reprepro, mini-dinstall, а также apt-ftparchive (просто для переиндексации списка пакетов).

DAK – это главная система для репозитория Debian. Самый большой её недостаток это то, что по ней нет никакой документации кроме маленького howto в самом пакете. Также не понятно, а что именно она умеет. Согласитесь фраза “умеет всё” немного расплывчата. Настройка её очень сложна, она использует posgresql и разумеется умеет работать с pool. Что такое pool можно почитать в документации Debian.

Reprepro – превосходная замена DAK. Простенькая, быстро настраиваемая, с немного занудным синтаксисом. Работает с pool, умеет перемещать пакеты из unstable в, например, testing. Однако просто убийственным её недостатком является невозможность хранить в одном и том же месте пакеты с разными версиями. Для вашего репозитория вероятно всё равно, а вот там где сидит куча программистов и за день делают 10 версий одного и того же пакета (причём не понятно какой из них стабильный) просто неприемлема.

Увы, если вам нужно хранить много версий одного и того же пакета, то остаётся только mini-dinstall. Он медленный (так как всякий раз заново, при помощи apt-ftparchive переиндексирует репозиторий), не очень надежный и мёртвый (то есть не развивается). Также он не работает с pool’ом, что немного изменяет синтаксис для APT. С другой стороны если написать некоторые скрипты, которые отслеживают его ошибки, если написать скрипты для переноса файлов из unstable в stable, то он не так уж и плох. Единственное, что вы не сможете увеличить, так это скорость переиндексации. Все зависит только от количества пакетов.

Все эти системы обладают incoming механизмом, который позволяет закидывать пакеты в определённый каталог (при помощи dupload или dput), после чего происходит его проверка и запихивание в нужную часть репозитория.

Последние две программы легко настроить просто читая файл конфигурации. Ещё существует debarchiver, который развивается, но что он умеет я сказать не могу, так как практически не пользовался им.


Назад - Часть 4. Chroot. Mock. Pbuilder
Указатель