d01da350c1
Phase J: hardware-agnostic s2idle / Modern Standby support in libredox. The libredox 0.1.17 dep on redox_syscall is redirected to the local fork at ../syscall (the fork at local/sources/syscall/ which adds EnterS2Idle/ExitS2Idle AcPiVerb variants to upstream's 0.8.1). This breaks the libredox::error::Error <-> syscall::Error type-identity barrier that previously caused E0277 errors in scheme-utils and daemon when the local syscall fork was used. Now that libredox also uses the local fork, both types are the same compile-time type. The version field stays at upstream 0.1.17 per the AGENTS.md 'GOLDEN RULE — Red Bear adapts to upstream, never the reverse'. Periodic rebase via 'git fetch upstream' is the workflow when upstream changes. Hardware-agnostic: works for any platform with Modern Standby firmware (Dell, HP, Lenovo, LG Gram, etc.).
43 lines
1.6 KiB
TOML
43 lines
1.6 KiB
TOML
[package]
|
|
name = "libredox"
|
|
authors = ["4lDO2 <4lDO2@protonmail.com>"]
|
|
# Red Bear OS Phase J: version is 0.1.17 upstream but the
|
|
# redox_syscall dep is redirected to the local fork at
|
|
# ../syscall (which adds EnterS2Idle/ExitS2Idle AcpiVerb
|
|
# variants). The version field stays at upstream 0.1.17
|
|
# per the AGENTS.md "GOLDEN RULE" — periodic rebase via
|
|
# `git fetch upstream` is the workflow when upstream changes.
|
|
version = "0.1.17"
|
|
edition = "2021"
|
|
license = "MIT"
|
|
description = "Redox stable ABI"
|
|
# Red Bear OS fork lives at the canonical outer repo
|
|
# (gitea.redbearos.org/vasilito/RedBear-OS).
|
|
repository = "https://gitea.redbearos.org/vasilito/RedBear-OS"
|
|
exclude = ["target"]
|
|
|
|
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
|
|
|
[features]
|
|
default = ["base", "call", "std", "redox_syscall", "protocol"]
|
|
base = ["libc"]
|
|
call = ["base"]
|
|
std = ["base"]
|
|
protocol = ["plain", "bitflags", "redox_syscall"]
|
|
mkns = ["ioslice"]
|
|
|
|
[dependencies]
|
|
bitflags = { version = "2", optional = true }
|
|
libc = { version = "0.2", optional = true }
|
|
# Phase J: path override to the local fork (../syscall
|
|
# relative to the libredox fork's local/sources/libredox/
|
|
# path). This gives libredox access to the EnterS2Idle /
|
|
# ExitS2Idle AcpiVerb variants. Cargo's [patch.crates-io]
|
|
# in the workspace's outer Cargo.toml (in base/ and kernel/)
|
|
# is what wires this path through to the actual
|
|
# redox_syscall crate; this path entry is the libredox-
|
|
# side patch override for the same crate.
|
|
redox_syscall = { path = "../syscall", version = "0.8", optional = true }
|
|
ioslice = { version = "0.6", optional = true }
|
|
plain = { version = "0.2", optional = true }
|