Skip to main content
Qualcomm Linux · OTA · 文件
OTA 教程的配套页面·← 返回教程正文

本页收录了 OTA 教程中每个文件的完整源码,你无需手动重新输入任何内容。每个代码块右上角都有复制按钮 — 将鼠标悬停即可看到。文件按教程中创建的顺序排列;每个标题下都注明了该文件的保存路径。

layer.conf

meta-ota-demo 注册到构建中。 保存到 meta-ota-demo/conf/layer.conf
layer.conf

ota-demo-version.bb

版本标记配方。提升 OTA_DEMO_VERSION 就是”旋钮 1”;它会把该值写入 /etc/ota-demo-version,并作为 conffile 打包发布,因此能在更新后保留。 保存到 meta-ota-demo/recipes-ota/ota-demo-version/ota-demo-version.bb
ota-demo-version.bb

weston-init.bbappend

壁纸覆盖 — 一个 weston-init 的 bbappend,通过前置我们的文件路径,让我们的 qcom-background.png 覆盖原始版本(“旋钮 2”)。 保存到 meta-ota-demo/recipes-graphics/wayland/weston-init.bbappend
weston-init.bbappend

ota-agent_1.0.bb

用于打包 agent 的 BitBake 配方。唯一不那么直观的部分是 RDEPENDS:agent 只使用纯 Python 标准库,但在最小化的 Yocto 镜像中,标准库被拆分为多个独立软件包,因此必须精确列出它导入的那些包。 保存到 meta-ota-demo/recipes-ota/ota-agent/ota-agent_1.0.bb
ota-agent_1.0.bb

ota-agent.service

用于保持 agent 持续运行、并在网络就绪后启动它的 systemd 单元。 保存到 meta-ota-demo/recipes-ota/ota-agent/files/ota-agent.service
ota-agent.service

ota-agent.conf

agent 的配置文件。编辑 SERVER_URL 使其指向你的更新服务器(教程中用一条 sed 单行命令完成此操作)。 保存到 meta-ota-demo/recipes-ota/ota-agent/files/ota-agent.conf
ota-agent.conf

ota-agent.py

运行在设备上的 Web agent。仅使用纯 Python 标准库,因此可以在最小化的 QLI 镜像上运行而无需额外软件包。 保存到 meta-ota-demo/recipes-ota/ota-agent/files/ota-agent.py
ota-agent.py

ota-demo.yml

将该层引入构建并向镜像添加软件包的 kas 片段。它与其他 Qualcomm CI 片段放在一起,而不是放在层内部。每次构建时编辑 IMAGE_INSTALL:append 行来添加或移除 Vim(“旋钮 3”)。 保存到 meta-qcom/ci/ota-demo.yml
ota-demo.yml

publish.sh

服务器端脚本,负责将新构建的 ostree_repo 复制到更新服务器的 Web 根目录,并写入供设备端 agent 读取的 version.json。 将它放到更新服务器上,赋予可执行权限,并检查 DEPLOY_DIR 是否与你的构建输出目录一致。
publish.sh

← 返回 OTA 教程