OpenWrt 軟體源
dae、honk 及其 LuCI 介面的 apk 套件,適用於 OpenWrt 25.12 以上版本。
支援的版本
| 版本 | 核心 | 狀態 |
|---|---|---|
| 25.12 | 6.12 | 支援 OpenWrt 和 ImmortalWrt。 |
| 24.10 | 6.6 | 不支援:opkg 沒有標籤,本源會取代同名套件;ImmortalWrt 已內建 dae。honk 需核心 6.12 以上。 |
| 23.05 及更早 | ≤ 5.15 | 不支援:核心低於兩者要求(dae 需 5.17 以上)。 |
查詢路由器的版本和 target:
. /etc/openwrt_release
echo $DISTRIB_RELEASE $DISTRIB_ARCH $DISTRIB_TARGET套件架構(ImmortalWrt 只需架構相符;32 位元 ARM 和 MIPS 無套件,兩種系統均不支援):
OpenWrt target 與 BTF
官方 OpenWrt 核心不含 BTF,dae 和 honk 需 vmlinux-btf,僅提供下表的 target 和版本;其他 target 不支援。核心自帶 BTF 時(ImmortalWrt),由空套件 vmlinux-btf-builtin 代替。
安裝
匯入簽章公鑰
shwget -O /etc/apk/keys/daeuniverse.pem \ https://openwrt.daeuniverse.org/public-key.pem加入軟體源
sh. /etc/openwrt_release FEED=https://openwrt.daeuniverse.org/${DISTRIB_RELEASE%.*} cat > /etc/apk/repositories.d/daeuniverse.list <<EOF @daeuniverse $FEED/packages/$DISTRIB_ARCH/packages.adb @daeuniverse $FEED/kmods/$DISTRIB_RELEASE/$DISTRIB_TARGET/packages.adb EOF apk updatesh. /etc/openwrt_release FEED=https://openwrt.daeuniverse.org/${DISTRIB_RELEASE%.*} cat > /etc/apk/repositories.d/daeuniverse.list <<EOF @daeuniverse $FEED/packages/$DISTRIB_ARCH/packages.adb EOF apk update@daeuniverse標籤指定從本源安裝;不帶標籤時優先使用系統套件。安裝套件
shapk add dae@daeuniverse luci-app-dae@daeuniverse \ luci-i18n-daeuniverse-zh-tw@daeuniverseshapk add honk@daeuniverse luci-app-honk@daeuniverse \ luci-i18n-daeuniverse-zh-tw@daeuniverse不使用 LuCI 時,省略
luci-開頭的套件。啟用服務
在 LuCI 的服務 → daehonk 中啟用,或在命令列執行:
shuci set dae.config.enabled=1 uci commit dae /etc/init.d/dae enable /etc/init.d/dae startshuci set honk.config.enabled=1 uci commit honk /etc/init.d/honk enable /etc/init.d/honk start設定檔:
/etc/dae/config.dae/etc/honk/config.dae,語法見 dae 文件honk 文件。
常見錯誤
UNTRUSTED signature
路由器還沒有本源的公鑰,無法驗證套件。執行匯入簽章公鑰這一步,再執行apk update。
This kernel has no BTF of its own
官方 OpenWrt 沒有加入 kmods 軟體源,所以安裝的是vmlinux-btf-builtin,而不是vmlinux-btf。照加入軟體源中 OpenWrt 的寫法加入兩行軟體源,再執行apk update && apk upgrade vmlinux-btf-builtin。如果路由器的 target 不在上面的表中,本源沒有它的vmlinux-btf,dae 和 honk 無法在這台路由器上運作。
breaks: vmlinux-btf
路由器的核心不是官方 OpenWrt 正式版的核心(例如 ImmortalWrt、自行編譯或快照版韌體),所以無法安裝vmlinux-btf。這類系統不需要 kmods 軟體源:刪除/etc/apk/repositories.d/daeuniverse.list中含kmods的那一行,執行apk update後重新安裝。