Commit Graph

230 Commits

Author SHA1 Message Date
vasilito b3dac7304b Fix build system: full commit hash, git clean, remove absent USB BINS from base-initfs
- Use full 40-char commit hash in base recipe.toml so the cookbook's
  caching logic correctly recognizes already-fetched sources (short
  hashes always missed the cache, causing patches to re-apply on top
  of already-patched source).
- Add git clean -fd before git reset --hard in fetch.rs so untracked
  files from previous patch applications are removed before re-patching.
- Remove ehcid/ohcid/uhcid from base-initfs BINS list (same fix as
  base recipe, these drivers don't exist in the current upstream).

With these fixes, redbear-live-mini builds and boots to login prompt in QEMU.
2026-04-23 00:35:51 +01:00
vasilito d6b6b90c2c Pin base recipe to rev 463f76b9 and remove absent USB controller BINS
Pin the base source to commit 463f76b9 so that redox.patch and our
P2 patches apply cleanly. Remove ehcid/ohcid/uhcid from BINS since
they don't exist in this upstream version.
2026-04-23 00:04:28 +01:00
vasilito f33d645fef Add all I2C/GPIO/UCSI driver sources to P2 patches
Recreate 11 driver crates lost during upstream source refresh:
- i2c-interface: shared I2C types (adapter info, transfer request/response)
- i2cd: /scheme/i2c adapter registry scheme daemon
- intel-lpss-i2cd: Intel LPSS/SerialIO I2C controller (ACPI-enumerated)
- dw-acpi-i2cd: DesignWare ACPI I2C controller
- amd-mp2-i2cd: AMD MP2 I2C controller (PCI-enumerated)
- i2c-hidd: I2C HID client daemon (PNP0C50/ACPI0C50 scanning, _DSM, HID protocol)
- intel-thc-hidd: Intel THC QuickI2C transport daemon
- gpiod: /scheme/gpio controller registry scheme daemon
- intel-gpiod: Intel ACPI GPIO registrar
- i2c-gpio-expanderd: I2C GPIO expander companion bridge
- ucsid: UCSI scheme daemon (/scheme/ucsi/summary, connectors, health)

P2-acpi-i2c-resources.patch: 6726 lines (was 1265)
P2-boot-runtime-fixes.patch: 319 lines (unchanged)
Both patches verified to apply cleanly on top of redox.patch
2026-04-22 23:55:16 +01:00
vasilito 1ed0558ddb Regenerate P2 patches against current upstream (463f76b9 + redox.patch)
Both P2 patches were stale — generated against an older upstream HEAD whose
context lines shifted after redox.patch modified the same files. Regenerated
from scratch against the current upstream commit so they apply cleanly.

P2-boot-runtime-fixes: hwd I2C candidate logging, pcid-spawner initfs detach,
pcid sendfd PCI fd handoff (319 lines)
P2-acpi-i2c-resources: new acpi-resource shared decoder crate (688 lines),
acpid /scheme/acpi/resources/ endpoint, resources.rs re-export shim,
sleep.rs restore (1265 lines)
2026-04-22 23:09:41 +01:00
vasilito 6158ec5cba Add ACPI I2C resources scheme endpoint and shared acpi-resource crate
- Add /scheme/acpi/resources/<device> endpoint to acpid for _CRS evaluation
- Extract acpi-resource shared crate (917 lines) with ResourceDescriptor types
- Eliminate duplicate type definitions in 5 consumers (i2c-hidd, dw-acpi-i2cd,
  intel-thc-hidd, i2c-gpio-expanderd, ucsid)
- Add P2-acpi-i2c-resources.patch (48KB) with all source changes
- Update ACPI-I2C-HID-IMPLEMENTATION-PLAN.md to reflect actual codebase state
2026-04-22 22:44:30 +01:00
vasilito 015d059cb9 Add verify-overlay-integrity.sh and remove stale rbos-info symlink
Create overlay integrity verification script that checks all recipe symlinks, patch symlinks, circular references, critical local/patches/ files, and config/redbear-*.toml files. Supports --repair (calls apply-patches.sh) and --quiet (CI). Fix config name: redbear-minimal.toml not redbear-mini.toml. Remove stale dangling symlink recipes/system/rbos-info (correct name is redbear-info).
2026-04-22 22:00:52 +01:00
vasilito 24e03c6cb6 Guard make distclean against local/ overlay source deletion
make distclean now documents that local/ is protected and will NOT be deleted. Add make distclean-nuclear as the only path that can touch local overlay sources (requires REDBEAR_ALLOW_LOCAL_UNFETCH=1). Add unfetch risk comments in mk/repo.mk for local overlay recipes.
2026-04-22 22:00:34 +01:00
vasilito c8746290b8 Harden apply-patches.sh and sync-upstream.sh against local/ data loss
apply-patches.sh: add --dry-run flag, make patch conflicts fail loudly instead of silently skipping, back up WIP directories instead of rm -rf, refuse to overwrite existing config files. sync-upstream.sh: add --force flag, abort on uncommitted local/ changes unless forced, stash with -u for untracked file protection, add pre-rebase overlay integrity check, improve nuclear option and stash pop guidance.
2026-04-22 22:00:17 +01:00
vasilito 3e21fa0ab0 Protect local/ overlay source trees from repo unfetch and fetch wipe
Add is_local_overlay() path guard in repo.rs that detects recipes symlinked into local/recipes/ and refuses to delete their source/ during unfetch unless REDBEAR_ALLOW_LOCAL_UNFETCH=1 is set. Add the same guard in fetch.rs to block source-dir wipe and git reset --hard for local overlays unless REDBEAR_ALLOW_PROTECTED_FETCH=1 is set. Expand redbear_protected_recipe() from 8 core recipes to all 95+ local overlay recipe names.
2026-04-22 21:59:59 +01:00
vasilito 2cb285b8be acpi-i2c-hid: implement wave 1 boot-path diagnostics and service wiring 2026-04-22 21:31:19 +01:00
vasilito 5c9afa7ba6 Update USB boot docs and relibc patch overlays 2026-04-22 14:30:28 +01:00
vasilito 8b19d06b18 Add ACPI I2C-HID quirk carriers 2026-04-22 12:41:39 +01:00
vasilito cdd081c664 Integrate Red Bear boot and packaging updates 2026-04-22 10:22:09 +01:00
vasilito a486eb0791 Fix TUI log indentation in repo cook view 2026-04-21 16:15:17 +01:00
vasilito 3aa0145c6b Refresh KDE source compatibility patches 2026-04-21 16:15:17 +01:00
vasilito 6ee4b00707 Adjust KDE recipe patches for Qt private APIs 2026-04-21 16:15:17 +01:00
vasilito c30327aeab Consolidate relibc overlay patch chain 2026-04-21 16:15:17 +01:00
vasilito 21d8d4f989 Expose USB tools in base runtime surfaces 2026-04-21 16:15:17 +01:00
vasilito 67c1908f7d Expand redbear-live-mini as a recovery image 2026-04-21 16:15:17 +01:00
vasilito 290cf04e68 Delay runtime services until boot-late 2026-04-21 16:15:17 +01:00
vasilito d2632f08f8 Activate the greeter VT after startup 2026-04-21 16:15:17 +01:00
vasilito 005e1adad1 Route fallback consoles through activate_console 2026-04-21 16:15:17 +01:00
vasilito 37149cf8ca Require a local RedoxFS module for GRUB builds 2026-04-21 16:15:16 +01:00
vasilito 3d930cb713 Add GRUB variants for live and minimal profiles 2026-04-21 16:15:16 +01:00
vasilito 7b803d2dde Split shared GRUB policy into a common fragment 2026-04-21 16:15:16 +01:00
vasilito ac2792ef73 Document local-first package sourcing policy 2026-04-21 16:15:16 +01:00
vasilito a1d0a35071 Advance KDE, Qt, and Wayland recipe sources 2026-04-20 18:37:35 +01:00
vasilito 7c50fba50d Advance Red Bear runtime services and tools 2026-04-20 18:37:35 +01:00
vasilito c944c0aaa8 Update tracked configs and image helpers 2026-04-20 18:37:35 +01:00
vasilito 9f126d91d4 Expand base overlay patches and controller proofs 2026-04-20 18:37:35 +01:00
vasilito fc42011e83 Refine relibc overlay patches and test wiring 2026-04-20 18:37:35 +01:00
vasilito 1865296ed6 Update local subsystem planning docs 2026-04-20 18:37:35 +01:00
vasilito a475de7c75 Refresh repository docs and references 2026-04-20 18:37:35 +01:00
vasilito e3d776aa9a Advance redbear-full Wayland, greeter, and Qt integration
Consolidate the active desktop path around redbear-full while landing the greeter/session stack and the runtime fixes needed to keep Wayland and KWin bring-up moving forward.
2026-04-19 17:59:58 +01:00
vasilito e778af2103 Update local docs for four compile targets 2026-04-19 17:57:29 +01:00
vasilito f46b2fad04 Update public docs for four compile targets 2026-04-19 17:57:20 +01:00
vasilito ef334d31f9 Expose usbctl for mini USB lifecycle checks 2026-04-19 17:57:09 +01:00
vasilito b11a422bfb Update mini USB proof entrypoints 2026-04-19 17:56:59 +01:00
vasilito 5c5fbea171 Align relibc IPC overlay docs 2026-04-19 09:26:57 +01:00
vasilito 4b40fc2826 Simplify relibc test recipe replay 2026-04-19 09:26:57 +01:00
vasilito 718b71ad2b Fix cookbook redoxer stage root selection 2026-04-19 09:26:57 +01:00
vasilito 9d1dd4ad13 Preserve base overlay carrier updates 2026-04-18 21:38:31 +01:00
vasilito d2b41aad8d Fix AMDGPU recipe glue assumptions 2026-04-18 21:38:31 +01:00
vasilito 95c632307c Document Linux borrowing guidance 2026-04-18 21:38:31 +01:00
vasilito 13bc13160d Refine subsystem planning docs 2026-04-18 21:38:31 +01:00
vasilito 9369247e1e Update USB validation docs 2026-04-18 21:38:31 +01:00
vasilito f9e0a2a3e1 Update ACPI and low-level controller docs 2026-04-18 21:38:31 +01:00
vasilito 1677be954c Expose proof helpers in runtime surfaces 2026-04-18 21:38:30 +01:00
vasilito e9ec6d23c6 Add USB maturity proof scripts 2026-04-18 21:38:30 +01:00
vasilito 9b8523baaf Add low-level controller proof scripts 2026-04-18 21:38:30 +01:00