5851974b20
Release fork infrastructure: - REDBEAR_RELEASE=0.1.1 with offline enforcement (fetch/distclean/unfetch blocked) - 195 BLAKE3-verified source archives in standard format - Atomic provisioning via provision-release.sh (staging + .complete sentry) - 5-phase improvement plan: restore format auto-detection, source tree validation (validate-source-trees.py), archive-map.json, REPO_BINARY fallback Archive normalization: - Removed 87 duplicate/unversioned archives from shared pool - Regenerated all archives in consistent format with source/ + recipe.toml - BLAKE3SUMS and manifest.json generated from stable tarball set Patch management: - verify-patches.sh: pre-sync dry-run report (OK/REVERSED/CONFLICT) - 121 upstream-absorbed patches moved to absorbed/ directories - 43 active patches verified clean against rebased sources - Stress test: base updated to upstream HEAD, relibc reset and patched Compilation fixes: - relibc: Vec imports in redox-rt (proc.rs, lib.rs, sys.rs) - relibc: unsafe from_raw_parts in mod.rs (2024 edition) - fetch.rs: rev comparison handles short/full hash prefixes - kibi recipe: corrected rev mismatch New scripts: restore-sources.sh, provision-release.sh, verify-sources-archived.sh, check-upstream-releases.sh, validate-source-trees.py, verify-patches.sh, repair-archive-format.sh, generate-manifest.py Documentation: AGENTS.md, README.md, local/AGENTS.md updated for release fork model
321 lines
4.6 KiB
TOML
321 lines
4.6 KiB
TOML
# Base configuration: This configuration is meant to be included by
|
|
# other configurations rather than use directly. It is the greatest
|
|
# common divisor of all other configurations and misses several
|
|
# parts necessary to create a bootable system.
|
|
|
|
# General settings
|
|
[general]
|
|
# Do not prompt if settings are not defined
|
|
prompt = false
|
|
|
|
[packages]
|
|
base = {}
|
|
base-initfs = {}
|
|
bootloader = {}
|
|
kernel = {}
|
|
libgcc = {}
|
|
libstdcxx = {}
|
|
netdb = {}
|
|
netutils = {}
|
|
relibc = {}
|
|
userutils = {}
|
|
uutils = {}
|
|
|
|
## Configuration files
|
|
[[files]]
|
|
path = "/usr/lib/init.d/00_base.service"
|
|
data = """
|
|
[unit]
|
|
description = "Base environment setup (tmpdir)"
|
|
|
|
[service]
|
|
cmd = "ion"
|
|
args = ["-c", "rm -rf /tmp; mkdir -m a=rwxt /tmp"]
|
|
type = "oneshot"
|
|
"""
|
|
|
|
[[files]]
|
|
path = "/usr/lib/init.d/00_sudo.service"
|
|
data = """
|
|
[unit]
|
|
description = "Sudo privilege daemon"
|
|
|
|
[service]
|
|
cmd = "sudo"
|
|
args = ["--daemon"]
|
|
type = "oneshot_async"
|
|
"""
|
|
|
|
[[files]]
|
|
path = "/etc/login_schemes.toml"
|
|
data = """
|
|
[user_schemes.root]
|
|
schemes = ["*"]
|
|
[user_schemes.user]
|
|
schemes = [
|
|
# Kernel schemes
|
|
"debug",
|
|
"event",
|
|
"memory",
|
|
"pipe",
|
|
"serio",
|
|
"irq",
|
|
"time",
|
|
"sys",
|
|
# Base schemes
|
|
"rand",
|
|
"null",
|
|
"zero",
|
|
"log",
|
|
# Network schemes
|
|
"ip",
|
|
"icmp",
|
|
"tcp",
|
|
"udp",
|
|
# IPC schemes
|
|
"shm",
|
|
"chan",
|
|
"uds_stream",
|
|
"uds_dgram",
|
|
# File schemes
|
|
"file",
|
|
# Display schemes
|
|
"display.vesa",
|
|
"display*",
|
|
# Other schemes
|
|
"pty",
|
|
"sudo",
|
|
"audio",
|
|
]
|
|
"""
|
|
|
|
[[files]]
|
|
path = "/etc/hostname"
|
|
data = "redbear"
|
|
|
|
## Default net configuration (optimized for QEMU)
|
|
[[files]]
|
|
path = "/etc/net/dns"
|
|
data = """
|
|
9.9.9.9
|
|
"""
|
|
|
|
[[files]]
|
|
path = "/etc/net/ip"
|
|
data = """
|
|
10.0.2.15
|
|
"""
|
|
|
|
[[files]]
|
|
path = "/etc/net/ip_router"
|
|
data = """
|
|
10.0.2.2
|
|
"""
|
|
|
|
[[files]]
|
|
path = "/etc/net/ip_subnet"
|
|
data = """
|
|
255.255.255.0
|
|
"""
|
|
|
|
# https://www.freedesktop.org/software/systemd/man/latest/os-release.html
|
|
[[files]]
|
|
path = "/usr/lib/os-release"
|
|
data = """
|
|
PRETTY_NAME="Red Bear OS 0.1.0"
|
|
NAME="Red Bear OS"
|
|
VERSION_ID="0.1.0"
|
|
VERSION="0.1.0"
|
|
ID="redbear-os"
|
|
ID_LIKE="redox-os"
|
|
|
|
HOME_URL="https://github.com/vasilito/Red-Bear-OS-3"
|
|
DOCUMENTATION_URL="https://doc.redox-os.org/"
|
|
SUPPORT_URL="https://github.com/vasilito/Red-Bear-OS-3/issues"
|
|
"""
|
|
# FIXME maybe add VARIANT= and VARIANT_ID= keys depending on the chosen configuration?
|
|
|
|
[[files]]
|
|
path = "/etc/os-release"
|
|
data = "../usr/lib/os-release"
|
|
symlink = true
|
|
|
|
[[files]]
|
|
path = "/etc/pkg.d/50_redox"
|
|
data = "https://static.redox-os.org/pkg"
|
|
|
|
## /usr and symlinks for usrmerge
|
|
[[files]]
|
|
path = "/usr"
|
|
data = ""
|
|
directory = true
|
|
mode = 0o755
|
|
|
|
[[files]]
|
|
path = "/usr/bin"
|
|
data = ""
|
|
directory = true
|
|
mode = 0o755
|
|
|
|
[[files]]
|
|
path = "/bin"
|
|
data = "usr/bin"
|
|
symlink = true
|
|
|
|
[[files]]
|
|
path = "/usr/include"
|
|
data = ""
|
|
directory = true
|
|
mode = 0o755
|
|
|
|
[[files]]
|
|
path = "/include"
|
|
data = "usr/include"
|
|
symlink = true
|
|
|
|
[[files]]
|
|
path = "/usr/lib"
|
|
data = ""
|
|
directory = true
|
|
mode = 0o755
|
|
|
|
[[files]]
|
|
path = "/lib"
|
|
data = "usr/lib"
|
|
symlink = true
|
|
|
|
[[files]]
|
|
path = "/usr/libexec"
|
|
data = ""
|
|
directory = true
|
|
mode = 0o755
|
|
|
|
[[files]]
|
|
path = "/usr/share"
|
|
data = ""
|
|
directory = true
|
|
mode = 0o755
|
|
|
|
[[files]]
|
|
path = "/share"
|
|
data = "usr/share"
|
|
symlink = true
|
|
|
|
[[files]]
|
|
path = "/ui"
|
|
data = "usr/share/ui"
|
|
symlink = true
|
|
|
|
## legacy display font directory
|
|
[[files]]
|
|
path = "/usr/share/ui/fonts"
|
|
data = "/usr/share/fonts"
|
|
symlink = true
|
|
|
|
## legacy display icon directory
|
|
[[files]]
|
|
path = "/usr/share/ui/icons"
|
|
data = "/usr/share/icons"
|
|
symlink = true
|
|
|
|
## /var
|
|
[[files]]
|
|
path = "/var"
|
|
data = ""
|
|
directory = true
|
|
mode = 0o755
|
|
|
|
[[files]]
|
|
path = "/var/cache"
|
|
data = ""
|
|
directory = true
|
|
mode = 0o755
|
|
|
|
[[files]]
|
|
path = "/var/lib"
|
|
data = ""
|
|
directory = true
|
|
mode = 0o755
|
|
|
|
[[files]]
|
|
path = "/var/lock"
|
|
data = ""
|
|
directory = true
|
|
mode = 0o1777
|
|
|
|
[[files]]
|
|
path = "/var/log"
|
|
data = ""
|
|
directory = true
|
|
mode = 0o755
|
|
|
|
[[files]]
|
|
path = "/var/run"
|
|
data = ""
|
|
directory = true
|
|
mode = 0o755
|
|
|
|
[[files]]
|
|
path = "/var/tmp"
|
|
data = ""
|
|
directory = true
|
|
mode = 0o1777
|
|
|
|
## Device file symlinks
|
|
[[files]]
|
|
path = "/dev/null"
|
|
data = "/scheme/null"
|
|
symlink = true
|
|
|
|
[[files]]
|
|
path = "/dev/random"
|
|
data = "/scheme/rand"
|
|
symlink = true
|
|
|
|
[[files]]
|
|
path = "/dev/urandom"
|
|
data = "/scheme/rand"
|
|
symlink = true
|
|
|
|
[[files]]
|
|
path = "/dev/zero"
|
|
data = "/scheme/zero"
|
|
symlink = true
|
|
|
|
[[files]]
|
|
path = "/dev/tty"
|
|
data = "libc:tty"
|
|
symlink = true
|
|
|
|
[[files]]
|
|
path = "/dev/stdin"
|
|
data = "libc:stdin"
|
|
symlink = true
|
|
|
|
[[files]]
|
|
path = "/dev/stdout"
|
|
data = "libc:stdout"
|
|
symlink = true
|
|
|
|
[[files]]
|
|
path = "/dev/stderr"
|
|
data = "libc:stderr"
|
|
symlink = true
|
|
|
|
# User settings
|
|
[users.root]
|
|
password = "password"
|
|
uid = 0
|
|
gid = 0
|
|
shell = "/usr/bin/ion"
|
|
|
|
[users.user]
|
|
# Password is unset
|
|
password = ""
|
|
shell = "/usr/bin/ion"
|
|
|
|
# Group settings
|
|
[groups.sudo]
|
|
gid = 1
|
|
members = ["user"]
|