[package] name = "pf-presenter" description = "The Vulkan session presenter — SDL3 window, ash swapchain, frame present, input capture; the stage-2 presenter of punktfunk-planning linux-client-rearchitecture.md" version.workspace = true edition.workspace = true rust-version.workspace = true license.workspace = true authors.workspace = true repository.workspace = true # Same Linux gating as the rest of the client stack. [target.'cfg(target_os = "linux")'.dependencies] pf-client-core = { path = "../pf-client-core" } punktfunk-core = { path = "../punktfunk-core", features = ["quic"] } # `loaded` dlopens libvulkan at runtime (no link-time dependency — GPU-less boxes still # start and fail into a clean error). `ash` on sdl3 types SDL_Vulkan_CreateSurface with # ash 0.38 handles so the surface hands over without transmutes. ash = { version = "0.38", features = ["loaded"] } sdl3 = { version = "0.18", features = ["hidapi", "ash"] } async-channel = "2" anyhow = "1" tracing = "0.1"