[package] name = "wo" version = "0.1.0" edition = "2021" description = "Electron-centered Smithay Wayland compositor with DMABUF offscreen rendering" [[bin]] name = "wo" path = "src/main.rs" [[bin]] name = "wo-portal" path = "src/bin/wo-portal.rs" [[bin]] name = "xdg-desktop-portal-wo" path = "src/bin/wo-portal.rs" [dependencies] # Smithay compositor framework smithay = { version = "0.7", default-features = false, features = ["backend_drm", "backend_gbm", "backend_egl", "backend_libinput", "backend_udev", "backend_session_libseat", "backend_winit", "renderer_gl", "wayland_frontend", "desktop", "xwayland", "use_system_lib", "wayland-client", "backend_session"] } # Event loop calloop = { version = "0.14", features = ["executor"] } calloop-wayland-source = "0.4" # DRM/GBM drm = "0.15" gbm = "0.18" # EGL / GL gl = "0.14" # Wayland wayland-server = "0.31" wayland-protocols = { version = "0.32", features = ["server", "staging", "unstable"] } wayland-protocols-wlr = { version = "0.3", features = ["server"] } wayland-backend = { version = "0.3", features = ["server_system"] } # Async / IPC tokio = { version = "1", features = ["full"] } nix = { version = "0.31", features = ["socket", "uio", "fs", "net", "time"] } # D-Bus and PipeWire for portal zbus = { version = "6", default-features = false, features = ["tokio", "service"] } pipewire = { version = "0.10", default-features = false } # Config serde = { version = "1", features = ["derive"] } serde_json = "1" sha2 = "0.10" toml = "1.1" # Platform syscalls (TIOCOUTQ ioctl for socket buffer checks) libc = "0.2" # Utils anyhow = "1" tracing = "0.1" tracing-subscriber = { version = "0.3", features = ["env-filter"] } shellexpand = "3.1" ctrlc = "3.5" # Input input = "0.9" udev = "0.9" xkbcommon = "0.9" # Cursor themes xcursor = "0.3" # Rendering pixman = "0.2" drm-fourcc = "2.2.0" [build-dependencies] # nothing yet [profile.release] opt-level = 3 lto = true codegen-units = 1