config + ghost recipes: wire redbear-dnsd + document WIP stubs
CRITICAL F21 from NETWORKING-AND-DRIVERS-CODE-ASSESSMENT-2026-07-27.md §3.6: redbear-dnsd was built but not wired into any config target. - config/redbear-mini.toml: added redbear-dnsd to [packages] list - config/redbear-mini.toml: added 11_dnsd.service init entry that requires_weak=10_dhcpd.service (DNS comes up after DHCP) - The service uses redbear-dnsd directly (not the old 'dnsd' name) WIP stubs documented per AGENTS.md 'WIP recipes MUST start with #TODO describing what is missing' (the previous minimal recipe.toml files violated this): - local/recipes/system/netd/recipe.toml: WIP skeleton for the Red Bear network event/notification daemon. Documents 4 gaps: source/ missing, scheme:netd contract, redbear-netctl integration, QEMU integration tests. - local/recipes/system/audiodevd/recipe.toml: WIP skeleton for the audio device aggregator. Documents 4 gaps: source/ missing, scheme:audiodev contract, audio backend integration, HDA tests. - local/recipes/system/usbd/recipe.toml: WIP skeleton for the USB device manager (distinct from the existing redbear-usb-hotplugd). Documents 4 gaps: source/ missing, scope split from usb-hotplugd, config integration, QEMU tests. These are NOT removed (per AGENTS.md 'Never delete to fix a build'). The right fix is implementation; this commit just brings them into WIP-policy compliance so the gap is explicit and trackable.
This commit is contained in:
@@ -41,6 +41,11 @@ redbear-traceroute = {}
|
||||
redbear-mtr = {}
|
||||
redbear-nmap = {}
|
||||
|
||||
# Caching DNS daemon (loopback listener + scheme:dns). Wired as a service
|
||||
# below; see [init] section. Provides positive + negative caching and an
|
||||
# mDNS responder so the loopback resolver hits cache before upstream.
|
||||
redbear-dnsd = {}
|
||||
|
||||
# Wi-Fi control daemon (firmware-loader excluded — no firmware blobs in mini).
|
||||
redbear-wifictl = {}
|
||||
|
||||
@@ -148,6 +153,20 @@ args = ["-f"]
|
||||
type = "oneshot_async"
|
||||
"""
|
||||
|
||||
[[files]]
|
||||
path = "/etc/init.d/11_dnsd.service"
|
||||
data = """
|
||||
[unit]
|
||||
description = "Caching DNS daemon (loopback listener + scheme:dns)"
|
||||
requires_weak = [
|
||||
"10_dhcpd.service",
|
||||
]
|
||||
|
||||
[service]
|
||||
cmd = "redbear-dnsd"
|
||||
type = "oneshot_async"
|
||||
"""
|
||||
|
||||
[[files]]
|
||||
path = "/etc/issue"
|
||||
data = """
|
||||
|
||||
@@ -1,3 +1,24 @@
|
||||
# Red Bear audiodevd — WIP skeleton
|
||||
#
|
||||
#TODO audiodevd is the Red Bear audio device aggregator (analogous to
|
||||
# Linux's PulseAudio/PipeWire daemon in role, not implementation).
|
||||
# It multiplexes multiple audio backends (HDA, AC97, USB Audio Class)
|
||||
# into a single scheme:audiodev. Per AGENTS.md "WIP recipes MUST start
|
||||
# with `#TODO` describing what is missing", this header documents the
|
||||
# gaps:
|
||||
#
|
||||
# - [ ] Source: `source/` directory does not yet exist. Building
|
||||
# this recipe will fail at fetch.
|
||||
# - [ ] Backend contract: scheme:audiodev (stream/connect/disconnect)
|
||||
# is not yet defined.
|
||||
# - [ ] Integration: HDA/AC97/USB audio drivers (ac97d, ihdad,
|
||||
# redbear-usbaudiod) do not publish to audiodevd.
|
||||
# - [ ] Tests: at least one integration test playing audio through
|
||||
# a QEMU guest with a HDA emulation is required.
|
||||
#
|
||||
# The right fix is to implement the daemon. Track under
|
||||
# `local/docs/NETWORKING-AND-DRIVERS-CODE-ASSESSMENT-2026-07-27.md §3.6
|
||||
# (ghost-recipe gap) until implementation lands.
|
||||
[package]
|
||||
name = "audiodevd"
|
||||
version = "0.3.1"
|
||||
@@ -7,3 +28,4 @@ path = "source"
|
||||
|
||||
[build]
|
||||
template = "cargo"
|
||||
|
||||
|
||||
@@ -1,8 +1,29 @@
|
||||
# Red Bear netd — WIP skeleton
|
||||
#
|
||||
#TODO netd is the Red Bear network event/notification daemon (analogous
|
||||
# to Linux's `networkd` for netlink-driven interface events, link state
|
||||
# changes, and address acquisition). This recipe exists as a WIP
|
||||
# skeleton so the build pipeline can reference it once the implementation
|
||||
# lands. Per AGENTS.md "WIP recipes MUST start with `#TODO` describing
|
||||
# what is missing", this header documents the gaps:
|
||||
#
|
||||
# - [ ] Source: `source/` directory does not yet exist. The current
|
||||
# recipe is a placeholder; building it will fail at fetch.
|
||||
# - [ ] Scheme contract: scheme:netd (or wired into an existing
|
||||
# scheme:netcfg extension) is not yet defined.
|
||||
# - [ ] Integration: redbear-netctl does not subscribe to netd
|
||||
# events; netd is not in any redbear-*.toml [packages] list.
|
||||
# - [ ] Tests: at least one integration test against a QEMU guest
|
||||
# with two NICs is required before promoting to non-WIP.
|
||||
#
|
||||
# The right fix is to implement the daemon. Track under
|
||||
# `local/docs/NETWORKING-AND-DRIVERS-CODE-ASSESSMENT-2026-07-27.md §3.6
|
||||
# (ghost-recipe gap) until implementation lands.
|
||||
[source]
|
||||
path = "source"
|
||||
|
||||
[build]
|
||||
template = "cargo"
|
||||
|
||||
[package]
|
||||
name = "netd"
|
||||
version = "0.3.1"
|
||||
bins = ["netd"]
|
||||
|
||||
@@ -1,3 +1,25 @@
|
||||
# Red Bear usbd — WIP skeleton
|
||||
#
|
||||
#TODO usbd is the Red Bear USB device manager (analogous to Linux's
|
||||
# udevd for USB-class hotplug, but specifically for the USB subsystem
|
||||
# surface: class-driver autospawn policy, persistent device naming,
|
||||
# and a scheme:usb namespace). Per AGENTS.md "WIP recipes MUST start
|
||||
# with `#TODO` describing what is missing", this header documents the
|
||||
# gaps:
|
||||
#
|
||||
# - [ ] Source: `source/` directory does not yet exist. Building
|
||||
# this recipe will fail at fetch.
|
||||
# - [ ] Distinction: redbear-usb-hotplugd (exists) already handles
|
||||
# USB hotplug events. usbd is a higher-level manager that
|
||||
# owns class-driver autospawn policy and persistent naming.
|
||||
# The exact split between the two is not yet finalized.
|
||||
# - [ ] Integration: usbd is not in any redbear-*.toml [packages] list.
|
||||
# - [ ] Tests: at least one integration test exercising USB
|
||||
# hotplug against a QEMU guest is required.
|
||||
#
|
||||
# The right fix is to implement the daemon. Track under
|
||||
# `local/docs/NETWORKING-AND-DRIVERS-CODE-ASSESSMENT-2026-07-27.md §3.6
|
||||
# (ghost-recipe gap) until implementation lands.
|
||||
[package]
|
||||
name = "usbd"
|
||||
version = "0.3.1"
|
||||
@@ -7,3 +29,4 @@ path = "source"
|
||||
|
||||
[build]
|
||||
template = "cargo"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user