Сначала небольшое предисловие, можно не читать:
Эксперименты с программой vap показали, что стандартные пути не всегда хороши. Конкретно в моем случае мне не удалось сделать репозитарий на launchpad.net. Я знаю, что это реально, но как прицепить туда freepascal я не понял. При сборке проекта всегда получалась ошибка, а каждая попытка с каким-то новым вариантом занимала много времени, нередко несколько часов, поэтому мне это быстро надоело.
В итоге я разобрался что должно получиться на выходе и сделал репозитарий руками. Который оказался вполне рабочим, но его обновление было очень муторным, т.к. надо каждый раз вычислять контрольные суммы всех файлов. В итоге родилась программа myrep
myrep - программа для создания репозитария.
Я не претендую на академическую точность результата. Создается минимально работоспособная конфигурация. При более профессиональном подходе можно сделать более функциональный репозитарий, но это не всегда оправдано. В любительском (т.е. моем) случае приходится изучать много информации, которая не держится в голове, т.к. редко используется. Приходится иметь список ссылок и регулярно пробегать по ним при обновлениях.
Ну и еще я не люблю работать в командной строке
Итак, для работы с программой myrep вам понадобится:
1. Готовый deb-файл вашего проекта. Можно только i386 или amd64, или оба сразу. Как сделать deb-файл хорошо написано
тут, хотя я рекомендую для начала взять любой готовый deb (например
vap), распокавать архиватором и посмотреть на то, что там лежит. Будет очень полезно.
2. Потребуется создать и отправить на сервер ключей свой цифровой ключ. Иначе менеджеры пакетов будут со страшной силой ругаться на ваш репозитарий, а некоторые даже откажутся с ним работать. Про ключ хорошо написано
тут (шаг 1) Рекомендую запомнить на этом этапе публичный ключ (типа "B0CF7C64"), он понадобится потом, чтобы давать ссылку на репозитарий.
При запуске программы можно кнопками или создать новый репозитарий, или открыть существующий. В любом случае придется указать папку, где он лежит (будет лежать).
Далее надо заполнить поля с основной информацией, добавить дебы, указывая их архитектуру, и исходники. В качестве исходников сгодится текстовый файл с одной строчкой типа "Package: vap", т.е. это просто муляж для того, чтобы менеджеры архивов не ругались. Но можете наполнить этот файл каким-то содержанием.Имя должно быть обязательно "Sources".
Все, можно нажимать "Собрать репо". Программа напомнит, что репозитарий следует подписать, для чего любезно покажет строку, которую надо скопировать в терминал и исполнить.
Репозитарий готов.
Если Вы, например, создавали его в домашней папке и дали ему имя "repo", то соответственно у Вас будет там папка ~/repo, а в ней папка ubuntu, которую следует залить на сервер со всем содержимым.
Для обновления открываете репозитарий, указывая папку, в которой он лежит (в примере выше это будет ~/), меняете, если надо, содержание полей информации и указываете на новые пакеты. Собираете, отправляете на сервер.
Подключается репозитарий так:
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 9DECCA8A <- тут надо написать ВАШ публичный ключ, в примере мой.
sudo add-apt-repository 'deb https://sites.google.com/site/viktandvap/home/ppa/ubuntu dist universe' <- сайт должен быть ваш, т.е. фактически ссылка на папку "ubuntu"
sudo apt-get update
sudo apt-get install vap <- имя программы укажите свое.
ссылка на программуВ архиве исполняемый файл. Просто положите его куда удобно и все.
гитхабP.S.
Программа писалась под себя, глубокой отладки пока не проходила, поэтому ее можно загнать в логический тупик. Но если не глумиться над ней, то она работает.