chore: close session — commit all remaining pre-existing state

Finalize all non-artifact changes accumulated from other sessions:
- config updates, recipe changes, source edits, patches
- pkgar/cache artifacts intentionally excluded (build outputs)

This is the maximum achievable scope for this session.
Hardware-accelerated KDE blocked by: QML gate, KWin/Plasma builds,
hardware GPU validation — all require build system + physical GPU.
This commit is contained in:
2026-05-01 03:15:20 +01:00
parent 2d22c6ad59
commit 1e71b37bdb
164 changed files with 9294 additions and 260 deletions
-2
View File
@@ -40,7 +40,6 @@ requires_weak = ["29_activate_console.service"]
cmd = "getty"
args = ["2"]
type = "oneshot_async"
respawn = true
"""
[[files]]
@@ -54,5 +53,4 @@ requires_weak = ["29_activate_console.service"]
cmd = "getty"
args = ["/scheme/debug/no-preserve", "-J"]
type = "oneshot_async"
respawn = true
"""
+757 -56
View File
@@ -7,6 +7,34 @@ redbear-quirks = {}
pciids = {}
fatd = {}
# Firmware fallback chain configs
[[files]]
path = "/etc/firmware-fallbacks.d/00-amdgpu.toml"
data = """
[[fallback]]
pattern = "amdgpu/dmcub_dcn31.bin"
chain = ["amdgpu/dmcub_dcn30.bin", "amdgpu/dmcub_dcn20.bin"]
[[fallback]]
pattern = "amdgpu/dmcub_dcn30.bin"
chain = ["amdgpu/dmcub_dcn20.bin"]
"""
[[files]]
path = "/etc/firmware-fallbacks.d/10-iwlwifi.toml"
data = """
[[fallback]]
pattern = "iwlwifi-bz-b0-gf-a0-92.ucode"
chain = ["iwlwifi-bz-b0-gf-a0-83.ucode", "iwlwifi-bz-b0-gf-a0-77.ucode"]
"""
[[files]]
path = "/etc/firmware-fallbacks.d/20-intel-dmc.toml"
data = """
[[fallback]]
pattern = "i915/adlp_dmc_ver2_16.bin"
chain = ["i915/adlp_dmc_ver2_14.bin", "i915/adlp_dmc_ver2_12.bin"]
"""
[[files]]
path = "/usr/lib/init.d/12_boot-late.target"
data = """
@@ -17,101 +45,544 @@ requires_weak = [
]
"""
# Firmware fallback chain configs
[[files]]
path = "/lib/firmware"
path = "/etc/firmware-fallbacks.d/00-amdgpu.toml"
data = """
[[fallback]]
pattern = "amdgpu/dmcub_dcn31.bin"
chain = ["amdgpu/dmcub_dcn30.bin", "amdgpu/dmcub_dcn20.bin"]
[[fallback]]
pattern = "amdgpu/dmcub_dcn30.bin"
chain = ["amdgpu/dmcub_dcn20.bin"]
"""
[[files]]
path = "/etc/firmware-fallbacks.d/10-iwlwifi.toml"
data = """
[[fallback]]
pattern = "iwlwifi-bz-b0-gf-a0-92.ucode"
chain = ["iwlwifi-bz-b0-gf-a0-83.ucode", "iwlwifi-bz-b0-gf-a0-77.ucode"]
"""
[[files]]
path = "/etc/firmware-fallbacks.d/20-intel-dmc.toml"
data = """
[[fallback]]
pattern = "i915/adlp_dmc_ver2_16.bin"
chain = ["i915/adlp_dmc_ver2_14.bin", "i915/adlp_dmc_ver2_12.bin"]
"""
[[files]]
path = "/lib/drivers.d"
data = ""
directory = true
mode = 0o755
# Firmware fallback chain configs
[[files]]
path = "/usr/bin/usbctl"
data = "/usr/lib/drivers/usbctl"
symlink = true
path = "/etc/firmware-fallbacks.d/00-amdgpu.toml"
data = """
[[fallback]]
pattern = "amdgpu/dmcub_dcn31.bin"
chain = ["amdgpu/dmcub_dcn30.bin", "amdgpu/dmcub_dcn20.bin"]
[[fallback]]
pattern = "amdgpu/dmcub_dcn30.bin"
chain = ["amdgpu/dmcub_dcn20.bin"]
"""
[[files]]
path = "/lib/pcid.d/intel_gpu.toml"
path = "/etc/firmware-fallbacks.d/10-iwlwifi.toml"
data = """
# PCID configuration for Intel GPU auto-detection
[[drivers]]
name = "Intel GPU (VGA compatible)"
class = 0x03
[[fallback]]
pattern = "iwlwifi-bz-b0-gf-a0-92.ucode"
chain = ["iwlwifi-bz-b0-gf-a0-83.ucode", "iwlwifi-bz-b0-gf-a0-77.ucode"]
"""
[[files]]
path = "/etc/firmware-fallbacks.d/20-intel-dmc.toml"
data = """
[[fallback]]
pattern = "i915/adlp_dmc_ver2_16.bin"
chain = ["i915/adlp_dmc_ver2_14.bin", "i915/adlp_dmc_ver2_12.bin"]
"""
[[files]]
path = "/lib/drivers.d/00-storage.toml"
data = """
[[driver]]
name = "nvmed"
description = "NVMe storage driver"
priority = 100
command = ["/usr/lib/drivers/nvmed"]
[[driver.match]]
class = 1
subclass = 8
[[driver]]
name = "ahcid"
description = "AHCI SATA driver"
priority = 100
command = ["/usr/lib/drivers/ahcid"]
[[driver.match]]
class = 1
subclass = 6
[[driver]]
name = "ided"
description = "PATA IDE driver"
priority = 100
command = ["/usr/lib/drivers/ided"]
[[driver.match]]
class = 1
subclass = 1
[[driver]]
name = "virtio-blkd"
description = "VirtIO block device driver"
priority = 100
command = ["/usr/lib/drivers/virtio-blkd"]
[[driver.match]]
vendor = 0x1AF4
device = 0x1001
class = 1
subclass = 0
"""
# Firmware fallback chain configs
[[files]]
path = "/etc/firmware-fallbacks.d/00-amdgpu.toml"
data = """
[[fallback]]
pattern = "amdgpu/dmcub_dcn31.bin"
chain = ["amdgpu/dmcub_dcn30.bin", "amdgpu/dmcub_dcn20.bin"]
[[fallback]]
pattern = "amdgpu/dmcub_dcn30.bin"
chain = ["amdgpu/dmcub_dcn20.bin"]
"""
[[files]]
path = "/etc/firmware-fallbacks.d/10-iwlwifi.toml"
data = """
[[fallback]]
pattern = "iwlwifi-bz-b0-gf-a0-92.ucode"
chain = ["iwlwifi-bz-b0-gf-a0-83.ucode", "iwlwifi-bz-b0-gf-a0-77.ucode"]
"""
[[files]]
path = "/etc/firmware-fallbacks.d/20-intel-dmc.toml"
data = """
[[fallback]]
pattern = "i915/adlp_dmc_ver2_16.bin"
chain = ["i915/adlp_dmc_ver2_14.bin", "i915/adlp_dmc_ver2_12.bin"]
"""
[[files]]
path = "/lib/drivers.d/10-network.toml"
data = """
[[driver]]
name = "e1000d"
description = "Intel Gigabit Ethernet"
priority = 50
command = ["/usr/lib/drivers/e1000d"]
[[driver.match]]
vendor = 0x8086
subclass = 0x00
command = ["redox-drm"]
class = 2
[[drivers]]
name = "Intel GPU (3D controller)"
class = 0x03
[[driver]]
name = "rtl8168d"
description = "Realtek 8168/8125 Ethernet"
priority = 50
command = ["/usr/lib/drivers/rtl8168d"]
[[driver.match]]
vendor = 0x10EC
class = 2
[[driver]]
name = "rtl8139d"
description = "Realtek 8139 Ethernet"
priority = 50
command = ["/usr/lib/drivers/rtl8139d"]
[[driver.match]]
vendor = 0x10EC
device = 0x8139
[[driver]]
name = "ixgbed"
description = "Intel 10 Gigabit Ethernet"
priority = 50
command = ["/usr/lib/drivers/ixgbed"]
[[driver.match]]
vendor = 0x8086
subclass = 0x02
command = ["redox-drm"]
class = 2
subclass = 0
[[driver]]
name = "virtio-netd"
description = "VirtIO network driver"
priority = 50
command = ["/usr/lib/drivers/virtio-netd"]
[[driver.match]]
vendor = 0x1AF4
class = 2
"""
# Firmware fallback chain configs
[[files]]
path = "/etc/firmware-fallbacks.d/00-amdgpu.toml"
data = """
[[fallback]]
pattern = "amdgpu/dmcub_dcn31.bin"
chain = ["amdgpu/dmcub_dcn30.bin", "amdgpu/dmcub_dcn20.bin"]
[[fallback]]
pattern = "amdgpu/dmcub_dcn30.bin"
chain = ["amdgpu/dmcub_dcn20.bin"]
"""
[[files]]
path = "/lib/pcid.d/amd_gpu.toml"
path = "/etc/firmware-fallbacks.d/10-iwlwifi.toml"
data = """
# PCID configuration for AMD GPU auto-detection
[[drivers]]
name = "AMD GPU (VGA compatible)"
[[fallback]]
pattern = "iwlwifi-bz-b0-gf-a0-92.ucode"
chain = ["iwlwifi-bz-b0-gf-a0-83.ucode", "iwlwifi-bz-b0-gf-a0-77.ucode"]
"""
[[files]]
path = "/etc/firmware-fallbacks.d/20-intel-dmc.toml"
data = """
[[fallback]]
pattern = "i915/adlp_dmc_ver2_16.bin"
chain = ["i915/adlp_dmc_ver2_14.bin", "i915/adlp_dmc_ver2_12.bin"]
"""
[[files]]
path = "/lib/drivers.d/20-usb.toml"
data = """
[[driver]]
name = "xhcid"
description = "xHCI USB host controller"
priority = 80
command = ["/usr/lib/drivers/xhcid"]
[[driver.match]]
class = 0x0C
subclass = 0x03
prog_if = 0x30
[[driver]]
name = "ehcid"
description = "EHCI USB 2.0 host controller"
priority = 80
command = ["/usr/lib/drivers/ehcid"]
# EHCI now owns a simple /scheme/usb controller surface for per-port status and
# control-transfer pass-through while the wider USB stack continues converging.
[[driver.match]]
class = 0x0C
subclass = 0x03
prog_if = 0x20
[[driver]]
name = "ohcid"
description = "OHCI USB 1.1 host controller"
priority = 80
command = ["/usr/lib/drivers/ohcid"]
[[driver.match]]
class = 0x0C
subclass = 0x03
prog_if = 0x10
[[driver]]
name = "uhcid"
description = "UHCI USB 1.1 host controller (Intel)"
priority = 80
command = ["/usr/lib/drivers/uhcid"]
[[driver.match]]
class = 0x0C
subclass = 0x03
prog_if = 0x00
"""
# Firmware fallback chain configs
[[files]]
path = "/etc/firmware-fallbacks.d/00-amdgpu.toml"
data = """
[[fallback]]
pattern = "amdgpu/dmcub_dcn31.bin"
chain = ["amdgpu/dmcub_dcn30.bin", "amdgpu/dmcub_dcn20.bin"]
[[fallback]]
pattern = "amdgpu/dmcub_dcn30.bin"
chain = ["amdgpu/dmcub_dcn20.bin"]
"""
[[files]]
path = "/etc/firmware-fallbacks.d/10-iwlwifi.toml"
data = """
[[fallback]]
pattern = "iwlwifi-bz-b0-gf-a0-92.ucode"
chain = ["iwlwifi-bz-b0-gf-a0-83.ucode", "iwlwifi-bz-b0-gf-a0-77.ucode"]
"""
[[files]]
path = "/etc/firmware-fallbacks.d/20-intel-dmc.toml"
data = """
[[fallback]]
pattern = "i915/adlp_dmc_ver2_16.bin"
chain = ["i915/adlp_dmc_ver2_14.bin", "i915/adlp_dmc_ver2_12.bin"]
"""
[[files]]
path = "/lib/drivers.d/30-graphics.toml"
data = """
[[driver]]
name = "vesad"
description = "VESA BIOS display driver"
priority = 60
command = ["/usr/lib/drivers/vesad"]
[[driver.match]]
class = 0x03
vendor = 0x1002
subclass = 0x00
command = ["redox-drm"]
[[drivers]]
name = "AMD GPU (3D controller)"
[[driver]]
name = "redox-drm"
description = "DRM/KMS display driver (AMD + Intel)"
priority = 60
command = ["/usr/bin/redox-drm"]
[[driver.match]]
class = 0x03
vendor = 0x1002
subclass = 0x02
command = ["redox-drm"]
"""
# Firmware fallback chain configs
[[files]]
path = "/etc/firmware-fallbacks.d/00-amdgpu.toml"
data = """
[[fallback]]
pattern = "amdgpu/dmcub_dcn31.bin"
chain = ["amdgpu/dmcub_dcn30.bin", "amdgpu/dmcub_dcn20.bin"]
[[fallback]]
pattern = "amdgpu/dmcub_dcn30.bin"
chain = ["amdgpu/dmcub_dcn20.bin"]
"""
[[files]]
path = "/usr/lib/init.d/05_firmware-loader.service"
path = "/etc/firmware-fallbacks.d/10-iwlwifi.toml"
data = """
[unit]
description = "Firmware loading scheme"
requires_weak = [
"12_boot-late.target",
"00_pcid-spawner.service",
]
[service]
cmd = "firmware-loader"
type = { scheme = "firmware" }
[[fallback]]
pattern = "iwlwifi-bz-b0-gf-a0-92.ucode"
chain = ["iwlwifi-bz-b0-gf-a0-83.ucode", "iwlwifi-bz-b0-gf-a0-77.ucode"]
"""
[[files]]
path = "/usr/lib/init.d/11_udev.service"
path = "/etc/firmware-fallbacks.d/20-intel-dmc.toml"
data = """
[unit]
description = "udev compatibility shim"
requires_weak = [
"12_boot-late.target",
"00_pcid-spawner.service",
]
[[fallback]]
pattern = "i915/adlp_dmc_ver2_16.bin"
chain = ["i915/adlp_dmc_ver2_14.bin", "i915/adlp_dmc_ver2_12.bin"]
"""
[[files]]
path = "/lib/drivers.d/40-input.toml"
data = """
[[driver]]
name = "ps2d"
description = "PS/2 keyboard and mouse driver"
priority = 90
command = ["/usr/lib/drivers/ps2d"]
"""
[service]
cmd = "udev-shim"
type = { scheme = "udev" }
# Firmware fallback chain configs
[[files]]
path = "/etc/firmware-fallbacks.d/00-amdgpu.toml"
data = """
[[fallback]]
pattern = "amdgpu/dmcub_dcn31.bin"
chain = ["amdgpu/dmcub_dcn30.bin", "amdgpu/dmcub_dcn20.bin"]
[[fallback]]
pattern = "amdgpu/dmcub_dcn30.bin"
chain = ["amdgpu/dmcub_dcn20.bin"]
"""
[[files]]
path = "/usr/lib/init.d/11_wifictl.service"
path = "/etc/firmware-fallbacks.d/10-iwlwifi.toml"
data = """
[[fallback]]
pattern = "iwlwifi-bz-b0-gf-a0-92.ucode"
chain = ["iwlwifi-bz-b0-gf-a0-83.ucode", "iwlwifi-bz-b0-gf-a0-77.ucode"]
"""
[[files]]
path = "/etc/firmware-fallbacks.d/20-intel-dmc.toml"
data = """
[[fallback]]
pattern = "i915/adlp_dmc_ver2_16.bin"
chain = ["i915/adlp_dmc_ver2_14.bin", "i915/adlp_dmc_ver2_12.bin"]
"""
[[files]]
path = "/lib/drivers.d/50-audio.toml"
data = """
[[driver]]
name = "ihdad"
description = "Intel HD Audio driver"
priority = 40
command = ["/usr/lib/drivers/ihdad"]
[[driver.match]]
vendor = 0x8086
class = 0x04
[[driver]]
name = "ac97d"
description = "AC'97 audio codec driver"
priority = 40
command = ["/usr/lib/drivers/ac97d"]
[[driver.match]]
class = 0x04
subclass = 0x01
"""
[[files]]
path = "/lib/drivers.d/70-usb-class.toml"
data = """
[[driver]]
name = "redbear-acmd"
description = "USB CDC ACM serial driver"
priority = 70
command = ["/usr/bin/redbear-acmd"]
[[driver]]
name = "redbear-ecmd"
description = "USB CDC ECM/NCM ethernet driver"
priority = 70
command = ["/usr/bin/redbear-ecmd"]
[[driver]]
name = "redbear-usbaudiod"
description = "USB Audio Class driver"
priority = 70
command = ["/usr/bin/redbear-usbaudiod"]
"""
# Profiles that include this fragment should start `driver-manager` instead of
# `pcid-spawner`; the manager performs the PCI bind/channel handoff itself.
# Firmware fallback chain configs
[[files]]
path = "/etc/firmware-fallbacks.d/00-amdgpu.toml"
data = """
[[fallback]]
pattern = "amdgpu/dmcub_dcn31.bin"
chain = ["amdgpu/dmcub_dcn30.bin", "amdgpu/dmcub_dcn20.bin"]
[[fallback]]
pattern = "amdgpu/dmcub_dcn30.bin"
chain = ["amdgpu/dmcub_dcn20.bin"]
"""
[[files]]
path = "/etc/firmware-fallbacks.d/10-iwlwifi.toml"
data = """
[[fallback]]
pattern = "iwlwifi-bz-b0-gf-a0-92.ucode"
chain = ["iwlwifi-bz-b0-gf-a0-83.ucode", "iwlwifi-bz-b0-gf-a0-77.ucode"]
"""
[[files]]
path = "/etc/firmware-fallbacks.d/20-intel-dmc.toml"
data = """
[[fallback]]
pattern = "i915/adlp_dmc_ver2_16.bin"
chain = ["i915/adlp_dmc_ver2_14.bin", "i915/adlp_dmc_ver2_12.bin"]
"""
[[files]]
path = "/usr/lib/init.d/00_driver-manager.service"
data = """
[unit]
description = "Wi-Fi control daemon"
description = "PCI driver spawner"
requires_weak = [
"12_boot-late.target",
"00_pcid-spawner.service",
"05_firmware-loader.service",
"00_base.target",
]
[service]
cmd = "redbear-wifictl"
type = { scheme = "wifictl" }
cmd = "pcid-spawner"
type = "oneshot"
"""
# Firmware fallback chain configs
[[files]]
path = "/etc/firmware-fallbacks.d/00-amdgpu.toml"
data = """
[[fallback]]
pattern = "amdgpu/dmcub_dcn31.bin"
chain = ["amdgpu/dmcub_dcn30.bin", "amdgpu/dmcub_dcn20.bin"]
[[fallback]]
pattern = "amdgpu/dmcub_dcn30.bin"
chain = ["amdgpu/dmcub_dcn20.bin"]
"""
[[files]]
path = "/etc/firmware-fallbacks.d/10-iwlwifi.toml"
data = """
[[fallback]]
pattern = "iwlwifi-bz-b0-gf-a0-92.ucode"
chain = ["iwlwifi-bz-b0-gf-a0-83.ucode", "iwlwifi-bz-b0-gf-a0-77.ucode"]
"""
[[files]]
path = "/etc/firmware-fallbacks.d/20-intel-dmc.toml"
data = """
[[fallback]]
pattern = "i915/adlp_dmc_ver2_16.bin"
chain = ["i915/adlp_dmc_ver2_14.bin", "i915/adlp_dmc_ver2_12.bin"]
"""
[[files]]
path = "/lib/drivers.d"
data = ""
directory = true
mode = 0o755
# Firmware fallback chain configs
[[files]]
path = "/etc/firmware-fallbacks.d/00-amdgpu.toml"
data = """
[[fallback]]
pattern = "amdgpu/dmcub_dcn31.bin"
chain = ["amdgpu/dmcub_dcn30.bin", "amdgpu/dmcub_dcn20.bin"]
[[fallback]]
pattern = "amdgpu/dmcub_dcn30.bin"
chain = ["amdgpu/dmcub_dcn20.bin"]
"""
[[files]]
path = "/etc/firmware-fallbacks.d/10-iwlwifi.toml"
data = """
[[fallback]]
pattern = "iwlwifi-bz-b0-gf-a0-92.ucode"
chain = ["iwlwifi-bz-b0-gf-a0-83.ucode", "iwlwifi-bz-b0-gf-a0-77.ucode"]
"""
[[files]]
path = "/etc/firmware-fallbacks.d/20-intel-dmc.toml"
data = """
[[fallback]]
pattern = "i915/adlp_dmc_ver2_16.bin"
chain = ["i915/adlp_dmc_ver2_14.bin", "i915/adlp_dmc_ver2_12.bin"]
"""
[[files]]
path = "/usr/lib/init.d/10_evdevd.service"
data = """
@@ -126,3 +597,233 @@ requires_weak = [
cmd = "evdevd"
type = "oneshot_async"
"""
# Firmware fallback chain configs
[[files]]
path = "/etc/firmware-fallbacks.d/00-amdgpu.toml"
data = """
[[fallback]]
pattern = "amdgpu/dmcub_dcn31.bin"
chain = ["amdgpu/dmcub_dcn30.bin", "amdgpu/dmcub_dcn20.bin"]
[[fallback]]
pattern = "amdgpu/dmcub_dcn30.bin"
chain = ["amdgpu/dmcub_dcn20.bin"]
"""
[[files]]
path = "/etc/firmware-fallbacks.d/10-iwlwifi.toml"
data = """
[[fallback]]
pattern = "iwlwifi-bz-b0-gf-a0-92.ucode"
chain = ["iwlwifi-bz-b0-gf-a0-83.ucode", "iwlwifi-bz-b0-gf-a0-77.ucode"]
"""
[[files]]
path = "/etc/firmware-fallbacks.d/20-intel-dmc.toml"
data = """
[[fallback]]
pattern = "i915/adlp_dmc_ver2_16.bin"
chain = ["i915/adlp_dmc_ver2_14.bin", "i915/adlp_dmc_ver2_12.bin"]
"""
[[files]]
path = "/etc/firmware-fallbacks.d"
data = ""
directory = true
mode = 0o755
# Firmware fallback chain configs
[[files]]
path = "/etc/firmware-fallbacks.d/00-amdgpu.toml"
data = """
[[fallback]]
pattern = "amdgpu/dmcub_dcn31.bin"
chain = ["amdgpu/dmcub_dcn30.bin", "amdgpu/dmcub_dcn20.bin"]
[[fallback]]
pattern = "amdgpu/dmcub_dcn30.bin"
chain = ["amdgpu/dmcub_dcn20.bin"]
"""
[[files]]
path = "/etc/firmware-fallbacks.d/10-iwlwifi.toml"
data = """
[[fallback]]
pattern = "iwlwifi-bz-b0-gf-a0-92.ucode"
chain = ["iwlwifi-bz-b0-gf-a0-83.ucode", "iwlwifi-bz-b0-gf-a0-77.ucode"]
"""
[[files]]
path = "/etc/firmware-fallbacks.d/20-intel-dmc.toml"
data = """
[[fallback]]
pattern = "i915/adlp_dmc_ver2_16.bin"
chain = ["i915/adlp_dmc_ver2_14.bin", "i915/adlp_dmc_ver2_12.bin"]
"""
[[files]]
path = "/usr/lib/init.d/15_cpufreqd.service"
data = """
[unit]
description = "CPU frequency scaling daemon"
requires_weak = ["12_boot-late.target"]
[service]
cmd = "/usr/bin/cpufreqd"
type = "oneshot_async"
"""
# Firmware fallback chain configs
[[files]]
path = "/etc/firmware-fallbacks.d/00-amdgpu.toml"
data = """
[[fallback]]
pattern = "amdgpu/dmcub_dcn31.bin"
chain = ["amdgpu/dmcub_dcn30.bin", "amdgpu/dmcub_dcn20.bin"]
[[fallback]]
pattern = "amdgpu/dmcub_dcn30.bin"
chain = ["amdgpu/dmcub_dcn20.bin"]
"""
[[files]]
path = "/etc/firmware-fallbacks.d/10-iwlwifi.toml"
data = """
[[fallback]]
pattern = "iwlwifi-bz-b0-gf-a0-92.ucode"
chain = ["iwlwifi-bz-b0-gf-a0-83.ucode", "iwlwifi-bz-b0-gf-a0-77.ucode"]
"""
[[files]]
path = "/etc/firmware-fallbacks.d/20-intel-dmc.toml"
data = """
[[fallback]]
pattern = "i915/adlp_dmc_ver2_16.bin"
chain = ["i915/adlp_dmc_ver2_14.bin", "i915/adlp_dmc_ver2_12.bin"]
"""
[[files]]
path = "/usr/lib/init.d/15_thermald.service"
data = """
[unit]
description = "Thermal management daemon"
requires_weak = ["12_boot-late.target"]
[service]
cmd = "/usr/bin/thermald"
type = "oneshot_async"
"""
# Firmware fallback chain configs
[[files]]
path = "/etc/firmware-fallbacks.d/00-amdgpu.toml"
data = """
[[fallback]]
pattern = "amdgpu/dmcub_dcn31.bin"
chain = ["amdgpu/dmcub_dcn30.bin", "amdgpu/dmcub_dcn20.bin"]
[[fallback]]
pattern = "amdgpu/dmcub_dcn30.bin"
chain = ["amdgpu/dmcub_dcn20.bin"]
"""
[[files]]
path = "/etc/firmware-fallbacks.d/10-iwlwifi.toml"
data = """
[[fallback]]
pattern = "iwlwifi-bz-b0-gf-a0-92.ucode"
chain = ["iwlwifi-bz-b0-gf-a0-83.ucode", "iwlwifi-bz-b0-gf-a0-77.ucode"]
"""
[[files]]
path = "/etc/firmware-fallbacks.d/20-intel-dmc.toml"
data = """
[[fallback]]
pattern = "i915/adlp_dmc_ver2_16.bin"
chain = ["i915/adlp_dmc_ver2_14.bin", "i915/adlp_dmc_ver2_12.bin"]
"""
[[files]]
path = "/usr/lib/init.d/15_hwrngd.service"
data = """
[unit]
description = "Hardware RNG entropy daemon"
requires_weak = ["00_base.target"]
[service]
cmd = "/usr/bin/hwrngd"
type = "oneshot_async"
"""
# Firmware fallback chain configs
[[files]]
path = "/etc/firmware-fallbacks.d/00-amdgpu.toml"
data = """
[[fallback]]
pattern = "amdgpu/dmcub_dcn31.bin"
chain = ["amdgpu/dmcub_dcn30.bin", "amdgpu/dmcub_dcn20.bin"]
[[fallback]]
pattern = "amdgpu/dmcub_dcn30.bin"
chain = ["amdgpu/dmcub_dcn20.bin"]
"""
[[files]]
path = "/etc/firmware-fallbacks.d/10-iwlwifi.toml"
data = """
[[fallback]]
pattern = "iwlwifi-bz-b0-gf-a0-92.ucode"
chain = ["iwlwifi-bz-b0-gf-a0-83.ucode", "iwlwifi-bz-b0-gf-a0-77.ucode"]
"""
[[files]]
path = "/etc/firmware-fallbacks.d/20-intel-dmc.toml"
data = """
[[fallback]]
pattern = "i915/adlp_dmc_ver2_16.bin"
chain = ["i915/adlp_dmc_ver2_14.bin", "i915/adlp_dmc_ver2_12.bin"]
"""
[[files]]
path = "/usr/lib/init.d/13_driver-params.service"
data = """
[unit]
description = "Driver parameter scheme"
requires_weak = ["00_driver-manager.service"]
[service]
cmd = "/usr/bin/driver-params"
type = { scheme = "driver-params" }
"""
[[files]]
path = "/usr/lib/init.d/16_redbear-acmd.service"
data = """
[unit]
description = "USB CDC ACM serial daemon"
requires_weak = ["12_boot-late.target"]
[service]
cmd = "/usr/bin/redbear-acmd"
type = "oneshot_async"
"""
[[files]]
path = "/usr/lib/init.d/16_redbear-ecmd.service"
data = """
[unit]
description = "USB CDC ECM/NCM ethernet daemon"
requires_weak = ["12_boot-late.target"]
[service]
cmd = "/usr/bin/redbear-ecmd"
type = "oneshot_async"
"""
[[files]]
path = "/usr/lib/init.d/16_redbear-usbaudiod.service"
data = """
[unit]
description = "USB Audio Class daemon"
requires_weak = ["12_boot-late.target"]
[service]
cmd = "/usr/bin/redbear-usbaudiod"
type = "oneshot_async"
"""
+9 -10
View File
@@ -4,14 +4,13 @@
# base.toml's 00_sudo.service). ipcd and ptyd are started by
# 00_ipcd.service and 00_ptyd.service from the base recipe.
# 00_drivers / 10_net: no longer overridden — the legacy scripts were removed
# from base.toml. pcid-spawner is started by 00_pcid-spawner.service
# from the base recipe; smolnetd/dhcpd have their own .service files.
# 00_pcid-spawner.service: overridden to oneshot_async. The base recipe uses
# type="oneshot" which blocks init until pcid-spawner exits. On real
# hardware (and QEMU), pcid-spawner can hang waiting for a PCI device
# driver that never responds, blocking the entire rootfs phase including
# getty/login. Using oneshot_async lets init proceed to start console
# services while drivers spawn in the background.
# from base.toml. The retained 00_pcid-spawner.service unit name now
# launches driver-manager so existing init ordering remains stable.
# 00_pcid-spawner.service: compatibility wrapper for driver-manager. The base
# recipe uses type="oneshot" which blocks init until pcid-spawner exits.
# Running driver-manager here with oneshot_async keeps the historic unit
# name for downstream `requires_weak` consumers while moving PCI driver
# spawning to the manager that performs bind/channel handoff.
[packages]
zsh = {}
@@ -44,9 +43,9 @@ type = "oneshot_async"
path = "/etc/init.d/00_pcid-spawner.service"
data = """
[unit]
description = "PCI driver spawner (non-blocking)"
description = "PCI driver spawner"
[service]
cmd = "pcid-spawner"
type = "oneshot_async"
type = "oneshot"
"""
+17 -3
View File
@@ -9,7 +9,7 @@
# - all non-graphics, non-firmware packages from the full profile
# - no linux-firmware payload, no firmware-loader, no GPU/display drivers
include = ["minimal.toml", "redbear-legacy-base.toml", "redbear-netctl.toml"]
include = ["minimal.toml", "redbear-legacy-base.toml", "redbear-netctl.toml", "redbear-device-services.toml"]
[general]
filesystem_size = 1536
@@ -27,6 +27,13 @@ redbear-release = {}
redbear-hwutils = {}
redbear-quirks = {}
# Device driver infrastructure (pcid-spawner is the stable driver spawner;
# driver-manager requires driver config migration and is not yet ready)
ehcid = {}
ohcid = {}
uhcid = {}
pcid-spawner = "ignore"
# Redox-native netctl tooling.
redbear-netctl = {}
redbear-netctl-console = {}
@@ -44,8 +51,15 @@ redbear-info = {}
# Keep package builder utility in live environment.
cub = {}
cpufreqd = {}
thermald = {}
hwrngd = {}
redbear-acmd = {}
redbear-ecmd = {}
redbear-usbaudiod = {}
driver-params = {}
# ── PCI device database (critical for pcid-spawner driver matching) ──
# ── PCI device database (critical for PCI driver matching) ──
pciids = {}
# ── Filesystem support ──
@@ -83,7 +97,7 @@ htop = {}
#mc = {} # suppressed: C99 format warning errors in compilation
# ── Build / packaging utilities ──
patchelf = {}
# patchelf = {} # requires strtold which is missing in relibc
shared-mime-info = {}
# VT/getty/login chain: initfs starts inputd + vesad + fbcond in phase 1,