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:
@@ -0,0 +1,317 @@
|
||||
# The Redox build server configuration
|
||||
|
||||
# General settings
|
||||
[general]
|
||||
# Do not prompt if settings are not defined
|
||||
prompt = false
|
||||
|
||||
# Package settings
|
||||
[packages]
|
||||
|
||||
# If you need to disable some broken package comment out instead of removal to not increase the maintenance cost
|
||||
#TODO: commented out recipes need to be built and tested inside of Redox to verify if they returned to work
|
||||
|
||||
# Meta-packages below
|
||||
|
||||
# auto-test = {}
|
||||
# dev-essential = {}
|
||||
# dev-redox = {}
|
||||
# redox-tests = {}
|
||||
# x11-minimal = {}
|
||||
# x11-full = {}
|
||||
|
||||
# Normal packages below
|
||||
|
||||
# acid = {} # rust require dynamic linking
|
||||
acid-bins = {}
|
||||
base = {}
|
||||
base-initfs = {}
|
||||
bash = {}
|
||||
bash-completion = {}
|
||||
bootloader = {}
|
||||
bottom = {}
|
||||
ca-certificates = {}
|
||||
contain = {}
|
||||
coreutils = {}
|
||||
cosmic-edit = {}
|
||||
cosmic-files = {}
|
||||
cosmic-icons = {}
|
||||
cosmic-term = {}
|
||||
cosmic-text = {}
|
||||
curl = {}
|
||||
dash = {}
|
||||
dejavu = {}
|
||||
diffutils = {}
|
||||
expat = {}
|
||||
extrautils = {}
|
||||
findutils = {}
|
||||
freefont = {}
|
||||
freetype2 = {}
|
||||
gettext = {}
|
||||
git = {}
|
||||
gnu-make = {}
|
||||
hicolor-icon-theme = {}
|
||||
installer = {}
|
||||
installer-gui = {}
|
||||
ion = {}
|
||||
kernel = {}
|
||||
kibi = {}
|
||||
libffi = {}
|
||||
libgcc = {}
|
||||
libiconv = {}
|
||||
libjpeg = {}
|
||||
libogg = {}
|
||||
liborbital = {}
|
||||
libpng = {}
|
||||
libstdcxx = {}
|
||||
libvorbis = {}
|
||||
libxkbcommon = {}
|
||||
libxml2 = {}
|
||||
nano = {}
|
||||
nasm = {}
|
||||
ncurses = {}
|
||||
netdb = {}
|
||||
netsurf = {}
|
||||
netutils = {}
|
||||
nghttp2 = {}
|
||||
openssl1 = {}
|
||||
orbdata = {}
|
||||
orbital = {}
|
||||
orbterm = {}
|
||||
orbutils = {}
|
||||
patch = {}
|
||||
pcre = {}
|
||||
patchelf = {}
|
||||
pop-icon-theme = {}
|
||||
pkgutils = {}
|
||||
redoxfs = {}
|
||||
relibc = {}
|
||||
ripgrep = {}
|
||||
rustpython = {}
|
||||
sdl1 = {}
|
||||
sed = {}
|
||||
shared-mime-info = {}
|
||||
smith = {}
|
||||
terminfo = {}
|
||||
userutils = {}
|
||||
uutils = {}
|
||||
xz = {}
|
||||
#vim = {} # conflicting types
|
||||
zlib = {}
|
||||
|
||||
# #"gcc13.cxx" = {}
|
||||
# #"llvm21.clang" = {}
|
||||
# #"llvm21.clang-dev" = {}
|
||||
# #"llvm21.dev" = {}
|
||||
# #"llvm21.lld" = {}
|
||||
# #"llvm21.lld-dev" = {}
|
||||
# #"llvm21.runtime" = {}
|
||||
# #"python312.dev" = {}
|
||||
# #"rust.doc" = {}
|
||||
# #atk = {} # depends on glib which does not build
|
||||
# #benchmarks = {}
|
||||
# #binutils-gdb = {}
|
||||
# #book = {}
|
||||
# #cairo-demo = {} # linking errors
|
||||
# #classicube = {}
|
||||
# #cmake = {}
|
||||
# #cmatrix = {} # needs ncursesw now
|
||||
# #cookbook = {}
|
||||
# #cosmic-reader = {}
|
||||
# #cosmic-settings = {}
|
||||
# #cosmic-store = {}
|
||||
# #devilutionx = {}
|
||||
# #dynamic-example = {}
|
||||
# #fal
|
||||
# #fd = {} # ctrlc-3.1.1
|
||||
# #file = {}
|
||||
# #flycast = {}
|
||||
# #freeciv = {}
|
||||
# #freeglut = {}
|
||||
# #friar = {} # mio patch
|
||||
# #game-2048 = {} # rustc-serialize
|
||||
# #gawk = {} # langinfo.h
|
||||
# #gigalomania = {} # old recipe format
|
||||
# #gitoxide = {}
|
||||
# #goaccess = {}
|
||||
# #gstreamer = {} # conflict with thread local errno
|
||||
# #harfbuzz = {} # depends on glib which does not build
|
||||
# #helix = {}
|
||||
# #hello-redox = {}
|
||||
# #hematite = {} # needs crate patches for redox-unix
|
||||
# #hf = {}
|
||||
# #ibm-plex = {}
|
||||
# #iced = {}
|
||||
# #jansson = {} # needs config.sub update
|
||||
# #jq = {}
|
||||
# #libarchive = {}
|
||||
# #libatomic = {}
|
||||
# #libcosmic = {}
|
||||
# #libflac = {}
|
||||
# #libmodplug1 = {}
|
||||
# #libmpfr = {}
|
||||
# #libnettle = {}
|
||||
# #libogg = {}
|
||||
# #libpsl = {}
|
||||
# #libssh2 = {}
|
||||
# #libtool = {}
|
||||
# #liburcu = {}
|
||||
# #libuv = {}
|
||||
# #lua-compat-53 = {}
|
||||
# #luajit = {}
|
||||
# #luarocks = {}
|
||||
# #luv = {}
|
||||
# #mdp = {} # gcc hangs
|
||||
# #miniserve = {} # actix
|
||||
# #mpc = {}
|
||||
# #mupen64plus = {}
|
||||
# #ncdu = {} # multiple definitions of symbols
|
||||
# #newlib = {} # obsolete
|
||||
# #newlibtest = {} # obsolete
|
||||
# #noto-color-emoji = {}
|
||||
# #nushell = {} # needs cargo update
|
||||
# #openjk = {}
|
||||
# #openposixtestsuite = {}
|
||||
# #opentyrian = {}
|
||||
# #orbcalculator = {}
|
||||
# #ostest-bins = {}
|
||||
# #pango = {} # undefined references to std::__throw_system_error(int)
|
||||
# #pastel = {} # needs crate patches for redox-unix
|
||||
# #pathfinder = {} # servo-fontconfig
|
||||
# #pciids = {}
|
||||
# #pcre2 = {}
|
||||
# #pixman = {} # depends on glib which does not build
|
||||
# #pkgar = {} # uses virtual Cargo.toml, needs recipe update
|
||||
# #pls = {}
|
||||
# #pop-wallpapers = {}
|
||||
# #powerline = {} # dirs
|
||||
# #qemu = {} # can be built, but not working
|
||||
# #quakespasm = {}
|
||||
# #redox-posix-tests = {}
|
||||
# #redox-ssh = {} # does not compile
|
||||
# #retroarch = {} # OS_TLSIndex not declared
|
||||
# #rust-cairo = {} # linking errors
|
||||
# #rust-cairo-demo = {} # linking errors
|
||||
# #rvvm = {}
|
||||
# #schismtracker = {} # uses system includes
|
||||
# #sdl-player = {} # wctype_t
|
||||
# #sdl2-gfx = {}
|
||||
# #sm64ex = {}
|
||||
# #spacecadetpinball = {}
|
||||
# #twin-commander = {}
|
||||
# #ubuntu-wallpapers = {}
|
||||
# #unibilium = {}
|
||||
# #utf8proc = {}
|
||||
# #vice = {} # linker errors
|
||||
# #vvvvvv = {} # did not compile
|
||||
# #webrender = {} # unwind
|
||||
# #website = {}
|
||||
# #wesnoth = {}
|
||||
# #wget = {}
|
||||
# autoconf = {}
|
||||
# automake = {}
|
||||
# binutils = {}
|
||||
# bzip2 = {}
|
||||
# cairo = {}
|
||||
# cleye = {}
|
||||
# composer = {}
|
||||
# cpal = {}
|
||||
# dosbox = {}
|
||||
# duktape = {}
|
||||
# eduke32 = {}
|
||||
# exampled = {}
|
||||
# ffmpeg6 = {}
|
||||
# fontconfig = {}
|
||||
# freedoom = {}
|
||||
# freepats = {}
|
||||
# fribidi = {}
|
||||
# gcc13 = {}
|
||||
# gdbserver = {}
|
||||
# gdk-pixbuf = {}
|
||||
# gears = {}
|
||||
# generaluser-gs = {}
|
||||
# glib = {}
|
||||
# glutin = {}
|
||||
# gnu-binutils = {}
|
||||
# gnu-grep = {}
|
||||
# htop = {}
|
||||
# intel-one-mono = {}
|
||||
# lci = {}
|
||||
# libavif = {}
|
||||
# libc-bench = {}
|
||||
# libedit = {}
|
||||
# libgmp = {}
|
||||
# libicu = {}
|
||||
# libonig = {}
|
||||
# libsodium = {}
|
||||
# libuuid = {}
|
||||
# libwebp = {}
|
||||
# llvm21 = {}
|
||||
# lsd = {}
|
||||
# lua54 = {}
|
||||
# lz4 = {}
|
||||
# mednafen = {}
|
||||
# mesa = {}
|
||||
# mesa-glu = {}
|
||||
# mgba = {}
|
||||
# ncursesw = {}
|
||||
# neverball = {}
|
||||
# nginx = {}
|
||||
# onefetch = {}
|
||||
# openjazz = {}
|
||||
# openssh = {}
|
||||
# openssl3 = {}
|
||||
# openttd = {}
|
||||
# openttd-opengfx = {}
|
||||
# openttd-openmsx = {}
|
||||
# openttd-opensfx = {}
|
||||
# orbclient = {}
|
||||
# osdemo = {}
|
||||
# perg = {}
|
||||
# periodictable = {}
|
||||
# perl5 = {}
|
||||
# php84 = {}
|
||||
# pixelcannon = {}
|
||||
# pkg-config = {}
|
||||
# prboom = {}
|
||||
# procedural-wallpapers-rs = {}
|
||||
# python312 = {}
|
||||
# readline = {}
|
||||
# redox-fatfs = {}
|
||||
# redox-games = {}
|
||||
# relibc-tests = {}
|
||||
# relibc-tests-bins = {}
|
||||
# rodioplay = {}
|
||||
# rs-nes = {}
|
||||
# rsync = {}
|
||||
# rust = {}
|
||||
# rust64 = {}
|
||||
# rustual-boy = {}
|
||||
# scummvm = {}
|
||||
# sdl-gfx = {}
|
||||
# sdl1-image = {}
|
||||
# sdl1-mixer = {}
|
||||
# sdl1-ttf = {}
|
||||
# sdl2 = {}
|
||||
# sdl2-gears = {}
|
||||
# sdl2-image = {}
|
||||
# sdl2-mixer = {}
|
||||
# sdl2-ttf = {}
|
||||
# servo = {}
|
||||
# shellharden = {}
|
||||
# shellstorm = {}
|
||||
# simple-http-server = {}
|
||||
# sodium = {}
|
||||
# sopwith = {}
|
||||
# sqlite3 = {}
|
||||
# strace = {}
|
||||
# syobonaction = {}
|
||||
# timidity = {}
|
||||
# tokei = {}
|
||||
# ttf-hack = {}
|
||||
# vttest = {}
|
||||
# webkitgtk3 = {}
|
||||
# winit = {}
|
||||
# xxhash = {}
|
||||
# zoxide = {} # untested
|
||||
# zstd = {}
|
||||
@@ -0,0 +1,49 @@
|
||||
# Configuration for demonstration
|
||||
|
||||
include = ["../desktop.toml"]
|
||||
|
||||
# General settings
|
||||
[general]
|
||||
# Filesystem size in MiB
|
||||
filesystem_size = 768
|
||||
|
||||
# Package settings
|
||||
[packages]
|
||||
# Games
|
||||
dosbox = {}
|
||||
freedoom = {}
|
||||
prboom = {}
|
||||
redox-games = {}
|
||||
|
||||
# Demos
|
||||
pixelcannon = {}
|
||||
|
||||
# MIDI
|
||||
freepats = {}
|
||||
|
||||
[[files]]
|
||||
path = "/home/user/Welcome.txt"
|
||||
data = """
|
||||
##############################################################################
|
||||
# #
|
||||
# Welcome to Red Bear OS! #
|
||||
# #
|
||||
# Red Bear OS (RBOS) is a derivative of Redox, an operating system written #
|
||||
# in Rust, a language with focus on safety and high performance. Redox, #
|
||||
# following the microkernel design, aims to be secure, usable, and free. #
|
||||
# Redox is inspired by previous kernels and operating systems, such as #
|
||||
# SeL4, MINIX, Plan 9, and BSD. #
|
||||
# #
|
||||
# Red Bear OS _is not_ just a kernel, it's a full-featured Operating System, #
|
||||
# providing packages (memory allocator, file system, display manager, core #
|
||||
# utilities, etc.) that together make up a functional and convenient #
|
||||
# operating system. You can loosely think of it as the GNU or BSD ecosystem, #
|
||||
# but in a memory safe language and with modern technology. #
|
||||
# #
|
||||
# The website can be found at https://github.com/vasilito/Red-Bear-OS-3. #
|
||||
# #
|
||||
# For things to try on Red Bear OS, please see #
|
||||
# https://doc.redox-os.org/book/ch02-06-trying-out-redox.html #
|
||||
# #
|
||||
##############################################################################
|
||||
"""
|
||||
@@ -0,0 +1,14 @@
|
||||
# Configuration for development
|
||||
|
||||
include = ["../dev.toml"]
|
||||
|
||||
# Override the default settings here
|
||||
|
||||
# General settings
|
||||
[general]
|
||||
# Filesystem size in MiB
|
||||
# filesystem_size = 1024
|
||||
|
||||
# Package settings
|
||||
[packages]
|
||||
# example = {}
|
||||
@@ -0,0 +1,39 @@
|
||||
# Configuration for Jeremy Soller
|
||||
|
||||
include = ["../desktop.toml"]
|
||||
|
||||
# General settings
|
||||
[general]
|
||||
# Filesystem size in MiB
|
||||
filesystem_size = 4000
|
||||
|
||||
# Package settings
|
||||
[packages]
|
||||
# apps
|
||||
cosmic-text = {}
|
||||
pixelcannon = {}
|
||||
sodium = {}
|
||||
|
||||
# cli
|
||||
acid = {}
|
||||
cleye = {}
|
||||
ripgrep = {}
|
||||
|
||||
# demos
|
||||
cpal = {}
|
||||
orbclient = {}
|
||||
rodioplay = {}
|
||||
winit = {}
|
||||
|
||||
# games
|
||||
dosbox = {}
|
||||
eduke32 = {}
|
||||
freedoom = {}
|
||||
prboom = {}
|
||||
redox-games = {}
|
||||
|
||||
# stuff
|
||||
freepats = {}
|
||||
generaluser-gs = {}
|
||||
jeremy = {}
|
||||
ttf-hack = {}
|
||||
@@ -0,0 +1,8 @@
|
||||
# Configuration used for building redoxer base image
|
||||
|
||||
include = ["../redoxer.toml"]
|
||||
|
||||
# General settings
|
||||
[general]
|
||||
# Filesystem size in MiB
|
||||
filesystem_size = 1024
|
||||
Reference in New Issue
Block a user