From feb14f784289ca919821c2f78aa69cb75de8e5a6 Mon Sep 17 00:00:00 2001 From: Manuel Munz Date: Fri, 14 Jan 2011 19:44:03 +0000 Subject: [PATCH] applications/initmgr: Add subpage for editing /etc/rc.local --- .../luci-initmgr/luasrc/controller/init.lua | 4 ++ .../luci-initmgr/luasrc/model/cbi/startup.lua | 37 +++++++++++++++++++ 2 files changed, 41 insertions(+) create mode 100644 applications/luci-initmgr/luasrc/model/cbi/startup.lua diff --git a/applications/luci-initmgr/luasrc/controller/init.lua b/applications/luci-initmgr/luasrc/controller/init.lua index 277e95c9d..f3fa7ef79 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 000000000..800da1126 --- /dev/null +++ b/applications/luci-initmgr/luasrc/model/cbi/startup.lua @@ -0,0 +1,37 @@ +--[[ +LuCI - Lua Configuration Interface + +Copyright 2008 Steven Barth +Copyright 2008 Jo-Philipp Wich +Copyright 2010 Manuel Munz + +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 -- 2.25.1