Red Bear OS — microkernel OS in Rust, based on Redox

Derivative of Redox OS (https://www.redox-os.org) adding:
- AMD GPU driver (amdgpu) via LinuxKPI compat layer
- ext4 filesystem support (ext4d scheme daemon)
- ACPI fixes for AMD bare metal (x2APIC, DMAR, IVRS, MCFG)
- Custom branding (hostname, os-release, boot identity)

Build system is full upstream Redox with RBOS overlay in local/.
Patches for kernel, base, and relibc are symlinked from local/patches/
and protected from make clean/distclean. Custom recipes live in
local/recipes/ with symlinks into the recipes/ search path.

Build:  make all CONFIG_NAME=redbear-full
Sync:   ./local/scripts/sync-upstream.sh
This commit is contained in:
2026-04-12 19:05:00 +01:00
commit 50b731f1b7
3392 changed files with 98327 additions and 0 deletions
+60
View File
@@ -0,0 +1,60 @@
#!/usr/bin/env bash
# This script print all recipe executable names to find duplicates and verify executable name conflicts
usage() {
echo "List executable names to find duplicates"
echo "Usage: $0 [-h] [-a] [-arm64 | -i686] [recipes]"
echo "Default architecture is x86_64, -arm64 is aarch64, -i686 is i686"
echo "Only duplicates are listed unless -a is specified"
echo "-h is this message"
exit
}
recipes=""
target="x86_64-unknown-redox"
uniq="uniq -D --skip-fields=1"
for arg in "${@:1}"
do
if [ "$arg" == "-arm64" ]
then
target="aarch64-unknown-redox"
elif [ "$arg" == "-i686" ]
then
target="i686-unknown-redox"
elif [ "$arg" == "-a" ]
then
uniq="cat"
elif [ "$arg" == "-h" ]
then
usage
else
recipes+=" $arg"
fi
done
if [ -z "$recipes" ]
then
recipes="$(target/release/list_recipes)"
fi
for recipe in $recipes
do
if [[ "$recipe" == *\/* ]]
then
recipe_name="$(basename $recipe)"
recipe_path="recipes/$recipe"
else
recipe_name="$recipe"
recipe_path="$(target/release/find_recipe $recipe_name)"
fi
for command in $(find "$recipe_path/target/$target/stage/usr/bin" -type f 2> /dev/null) \
$(find "$recipe_path/target/$target/stage/bin" -type f 2> /dev/null)
do
shortname="$(basename $command)"
echo "$recipe_path $shortname"
done
done | sort | $uniq