summaryrefslogtreecommitdiffhomepage
path: root/applications/luci-initmgr/luasrc
diff options
context:
space:
mode:
authorManuel Munz <freifunk@somakoma.de>2011-01-14 19:44:03 +0000
committerManuel Munz <freifunk@somakoma.de>2011-01-14 19:44:03 +0000
commitfeb14f784289ca919821c2f78aa69cb75de8e5a6 (patch)
tree338f32365c9cf6f8b09ab8f63c663dcaf259191e /applications/luci-initmgr/luasrc
parent483826c99475bcf0d5becdf9e176fcf65f188ebd (diff)
applications/initmgr: Add subpage for editing /etc/rc.local
Diffstat (limited to 'applications/luci-initmgr/luasrc')
-rw-r--r--applications/luci-initmgr/luasrc/controller/init.lua4
-rw-r--r--applications/luci-initmgr/luasrc/model/cbi/startup.lua37
2 files changed, 41 insertions, 0 deletions
diff --git a/applications/luci-initmgr/luasrc/controller/init.lua b/applications/luci-initmgr/luasrc/controller/init.lua
index 277e95c9de..f3fa7ef79b 100644
--- a/applications/luci-initmgr/luasrc/controller/init.lua
+++ b/applications/luci-initmgr/luasrc/controller/init.lua
@@ -26,4 +26,8 @@ function index()
{"admin", "services", "init"}, form("init/init"),
luci.i18n.translate("Initscripts"), 0
).i18n = "initmgr"
+
+ entry(
+ {"admin", "services", "init", "startup" },form("init/startup"),
+ luci.i18n.translate("Local Startup"), 10).i18n = "initmgr"
end
diff --git a/applications/luci-initmgr/luasrc/model/cbi/startup.lua b/applications/luci-initmgr/luasrc/model/cbi/startup.lua
new file mode 100644
index 0000000000..800da11266
--- /dev/null
+++ b/applications/luci-initmgr/luasrc/model/cbi/startup.lua
@@ -0,0 +1,37 @@
+--[[
+LuCI - Lua Configuration Interface
+
+Copyright 2008 Steven Barth <steven@midlink.org>
+Copyright 2008 Jo-Philipp Wich <xm@leipzig.freifunk.net>
+Copyright 2010 Manuel Munz <freifunk at somakoma dot de>
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+]]--
+
+local fs = require "nixio.fs"
+local rc = "/etc/rc.local"
+
+f = SimpleForm("rc", translate("Startup"), translate([[This is the content of /etc/rc.local. Insert your own commands here
+ (in front of 'exit 0') to execute them at the end of the boot process.]]))
+
+t = f:field(TextValue, "rcs")
+t.rmempty = true
+t.rows = 20
+function t.cfgvalue()
+ return fs.readfile(rc) or ""
+end
+
+function f.handle(self, state, data)
+ if state == FORM_VALID then
+ if data.rcs then
+ fs.writefile(rc, data.rcs:gsub("\r\n", "\n"))
+ end
+ end
+ return true
+end
+
+return f