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
+15
View File
@@ -0,0 +1,15 @@
#TODO require sys/ipc.h
[source]
tar = "https://ftp.postgresql.org/pub/source/v18.3/postgresql-18.3.tar.bz2"
blake3 = "52696c9d474ce3e2073f97d4ba891af59ffc67a9dfb8f9f5adac409d1fe0dc28"
patches = [
"redox.patch"
]
[build]
template = "meson"
mesonflags = [
]
dependencies = [
"zstd",
"readline",
]
+40
View File
@@ -0,0 +1,40 @@
diff --color -ruwN source/meson.build source-new/meson.build
--- source/meson.build 2026-02-24 04:56:43.000000000 +0700
+++ source-new/meson.build 2026-03-14 10:58:35.570033768 +0700
@@ -256,6 +256,10 @@
# LDFLAGS.
ldflags += ['-Wl,-z,now', '-Wl,-z,relro']
+elif host_system == 'redox'
+ sema_kind = 'unnamed_posix'
+ shmem_kind = 'sysv'
+
elif host_system == 'openbsd'
# you're ok
diff --color -ruwN source/src/include/port/redox.h source-new/src/include/port/redox.h
--- source/src/include/port/redox.h 1970-01-01 07:00:00.000000000 +0700
+++ source-new/src/include/port/redox.h 2026-03-14 10:50:26.877146350 +0700
@@ -0,0 +1 @@
+/* src/include/port/redox.h */
diff --color -ruwN source/src/makefiles/Makefile.redox source-new/src/makefiles/Makefile.redox
--- source/src/makefiles/Makefile.redox 1970-01-01 07:00:00.000000000 +0700
+++ source-new/src/makefiles/Makefile.redox 2026-03-14 10:51:25.313879766 +0700
@@ -0,0 +1,6 @@
+rpath = -Wl,-R'$(rpathdir)'
+
+
+# Rule for building a shared library from a single .o file
+%.so: %.o
+ $(CC) $(CFLAGS) $< $(LDFLAGS) $(LDFLAGS_SL) -shared -o $@
diff --color -ruwN source/src/template/redox source-new/src/template/redox
--- source/src/template/redox 1970-01-01 07:00:00.000000000 +0700
+++ source-new/src/template/redox 2026-03-14 10:55:40.896750233 +0700
@@ -0,0 +1,7 @@
+# src/template/redox
+
+# Prefer unnamed POSIX semaphores
+PREFERRED_SEMAPHORES=UNNAMED_POSIX
+
+# Extra CFLAGS for code that will go into a shared library
+CFLAGS_SL="-fPIC"