From 9487c3bef770227b60d76f1eae9d9fe3bdc45b00 Mon Sep 17 00:00:00 2001 From: vasilito Date: Tue, 28 Jul 2026 15:59:16 +0900 Subject: [PATCH] config: wire all 48 redbear-* recipes into redbear-mini (FIRST-CLASS CITIZEN) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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). --- config/redbear-mini.toml | 30 ++++++++++++++++++++----- local/recipes/libs/libinput/recipe.toml | 1 + 2 files changed, 26 insertions(+), 5 deletions(-) diff --git a/config/redbear-mini.toml b/config/redbear-mini.toml index bc62ffa0d2..b893836876 100644 --- a/config/redbear-mini.toml +++ b/config/redbear-mini.toml @@ -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" } """ - diff --git a/local/recipes/libs/libinput/recipe.toml b/local/recipes/libs/libinput/recipe.toml index c8fd90be14..2124775278 100644 --- a/local/recipes/libs/libinput/recipe.toml +++ b/local/recipes/libs/libinput/recipe.toml @@ -22,6 +22,7 @@ mesonflags = [ "-Dlua-plugins=disabled", ] dependencies = [ + "redbear-input-headers", "libevdev", "libudev", ]