WEFT_OS/crates/weft-compositor/Cargo.toml
Marco Allegretti ca2cc38d4d feat(compositor): add appd IPC server (Unix socket, length-prefixed MessagePack framing)
Adds weft-compositor/src/appd_ipc.rs: WeftAppdIpc state, setup() registers a calloop
UnixListener source. Accepted connections are registered as edge-triggered read sources.
Incoming AppdToCompositor frames are decoded and dispatched; AppSurfaceCreated records
pid->session mapping in pending_pids for later wl_surface association. Wires into both
the DRM and Winit backends. Socket path: /weft/compositor.sock or
WEFT_COMPOSITOR_SOCKET override.
2026-03-11 14:29:22 +01:00

42 lines
1 KiB
TOML

[package]
name = "weft-compositor"
version.workspace = true
edition.workspace = true
rust-version.workspace = true
publish = false
[[bin]]
name = "weft-compositor"
path = "src/main.rs"
# Features available on all build platforms.
[dependencies]
smithay = { version = "0.7", default-features = false, features = [
"backend_egl",
"backend_winit",
"renderer_gl",
"wayland_frontend",
"desktop",
] }
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
anyhow = "1"
weft-ipc-types = { path = "../weft-ipc-types" }
wayland-scanner = "0.31"
wayland-server = "0.31"
wayland-backend = "0.3"
bitflags = "2"
# DRM/KMS and hardware input depend on Linux kernel interfaces; compile only on Linux.
[target.'cfg(target_os = "linux")'.dependencies]
smithay = { version = "0.7", default-features = false, features = [
"backend_drm",
"backend_gbm",
"backend_libinput",
"backend_udev",
"backend_session_libseat",
"renderer_multi",
"use_system_lib",
] }
smithay-drm-extras = "0.1"
sd-notify = "0.4"