Как стать автором
Обновить

Комментарии 15

Спасибо, пригодится. Хотлелось бы чуть полнее раскрыть тему статической линковки.
rules — это и есть мейкфайл, так что для него применимы все возможности и синтаксис make. % в данном случае перехватывает все цели и передает их на откуп dh
Опять пересказ тривиальностей. И какие цели вызываются в debian/rules? Магия по перекладыванию байтиков.

«Почему файл называется пакет.dir? А я не знаю...»
В качестве gpg-ключа по умолчанию зачастую используется ключ, импортированный (или созданный) первым.

Специфицировать gpg-ключ при сборке можно ключем *-k*

В свое время создавал пакеты, которые собирались при помощи qbs, делал для них автотесты, да ещё и окошко с вопросом пользователю присобачивал с переводами.
Вот там много тонкостей было весёлых.
И общий вердикт, на мой взгляд, формат deb.src пакетов — весьма устаревшая штука с огромной кучей подпорок.

На мой взгляд формат deb пакета переусложнен, если сравнивать с rpm.
Разбить спецификацию на раздельные changelog/control/rules файлы — в этом весь debian, а apt видимо никогда не научится в транзакции, печаль.
И ещё один камень туда же, разработчики debian похоже перехитрили сами себя, столкнулся с этим, когда пытался несколько lvm vg на разных блочных устройствах сделать с помощью preseed.
Не хватает в debian технической эстетики (по сравнению с rh-based опять же).
Советую попробовать aptly, заместо reprepro.
а я еще к reprepro прикрутил pbuilder и rebuildd. теперь после коммита в гит, на выходе в репозитоии сразу пакет :)
// Тоже Астра SE 1.3 и 1.4.
А что, в эльбрусосе тоже деб-пакеты? Кажется, рано или поздно и мы переползем и на эту дрянь :)
Да, Эльбрус ОС использует deb пакеты. Но там все не как у людей, всегда что-то приходится допиливать.
Чем вы руководствовались при выборе минимальной версии qt4 как зависимости?
Я знал какая версия входи в состав Astra Linux 1.3. Кроме того команды:
$ apt-cache show qt4-qmake | grep Version:
Version: 4:4.8.6+git49-gbc62005+dfsg-1ubuntu1.1
Version: 4:4.8.6+git49-gbc62005+dfsg-1ubuntu1
$ apt-cache show libqt4-dev | grep Version:
Version: 4:4.8.6+git49-gbc62005+dfsg-1ubuntu1.1
Version: 4:4.8.6+git49-gbc62005+dfsg-1ubuntu1

намекают на нужную.
Поделюсь мнением на этот счёт. По работе часто бывает, что нужен пакет из более нового дебиана, которого нет индексе сервера, а уж очень хочется этот пакетик забекпортить. Если руководствоваться вашим правилом, то я не смогу установить пакет, сделанный таким образом, т.к. в зависимостях будут указаны версии других пакетов, которые будут более старыми на целевом сервере, в результате dpkg мне не даст вкатить этот пакет.

Имхо, для выбора минимальной версии зависимости нужно отталкиваться не от той версии, которая сейчас есть в вашем дистрибутиве (и в вашей установке), а от той, с которой пакет может собраться и правильно функционировать. И как правило это версия будет ниже, а следом и требования к окружению более слабые.

П.С. я знаю, что есть docker и виртуалки, но не всегда получается всё сделать в изолированном окружении
В моём случае, пакет придется пересобирать на целевой системе, т.к. и Astra и Эльбрус не на все 100% совместимы с debian. Причем, если Эльбрус в этом честно признается, то Astra может и запустить программу, но в самой ответственный момент она может упасть. Да и не любят военные, когда программа собрана где-то не у них перед носом.

В принципе, Вы правы, но ограничения по безопасности от заказчика, сводят все такие попытки на нет.

П.С. Для Эльбрус ОС нет виртуалок.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Изменить настройки темы

Истории