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()
coroutine.yield()
log(pcall(login))
print("lush v1/".._VERSION) print("lush v1/".._VERSION)
os.setenv("PSF",function()
local ps = "["..os.getuid().."@"..net.id.." "..(os.getenv("PWD") or "").."]"
if os.getuid() == "superuser" then ps = ps .. "# " else ps = ps .. "$ " end
return ps end)
while true do 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)}
@ -17,4 +18,3 @@ spawn("lua shell", function() print(pcall(function()
end end
print(table.unpack(rt)) print(table.unpack(rt))
end end
end)) end)