# fork-upstream-map.toml — Authoritative mapping of local Cat 2 fork # directories to their upstream Redox repositories and the upstream # release tag each fork is based on. Updated by # local/scripts/refresh-fork-upstream-map.sh. Consumed by # local/scripts/verify-fork-versions.sh to enforce the "no fake version # label" rule (local/AGENTS.md § "No-fake-version-label rule"). # # Format: one line per fork: # # # A fork with `-rbN>` in its Cargo.toml MUST have its # `` part match the upstream tag listed here, and the source # content MUST be a real rebase onto that upstream tag plus documented # Red Bear patches (in local/patches//). syscall https://gitlab.redox-os.org/redox-os/syscall.git 0.9.0 libredox https://gitlab.redox-os.org/redox-os/libredox.git 0.1.18 redoxfs https://gitlab.redox-os.org/redox-os/redoxfs.git 0.9.0 redox-scheme https://gitlab.redox-os.org/redox-os/redox-scheme.git 0.11.2 relibc https://gitlab.redox-os.org/redox-os/relibc.git 0.2.5 kernel https://gitlab.redox-os.org/redox-os/kernel.git 0.5.12 # bootloader: KNOWN PENDING REBASE. # # The local fork claims to be `1.0.0-rb1` (i.e. upstream 1.0.0 + Red # Bear patches) but the patches in `local/patches/bootloader/` do # NOT apply cleanly to upstream 1.0.0 (verified by # verify-fork-versions.sh). The fork was originally a 0.1.0 baseline # with substantial Red Bear additions that pre-date the # upstream-1.0.0 refactor (e.g. `src/arch/aarch64.rs` does not # exist in upstream 1.0.0 — the patches reference files that # upstream 1.0.0 doesn't have). # # TO REBASE: # 1. Pick a clean upstream tag as the new base (likely the same # 1.0.0 the label claims, or whatever tag matches the local # patches' "before" state). # 2. Reset the fork to that tag: `git reset --hard `. # 3. Reapply each patch on top: `git apply local/patches/bootloader/*.patch`. # Each patch must apply cleanly with `--fuzz=0` (no context drift). # 4. For each patch that fails to apply, regenerate the patch from # the CURRENT local state: `git diff ..HEAD -- path/to/file > patch`. # 5. Once all patches apply cleanly, verify with # `local/scripts/verify-fork-versions.sh`. # 6. Commit the rebased state and push the new branch. # # Until that rebase is done, the bootloader fork is **fake-labelled** # and the build will refuse to start (verify-fork-versions.sh # exits 1). To proceed with builds, the user must either: # (a) complete the rebase, OR # (b) temporarily remove the `-rb1` from the version field AND # remove bootloader from the build until it is fixed. bootloader https://gitlab.redox-os.org/redox-os/bootloader.git PENDING_REBASE installer https://gitlab.redox-os.org/redox-os/installer.git 0.2.42 userutils https://gitlab.redox-os.org/redox-os/userutils.git 0.1.0