reprepro – управление репозиторием deb пакетов

Вчера заменил систему управления deb-репозиторием.

До этого использовал mini-dinstall, но к нему были некоторые претензии: собственная структура каталогов (а не стандартный pool+dists), невозможность ведения нескольких секций в рамках одного дистрибутива, невозможность просто перенести пакет из одного репозитория в другой (например из unstable в testing) и прочие мелочи.

Хотелось чего-нибудь более функционального, и я, похоже, нашел решение: это reprepro.

Маленький quick-start-guide:

  • создаете каталог, в котором будет жить репозиторий (условно назовем его $BASEDIR)
  • создаете в нем файлик conf/distributions с перечнем дистрибутивов, секций etc (подробнее в reprepro(1)).
  • из каталога $BASEDIR (это единственное неудобство, что надо либо выполнять команды из этого каталога, либо передавать его в качестве параметра) выполняем команды $ reprepro export и $ reprepro createsymlinks.
  • после этого можно добавлять пакеты в репозиторий командой $ reprepro -C секция include дистрибутив /путь/к/файлу/имяпакета-версия.changes

Остальные команды смотрите в reprepro(1).

В связи с этим, кстати, изменилась структура моего репозитория: теперь у меня 6 дистрибутивов:

  • etch/stable
  • lenny/testing
  • sid/unstable
  • dapper
  • edgy
  • feisty

в каждом из которых есть по несколько секций (подробнее на странице):

  • main – дефолтная секция
  • backports – бэкпорты
  • xneur – XNeur/gXNeur
  • kdebase – kdebase, пропатченный на предмет поддержки задания кодировок в политиках HAL.

PS. Кстати я собрал новый XNeur версии 0.6.0, брать в секции xneur 🙂

7 Replies to “reprepro – управление репозиторием deb пакетов”

  1. > После этого можно добавлять пакеты в репозиторий командой $ reprepro -C секция import дистрибутив /путь/к/файлу/имяпакета-версия.changes

    ИМХО вместо import надо include, птаму что чудя по man`у reprepro такой команды не знает, вот так вот.

    PS: Лучше бы конечно по подробнее рассказал, чтение дистрибутивного фака информативнее получается

    1. вместо import надо include

      Угу, я временами путаю.

      Лучше бы конечно по подробнее рассказал, чтение дистрибутивного фака информативнее получается

      А чего там рассказывать – там же все просто.

Leave a Reply

Your email address will not be published. Required fields are marked *