开源改变世界

将 LinuxCNC 上传到 Debian 发行版? #1269

推推 grbl 3年前 (2023-01-30) 167次浏览
打开
smoe 打开了这个问题 2021 年 9 月 23 日 · 14条评论
打开

将 LinuxCNC 上传到 Debian 发行版?#1269

smoe 打开了这个问题 2021 年 9 月 23 日 · 14条评论

注释

将 LinuxCNC 上传到 Debian 发行版? #1269
贡献者

您好,
您似乎很关心 Debian,但您的软件包不是该发行版的一部分,这也会导致 LinuxCNC 被传递给 Ubuntu 和 Mint 等衍生产品。你只是从来没有抽出时间(我可以帮忙)还是你只是更喜欢直接分发你的工作?
最好的,
史蒂芬

将 LinuxCNC 上传到 Debian 发行版? #1269

您好,我们对将 LinuxCNC 引入 Debian 及其衍生版本非常感兴趣。感谢您提供的帮助。

很长一段时间,LinuxCNC 需要一个不属于 Debian 的自定义内核(RTAI:https ://www.rtai.org/ ),因此进入 Debian 是一项艰巨的任务。现在的 LinuxCNC 可以在 RTAI 或 Preempt-RT(Debian的一部分: https ://packages.debian.org/linux-image-rt )上运行,因此任务更易于管理。

我们很乐意得到您的帮助,让 LinuxCNC 进入 Debian。我已经给了这个任务一些,我认为需要解决的一些事情是:

目前可能还有其他问题我忘记了。

我很乐意在 github 或 linuxcnc-dev 邮件列表 ( http://linuxcnc.org/community/ ) 上讨论更多相关内容。尽管其他 LinuxCNC 开发人员很活跃,但我在我们的 IRC 频道上不再很活跃了。

将 LinuxCNC 上传到 Debian 发行版? #1269
合作者

由于大多数东西都适用于抢占式 rt,恕我直言,只有抢占式 rt 是可以的。
我正在使用 cmake 开发一个新的构建系统,它解决了许多问题,并使构建包更容易。

  • 我们推荐两个帮助程序包,mesaflash ( https://github.com/LinuxCNC/mesaflash/ ) 和 hostmot2-firmware ( https://github.com/LinuxCNC/hostmot2-firmware )。两者都是开源的,但 hostmot2-firmware 使用 Xilinx 的非免费 VHDL 编译器构建。LinuxCNC 可以在没有这些的情况下使用,但特别是对于 Preempt-RT 内核,我们从将部分工作卸载到 Hostmot2 FPGA 中受益匪浅,然后需要这些包。

固件文件不再是运行时依赖项。所有带有 spartan6 的台面卡都有一个包含固件的闪存。您只需要下载并加载一次固件。

  • 我们目前有一些过时的依赖项(python2、gtk2)。正在积极努力使这些依赖项现代化,但这些项目尚未完成。

全部已在 master 中修复,只等待新版本,并且修复了一些错误。

  • 我们的二进制包可能不符合 Debian 文件系统层次结构标准。

python 模块也是如此,但这也已通过 cmake 修复。

将 LinuxCNC 上传到 Debian 发行版? #1269
贡献者作者

感谢您的迅速和友好的反馈,@rene-dev@SebKuzminsky. 靶心版本刚刚发布,所以我们有大约两年的时间进入下一个版本。
我建议我深入研究一下您的源代码树,看看我能走多远。任何非自由依赖项,因为它们是可选的,所以无关紧要。如果时间允许,这些将自行成为包裹。

Debian 有一个科学(+工程)团队,一个电子团队,即友好的人们,他们在某处发生变化时互相帮助(比如新的标准版本),他们在 salsa.debian.org(一个 gitlab 实例)上交换他们的 debian 文件夹. 由于如果我正确解释了构建说明,您将自动生成 debian 文件夹,因此最好在 github 上的源代码树中维护所有 Debian 位,并让我作为上传者(Debian 术语中的“赞助商”)。

谢谢你这些美好的早期氛围,
Steffen

将 LinuxCNC 上传到 Debian 发行版? #1269
贡献者作者

所以,有点意外,我奖励自己早点看看 linuxcnc :) 我的即时反馈进入了#1270
剩下的是一些额外的注意,我认为,这可能是由 Debian 的限制触发的,但会被激励来帮助您的广大用户群:

  • 许多构建在许多平台上(许多更小):可能没有只构建一次的文档,并且将常规构建依赖项与架构无关的构建依赖项分开。我已经看到了“无文档”选项,但还没有更多地考虑它。
  • 我们能否将实时相关位(linuxcnc 包)与其余部分(linuxcnc-core(?)包)分开,这样所有内核不合适的人就不必担心您添加的初始化脚本?
  • systemd – 我应该可以解决。

我真的不知道将 RT 位与其他位分开有多紧迫。如果您已经很好地理解那些只想在没有 RT 模块的情况下安装它以查看 GUI 的人不会担心,那么这不应该是必需的。对我来说,这更像是一种感觉良好的因素,也许会有太多的困惑?或者它真的有用吗,因为没有人可以尝试不能可靠地工作的东西?分开应该不会太难吧?

构建依赖项需要清理。您可以在 build-indep 中单独触发文档吗?文档只需要的所有包都应该转到 Build-Depends-Indep。仅用于测试的包应该移动到 Build-Depends 的底部,并在包名称后面和逗号之前得到一个“<!nocheck>”标记。

自动测试可以在没有实时内核的情况下运行吗?需要将测试添加到 d/rules。

就像我在 PR 中已经说过的那样 – 很好!我认为初始上传没有什么可做的。我花了一段时间才明白你的 CI 是焦点。我喜欢你如何关心 d/configure 中的不同发行版,所以我会介绍 debian/unstable 的一个或另一个例外——比如 d/compat 的规范。

将 LinuxCNC 上传到 Debian 发行版? #1269
合作者
  • 我们能否将实时相关位(linuxcnc 包)与其余部分(linuxcnc-core(?)包)分开,这样所有内核不合适的人就不必担心您添加的初始化脚本?

所有测试都在没有 rt 内核的情况下运行。RT 抢占在用户模式下运行,所以它是相同的二进制文件!如果 renice 系统调用失败,它仍然可以正常工作,只是抖动更多。

将 LinuxCNC 上传到 Debian 发行版? #1269
合作者

显然不是为了机器控制,但对于测试和开发来说这很好。

将 LinuxCNC 上传到 Debian 发行版? #1269
贡献者作者

我只是担心 /etc/init.d/realtime – 但如果你知道这是无害的 – 那么就没有单独的包。

将 LinuxCNC 上传到 Debian 发行版? #1269
合作者

我不确定那是做什么的,或者它是否被使用过。

将 LinuxCNC 上传到 Debian 发行版? #1269

我们的realtimeinit 脚本加载启动 RTAI 所需的基本内核模块。它不用于使用 Preempt-RT 或香草内核的仅限用户空间的构建。

将 LinuxCNC 上传到 Debian 发行版? #1269
贡献者作者

我还浏览了实时脚本,对它尝试安装内核模块并不太高兴。这只是安装 linuxcnc 的普通 joe 用户可能没有想到的。我的直觉是你想准备一个单独的 linuxcnc-rtai 二进制包,但这完全由你决定。

关于打包,我认为上传之前的最后一点是删除不需要明确列出的构建依赖项。我能做到。

#1270,我介绍了一个 Debian 版本。由于您不想为任何特定于 Debian 的更改标记新版本,这对我来说听起来是个好主意(并且是上传的必备条件)。这对您的测试例程产生了影响,因为它现在需要源代码压缩包,所以我的所有补丁都没有完全关闭。

我想接下来的步骤就靠你了。

同时,我会看一下 mesaflash 和 hostmot2-firmware。

将 LinuxCNC 上传到 Debian 发行版? #1269

作为记录,https ://bugs.debian.org/969416 是在 Debian 中对 linuxcnc 的请求。

将 LinuxCNC 上传到 Debian 发行版? #1269
贡献者作者

昨天我没能找到那个 ITP。至少我没有创建一个新的。

将 LinuxCNC 上传到 Debian 发行版? #1269
合作者
彼得赖因霍尔特森 评论了 2021 年 11 月 10 日 通过电子邮件
将 LinuxCNC 上传到 Debian 发行版? #1269

上传已经发生,软件包正在 Debian NEW 队列中等待 Debian 档案维护者的批准。一旦被接受,它将显示在https://tracker.debian.org/linuxcnc上。

免费注册 在 GitHub 上加入此对话。已有帐户? 登录评论
标签
还没有
项目

还没有

发展

没有分支机构或拉取请求

4人参加
将 LinuxCNC 上传到 Debian 发行版? #1269将 LinuxCNC 上传到 Debian 发行版? #1269将 LinuxCNC 上传到 Debian 发行版? #1269将 LinuxCNC 上传到 Debian 发行版? #1269

喜欢 (0)