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
+69
View File
@@ -0,0 +1,69 @@
# RECIPES/WIP — WORK-IN-PROGRESS PORTS
Experimental ports not yet ready for production. Wayland, KDE, GNOME, and driver WIP.
## STRUCTURE
```
recipes/wip/
├── wayland/ # 21 Wayland-related recipes
│ ├── libwayland/ # Wayland protocol library (builds with redox.patch)
│ ├── wayland-protocols/# Wayland protocol definitions
│ ├── wayland-rs/ # Rust Wayland bindings
│ ├── cosmic-comp/ # COSMIC compositor (no keyboard input yet)
│ ├── smallvil/ # Smithay-based compositor (basic, slow)
│ ├── libcosmic-wayland/# COSMIC Wayland client library
│ ├── winit-wayland/ # winit with Wayland backend
│ ├── softbuffer-wayland/# softbuffer with Wayland backend
│ ├── iced-wayland/ # Iced GUI with Wayland backend
│ ├── gtk3/ # GTK3 Wayland support
│ ├── wlroots/ # wlroots (not compiled/tested)
│ ├── sway/ # sway (not compiled/tested)
│ ├── hyprland/ # hyprland (not compiled/tested)
│ ├── xwayland/ # XWayland (partially patched)
│ └── seatd/ # Seat daemon (recipe exists, untested)
├── kde/ # 9 KDE app recipes
│ ├── kde-dolphin/ # File manager (needs kio)
│ ├── kdenlive/ # Video editor (needs MLT)
│ ├── krita/ # Painting (needs Qt + OpenGL)
│ ├── kdevelop/ # IDE (needs Qt + kio)
│ └── ... # okteta, ktorrent, ark, kamoso, kpatience
├── libs/ # WIP libraries
│ └── tls/openssl3/ # OpenSSL 3.x port
├── monitors/ # System monitors
│ └── bottom/ # bottom system monitor
└── drivers/ # WIP driver ports (planned)
```
## WHERE TO LOOK
| Task | Location |
|------|----------|
| Fix Wayland build | `wayland/libwayland/redox.patch` — stubs 7 POSIX APIs |
| Add Wayland compositor | `wayland/<name>/recipe.toml` — use `dependencies = ["libwayland"]` |
| Fix cosmic-comp | `wayland/cosmic-comp/` — missing libinput causes no keyboard |
| Work on smallvil | `wayland/smallvil/` — Smithay-based, already running |
| Port a KDE app | Copy existing recipe pattern, add `#TODO` header |
| Add Qt port | Create `wip/qt/qtbase/recipe.toml` (not yet started) |
## WAYLAND STATUS
- **libwayland**: Builds with redox.patch stubbing 7 POSIX APIs
- **cosmic-comp**: Partially working, no keyboard input (missing libinput)
- **smallvil**: Basic compositor running, poor performance
- **wlroots/sway/hyprland**: Not compiled or tested
- **xwayland**: Partially patched
- **Blockers**: POSIX gaps (M1), evdevd input (M2), DRM/KMS (M3)
## KDE STATUS
- 9 app recipes exist but all blocked on Qt6 + KDE Frameworks
- No qtbase recipe yet (Phase KDE-A prerequisite)
- See `docs/05-KDE-PLASMA-ON-REDOX.md` for full 3-phase plan
## CONVENTIONS
- ALL WIP recipes MUST start with `#TODO` explaining what's missing
- BLAKE3 hashes optional for WIP
- Test with `make r.<package>` before adding to config
- When ready: move from `wip/` to appropriate category, add BLAKE3 hash
+16
View File
@@ -0,0 +1,16 @@
# compiles, but only wavefile generation is supported
#TODO waiting for a custom libpcaudio0 backend for real-time output (bpisch is working on it)
[source]
git = "https://gitlab.redox-os.org/bpisch/espeak-ng.git"
branch = "redox"
[build]
template = "custom"
dependencies = ["libstdcxx"]
script = """
DYNAMIC_INIT
cp -R "${COOKBOOK_SOURCE}/espeak-ng-data" .
cookbook_cmake
cp -R "${COOKBOOK_SOURCE}/espeak-ng-data" "${COOKBOOK_STAGE}/usr/share/espeak-ng-data"
"""
+11
View File
@@ -0,0 +1,11 @@
#TODO not compiled or tested
# dependencies: https://gitlab.gnome.org/GNOME/orca/#dependencies
[source]
tar = "https://download.gnome.org/sources/orca/48/orca-48.6.tar.xz"
[build]
template = "meson"
dependencies = [
"atk",
"at-spi2-core",
"gtk3",
]
+13
View File
@@ -0,0 +1,13 @@
#TODO fs2 crate error
[source]
git = "https://github.com/webonnx/wonnx"
shallow_clone = true
[build]
template = "custom"
dependencies = [
"openssl3",
]
script = """
DYNAMIC_INIT
cookbook_cargo_packages wonnx-cli
"""
+6
View File
@@ -0,0 +1,6 @@
#TODO not compiled or tested
[source]
git = "https://github.com/tekaratzas/RustGPT"
shallow_clone = true
[build]
template = "cargo"
+9
View File
@@ -0,0 +1,9 @@
#TODO make libtorch work
[source]
git = "https://github.com/warpy-ai/tgs"
shallow_clone = true
[build]
template = "cargo"
dependencies = [
"libtorch",
]
@@ -0,0 +1,6 @@
#TODO async-io and rustix crates error
[source]
git = "https://github.com/orhun/binsider"
shallow_clone = true
[build]
template = "cargo"
+13
View File
@@ -0,0 +1,13 @@
#TODO not compiled or tested
#TODO determine minimum dependencies from cmake log
# build instructions: https://cutter.re/docs/building.html
[source]
tar = "https://github.com/rizinorg/cutter/releases/download/v2.4.1/Cutter-v2.4.1-src.tar.gz"
[build]
template = "cmake"
#dependencies = [
# "libzip",
# "zlib",
# "qt6-base",
# "qt6-svg",
#]
@@ -0,0 +1,6 @@
#TODO openssl-sys crate error
[source]
git = "https://github.com/tokenizer-decode/email-sleuth"
shallow_clone = true
[build]
template = "cargo"
@@ -0,0 +1,7 @@
#TODO not compiled or tested
# build instructions: https://github.com/awslabs/flowgger/wiki/Installation
[source]
git = "https://github.com/awslabs/flowgger"
shallow_clone = true
[build]
template = "cargo"
+14
View File
@@ -0,0 +1,14 @@
#TODO not compiled or tested
[source]
git = "https://gitlab.gnome.org/World/Graphs"
rev = "v1.8.7"
shallow_clone = true
[build]
template = "meson"
dependencies = [
"glib",
"gtk4",
"libadwaita",
"libgee",
"sqlite3",
]
+6
View File
@@ -0,0 +1,6 @@
#TODO not compiled or tested
[source]
git = "https://github.com/1jehuang/mermaid-rs-renderer"
shallow_clone = true
[build]
template = "cargo"
+14
View File
@@ -0,0 +1,14 @@
#TODO not compiled or tested
# build instructions: https://learn.netdata.cloud/docs/developer-and-contributor-corner/build-the-netdata-agent-yourself/compile-from-source-code#building-netdata
[source]
tar = "https://github.com/netdata/netdata/releases/download/v2.8.5/netdata-v2.8.5.tar.gz"
[build]
template = "cmake"
cmakeflags = [
"-DDEFAULT_FEATURE_STATE=False",
]
#dependencies = [
# "zlib",
# "libuv",
# "libuuid",
#]
+10
View File
@@ -0,0 +1,10 @@
#TODO not compiled or tested
# build instructions: https://github.com/rizinorg/rizin/blob/dev/BUILDING.md
[source]
tar = "https://github.com/rizinorg/rizin/releases/download/v0.8.1/rizin-src-v0.8.1.tar.xz"
[build]
template = "meson"
mesonflags = [
"-Denable_tests=false",
"-Denable_rz_test=false",
]
+6
View File
@@ -0,0 +1,6 @@
#TODO not compiled or tested
[source]
git = "https://github.com/tanciaku/tmmpr"
shallow_clone = true
[build]
template = "cargo"
+5
View File
@@ -0,0 +1,5 @@
#TODO missing script for gnu make: https://github.com/mcmilk/7-Zip/tree/master/DOC#readme
[source]
tar = "https://7-zip.org/a/7z2301-src.tar.xz"
[build]
template = "custom"
+5
View File
@@ -0,0 +1,5 @@
#TODO compiled but not tested
[source]
tar = "https://download.savannah.gnu.org/releases/lzip/lzip-1.24.1.tar.gz"
[build]
template = "configure"
+10
View File
@@ -0,0 +1,10 @@
#TODO compiled but not tested
[source]
git = "https://github.com/ANSSI-FR/MLA"
shallow_clone = true
[build]
template = "custom"
script = """
DYNAMIC_INIT
cookbook_cargo_packages mlar
"""
+6
View File
@@ -0,0 +1,6 @@
#TODO don't run
[source]
git = "https://github.com/richox/orz"
shallow_clone = true
[build]
template = "cargo"
+11
View File
@@ -0,0 +1,11 @@
#TODO compilation error
[source]
git = "https://github.com/ouch-org/ouch"
shallow_clone = true
[build]
template = "cargo"
dependencies = [
"zlib",
"bzip2",
"xz",
]
+8
View File
@@ -0,0 +1,8 @@
#TODO missing headers
[source]
tar = "https://download.savannah.gnu.org/releases/lzip/plzip/plzip-1.11.tar.gz"
[build]
template = "configure"
dependencies = [
"lzlib",
]
+9
View File
@@ -0,0 +1,9 @@
#TODO make zstd work (after cargo update)
[source]
git = "https://github.com/quininer/unzrip"
shallow_clone = true
[build]
template = "cargo"
dependencies = [
"zstd",
]
+14
View File
@@ -0,0 +1,14 @@
#TODO missing script for pip
# build instructions: https://borgbackup.readthedocs.io/en/stable/installation.html#source-install
[source]
tar = "https://github.com/borgbackup/borg/releases/download/1.4.1/borgbackup-1.4.1.tar.gz"
[build]
template = "custom"
dependencies = [
"openssl3",
"libacl",
"libattr",
"xxhash",
"lz4",
"zstd",
]
+16
View File
@@ -0,0 +1,16 @@
#TODO not compiled or tested
[source]
git = "https://github.com/Thomas-Tsai/partclone"
rev = "0.3.40"
shallow_clone = true
script = """
autotools_recursive_regenerate
"""
[build]
template = "configure"
configureflags = [
"--enable-ncursesw",
]
dependencies = [
"ncursesw",
]
@@ -0,0 +1,10 @@
#TODO not compiled or tested
[source]
git = "https://gitlab.gnome.org/World/pika-backup"
shallow_clone = true
[build]
template = "meson"
dependencies = [
"gtk4",
"libadwaita",
]
+8
View File
@@ -0,0 +1,8 @@
#TODO missing script for pip
# build instructions: https://vorta.borgbase.com/install/linux/#install-from-source
[source]
git = "https://github.com/borgbase/vorta"
rev = "v0.11.3"
shallow_clone = true
[build]
template = "custom"
@@ -0,0 +1,6 @@
#TODO compiled but not tested
[source]
git = "https://github.com/BurntSushi/cargo-benchcmp"
shallow_clone = true
[build]
template = "cargo"
@@ -0,0 +1,6 @@
#TODO compiled but not tested (after cargo update)
[source]
git = "https://github.com/bheisler/cargo-criterion"
shallow_clone = true
[build]
template = "cargo"
@@ -0,0 +1,6 @@
#TODO missing data type to download the Java bytecode
# download link: https://download.dacapobench.org/chopin/dacapo-23.11-chopin.zip
[source]
[build]
template = "custom"
+7
View File
@@ -0,0 +1,7 @@
#TODO missing script for gnu make or python script: https://github.com/icl-utk-edu/hpcc#compiling
[source]
git = "https://github.com/icl-utk-edu/hpcc"
rev = "1.5.0"
shallow_clone = true
[build]
template = "custom"
+6
View File
@@ -0,0 +1,6 @@
#TODO not compiled or tested
[source]
git = "https://github.com/hpcg-benchmark/hpcg"
shallow_clone = true
[build]
template = "cmake"
@@ -0,0 +1,6 @@
#TODO missing script for gnu make: https://github.com/UoB-HPC/miniBUDE#building
[source]
git = "https://github.com/UoB-HPC/miniBUDE"
shallow_clone = true
[build]
template = "custom"
+6
View File
@@ -0,0 +1,6 @@
#TODO libc::RUSAGE_CHILDREN
[source]
git = "https://github.com/sharkdp/hyperfine"
shallow_clone = true
[build]
template = "cargo"
@@ -0,0 +1,9 @@
#TODO not compiled or tested
# build instructions: https://github.com/jedisct1/Blogbench/blob/master/README#L18
[source]
tar = "https://github.com/jedisct1/Blogbench/releases/download/1.2/blogbench-1.2.tar.bz2"
script = """
autotools_recursive_regenerate
"""
[build]
template = "configure"
+7
View File
@@ -0,0 +1,7 @@
#TODO configuration problem
[source]
git = "https://github.com/axboe/fio"
rev = "fio-3.41"
shallow_clone = true
[build]
template = "configure"
@@ -0,0 +1,6 @@
#TODO source code error
[source]
git = "https://github.com/schwa/simple-disk-benchmark-rs"
shallow_clone = true
[build]
template = "cargo"
@@ -0,0 +1,10 @@
#TODO not compiled or tested
[source]
git = "https://github.com/sohzm/jasonisnthappy"
shallow_clone = true
[build]
template = "custom"
script = """
DYNAMIC_INIT
cookbook_cargo_examples bench_all
"""
+5
View File
@@ -0,0 +1,5 @@
#TODO missing script for gnu make, build the openmp (cpu backend?) or opencl implementation
[source]
tar = "http://www.cs.virginia.edu/~skadron/lava/rodinia/Packages/rodinia_3.1.tar.bz2"
[build]
template = "custom"
+9
View File
@@ -0,0 +1,9 @@
#TODO not compiled or tested
[source]
git = "https://github.com/iopsystems/rpc-perf"
shallow_clone = true
[build]
template = "cargo"
dependencies = [
"zstd",
]
+21
View File
@@ -0,0 +1,21 @@
#TODO missing script for gnu make: https://github.com/ColinIanKing/stress-ng#building-stress-ng
#TODO determine minimum dependencies
[source]
git = "https://github.com/ColinIanKing/stress-ng"
rev = "V0.20.00"
shallow_clone = true
[build]
template = "custom"
#dependencies = [
# "libbsd",
# "libaio",
# "libcap",
# "libcap",
# "libgcrypt",
# "libjpeg",
# "libmd",
# "libmpfr",
# "xxhash",
# "zlib",
# "mesa",
#]
+12
View File
@@ -0,0 +1,12 @@
#TODO figure out the installation script - https://github.com/phoronix-test-suite/phoronix-test-suite
[source]
git = "https://github.com/phoronix-test-suite/phoronix-test-suite"
shallow_clone = true
[build]
template = "custom"
script = """
mkdir -pv "${COOKBOOK_STAGE}/home/user/pts"
cp -rv "${COOKBOOK_SOURCE}"/* "${COOKBOOK_STAGE}/home/user/pts"
"""
[package]
dependencies = ["php84"]
+10
View File
@@ -0,0 +1,10 @@
#TODO not compiled or tested
# build instructions: https://code.videolan.org/videolan/dav1d#compile
[source]
tar = "https://downloads.videolan.org/videolan/dav1d/1.5.3/dav1d-1.5.3.tar.xz"
shallow_clone = true
[build]
template = "meson"
mesonflags = [
"-Denable_tests=false",
]
+7
View File
@@ -0,0 +1,7 @@
#TODO not compiled or tested
[source]
git = "https://github.com/knik0/faad2"
rev = "2.11.2"
shallow_clone = true
[build]
template = "cmake"
+5
View File
@@ -0,0 +1,5 @@
#TODO compilation error
[source]
tar = "https://github.com/ultravideo/kvazaar/releases/download/v2.2.0/kvazaar-2.2.0.tar.xz"
[build]
template = "configure"
+6
View File
@@ -0,0 +1,6 @@
#TODO "malloc(): invalid size (unsorted)" error
[source]
git = "https://github.com/xiph/rav1e"
shallow_clone = true
[build]
template = "cargo"
+8
View File
@@ -0,0 +1,8 @@
#TODO not compiled or tested
# build instructions: https://gitlab.com/AOMediaCodec/SVT-AV1/-/blob/master/Docs/Build-Guide.md#linux-operating-systems-64-bit
[source]
git = "https://gitlab.com/AOMediaCodec/SVT-AV1"
rev = "v4.0.1"
shallow_clone = true
[build]
template = "cmake"
+7
View File
@@ -0,0 +1,7 @@
#TODO not compiled or tested
# build instructions: https://github.com/OpenVisualCloud/SVT-HEVC#linux-operating-systems-64-bit
[source]
git = "https://github.com/OpenVisualCloud/SVT-HEVC"
shallow_clone = true
[build]
template = "cmake"
+8
View File
@@ -0,0 +1,8 @@
#TODO not compiled or tested
# build instructions: https://github.com/OpenVisualCloud/SVT-VP9#linux-operating-systems-64-bit
[source]
git = "https://github.com/OpenVisualCloud/SVT-VP9"
rev = "v0.3.1"
shallow_clone = true
[build]
template = "cmake"
+11
View File
@@ -0,0 +1,11 @@
#TODO not compiled or tested
# build instructions: https://github.com/ultravideo/uvg266#compiling-uvg266
[source]
git = "https://github.com/ultravideo/uvg266"
rev = "v0.8.1"
shallow_clone = true
[build]
template = "cmake"
cmakeflags = [
"-DBUILD_TESTS=OFF"
]
+8
View File
@@ -0,0 +1,8 @@
#TODO not compiled or tested
# build instructions: https://github.com/fraunhoferhhi/vvenc/wiki/Build#build-using-plain-cmake
[source]
git = "https://github.com/fraunhoferhhi/vvenc"
rev = "v1.14.0"
shallow_clone = true
[build]
template = "cmake"
+8
View File
@@ -0,0 +1,8 @@
#TODO compilation error: missing header
[source]
tar = "https://github.com/dbry/WavPack/releases/download/5.9.0/wavpack-5.9.0.tar.xz"
[build]
template = "configure"
dependencies = [
"libiconv",
]
+7
View File
@@ -0,0 +1,7 @@
#TODO the redox target is not supported on the configure script
[source]
git = "https://code.videolan.org/videolan/x264"
branch = "stable"
shallow_clone = true
[build]
template = "configure"
+11
View File
@@ -0,0 +1,11 @@
#TODO not compiled or tested
# build instructions: https://bitbucket.org/multicoreware/x265_git/src/master/build/README.txt#lines-68
[source]
tar = "https://bitbucket.org/multicoreware/x265_git/downloads/x265_4.1.tar.gz"
[build]
template = "custom"
script = """
COOKBOOK_SOURCE="${COOKBOOK_SOURCE}/source"
DYNAMIC_INIT
cookbook_cmake
"""
@@ -0,0 +1,6 @@
#TODO camino crate error
# dependencies - https://github.com/containers/crun-vm/blob/main/docs/1-installing.md#from-source
[source]
git = "https://github.com/containers/crun-vm"
[build]
template = "cargo"
+5
View File
@@ -0,0 +1,5 @@
#TODO disable systemd and SELinux
[source]
tar = "https://github.com/containers/crun/releases/download/1.17/crun-1.17.tar.gz"
[build]
template = "configure"
@@ -0,0 +1,6 @@
#TODO implement a Cookbook template for the Go programming language
[source]
git = "https://github.com/docker/cli"
branch = "27.x"
[build]
template = "go"
@@ -0,0 +1,6 @@
#TODO Implement a Cookbook template for the Go programming language
[source]
git = "https://github.com/containers/podman"
branch = "v5.2"
[build]
template = "go"
@@ -0,0 +1,6 @@
#TODO Implement the Cookbook template for the Go programming language
[source]
git = "https://github.com/containers/skopeo"
branch = "release-1.16"
[build]
template = "go"
+8
View File
@@ -0,0 +1,8 @@
#TODO require cgroups
[source]
git = "https://github.com/containers/youki"
[build]
template = "custom"
script = """
cookbook_cargo_packages youki
"""
@@ -0,0 +1,5 @@
#TODO compiled but not tested
[source]
git = "https://github.com/TheAwiteb/data2sound"
[build]
template = "cargo"
+12
View File
@@ -0,0 +1,12 @@
#TODO not compiled or tested
[source]
git = "https://gitlab.gnome.org/World/decoder"
shallow_clone = true
[build]
template = "meson"
dependencies = [
"glib",
"gtk4",
"libadwaita",
"gstreamer",
]
@@ -0,0 +1,5 @@
#TODO slice-deque crate error (after cargo update)
[source]
git = "https://github.com/irevenko/morse2sound"
[build]
template = "cargo"
+5
View File
@@ -0,0 +1,5 @@
#TODO promote
[source]
git = "https://github.com/Lenivaya/qrrs"
[build]
template = "cargo"
+5
View File
@@ -0,0 +1,5 @@
#TODO ahash crate error
[source]
git = "https://github.com/sayanarijit/qrscan"
[build]
template = "cargo"
+5
View File
@@ -0,0 +1,5 @@
#TODO compiled but not tested
[source]
git = "https://github.com/sorairolake/qrtool"
[build]
template = "cargo"
+5
View File
@@ -0,0 +1,5 @@
#TODO compiled but not tested
[source]
git = "https://github.com/woodruffw/steg86"
[build]
template = "cargo"
+5
View File
@@ -0,0 +1,5 @@
#TODO compiled but not tested
[source]
git = "https://github.com/GoldenStack/stupidfs"
[build]
template = "cargo"
@@ -0,0 +1,10 @@
#TODO compiled but not tested
[source]
git = "https://github.com/BLAKE3-team/BLAKE3"
shallow_clone = true
[build]
template = "custom"
script = """
COOKBOOK_SOURCE="${COOKBOOK_SOURCE}/b3sum"
cookbook_cargo
"""
@@ -0,0 +1,5 @@
#TODO compiled but not tested
[source]
git = "https://github.com/Achiefs/fim"
[build]
template = "cargo"
@@ -0,0 +1,5 @@
#TODO compiled but not tested
[source]
git = "https://github.com/thombles/hashgood"
[build]
template = "cargo"
@@ -0,0 +1,8 @@
#TODO not compiled or tested
[source]
git = "https://github.com/hoxxep/rapidhash"
[build]
template = "custom"
script = """
cookbook_cargo_packages rapidhash
"""
@@ -0,0 +1,5 @@
#TODO not compiled or tested
[source]
tar = "https://ftp.gnu.org/gnu/ddrescue/ddrescue-1.30.tar.lz"
[build]
template = "configure"
@@ -0,0 +1,5 @@
#TODO missing script for gnu make, see the README inside the tarball
[source]
tar = "http://foremost.sourceforge.net/pkg/foremost-1.5.7.tar.gz"
[build]
template = "custom"
@@ -0,0 +1,14 @@
#TODO compilation error
# build instructions - https://www.cgsecurity.org/wiki/TestDisk_Compilation
# add optional libraries to expand the features - https://www.cgsecurity.org/wiki/TestDisk_Compilation#Libraries
[source]
tar = "https://www.cgsecurity.org/testdisk-7.2.tar.bz2"
[build]
template = "custom"
dependencies = [
"ncurses",
]
script = """
export CPPFLAGS="-I${COOKBOOK_SYSROOT}/include/ncurses"
cookbook_configure
"""
@@ -0,0 +1,5 @@
#TODO missing script for gnu make
[source]
tar = "https://poppler.freedesktop.org/poppler-data-0.4.12.tar.gz"
[build]
template = "custom"
+10
View File
@@ -0,0 +1,10 @@
#TODO not compiled or tested
[source]
git = "https://github.com/hbons/Bobby"
[build]
template = "meson"
dependencies = [
"libadwaita",
"glib",
"gtk4",
]
+13
View File
@@ -0,0 +1,13 @@
#TODO not compiled or tested
# build instructions: https://clickhouse.com/docs/en/development/build#how-to-build-clickhouse-on-any-linux
[source]
git = "https://github.com/ClickHouse/ClickHouse"
rev = "v25.10.2.65-stable"
shallow_clone = true
[build]
template = "cmake"
dependencies = [
"curl",
"openssl3",
"xz",
]
+8
View File
@@ -0,0 +1,8 @@
#TODO missing script for Bazel
# build instructions: https://cockroachlabs.atlassian.net/wiki/spaces/CRDB/pages/181338446/Getting+and+building+CockroachDB+from+source
[source]
git = "https://github.com/cockroachdb/cockroach"
branch = "release-25.4"
shallow_clone = true
[build]
template = "custom"
+6
View File
@@ -0,0 +1,6 @@
#TODO update mio to 0.8 (after cargo update and patch on ring)
[source]
git = "https://github.com/TaKO8Ki/gobang"
shallow_clone = true
[build]
template = "cargo"
+7
View File
@@ -0,0 +1,7 @@
#TODO nonsense error "Cargo.toml doesn't exist"
#TODO configure the CLI and service
[source]
git = "https://github.com/influxdata/influxdb"
shallow_clone = true
[build]
template = "cargo"
+8
View File
@@ -0,0 +1,8 @@
#TODO missing script for Maven,
# build instructions: https://github.com/apache/iotdb#build-iotdb-from-source
[source]
git = "https://github.com/apache/iotdb"
rev = "v2.0.5"
shallow_clone = true
[build]
template = "custom"
+5
View File
@@ -0,0 +1,5 @@
#TODO wayland-backend crate error
[source]
git = "https://github.com/Jkeyuk/JDbrowser"
[build]
template = "cargo"
+9
View File
@@ -0,0 +1,9 @@
#TODO compilation error on the sqlite3 parser
[source]
git = "https://github.com/tursodatabase/limbo"
shallow_clone = true
[build]
template = "custom"
script = """
cookbook_cargo_packages limbo_cli
"""
+18
View File
@@ -0,0 +1,18 @@
#TODO not compiled or tested
# build instructions:
# https://mariadb.com/kb/en/generic-build-instructions/
# https://mariadb.com/kb/en/cross-compiling-mariadb/
[source]
tar = "https://archive.mariadb.org/mariadb-10.11.6/source/mariadb-10.11.6.tar.gz"
[build]
template = "cmake"
dependencies = [
"ncurses",
"zlib",
"libevent",
"openssl1",
"curl",
"libxml2",
"boost",
"libaio",
]
+50
View File
@@ -0,0 +1,50 @@
#TODO need openat (patched), posix_spawn
[source]
tar = "https://dlm.mariadb.com/4509471/MariaDB/mariadb-12.1.2/source/mariadb-12.1.2.tar.gz"
blake3 = "749a293e1c4fd13be936fbda33de38b1ccc8c737c30a55c187c028d3ce74f70c"
patches = [
"redox.patch"
]
[build]
template = "custom"
dependencies = [
"ncurses",
"bzip2",
"curl",
"zlib",
"pcre2",
"lz4",
"libevent",
"openssl3",
"curl",
"libxml2",
"boost",
]
dev-dependencies = [
"host:ncurses",
"boost.dev"
]
script = """
DYNAMIC_INIT
# see https://mariadb.com/kb/en/cross-compiling-mariadb/
mkdir -p host
pushd host
# todo: should use native generate_cookbook_cmake_file if possible
(unset CC CXX AR && cmake ${COOKBOOK_SOURCE} -DWITH_SSL=system -DCMAKE_CROSSCOMPILING=False -DCMAKE_FIND_ROOT_PATH=${COOKBOOK_TOOLCHAIN})
make import_executables
popd
export LDFLAGS+=" -lcurl -lnghttp2 -lssl -lcrypto"
COOKBOOK_CMAKE_FLAGS+=(
-DWITH_UNIT_TESTS=OFF
-DSTACK_DIRECTION=-1
-DHAVE_IB_GCC_ATOMIC_BUILTINS=-1
-DCONC_DEFAULT_CHARSET=utf8mb4
-DPLUGIN_AWS_KEY_MANAGEMENT=NO
-DPLUGIN_COLUMNSTORE=NO
-DWITHOUT_ROCKSDB=1
-DIMPORT_EXECUTABLES="${COOKBOOK_BUILD}/host/import_executables.cmake"
)
cookbook_cmake
"""
+13
View File
@@ -0,0 +1,13 @@
diff -ruwN source/mysys/mysys_priv.h source-new/mysys/mysys_priv.h
--- source/mysys/mysys_priv.h 2025-11-14 00:00:49.000000000 +0700
+++ source-new/mysys/mysys_priv.h 2026-03-14 05:20:38.369176577 +0700
@@ -142,7 +142,7 @@
#endif
#endif
-#ifdef O_PATH
+#if defined(O_PATH) && !defined(__redox__) /* need openat */
#define HAVE_OPEN_PARENT_DIR_NOSYMLINKS
const char *my_open_parent_dir_nosymlinks(const char *pathname, int *pdfd);
#define NOSYMLINK_FUNCTION_BODY(AT,NOAT) \
+9
View File
@@ -0,0 +1,9 @@
#TODO not compiled or tested
# build instructions: https://docs.memcached.org/serverguide/#from-source
[source]
tar = "https://www.memcached.org/files/memcached-1.6.22.tar.gz"
[build]
template = "configure"
dependencies = [
"libevent",
]
+12
View File
@@ -0,0 +1,12 @@
#TODO missing script for SCons
# build instructions: https://github.com/mongodb/mongo/blob/master/docs/building.md
[source]
git = "https://github.com/mongodb/mongo"
branch = "v6.0"
shallow_clone = true
[build]
template = "custom"
dependencies = [
"curl",
"xz",
]
+12
View File
@@ -0,0 +1,12 @@
#TODO missing script for SCons
# build instructions: https://github.com/mongodb/mongo/blob/master/docs/building.md
[source]
git = "https://github.com/mongodb/mongo"
branch = "v7.2"
shallow_clone = true
[build]
template = "custom"
dependencies = [
"curl",
"xz",
]
+11
View File
@@ -0,0 +1,11 @@
#TODO not compiled or tested
# build instructions: https://dev.mysql.com/doc/refman/8.2/en/installing-source-distribution.html
[source]
tar = "https://dev.mysql.com/downloads/file/?id=523432"
[build]
template = "cmake"
dependencies = [
"boost",
"ncurses",
"openssl3",
]
+5
View File
@@ -0,0 +1,5 @@
#TODO missing script
[source]
tar = "https://dev.mysql.com/downloads/file/?id=524161"
[build]
template = "custom"
+6
View File
@@ -0,0 +1,6 @@
#TODO not compiled or tested
[source]
git = "https://codeberg.org/kdwarn/pgtui"
shallow_clone = true
[build]
template = "cargo"
+16
View File
@@ -0,0 +1,16 @@
#TODO waiting on sigjmp_buf and related POSIX functions in relibc
[source]
tar = "https://ftp.postgresql.org/pub/source/v16.0/postgresql-16.0.tar.bz2"
script = """
cp "${COOKBOOK_SOURCE}/src/backend/utils/errcodes.h" "${COOKBOOK_SOURCE}/src/include/utils/errcodes.h"
"""
[build]
template = "configure"
configureflags = [
"--without-icu",
"--without-readline",
"--with-template=redox",
]
dependencies = [
"zlib",
]
+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"
+10
View File
@@ -0,0 +1,10 @@
#TODO not compiled or tested
[source]
git = "https://github.com/achristmascarl/rainfrog"
shallow_clone = true
[build]
template = "cargo"
[package]
dependencies = [
"nerd-fonts",
]
+16
View File
@@ -0,0 +1,16 @@
#TODO missing script for gnu make
# build instructions: https://github.com/facebook/rocksdb/blob/main/INSTALL.md
[source]
git = "https://github.com/facebook/rocksdb"
rev = "v10.7.5"
shallow_clone = true
[build]
template = "custom"
dependencies = [
"zlib",
"lz4",
"bzip2",
"zstd",
"snappy",
"gflags",
]
+13
View File
@@ -0,0 +1,13 @@
#TODO libsky crate error
[source]
git = "https://github.com/skytable/skytable"
shallow_clone = true
[build]
template = "custom"
dependencies = [
"openssl1",
]
script = """
DYNAMIC_INIT
cookbook_cargo_packages skysh skyd
"""
+14
View File
@@ -0,0 +1,14 @@
#TODO incomplete port
#TODO Complied, works for basic use cases. pthread mutexes compiled in, but not working.
#TODO Calls triggering mutexes yield the following errors:
#relibc getrlimit(7, 0x7ffffffffc38): not implemented
#relibc getgroups(65536, 0x14920): not implemented
#Runtime error near line 1: disk I/O error (10)
[source]
tar = "https://sqlite.org/2025/sqlite-autoconf-3490200.tar.gz"
blake3 = "96e071dc4f964311882334e927f017d8383915b1b140adcf308957dff213aa8c"
script = """
autotools_recursive_regenerate
"""
[build]
template = "configure"
+13
View File
@@ -0,0 +1,13 @@
#TODO Works, but not reliably
#TODO Raises the following warnings:
# setsockopt(16, 6, 1, 0x7fffffff4adc, 4) - unknown option
# setsockopt(16, 1, 9, 0x7fffffff4ad0, 4) - unknown option
# setsockopt(16, 6, 1, 0x7fffffff4ad4, 4) - unknown option
[source]
git = "https://github.com/risinglightdb/sqllogictest-rs.git"
[build]
template = "custom"
script = """
cookbook_cargo_packages sqllogictest-bin
"""

Some files were not shown because too many files have changed in this diff Show More