Можно ли загружать файлы, построенные на базе bazel, в PPA?

Используя встроенное в bazel правило pkg_deb, я создал пакет debian.
Я хотел бы загрузить этот файл deb в свой PPA, но я обнаружили, что это сложно.

Насколько я могу судить, bazel создает «двоичные пакеты debian», которые не разрешены для PPA. Вместо этого я должен преобразовать его в «исходный пакет debian». Для меня это не очевидно. Примеры, которые я нашел в Интернете, показывают очень простые проекты с Makefile, адаптированные к потребностям панели запуска Ubuntu. Когда вы загружаете что-то в PPA, я думаю, что он создается в изолированной среде (часть этой "воспроизводимых сборок" инициативу я думаю).

Я ищу самый простой способ загрузки файлов debian, созданных на основе bazel. Поскольку bazel абстрагирует многие детали построения с помощью правил, мне неясно, могу ли я преобразовать это в какой-то Makefile - или есть способ полностью избежать этого.

Есть ли у кого-нибудь опыт создания дебетов с помощью bazel и их загрузки в PPA? Или, в более общем смысле, взять двоичный пакет debian и сделать его исходным пакетом debian в соответствии с требованиями PPA?

Думаю, мне придется написать собственное правило, подобное тому, что делает проект bazel:
https://github.com/bazelbuild/bazel/blob/e67c961905792cd63950c6f6efc33275ad243c49/scripts/packages/debian/BUILD#L119, но его будет сложно установить команда компиляции, которая имеет смысл.


person Trevor Hickey    schedule 22.05.2019    source источник


Ответы (1)


PPA может делать все, что хочет, поскольку нет никаких правил относительно того, что может входить в PPA. В репозитории пакетов Debian есть правила для исходных кодов основной ветки, которые не содержат двоичных двоичных объектов. Идеальный способ справиться с этим - использовать apt в Bazel при сборке из исходников, но с середины 2020 года Bazel также нельзя использовать в восходящем потоке Debian.

person Indolering    schedule 26.05.2020