# Red Bear OS overrides for base init services. # # 00_base.service: stripped base setup (tmpdir only, no sudo — sudo runs from # base.toml's 00_sudo.service). ipcd and ptyd are started by # 00_ipcd.service and 00_ptyd.service from the base recipe. # 00_drivers / 10_net: no longer overridden — the legacy scripts were removed # from base.toml. pcid-spawner is started by 00_pcid-spawner.service # from the base recipe; smolnetd/dhcpd have their own .service files. # 00_pcid-spawner.service: overridden to oneshot_async. The base recipe uses # type="oneshot" which blocks init until pcid-spawner exits. On real # hardware (and QEMU), pcid-spawner can hang waiting for a PCI device # driver that never responds, blocking the entire rootfs phase including # getty/login. Using oneshot_async lets init proceed to start console # services while drivers spawn in the background. [[files]] path = "/usr/lib/init.d/00_base.service" data = """ [unit] description = "Base environment setup (tmpdir)" [service] cmd = "ion" args = ["-c", "rm -rf /tmp; mkdir -m a=rwxt /tmp"] type = "oneshot" """ [[files]] path = "/etc/init.d/20_audiod.service" data = """ [unit] description = "Audio multiplexer" default_dependencies = false [service] cmd = "audiod" type = "oneshot_async" """ [[files]] path = "/etc/init.d/00_pcid-spawner.service" data = """ [unit] description = "PCI driver spawner (non-blocking)" [service] cmd = "pcid-spawner" type = "oneshot_async" """