1
1
mirror of https://git.shadowkat.net/izaya/OC-PsychOS2.git synced 2024-11-24 20:27:39 -05:00

Compare commits

...

5 Commits

Author SHA1 Message Date
XeonSquared
026f2524e6 this one works, I tested it 2023-08-07 13:26:42 +10:00
XeonSquared
e20123b527 clean up print tabbing 2023-08-07 13:26:20 +10:00
XeonSquared
efdb01328f I don't know why it was looking at package.loaded but it isn't now. 2023-08-07 13:25:57 +10:00
XeonSquared
a05e19b545 I'm stupid sometimes 2023-08-07 12:56:59 +10:00
XeonSquared
00d4472f91 make fsmanager's mount function externally accessible 2023-08-07 12:54:25 +10:00
3 changed files with 6 additions and 5 deletions

View File

@ -24,7 +24,7 @@ local function saveConfig()
end
function rc.load(name,force) -- string boolean -- table -- Attempts to load service *name*, and if *force* is true, replaces the current instance.
if not package.loaded[name] or force then
if not service[name] or force then
for d in rc.paths:gmatch("[^\n]+") do
if fs.exists(d.."/"..name..".lua") then
service[name] = runfile(d.."/"..name..".lua")

View File

@ -34,7 +34,7 @@ end
function print(...) -- Writes each argument to the default output stream, separated by space.
for k,v in ipairs({...}) do
io.write(tostring(v).."\t")
io.write((k>1 and "\t" or "")..tostring(v))
end
io.write("\n")
end

View File

@ -1,7 +1,8 @@
local fsmanager = {}
fsmanager.filesystems = {}
local run = true
local function mount(addr)
function fsmanager.mount(addr)
dest = "/" .. (component.invoke(addr,"getLabel") or "mnt/"..addr:sub(1,3))
syslog("Mounting "..addr.." to "..dest)
fs.makeDirectory(dest)
@ -17,12 +18,12 @@ function fsmanager.start()
run = true
return os.spawn(function()
for addr, _ in component.list("filesystem") do
mount(addr)
fsmanager.mount(addr)
end
while run do
local tE = {coroutine.yield()}
if tE[1] == "component_added" and tE[3] == "filesystem" then
mount(tE[2])
fsmanager.mount(tE[2])
elseif tE[1] == "component_removed" and fsmanager.filesystems[tE[2]] and tE[3] == "filesystem" then
syslog("Unmounting "..tE[2].." from "..fsmanager.filesystems[tE[2]])
fs.umount(fsmanager.filesystems[tE[2]])