added default services to rc, made rc.stop cope if there is no stop function in a daemon, and rc.enable actually enables things now

This commit is contained in:
Izaya 2020-03-26 17:32:54 +11:00
parent 8b29e472f8
commit f33ce1e1e0

View File

@ -4,7 +4,7 @@ local rc = {}
rc.pids = {}
local service = {}
local cfg = {}
cfg.enabled = {}
cfg.enabled = {"getty","minitel"}
local function loadConfig()
local f = io.open("/boot/cfg/rc.cfg","rb")
@ -37,8 +37,10 @@ end
function rc.stop(name,...)
if not service[name] then return false, "service not found" end
service[name].stop(...)
coroutine.yield()
if service[name].stop then
service[name].stop(...)
coroutine.yield()
end
if rc.pids[name] then
os.kill(rc.pids[name])
end
@ -63,6 +65,7 @@ function rc.enable(name)
for k,v in pairs(cfg.enabled) do
if v == name then return false end
end
cfg.enabled[#cfg.enabled+1] = name
saveConfig()
end
function rc.disable(name)