Semver pre-release suffix (-rb0.2.5) breaks Cargo's [patch.crates-io]
matching for transitive deps. Build metadata (+rb0.2.5) is semver-
compatible: ^0.9.0 matches 0.9.0+rb0.2.5, patch redirection works,
and the Red Bear suffix is still visible in the version string.
This rebases the local installer fork onto upstream 0.2.42
(commit ed6013c295) and reapplies
the documented Red Bear OS additions from the local state.
* Cargo.toml: bumped version to 0.2.42-rb1 per the no-fake-version-
label policy. Also bumped dep versions (libc 0.2.70 -> with
optional, pkgar 0.2 -> 0.2.2, redox-pkg 0.3 -> 0.3.1, ring with
optional, libredox with optional) so the build matches the local
fork ecosystem.
* src/installer.rs: integrate the collision detection Red Bear
added in Phase J. The installer now aborts on init-service file
collisions (e.g. /usr/lib/init.d/ vs /etc/init.d/) and prints
a clear error pointing to the local docs.
* src/lib.rs: declare the collision module and re-export the
CollisionDetector.
* src/config/package.rs: extend PackageConfig with PartialEq so
the new package-groups feature (added in commit e45ce4d) can
compare configs.
* src/bin/installer.rs, src/bin/installer_tui.rs: expose the
--strict-collision / REDBEAR_STRICT_COLLISION env var to
optionally make non-critical file collisions fatal.
* gui/: new redox_installer_gui binary — the TUI installer. This
is the new binary added in Red Bear OS Phase 3 and lives in
local/patches/installer/0001-redbear-os-additions.patch as a
documented Red Bear addition.
The previous redox.patch in local/patches/installer/ is removed
and replaced with this regenerated 0001-redbear-os-additions.patch
that applies cleanly with --fuzz=0 to upstream 0.2.42.
Verified by local/scripts/verify-fork-versions.sh: the local
installer-0.2.42-rb1 branch source content matches upstream 0.2.42
plus this single documented patch.