Debian 打包

为 FiveAges Sim 组件创建 .deb 包。

概述

若干组件以预编译 .deb 的形式发布在 GitHub Releases 上(不在 packages.ros.org / Ubuntu apt 源中):

软件包文档

详细打包说明见各仓库中的 README.deb.md 文件:

arms_ros2_control

参见 arms_ros2_control/README.deb.md,内容包括:

  • 构建配置

  • 依赖

  • 发布流程

robot-descriptions-common

官方说明:README.deb.md。

  • 工作流:.github/workflows/build-common-deb.yml

  • PR 合入 main 会刷新滚动 Release 标签 pre-release;v* tag / workflow_dispatch 出正式版

  • deb 文件名:ros-jazzy-robot-descriptions-common_{Version}_{arch}.deb(GitHub 上传时 ~ 会变成 .)

  • 该 README 的安装示例:gh release download pre-release --repo fiveages-sim/robot-descriptions-common --pattern '*_amd64.deb',然后 sudo dpkg -i …

通用流程

前提条件

sudo apt install python3-bloom fakeroot debhelper

创建软件包

cd <package>
bloom-generate rosdebian --ros-distro jazzy
fakeroot debian/rules binary

生成的软件包

输出:../<package>_<version>_amd64.deb

安装

sudo dpkg -i <package>_<version>_amd64.deb
sudo apt install -f  # Fix dependencies

版本管理

语义化版本

使用语义化版本:MAJOR.MINOR.PATCH

  • MAJOR:破坏性变更

  • MINOR:新功能

  • PATCH:缺陷修复

更新日志

为每次发布维护更新日志:

package (1.2.3-1) jazzy; urgency=medium

  * Fix gripper control bug
  * Add new robot support

 -- Maintainer <email>  Date

CI/CD 集成

软件包会在 CI 中构建并测试:

  • 在每个发布标签上构建

  • 将 .deb 资源发布到 GitHub Releases

  • 测试安装

待完成

更详细地记录各仓库的 GitHub Release 流程(资源文件名、标签以及 deb_versions.conf)。