lush no longer forks or calls login, has a configurable prompt

This commit is contained in:
Izaya 2017-10-08 01:35:18 +11:00
parent d736491628
commit c5307a7433

View File

@ -1,14 +1,15 @@
local tA = {...} local tA = {...}
local si = tA[1] local si = tA[1] or os.getenv("sI")
spawn("lua shell", function() print(pcall(function() os.setenv("sI",si)
os.setenv("sI",si) _ENV = shutil.genenv()
_ENV = shutil.genenv() print("lush v1/".._VERSION)
coroutine.yield() os.setenv("PSF",function()
log(pcall(login)) local ps = "["..os.getuid().."@"..net.id.." "..(os.getenv("PWD") or "").."]"
print("lush v1/".._VERSION) if os.getuid() == "superuser" then ps = ps .. "# " else ps = ps .. "$ " end
while true do return ps end)
while true do
local didexec = false local didexec = false
write((os.getenv("PWD") or "").."> ") write(os.getenv("PSF")())
local inp=readln() local inp=readln()
if not inp then break end if not inp then break end
local rt = {shutil.exec(inp)} local rt = {shutil.exec(inp)}
@ -16,5 +17,4 @@ spawn("lua shell", function() print(pcall(function()
table.remove(rt,1) table.remove(rt,1)
end end
print(table.unpack(rt)) print(table.unpack(rt))
end end
end)) end)