From 3f2f3bacc53eee60e94439f4b2a335f15458d910 Mon Sep 17 00:00:00 2001 From: vasilito Date: Wed, 1 Jul 2026 13:07:25 +0300 Subject: [PATCH] kernel: Phase J [patch.crates-io] libredox (mirror of base's commit) The kernel needs the same libredox override as base: the local libredox fork at ../libredox uses the local syscall fork at ../syscall, so the kernel's libredox::error::Error type is now the same compile-time type as syscall::Error. The [patch.crates-io] libredox override in the kernel workspace is what wires this through. This is the kernel-side mirror of the base commit aadf55b ('base: Phase J [patch.crates-io] libredox + kstop_enter_s2idle helper'). --- Cargo.toml | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/Cargo.toml b/Cargo.toml index b25edde242..c71210140b 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -118,3 +118,16 @@ panic = "abort" panic = "abort" #lto = true debug = "full" + +# Red Bear OS Phase J: see local/sources/base/Cargo.toml for +# the rationale. Both the kernel and the base workspace need +# the libredox override so that the libredox::error::Error +# type is the same compile-time type as syscall::Error. With +# the local libredox fork at local/sources/libredox/ using +# the local syscall fork at local/sources/syscall/, the +# libredox::error::Error (re-exported from the local syscall) +# and syscall::Error (also the local syscall) are now the +# same type, so `?` conversions in scheme-utils / daemon +# compile cleanly. +[patch.crates-io] +libredox = { path = "../libredox" }