【问题标题】:Can bazel built debs be uploaded to PPAs?bazel 构建的 deb 可以上传到 PPA 吗?
【发布时间】:2019-05-22 14:23:56
【问题描述】:

使用 bazel 内置的 pkg_deb 规则,我创建了一个 debian 包。
我想将此 deb 文件上传到我的PPA,但我发现这很有挑战性。

据我所知,bazel 创建了 PPA 不允许的“二进制 debian 包”。相反,我必须将其转换为“源 debian 包”。这样做对我来说并不明显。我在网上找到的示例显示了非常简单的项目,其 Makefile 为满足 Ubuntu 启动板的需求而量身定制。当您将某些内容上传到 PPA 时,我认为它会在沙盒环境中构建(我猜是 "reproducible builds" 倡议的一部分)。

我正在寻找上传由 bazel 构建的 debian 文件的最简单方法。由于 bazel 通过规则抽象了很多构建细节,我不清楚我是否可以将其转换为某种 Makefile——或者是否有办法完全避免这种情况。

有没有人有使用 bazel 构建 deb 并将其上传到 PPA 的经验?或者更一般地,采用二进制 debian 包并将其制作为源 debian 包以满足 PPA 的要求?

我想我必须编写一个类似于 bazel 项目正在执行的自定义规则:
https://github.com/bazelbuild/bazel/blob/e67c961905792cd63950c6f6efc33275ad243c49/scripts/packages/debian/BUILD#L119,但很难想出一个有意义的编译命令。

【问题讨论】:

    标签: ubuntu debian bazel deb launchpad


    【解决方案1】:

    PPA 可以为所欲为,因为对于 PPA 中可以包含的内容没有任何规定。 Debian 的软件包存储库有 rules for upstream sources,其中不包含二进制 blob。处理此问题的理想方法是在从源代码构建时让 apt 拉入 Bazel,但截至 2020 年中期 Bazel can't be used in Debian upstream either

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-07-05
      • 2016-10-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多