# Red Bear OS Full Configuration # Desktop/graphics ISO for bare metal and QEMU. # # Build: make live CONFIG_NAME=redbear-full # QEMU: make all CONFIG_NAME=redbear-full && make qemu # # Extends redbear-mini with the full desktop/graphics stack: # Wayland, Qt6, KF6, KWin, Mesa, DRM drivers, firmware, greeter. include = ["redbear-mini.toml"] [general] filesystem_size = 4096 efi_partition_size = 16 [users.messagebus] uid = 100 gid = 100 name = "messagebus" home = "/nonexistent" shell = "/usr/bin/ion" [users.root] shell = "/usr/bin/zsh" [packages] # Firmware loading redbear-firmware = {} firmware-loader = {} # GPU/graphics stack redox-drm = {} # mesa = {} # suppressed # libdrm = {} # suppressed # Wayland protocol # libwayland = {} # suppressed # wayland-protocols = {} # suppressed redbear-compositor = {} # Keyboard/input # libxkbcommon = {} # suppressed # xkeyboard-config = {} # suppressed # libevdev = {} # suppressed #libinput = {} # suppressed: cascade rebuild # Seat management seatd = {} # Qt6 stack # qtbase = {} # suppressed # qtdeclarative = {} # suppressed # qtsvg = {} # suppressed # qtwayland = {} # suppressed # qt6-wayland-smoke = {} # suppressed # KF6 Frameworks #kf6-extra-cmake-modules = {} # suppressed: cascade rebuild #kf6-kcoreaddons = {} # suppressed: cascade rebuild #kf6-kconfig = {} # suppressed: cascade rebuild #kf6-ki18n = {} # suppressed: cascade rebuild #kf6-kcolorscheme = {} # suppressed: cascade rebuild #kf6-kauth = {} # suppressed: cascade rebuild #kf6-kwindowsystem = {} # suppressed: cascade rebuild #kf6-knotifications = {} # suppressed: cascade rebuild #kf6-kconfigwidgets = {} # suppressed: cascade rebuild #kf6-kcrash = {} # suppressed: cascade rebuild #kf6-kdbusaddons = {} # suppressed: cascade rebuild #kf6-kglobalaccel = {} # suppressed: cascade rebuild #kf6-kservice = {} # suppressed: cascade rebuild #kf6-kpackage = {} # suppressed: cascade rebuild #kf6-kiconthemes = {} # suppressed: cascade rebuild #kirigami = {} # suppressed: cascade rebuild #kf6-kio = {} # suppressed: cascade rebuild #kf6-kdeclarative = {} # suppressed: cascade rebuild #kf6-kcmutils = {} # suppressed: cascade rebuild #kf6-kwayland = {} # suppressed: cascade rebuild #kf6-kded6 = {} # suppressed: cascade rebuild #kglobalacceld = {} # suppressed: cascade rebuild # KWin Wayland compositor #kwin = {} # suppressed: cascade rebuild # Greeter/login stack redbear-authd = {} redbear-session-launch = {} redbear-greeter = {} amdgpu = "ignore" # Core Red Bear umbrella package redbear-meta = {} # Desktop fonts and icons dejavu = {} freefont = {} hicolor-icon-theme = {} pop-icon-theme = {} # Suppress legacy desktop packages orbdata = "ignore" orbital = "ignore" orbterm = "ignore" orbutils = "ignore" cosmic-edit = "ignore" cosmic-files = "ignore" cosmic-icons = "ignore" cosmic-term = "ignore" curl = "ignore" git = "ignore" libinput = "ignore" mc = "ignore" #curl = "ignore" # suppressed: cascade rebuild #git = "ignore" # suppressed: cascade rebuild [[files]] path = "/lib/firmware/amdgpu" data = "" directory = true mode = 0o755 [[files]] path = "/usr/lib/fonts" data = "/usr/share/fonts" symlink = true [[files]] path = "/usr/lib/init.d/05_boot-essential.target" data = """ [unit] description = "Boot essential services target" requires_weak = [ "00_base.target", ] """ [[files]] path = "/usr/lib/init.d/13_iommu.service" data = """ [unit] description = "IOMMU DMA remapping daemon" requires_weak = [ "12_boot-late.target", "00_pcid-spawner.service", ] [service] cmd = "/usr/bin/iommu" type = "oneshot_async" """ [[files]] path = "/usr/lib/init.d/12_dbus.service" data = """ [unit] description = "D-Bus system bus" requires_weak = [ "12_boot-late.target", ] [service] cmd = "dbus-daemon" args = ["--system", "--nopidfile"] type = "oneshot_async" """ [[files]] path = "/usr/lib/init.d/13_redbear-sessiond.service" data = """ [unit] description = "Red Bear session broker (org.freedesktop.login1)" requires_weak = [ "12_dbus.service", ] [service] cmd = "redbear-sessiond" type = "oneshot_async" """ [[files]] path = "/usr/lib/init.d/13_seatd.service" data = """ [unit] description = "seatd seat management daemon" requires_weak = [ "12_dbus.service", "13_redbear-sessiond.service", ] [service] cmd = "/usr/bin/seatd" args = ["-l", "info"] type = "oneshot_async" """ [[files]] path = "/usr/lib/init.d/14_redbear-upower.service" data = """ [unit] description = "UPower D-Bus service (org.freedesktop.UPower)" requires_weak = [ "12_dbus.service", ] [service] cmd = "redbear-upower" type = "oneshot_async" """ [[files]] path = "/usr/lib/init.d/14_redbear-udisks.service" data = """ [unit] description = "UDisks2 D-Bus service (org.freedesktop.UDisks2)" requires_weak = [ "12_dbus.service", ] [service] cmd = "redbear-udisks" type = "oneshot_async" """ [[files]] path = "/usr/lib/init.d/14_redbear-polkit.service" data = """ [unit] description = "PolicyKit1 D-Bus service (org.freedesktop.PolicyKit1)" requires_weak = [ "12_dbus.service", ] [service] cmd = "redbear-polkit" type = "oneshot_async" """ [[files]] path = "/usr/lib/init.d/19_redbear-authd.service" data = """ [unit] description = "Red Bear authentication daemon" requires_weak = [ "12_dbus.service", ] [service] cmd = "/usr/bin/redbear-authd" type = "oneshot_async" """ [[files]] path = "/usr/lib/init.d/20_greeter.service" data = """ [unit] description = "Red Bear greeter service" requires_weak = [ "12_dbus.service", "13_redbear-sessiond.service", "13_seatd.service", "19_redbear-authd.service", "00_pcid-spawner.service", ] [service] cmd = "/usr/bin/redbear-greeterd" envs = { VT = "3", REDBEAR_GREETER_USER = "greeter", KWIN_DRM_DEVICES = "/scheme/drm/card0" } type = "oneshot_async" """ [[files]] path = "/usr/lib/init.d/29_activate_console.service" data = """ [unit] description = "Activate fallback console VT" requires_weak = [ "05_boot-essential.target", ] [service] cmd = "inputd" args = ["-A", "2"] type = "oneshot_async" """ [[files]] path = "/usr/lib/init.d/30_console.service" data = """ [unit] description = "Console terminals" requires_weak = [ "29_activate_console.service", ] [service] cmd = "getty" args = ["2"] type = "oneshot_async" respawn = true """ [[files]] path = "/usr/lib/init.d/31_debug_console.service" data = """ [unit] description = "Debug console" requires_weak = [ "29_activate_console.service", ] [service] cmd = "getty" args = ["/scheme/debug/no-preserve", "-J"] type = "oneshot_async" respawn = true """ [users.greeter] password = "" uid = 101 gid = 101 name = "greeter" home = "/nonexistent" shell = "/usr/bin/ion" [groups.greeter] gid = 101 members = ["greeter"] [[files]] path = "/etc/pcid.d/ihdgd.toml" data = """ [[drivers]] name = "Intel GPU (VGA compatible)" class = 0x03 vendor = 0x8086 subclass = 0x00 command = ["redox-drm"] [[drivers]] name = "Intel GPU (3D controller)" class = 0x03 vendor = 0x8086 subclass = 0x02 command = ["redox-drm"] """ [[files]] path = "/etc/pcid.d/virtio-gpud.toml" data = """ [[drivers]] name = "VirtIO GPU" class = 0x03 vendor = 0x1af4 subclass = 0x00 command = ["redox-drm"] """ [[files]] path = "/usr/bin/redbear-kde-session" mode = 0o755 data = """ #!/usr/bin/env bash # Red Bear KDE Wayland session startup # Launched by redbear-session-launch after successful greeter login. export XDG_CURRENT_DESKTOP=KDE export KDE_FULL_SESSION=true export XDG_SESSION_ID="${XDG_SESSION_ID:-c1}" export QT_PLUGIN_PATH="${QT_PLUGIN_PATH:-/usr/plugins}" export QT_QPA_PLATFORM_PLUGIN_PATH="${QT_QPA_PLATFORM_PLUGIN_PATH:-/usr/plugins/platforms}" export QML2_IMPORT_PATH="${QML2_IMPORT_PATH:-/usr/qml}" export LIBSEAT_BACKEND="${LIBSEAT_BACKEND:-seatd}" export SEATD_SOCK="${SEATD_SOCK:-/run/seatd.sock}" export XCURSOR_THEME="${XCURSOR_THEME:-Pop}" export XKB_CONFIG_ROOT="${XKB_CONFIG_ROOT:-/usr/share/X11/xkb}" if [ -z "${KWIN_DRM_DEVICES:-}" ] && [ -e /scheme/drm/card0 ]; then export KWIN_DRM_DEVICES=/scheme/drm/card0 fi # Wait for Wayland compositor socket wayland_socket="${XDG_RUNTIME_DIR}/${WAYLAND_DISPLAY:-wayland-0}" for _ in $(seq 1 30); do if [ -S "$wayland_socket" ]; then break fi sleep 1 done if [ -n "${KWIN_DRM_DEVICES:-}" ]; then exec kwin_wayland_wrapper --drm else exec kwin_wayland_wrapper --virtual fi """