目錄 添加漢化編譯為ipk配置文件入口函數界面文件Makefile
添加
添加自己的luci界面,有3個必要的要素:
- a配置文件.新建一個在/etc/config/abcdefg
- b入口函數.新建一個在/usr/lib/lua/luci/controller/admin/abcdefg.lua
- c界面文件.新建一個在/usr/lib/lua/luci/model/cbi/abcdefg.lua
它們的作用關系是:b文檔是讓c文檔在luci的菜單中顯示出來,c文檔是內容和腳本,a文檔是c文檔定義的變量,一切的主體是c文檔。
漢化
修改/usr/lib/lua/luci/controller/admin里面的你的入口函數
module("luci.controller.admin.devconfig", package.seeall)
function index()
-- local page
local fs = require "nixio.fs"
entry({"admin", "devconfig"}, alias("admin", "devconfig", "deviceconfig"), _("Configuration "), 80).index = true
entry({"admin", "devconfig", "wandeviceconfig"}, cbi("admin_wandevconfig/wandeviceconfig"), _("上傳設置"), 1)
entry({"admin", "devconfig", "landeviceconfig"}, cbi("admin_landevconfig/landeviceconfig"), _("采集設置"), 1)
entry({"admin", "devconfig", "statedeviceconfig"}, cbi("admin_statedeviceconfig/statedeviceconfig"), _("運行狀態"), 1)
end
要注意的一點是,最后保存時要把文檔編碼轉換為UTF-8編碼,否則中文顯示為亂碼,這一點很重要。
編譯為ipk
以cc為例:
在feeds/luci/applications下面新建一個luci-app-myabc文件夾,
配置文件
lanprobe,wanprobe,statusprobe,保存至luci-app-myabc/root/etc/config文件夾下
入口函數
deconfig.lua 放入luci-app-myabc/luasrc/controller/admin文件夾下
界面文件
將3個文件夾admin_landevconfig ,admin_wandevconfig ,admin_statedeviceconfig,拷貝至 luci-app-myabc/luasrc/model/cbi文件夾下
Makefile
在luci-app-myabc文件夾下新建一個Makefile文檔,代碼如下:
include $(TOPDIR)/rules.mk
LUCI_TITLE:=LuCI Support for mynameabc
LUCI_DEPENDS:=
include ../../luci.mk
# call BuildPackage - OpenWrt buildroot signature
接下來,執行命令
./scripts/feeds update luci
./scripts/feeds install -a -p luci
然后make menuconfig 你就能在luci的app下找到並添加了。