Установить пакет reprepro:
sudo apt-get install reprepro
Создать каталог репозитория например repo:
mkdir repo
Создать в каталоге репозитория каталог conf:
mkdir repo/conf
Создать в каталоге conf файл distributions примерно такого содержания:
mcedit repo/conf/distributions
где:
Codename: smolensk
- кодовое имя дистрибутива: smolensk, orel ...Suite: stable
- ветка дистрибутива: stable, current, unstableVersion: 1.5.3
- номер версииArchitectures: amd64
- архитектура дистрибутива: i386, amd64, source (если репозиторий будет содержать исходный код пакетов)Components: main contrib non-free
- компоненты дистрибутива: main - СПО, contrib - СПО с зависимостями от несвободного, non-free - несвободное ПОUDebComponents: main
- Udeb-пакетыContents
: - файлы со списком содержимого каждого пакетаSignWith: yes
- подпись репозитория (можно не указывать, если не планируете подписывать репозиторий ключом gnupg)
Далее выполнить:
reprepro -b repo export
После этого можно наполнять репозиторий пакетами:
Добавление бинарного deb пакета:
reprepro -b repo includedeb <кодовое имя дистрибутива> <имя_пакета>.deb
Добавление бинарного udeb пакета:
reprepro -b repo includeudeb <кодовое имя дистрибутива> <имя_пакета>.udeb
Добавление пакета с исходным
reprepro -b repo includedsc <кодовое имя дистрибутива> <имя_пакета>.dsc
Удаление пакета
reprepro -b repo remove <кодовое имя дистрибутива> <имя_пакета>
Cоздание подписанного репозитория
Сгенерировать gpg-ключ (RSA или DSA):
gpg --gen-key
Добавить в repo/conf/distributions строку:
Далее выполнить:
reprepro --ask-passphrase -b repo export (параметр --ask-passphrase запрашивает пароль для gpg-ключа)
и наполнить репозиторий:
reprepro --ask-passphrase -b repo includedeb <кодовое имя дистрибутива> <имя_пакета>.deb
Чтобы пользоваться подписанным репозиторием необходимо:
На компьютере где создавался репозиторий выполнить:
gpg --list-keys
В результате получится примерно такой результат:
Далее выполнить:
gpg --armor --output repo_gpg.key --export 2578DA4E
В результате получим файл repo_gpg.key в текущем каталоге, который необходимо скопировать на компьютер, где будет использоваться данный репозиторий, и добавить его в систему:
sudo apt-key add repo_gpg.key