SchOS/etc/schinit/console-shell.job
Nexoniarz f4d5c671a7 schinit: the console job stops explaining itself in launchd's words
The manifest described its own fields by naming the thing they were
modelled on -- "in launchd terms this is a RunAtLoad + KeepAlive
daemon", and ThrottleInterval attributed to launchd by name. The design
debt is real and recorded in docs; a file shipped in /etc is not the
place to keep citing another system's trademarks.

What the fields do is unchanged, and so is every value. The comment that
survives says what the interval guards against, which is the part a
reader of this file actually needs.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-15 15:59:29 +02:00

20 lines
687 B
Text

# The interactive shell on the system console.
Label = os.schos.console-shell
Program = /bin/sh
Args = sh
RunAtLoad = yes
KeepAlive = yes
# 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