Watch
1
0
Fork
You've already forked souveraine
0

usb: build the full KVM composite surface

This commit is contained in:
Fimeg 2026-08-07 14:48:07 -04:00
commit 8cd2adb828
15 changed files with 1562 additions and 47 deletions

187
Cargo.lock generated
View file

@ -2112,7 +2112,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "352d39c2f7bef1d6ad73db6f5160efcaed66d94ef8c6c573a8410c00bf909a98"
dependencies = [
"ctor-proc-macro",
"dtor",
"dtor 0.3.0",
]
[[package]]
name = "ctor"
version = "0.10.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "83cf0d42651b16c6dfe68685716d18480d18a9c39c62d76e8cf3eb6ed5d8bcbf"
dependencies = [
"dtor 0.8.1",
]
[[package]]
@ -2669,6 +2678,46 @@ dependencies = [
"serde",
]
[[package]]
name = "drm"
version = "0.14.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "80bc8c5c6c2941f70a55c15f8d9f00f9710ebda3ffda98075f996a0e6c92756f"
dependencies = [
"bitflags 2.11.1",
"bytemuck",
"drm-ffi",
"drm-fourcc",
"libc",
"rustix 0.38.44",
]
[[package]]
name = "drm-ffi"
version = "0.9.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "51a91c9b32ac4e8105dec255e849e0d66e27d7c34d184364fb93e469db08f690"
dependencies = [
"drm-sys",
"rustix 1.1.4",
]
[[package]]
name = "drm-fourcc"
version = "2.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0aafbcdb8afc29c1a7ee5fbe53b5d62f4565b35a042a662ca9fecd0b54dae6f4"
[[package]]
name = "drm-sys"
version = "0.8.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ecc8e1361066d91f5ffccff060a3c3be9c3ecde15be2959c1937595f7a82a9f8"
dependencies = [
"libc",
"linux-raw-sys 0.9.4",
]
[[package]]
name = "dtoa"
version = "1.0.11"
@ -2693,6 +2742,12 @@ dependencies = [
"dtor-proc-macro",
]
[[package]]
name = "dtor"
version = "0.8.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "edf234dd1594d6dd434a8fb8cada51ddbbc593e40e4a01556a0b31c62da2775b"
[[package]]
name = "dtor-proc-macro"
version = "0.0.6"
@ -2766,6 +2821,12 @@ version = "1.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4ef6b89e5b37196644d8796de5268852ff179b44e96276cf4290264843743bb7"
[[package]]
name = "encode_unicode"
version = "0.3.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a357d28ed41a50f9c765dbfe56cbc04a64e53e5fc58ba79fbc34c10ef3df831f"
[[package]]
name = "encoding_rs"
version = "0.8.35"
@ -3404,6 +3465,27 @@ dependencies = [
"slab",
]
[[package]]
name = "gadgetry-most-foul"
version = "0.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "706c81a929c7009eaa6427d32b3af28ce5dd2133abafe63ff79f9c8fd79e849d"
dependencies = [
"async-io",
"bitflags 2.11.1",
"byteorder",
"futures",
"futures-util",
"libc",
"log",
"macaddr",
"proc-mounts",
"rustix 1.1.4",
"slab",
"strum 0.28.0",
"uuid",
]
[[package]]
name = "gdk"
version = "0.18.2"
@ -3897,6 +3979,21 @@ dependencies = [
"syn 2.0.117",
]
[[package]]
name = "gud-gadget"
version = "0.1.0"
source = "git+https://github.com/samcday/gud-gadget?rev=33024b6152633eb8359375419281fa3ebac9c9cb#33024b6152633eb8359375419281fa3ebac9c9cb"
dependencies = [
"anyhow",
"bytes",
"gadgetry-most-foul",
"lz4",
"serde",
"ssmarshal",
"thiserror 1.0.69",
"tracing",
]
[[package]]
name = "h2"
version = "0.4.14"
@ -5140,6 +5237,12 @@ version = "0.4.15"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d26c52dbd32dccf2d10cac7725f8eae5296885fb5703b261f7d0a0739ec807ab"
[[package]]
name = "linux-raw-sys"
version = "0.9.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cd945864f07fe9f5371a27ad7b52a172b4b499999f1d97574c9fa68373937e12"
[[package]]
name = "linux-raw-sys"
version = "0.12.1"
@ -5210,6 +5313,25 @@ version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "112b39cec0b298b6c1999fee3e31427f74f676e4cb9879ed1a121b43661a4154"
[[package]]
name = "lz4"
version = "1.28.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a20b523e860d03443e98350ceaac5e71c6ba89aea7d960769ec3ce37f4de5af4"
dependencies = [
"lz4-sys",
]
[[package]]
name = "lz4-sys"
version = "1.11.1+lz4-1.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6bd8c0d6c6ed0cd30b3652886bb8711dc4bb01d637a68105a3d5158039b418e6"
dependencies = [
"cc",
"libc",
]
[[package]]
name = "lz4_flex"
version = "0.13.1"
@ -5226,6 +5348,12 @@ dependencies = [
"winapi",
]
[[package]]
name = "macaddr"
version = "1.0.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "baee0bbc17ce759db233beb01648088061bf678383130602a298e6998eedb2d8"
[[package]]
name = "mach2"
version = "0.4.3"
@ -6696,6 +6824,15 @@ dependencies = [
"windows-link 0.2.1",
]
[[package]]
name = "partition-identity"
version = "0.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1b25ada56da40bd4266a924109037ec9a9c59306e002dd2c30b00c0c3d648b93"
dependencies = [
"thiserror 2.0.18",
]
[[package]]
name = "password-hash"
version = "0.5.0"
@ -7201,6 +7338,15 @@ dependencies = [
"unicode-ident",
]
[[package]]
name = "proc-mounts"
version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0d652f8435d0ab70bf4f3590a6a851d59604831a458086541b95238cc51ffcf2"
dependencies = [
"partition-identity",
]
[[package]]
name = "profiling"
version = "1.0.18"
@ -9105,8 +9251,12 @@ version = "0.4.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "aac18da81ebbf05109ab275b157c22a653bb3c12cf884450179942f81bcbf6c3"
dependencies = [
"as-raw-xcb-connection",
"bytemuck",
"drm",
"fastrand",
"js-sys",
"memmap2",
"ndk 0.9.0",
"objc2 0.6.4",
"objc2-core-foundation",
@ -9115,10 +9265,16 @@ dependencies = [
"objc2-quartz-core 0.3.2",
"raw-window-handle",
"redox_syscall 0.5.18",
"rustix 1.1.4",
"tiny-xlib",
"tracing",
"wasm-bindgen",
"wayland-backend",
"wayland-client",
"wayland-sys",
"web-sys",
"windows-sys 0.61.2",
"x11rb",
]
[[package]]
@ -9177,9 +9333,11 @@ dependencies = [
"ed25519-dalek",
"figlet-rs",
"futures",
"gadgetry-most-foul",
"git2",
"glob",
"gtk",
"gud-gadget",
"hex",
"hkdf",
"hound",
@ -9206,6 +9364,7 @@ dependencies = [
"serde_yaml",
"sha2",
"shellexpand",
"softbuffer",
"sqlx",
"sysinfo",
"tao 0.36.0",
@ -9232,6 +9391,7 @@ dependencies = [
"walkdir",
"wayland-client",
"wayland-protocols",
"winit",
"wry 0.56.0",
"zbus",
"zvariant",
@ -9476,6 +9636,16 @@ dependencies = [
"urlencoding",
]
[[package]]
name = "ssmarshal"
version = "1.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f3e6ad23b128192ed337dfa4f1b8099ced0c2bf30d61e551b65fda5916dbb850"
dependencies = [
"encode_unicode",
"serde",
]
[[package]]
name = "stable_deref_trait"
version = "1.2.1"
@ -10233,7 +10403,7 @@ dependencies = [
"anyhow",
"brotli",
"cargo_metadata",
"ctor",
"ctor 0.8.0",
"dom_query 0.27.0",
"dunce",
"glob",
@ -10510,6 +10680,19 @@ dependencies = [
"strict-num",
]
[[package]]
name = "tiny-xlib"
version = "0.2.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a90a0ca3ee6a69f2ad28fd11621a4c3f03b371f366be500b64df260c4ffbafb4"
dependencies = [
"as-raw-xcb-connection",
"ctor 0.10.1",
"libloading 0.8.9",
"pkg-config",
"tracing",
]
[[package]]
name = "tinystr"
version = "0.8.3"