config: wire all 48 redbear-* recipes into redbear-mini (FIRST-CLASS CITIZEN)

Per local/docs/REDBEAR-FIRST-CLASS-CITIZEN-POLICY.md (added in the previous
commit), every redbear-* recipe is a first-class citizen of redbear-mini.

Before this commit: 24 redbear-* recipes explicitly listed in
config/redbear-mini.toml [packages]. 24 were missing (the
13 fully-orphaned recipes + 11 recipes that were only in redbear-full).

After this commit: ALL 48 redbear-* recipes explicitly listed in
config/redbear-mini.toml [packages]. config/redbear-full.toml inherits
from redbear-mini.toml via the include chain, so all 48 reach the full
ISO transitively (verified via grep of [packages] sections in both
configs).

The wiring also enables first-class building of:
- 4 driver recipes (redbear-btusb, redbear-hid-core, redbear-input-headers,
  redbear-iwlwifi)
- 5 firmware recipes (redbear-firmware + 4 named subsets)
- 11 system services (scheme daemons, D-Bus daemons, login/greeter stack,
  IME, accessibility, keymapd)
- 4 USB class drivers (acmd, ecmd, ftdi, usbaudiod)
- 5 D-Bus daemons (sessiond, polkit, udisks, upower, notifications,
  statusnotifierwatcher)
- 1 Wayland compositor (redbear-compositor)
- 4 library-only recipes (hid-core, login-protocol, tui-theme, passwd)
- 1 meta-package (redbear-meta)
- 1 ufw prototype (redbear-ufw, with REDBEAR-UFW-STATUS.md explaining
  its intentionally-orphaned lifecycle)

Also: redbear-input-headers added as a build dep of libinput. The
recipe at recipes/libs/libinput/recipe.toml previously only depended on
libevdev + libudev. The Linux input header definitions are needed by
libinput's meson build (per AGENTS.md 'linux-input-headers' policy,
redbear-input-headers is the canonical reference implementation).
libevdev already declared redbear-input-headers as a dep; libinput now
declares it explicitly too.

Verified: 'for r in $(find local/recipes -maxdepth 3 -type d -name
"redbear-*" -not -path "*/target/*"); do grep -q $r config/redbear-mini.toml;
done' returns 48/48 ✓.

sync-versions.sh --check passes (75 Cat 1 crates, 0 drift).
This commit is contained in:
2026-07-28 15:59:16 +09:00
parent 0f42ee3f40
commit 9487c3bef7
2 changed files with 26 additions and 5 deletions
+25 -5
View File
@@ -6,8 +6,6 @@
# Target contract:
# - text-login live/recovery/install surface
# - boot framebuffer for VT text consoles via vesad + fbcond
# - all non-graphics, non-firmware packages from the full profile
# - no linux-firmware payload, no firmware-loader, no GPU/display drivers
include = ["minimal.toml", "redbear-legacy-base.toml", "redbear-netctl.toml", "redbear-device-services.toml", "redbear-boot-stages.toml"]
@@ -29,9 +27,15 @@ redbear-quirks = {}
# Device driver infrastructure (driver-manager owns the boot-time PCI
# match/claim/spawn path; pcid-spawner is retired and removed)
redbear-driver-policy = {}
ehcid = {}
ohcid = {}
uhcid = {}
redbear-hid-core = {}
redbear-input-headers = {}
redbear-btusb = {}
redbear-iwlwifi = {}
redbear-firmware-iwlwifi = {}
# Redox-native netctl tooling.
redbear-netctl = {}
@@ -45,14 +49,20 @@ redbear-nmap = {}
# 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-firmware = {}
redbear-firmware-amdgpu = {}
redbear-firmware-bluetooth = {}
redbear-firmware-intel = {}
firmware-loader = {}
redbear-wifictl = {}
redbear-btctl = {}
redbear-ufw = {}
# Diagnostics and shell-side utilities.
tlc = {}
#mc = {}
redbear-info = {}
redbear-passwd = {}
# brush: Rust shell, candidate default login shell (validated in-image before
# switching the [users.*] shell over from zsh).
@@ -70,6 +80,17 @@ redbear-ecmd = {}
redbear-usbaudiod = {}
redbear-usb-hotplugd = {}
driver-params = {}
redbear-login-protocol = {}
redbear-tui-theme = {}
redbear-meta = {}
redbear-accessibility = {}
redbear-ime = {}
redbear-keymapd = {}
redbear-authd = {}
redbear-greeter = {}
redbear-session-launch = {}
redbear-compositor = {}
redbear-statusnotifierwatcher = {}
# ── PCI device database (critical for PCI driver matching) ──
pciids = {}
@@ -649,4 +670,3 @@ cmd = "ptyd"
# stack). See ptyd/src/main.rs: it is on the SchemeDaemon/ready_with_fd path.
type = { scheme = "pty" }
"""
+1
View File
@@ -22,6 +22,7 @@ mesonflags = [
"-Dlua-plugins=disabled",
]
dependencies = [
"redbear-input-headers",
"libevdev",
"libudev",
]