# The interactive shell on the system console. Label = os.schos.console-shell # zsh, not /bin/sh. mksh stays as /bin/sh and is what schinit falls back to # when no manifest loads -- so if zsh ever fails to start, the recovery shell # is a different program rather than the same broken one. See ports/zsh. Program = /bin/zsh Args = -zsh RunAtLoad = yes KeepAlive = yes # The environment this job's shell starts with. Until schinit grew an # Environment key, every process on SchOS started with an empty environment -- # the kernel built one and exec threw it away. $TERM is the one that matters # most: a line editor with no TERM cannot ask terminfo how to move a cursor. Environment = TERM=linux Environment = PATH=/bin:/usr/bin Environment = HOME=/root Environment = SHELL=/bin/zsh # This job reads the console, so it has to own it: schinit puts every job in # its own session, and a session with no controlling terminal is not delivered # terminal input at all. Without this the shell echoes and executes nothing. ControllingTerminal = yes StandardIn = /dev/console StandardOut = /dev/console StandardError = /dev/console # Seconds between respawns. Guards against a shell that dies instantly # defaults to 10. One is enough for a shell someone just exited on purpose. ThrottleInterval = 1