meta-custom是什么
这是一个 yocto 层,可以启用许多自定义配方。DEYAIO使用meta-custom来编译各种功能丰富的固件镜像。通过将验证过的功能集作为一个meta-custom分支,使用dey-aio-manifest对应的xml文件,能够一键编译出dey的功能固件。
分支
在dey-aio-manifest中,通过在xml文件中指定meta-custom的不同分支,来编译不同的功能固件。
master分支将常见的配方整合起来,并移除为特定板卡指定的配方。而dev则尽可能也涵盖不同的板卡配方,因为不同板卡的区别主要在内核设备树上,因此dev分支中,默认的板卡设备树仍为Digi开发板ccmp25-dvk,而特定板卡如ccmp25plc,其默认加载的内核设备树将变为ccmp25-plc.dtb。
配方
不同的配方集合在meta-custom中以不同分支的方式组合起来。您也可以参考单独的配方以实现特定的功能。根据DEY的版本,meta-custom也对应有相关的主分支,而功能集通常体现在主分支后缀中,以scarthgap-ccmp25plc为例,它表示实现基于ccmp25的PLC参考板的DEY 5.0(scarthgap)固件。
本章节仅包含少量的配方说明,更多配方用途,请参考分支说明。
recipes-mine
homeaddons
此配方提供将文件安装到用户主目录的参考。它可以是文本文件或预编译的用户应用程序。
base-files
此配方提供了一个参考,以使用您自己的 .profile 和 .bashrc 覆盖原始基本文件
dummy-service
dummy-service配方提供了运行您自己的 systemd 服务的参考
recipes-core
仅特定分支有此目录来提供特定的镜像配方
images
该目录下提供一系列自定义的目标镜像配方
recipes-VPN
pvpn 和 openvpndns
这些配方为目标镜像添加了 pvpn 支持。
将以下行添加到 local.conf: IMAGE_INSTALL:append = “ gawk unzip pvpn openvpn openvpndns stunnel”
注意:您还需要修改内核选项:
Enable Device Drivers → Network device support → Universal TUN/TAP device driver support
recipes-qt
ROS2需要QT5的支持,它需要一个自定义的配置放在 /etc/profile.d/qt5.sh。根据其内容用户可以免运行环境配置脚本直接运行ros2命令。 要启用ros2支持,请在dey-aio-manifest中检出kirkstone-ros分支。