mirror of
https://github.com/edera-dev/sprout.git
synced 2026-11-04 17:42:20 +00:00
* feat(menu): add a graphical boot menu Adds the graphical menu style, selected with menu-style = "graphical" or --menu-style=graphical. It draws to the graphics output with the existing framebuffer, using a built-in 8x8 font, and takes input from the keyboard and from relative or absolute pointers. The Sprout logo is drawn in the bottom right corner. If there is no graphics output, the simple menu is used, which still falls back to the basic menu. The logo is converted from assets/logo-small.png to raw pixels by the build crate, which adds the png crate as a build-time dependency only. The default menu style is still simple. Pointer input is untested, as OVMF has no mouse driver. * fix(build): only build the logo conversion on the host CI builds the whole workspace for the UEFI target, which also builds the build crate for UEFI. The png dependency pulls in simd-adler32, which crashes LLVM on that target. The logo conversion only runs in build scripts on the host, so png and the conversion are now left out when targeting UEFI.
480 lines
11 KiB
TOML
480 lines
11 KiB
TOML
# This file is automatically @generated by Cargo.
|
|
# It is not intended for manual editing.
|
|
version = 4
|
|
|
|
[[package]]
|
|
name = "adler2"
|
|
version = "2.0.1"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa"
|
|
|
|
[[package]]
|
|
name = "anyhow"
|
|
version = "1.0.104"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "330a5ed07fa54e4702c9d6c4174f74427fc0ef6e214bbd677ae50a5099946470"
|
|
|
|
[[package]]
|
|
name = "bit_field"
|
|
version = "0.10.3"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "1e4b40c7323adcfc0a41c4b88143ed58346ff65a288fc144329c5c45e05d70c6"
|
|
|
|
[[package]]
|
|
name = "bitflags"
|
|
version = "2.13.2"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "3ded4057c258ba199e2d26386d3af3780957ecaee6c4ef4041c6b4b8b97c0b06"
|
|
|
|
[[package]]
|
|
name = "block-buffer"
|
|
version = "0.12.1"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "d2f6c7dbe95a6ed67ad9f18e57daf93a2f034c524b99fd2b76d18fdfeb6660aa"
|
|
dependencies = [
|
|
"hybrid-array",
|
|
]
|
|
|
|
[[package]]
|
|
name = "cfg-if"
|
|
version = "1.0.5"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "4e7648175b45a9a48536d676f68d918270699102aa8dab5496df06904c914600"
|
|
|
|
[[package]]
|
|
name = "cpufeatures"
|
|
version = "0.3.1"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "5ca28b0ae3115b884660db4118d803791fd6756b6e88f39c0f3f7859060d7566"
|
|
dependencies = [
|
|
"libc",
|
|
]
|
|
|
|
[[package]]
|
|
name = "crc32fast"
|
|
version = "1.5.2"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "01a7799fd6b852db0e61728dde9a204c423b44d689dbd432522543614b490e78"
|
|
dependencies = [
|
|
"cfg-if",
|
|
]
|
|
|
|
[[package]]
|
|
name = "crypto-common"
|
|
version = "0.2.2"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "ce6e4c961d6cd6c9a86db418387425e8bdeaf05b3c8bc1411e6dca4c252f1453"
|
|
dependencies = [
|
|
"hybrid-array",
|
|
]
|
|
|
|
[[package]]
|
|
name = "digest"
|
|
version = "0.11.3"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "f1dd6dbb5841937940781866fa1281a1ff7bd3bf827091440879f9994983d5c2"
|
|
dependencies = [
|
|
"block-buffer",
|
|
"crypto-common",
|
|
]
|
|
|
|
[[package]]
|
|
name = "edera-sprout-bls"
|
|
version = "0.0.30"
|
|
dependencies = [
|
|
"anyhow",
|
|
]
|
|
|
|
[[package]]
|
|
name = "edera-sprout-boot"
|
|
version = "0.0.30"
|
|
dependencies = [
|
|
"anyhow",
|
|
"edera-sprout-bls",
|
|
"edera-sprout-build",
|
|
"edera-sprout-config",
|
|
"edera-sprout-eficore",
|
|
"edera-sprout-parsing",
|
|
"hex",
|
|
"jaarg",
|
|
"log",
|
|
"serde_ignored",
|
|
"sha2",
|
|
"toml",
|
|
"uefi",
|
|
"uefi-raw",
|
|
]
|
|
|
|
[[package]]
|
|
name = "edera-sprout-build"
|
|
version = "0.0.30"
|
|
dependencies = [
|
|
"png",
|
|
]
|
|
|
|
[[package]]
|
|
name = "edera-sprout-config"
|
|
version = "0.0.30"
|
|
dependencies = [
|
|
"serde",
|
|
]
|
|
|
|
[[package]]
|
|
name = "edera-sprout-eficore"
|
|
version = "0.0.30"
|
|
dependencies = [
|
|
"anyhow",
|
|
"bitflags",
|
|
"log",
|
|
"shlex",
|
|
"spin",
|
|
"uefi",
|
|
"uefi-raw",
|
|
]
|
|
|
|
[[package]]
|
|
name = "edera-sprout-parsing"
|
|
version = "0.0.30"
|
|
dependencies = [
|
|
"hex",
|
|
"sha2",
|
|
]
|
|
|
|
[[package]]
|
|
name = "fdeflate"
|
|
version = "0.3.7"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "1e6853b52649d4ac5c0bd02320cddc5ba956bdb407c4b75a2c6b75bf51500f8c"
|
|
dependencies = [
|
|
"simd-adler32",
|
|
]
|
|
|
|
[[package]]
|
|
name = "flate2"
|
|
version = "1.1.10"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "6e634e2e0ebac1ee034020da1ca582e17ffe4e0f5e985823721e168928136dcb"
|
|
dependencies = [
|
|
"crc32fast",
|
|
"miniz_oxide 0.9.1",
|
|
"zlib-rs",
|
|
]
|
|
|
|
[[package]]
|
|
name = "hex"
|
|
version = "0.4.3"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70"
|
|
|
|
[[package]]
|
|
name = "hybrid-array"
|
|
version = "0.4.15"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "27f864f10dfb56725ce5ce5472bc52252c8f93a4ab86327122cebf62c5f59a17"
|
|
dependencies = [
|
|
"typenum",
|
|
]
|
|
|
|
[[package]]
|
|
name = "jaarg"
|
|
version = "0.2.2"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "534d589df1ef528a238f4bc4b1db081a1280f3aedf2695fd8971e9853a7fa4f6"
|
|
|
|
[[package]]
|
|
name = "libc"
|
|
version = "0.2.189"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "3eaf3ede3fee6db1a4c2ee091bf8a8b4dccdc6d17f656fb07896ee72867612f2"
|
|
|
|
[[package]]
|
|
name = "lock_api"
|
|
version = "0.4.14"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "224399e74b87b5f3557511d98dff8b14089b3dadafcab6bb93eab67d3aace965"
|
|
dependencies = [
|
|
"scopeguard",
|
|
]
|
|
|
|
[[package]]
|
|
name = "log"
|
|
version = "0.4.34"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "f9f8bd3e56ce4dfc153cf470fffbfa98c7620958b312ca5c3a4b8d5181fd13c6"
|
|
|
|
[[package]]
|
|
name = "miniz_oxide"
|
|
version = "0.8.9"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "1fa76a2c86f704bdb222d66965fb3d63269ce38518b83cb0575fca855ebb6316"
|
|
dependencies = [
|
|
"adler2",
|
|
"simd-adler32",
|
|
]
|
|
|
|
[[package]]
|
|
name = "miniz_oxide"
|
|
version = "0.9.1"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "b63fbc4a50860e98e7b2aa7804ded1db5cbc3aff9193adaff57a6931bf7c4b4c"
|
|
dependencies = [
|
|
"adler2",
|
|
"simd-adler32",
|
|
]
|
|
|
|
[[package]]
|
|
name = "png"
|
|
version = "0.18.1"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "60769b8b31b2a9f263dae2776c37b1b28ae246943cf719eb6946a1db05128a61"
|
|
dependencies = [
|
|
"bitflags",
|
|
"crc32fast",
|
|
"fdeflate",
|
|
"flate2",
|
|
"miniz_oxide 0.8.9",
|
|
]
|
|
|
|
[[package]]
|
|
name = "proc-macro2"
|
|
version = "1.0.107"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "985e7ec9bb745e6ce6535b544d84d6cd6f7ad8bd711c398938ae983b91a766d9"
|
|
dependencies = [
|
|
"unicode-ident",
|
|
]
|
|
|
|
[[package]]
|
|
name = "ptr_meta"
|
|
version = "0.3.2"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "743da816b98c921cdbe8628ef7381b76f25ecf4da599fc80aca90eae7ef70cc0"
|
|
dependencies = [
|
|
"ptr_meta_derive",
|
|
]
|
|
|
|
[[package]]
|
|
name = "ptr_meta_derive"
|
|
version = "0.3.2"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "1c8d9ca532f185d5d4db7a7c9d51420b452168ea1c2b913953281bd6fe1fcbd0"
|
|
dependencies = [
|
|
"proc-macro2",
|
|
"quote",
|
|
"syn",
|
|
]
|
|
|
|
[[package]]
|
|
name = "quote"
|
|
version = "1.0.47"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "1fbf4db142a473a8d80c26bbf18454ed458bf8d26c8219c331daecfdbd079001"
|
|
dependencies = [
|
|
"proc-macro2",
|
|
]
|
|
|
|
[[package]]
|
|
name = "scopeguard"
|
|
version = "1.2.0"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
|
|
|
|
[[package]]
|
|
name = "serde"
|
|
version = "1.0.229"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "4148590afebada386688f18773da617792bf2ef03ffc1e4cbd2b1d45b023e0ba"
|
|
dependencies = [
|
|
"serde_core",
|
|
"serde_derive",
|
|
]
|
|
|
|
[[package]]
|
|
name = "serde_core"
|
|
version = "1.0.229"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "67dca2c9c51e58a4791a4b1ed58308b39c64224d349a935ab5039aa360942a48"
|
|
dependencies = [
|
|
"serde_derive",
|
|
]
|
|
|
|
[[package]]
|
|
name = "serde_derive"
|
|
version = "1.0.229"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "e7a5d71263a5a7d47b41f6b3f06ba276f10cc18b0931f1799f710578e2309348"
|
|
dependencies = [
|
|
"proc-macro2",
|
|
"quote",
|
|
"syn",
|
|
]
|
|
|
|
[[package]]
|
|
name = "serde_ignored"
|
|
version = "0.1.14"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "115dffd5f3853e06e746965a20dcbae6ee747ae30b543d91b0e089668bb07798"
|
|
dependencies = [
|
|
"serde",
|
|
"serde_core",
|
|
]
|
|
|
|
[[package]]
|
|
name = "serde_spanned"
|
|
version = "1.1.1"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "6662b5879511e06e8999a8a235d848113e942c9124f211511b16466ee2995f26"
|
|
dependencies = [
|
|
"serde_core",
|
|
]
|
|
|
|
[[package]]
|
|
name = "sha2"
|
|
version = "0.11.0"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "446ba717509524cb3f22f17ecc096f10f4822d76ab5c0b9822c5f9c284e825f4"
|
|
dependencies = [
|
|
"cfg-if",
|
|
"cpufeatures",
|
|
"digest",
|
|
]
|
|
|
|
[[package]]
|
|
name = "shlex"
|
|
version = "2.0.1"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "f8fadd59c855ef2080decdef8ff161eb6661b86933c9d82e5ba29dc602a55aba"
|
|
|
|
[[package]]
|
|
name = "simd-adler32"
|
|
version = "0.3.10"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "3a219298ac11a56ea9a6d2120044824d6f01aeb034955e7af7bc16858527deea"
|
|
|
|
[[package]]
|
|
name = "spin"
|
|
version = "0.12.3"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "0134f9043ed38b087ac4f7d4af44c79e2c9e5094421fe3164f435ce585953b10"
|
|
dependencies = [
|
|
"lock_api",
|
|
]
|
|
|
|
[[package]]
|
|
name = "syn"
|
|
version = "3.0.6"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "8593e8e72159ed2257d083c7a454a85cbf854f37a0966d8d483aff8c8a3ebcee"
|
|
dependencies = [
|
|
"proc-macro2",
|
|
"quote",
|
|
"unicode-ident",
|
|
]
|
|
|
|
[[package]]
|
|
name = "toml"
|
|
version = "1.1.6+spec-1.1.0"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "920602543f0911ab71da12c50d59701da54c196d1a2bf5cb4b75667f137a406a"
|
|
dependencies = [
|
|
"serde_core",
|
|
"serde_spanned",
|
|
"toml_datetime",
|
|
"toml_parser",
|
|
"winnow",
|
|
]
|
|
|
|
[[package]]
|
|
name = "toml_datetime"
|
|
version = "1.1.1+spec-1.1.0"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "3165f65f62e28e0115a00b2ebdd37eb6f3b641855f9d636d3cd4103767159ad7"
|
|
dependencies = [
|
|
"serde_core",
|
|
]
|
|
|
|
[[package]]
|
|
name = "toml_parser"
|
|
version = "1.1.3+spec-1.1.0"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "1d38ac1cf9b95face32296c0a3ede1fdc270627c9d9c02a7274dd6d960dc4d56"
|
|
dependencies = [
|
|
"winnow",
|
|
]
|
|
|
|
[[package]]
|
|
name = "typenum"
|
|
version = "1.20.1"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "b6f5e870be6c3b371b77fe0ee0bafb859fa4964b4404c27de1d380043c4dda20"
|
|
|
|
[[package]]
|
|
name = "ucs2"
|
|
version = "0.3.3"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "df79298e11f316400c57ec268f3c2c29ac3c4d4777687955cd3d4f3a35ce7eba"
|
|
dependencies = [
|
|
"bit_field",
|
|
]
|
|
|
|
[[package]]
|
|
name = "uefi"
|
|
version = "0.41.0"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "368cef7d94514897e6dad4350945c7910a9f5bf9021191d1c58ee3ec09962697"
|
|
dependencies = [
|
|
"bitflags",
|
|
"cfg-if",
|
|
"log",
|
|
"ptr_meta",
|
|
"ucs2",
|
|
"uefi-macros",
|
|
"uefi-raw",
|
|
"uguid",
|
|
]
|
|
|
|
[[package]]
|
|
name = "uefi-macros"
|
|
version = "0.20.0"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "643efa8b64be89780bc498b290fab04337c7c4d171cc82cce2e133a74616dcc4"
|
|
dependencies = [
|
|
"proc-macro2",
|
|
"quote",
|
|
"syn",
|
|
]
|
|
|
|
[[package]]
|
|
name = "uefi-raw"
|
|
version = "0.17.0"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "3636327a6d88a38c0f2567fb695ec7ba27b3483d1877730486605aa0866da201"
|
|
dependencies = [
|
|
"bitflags",
|
|
"uguid",
|
|
]
|
|
|
|
[[package]]
|
|
name = "uguid"
|
|
version = "2.2.1"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "0c8352f8c05e47892e7eaf13b34abd76a7f4aeaf817b716e88789381927f199c"
|
|
|
|
[[package]]
|
|
name = "unicode-ident"
|
|
version = "1.0.26"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "d245f478577f809a851594d02313b640fb437e0bb33866753cff937863096954"
|
|
|
|
[[package]]
|
|
name = "winnow"
|
|
version = "1.0.4"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "23b97319f7b8343df12cc98938e5c3eb436064524c8d2b4e30a1d3a36eecdf81"
|
|
|
|
[[package]]
|
|
name = "zlib-rs"
|
|
version = "0.6.8"
|
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
checksum = "b268e58e7c693d7c271f93ffc4ba3b380412554231c85bf61ca7af91042a4112"
|