version 1 . embeddedType EntityRef.Cap . Service = DaemonService . DaemonService = . DaemonProcess = . DaemonId = any . DaemonSpec = @simple CommandLine / @full FullDaemonSpec . FullDaemonSpec = { argv: CommandLine } & @env DaemonEnv & @dir DaemonDir & @clearEnv ClearEnv . DaemonEnv = @present { env: { EnvVariable: EnvValue ...:... } } / @invalid { env: any } / @absent {} . DaemonDir = @present { dir: string } / @invalid { dir: any } / @absent {} . ClearEnv = @present { clearEnv: bool } / @invalid { clearEnv: any } / @absent {} . CommandLine = @shell string / @full FullCommandLine . FullCommandLine = [@program string, @args string ...] . EnvVariable = @string string / @symbol symbol / @invalid any . EnvValue = @set string / @remove #f / @invalid any .