OPENWRT为你的luci添加配置界面(含源码)OPENWRT自己添加菜单和配置页面编译IPK
因为经常要自己进去vi编辑某些配置文档,忽然想到,如果可以在Luci界面编辑一下该多好,
有了idea,就行动起来,下面是详细教程:
第一部分:添加一个luci界面(给新手看的)
添加自己的luci界面,有3个必要的要素(新建文档):
a.新建一个在/etc/config/abcdefg文档
b.新建一个在/usr/lib/lua/luci/controller/abcdefg.lua文档
c.新建一个在/usr/lib/lua/luci/model/cbi/abcdefg.lua文档
它们的作用关系是:b文档是让c文档在luci的菜单中显示出来,c文档是内容和脚本,a文档是c文档定义的变量,一切的主体是c文档。
/etc/config/abcdefg文档的内容如下:(a)
config abcdefg
/usr/lib/lua/luci/controller/abcdefg.lua文档内容如下:(b)
function index()
if not nixio.fs.access("/etc/config/abcdefg") then
return
end
entry({"admin", "system", "abcdefg"}, cbi("abcdefg"), _("高级配置")).dependent = true
end
/usr/lib/lua/luci/model/cbi/abcdefg.lua文档内容如下:(c)
--teasiu<teasiu@163.com>
local fs = require "nixio.fs"
local sys = require "luci.sys"
m = Map("abcdefg", translate("OpenWRT高级设置"), translate("各类服务内置脚本文档的直接编辑,除非你知道自己在干什么,否则请不要轻易修改这些配置文档"))
s = m:section(TypedSection, "abcdefg")
s.anonymous=true
--这里开始添加东西
return m
ok,到这里,把3个文档分别传到路由器相应的位置,你就建立了一个属于你自己的luci界面了。
利用上面的源码编译成ipk,以cc为例:
在feeds/luci/applications下面新建一个luci-app-myabc文件夹,
mkdir -p feeds/luci/applications/luci-app-myabc/root/etc/config #这里放a
mkdir -p feeds/luci/applications/luci-app-myabc/luasrc/controller #这里放b
mkdir -p feeds/luci/applications/luci-app-myabc/luasrc/model/cbi #这里放c
在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下找到并添加了。
点击链接加入群聊三群:751529538
点击链接加入群聊二群:376877156
点击链接加入群聊【路由器交流群:622891808已满】
本站附件分享,如果附件失效,可以去找找看
饿了么红包