Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
8.6 KiB
07 — Red Bear OS Implementation Plan
Purpose
This document defines a clear, practical implementation plan for Red Bear OS. It focuses on building a usable, validated system through disciplined packaging, profile-based composition, and incremental hardware enablement, while preserving Redox architecture: userspace drivers, services, and capability-oriented system boundaries.
This is the canonical public plan for how Red Bear OS should evolve at the repository level.
Detailed subsystem notes still live in focused documents such as
local/docs/AMD-FIRST-INTEGRATION.md, docs/03-WAYLAND-ON-REDOX.md, and
docs/05-KDE-PLASMA-ON-REDOX.md.
Core Principles
Preserve the architecture
- Keep drivers and services in userspace.
- Preserve clear system boundaries and capability-based design.
- Stay aligned with upstream Redox where practical.
Packaging is the integration layer
- Deliver functionality as packages and package groups.
- Compose profiles from packages rather than monolithic changes.
- Prefer packaging and configuration work over invasive core-tree rewrites when possible.
Keep Red Bear changes isolated
- Place Red Bear-specific work under
local/whenever possible. - Keep upstream-facing areas clean and rebase-friendly.
- Use scripts and overlays to make sync/rebase work predictable.
Profiles are products
The supported product surfaces are:
redbear-minimalredbear-desktopredbear-fullredbear-live
Each profile must be buildable, testable, and documented.
Validation over claims
- “Compiles” is not the same as “supported”.
- Every user-visible feature must map to a profile.
- Support status must be explicit, reproducible, and evidence-backed.
System Structure
Layers
- Upstream platform — Redox kernel, libc, and core services
- Red Bear integration (
local/) — patches, recipes, configs, scripts, overlays - Profiles — concrete system builds assembled from packages and package groups
Profiles
redbear-minimal
Console-focused.
- Boot
- Storage
- Package manager
- Wired networking
This is the primary development and validation target.
redbear-desktop
Wayland plus base desktop services.
This is the main integration environment for graphics, input, and desktop bring-up.
redbear-full
KDE Plasma target.
This profile should only include graphics and networking paths that are validated enough to be presented as real user-facing system behavior.
redbear-live
Live, demo, and rescue environment.
This profile should prioritize diagnostics, recovery workflows, and installability.
Packaging Model
Package groups
base-corestorage-basedesktop-basewayland-basekde-basenet-basenet-vmnet-wired-commonnet-wifi-experimentalgpu-intel-experimentalgpu-amd-experimentalredbear-brandingredbear-live-toolsredbear-hwdiag
Rules
- All functionality is delivered via packages.
- Drivers are packaged individually.
- Profiles depend on package groups.
- Package metadata should make support status obvious.
Workstreams
1. Repository discipline
Define and maintain contribution rules.
- Keep all custom work under
local/where possible. - Provide scripts for rebasing, diffing, and resyncing upstream.
- Make repository governance visible and repeatable.
Outputs
local/docs/repo-governance.md- Maintenance scripts
Acceptance
- Custom work is easy to identify.
- Upstream sync work is predictable and documented.
2. Profiles and packaging
Formalize profile definitions and package-group composition.
- Map each profile to package groups.
- Standardize package metadata and support labeling.
- Keep profile behavior reproducible.
Acceptance
- Profiles are reproducible and documented.
3. Driver substrate
Implement and stabilize the shared driver base.
redox-driver-sysfor shared driver plumbing- PCI, MMIO, IRQ, and DMA support
- Driver daemon template for new device work
Acceptance
- A new driver can be created from a known template.
4. Graphics and Wayland
Drive the graphical stack through concrete milestones.
Milestones
- Run one Wayland application
- Start KWin
- Launch Plasma shell
Acceptance
- At least one profile runs a real graphical session.
5. Networking
Architecture
- Per-NIC driver daemons
- Network service for interfaces, DHCP, and routing
- D-Bus compatibility surface where desktop software expects it
Milestones
N1: VM networking
virtio-net- DHCP and package access
N2: Wired hardware
- Intel NICs
- Realtek NICs
N3: KDE integration
- NetworkManager-compatible D-Bus subset
N4: Wi-Fi (experimental)
- Single chipset family first
Acceptance
- Wired networking works in at least one real profile.
6. KDE integration
- Package the D-Bus session path
- Provide a networking shim where KDE expects one
- Provide an audio compatibility layer where needed
- Package session startup and startup dependencies
Acceptance
- A KDE session launches and its limitations are documented.
7. Live image and diagnostics
- Hardware detection tools
- Network diagnostics
- Graphics diagnostics
Acceptance
- The live image can diagnose common failure cases.
8. Validation and CI
Support labels
buildsbootsnetworkwaylandkdevalidatedexperimental
Tasks
- VM-based tests
- Hardware validation matrix
Acceptance
- Support status is explicit and reproducible.
Execution Phases
Phase 1 — Repository discipline and profile reproducibility
- Establish repository rules for Red Bear-specific work.
- Make tracked profiles explicit.
- Reduce duplicated profile wiring through shared config fragments.
- Keep build helpers aligned with the tracked profile set.
Primary targets
redbear-minimalredbear-desktop
Acceptance
- Profile composition is easier to audit.
- Shared Red Bear service wiring is not copy-pasted across profile files.
- Repository governance and support-language rules are documented.
Phase 2 — Minimal system baseline
- Boot
- Package management
- VM networking
Acceptance
redbear-minimalremains the primary reproducible validation baseline.
Phase 3 — Driver and runtime substrate
- Shared driver layer
- Firmware loading
- Input/runtime service prerequisites
Acceptance
- The driver/runtime substrate needed by graphics and desktop work is explicitly packaged and wired.
Phase 4 — Graphics and Wayland path
- Wayland runtime path
- Qt application bring-up
- Profile-level graphics integration
Acceptance
- At least one profile can carry a coherent graphical session path.
Phase 5 — Wired networking and desktop integration
- Wired networking on real profiles
- KDE-visible networking path
- Session-level compatibility surfaces
Acceptance
- Wired networking works in at least one profile with documented limits.
Phase 6 — KDE session viability
- KWin
- Plasma shell
- Session startup packaging
Acceptance
- KDE session launch is possible with documented limitations.
Phase 7 — Hardware validation and support labels
- One fully validated profile
- Support matrix and validation evidence
Acceptance
- Support claims are explicit, reproducible, and tied to a profile.
Phase 8 — Wi-Fi expansion
- Experimental Wi-Fi support for one chipset family first
Acceptance
- Wi-Fi work remains clearly marked as experimental until validated.
Task Template
Every substantial work item should capture:
- Title
- Objective
- Scope
- Files affected
- Dependencies
- Implementation notes
- Acceptance criteria
- Validation steps
- Risks
Final Direction
Red Bear OS should evolve as a profile-driven, package-defined system built on Redox architecture. Progress should be measured by working profiles, not theoretical completeness.
Priority order
- Repository discipline
- Profile reproducibility
- VM usability
- Graphics bring-up
- Wired networking
- KDE integration
- Hardware validation
- Wi-Fi expansion