docs(readme): state that WLTurbo is the transport layer and show its place in the stack
- commit
- fbc2306143492d6e34e573d1c4c01b6088857c1d
- author
- brice · · 2026-10-02 04:09 UTC
- parent
- f02b08f
- signature
- GPG Verified
CD88F9E564E0102646FB6077A1A07C7C7C3E349D· arch-gpg Verified for the committer email
2 files · +17 -4
M .gitignore +1 -1
| @@ -45,4 +45,4 @@ NOTES.md | |||
| 45 | 45 | ||
| 46 | 46 | # Build artifacts | |
| 47 | 47 | dist/ | |
| 48 | - | build/⏎̸ | |
| 48 | + | build/.worktrees/ | |
| @@ -45,4 +45,4 @@ NOTES.md | |||||
| 45 | 45 | ||||
| 46 | # Build artifacts | 46 | # Build artifacts | ||
| 47 | dist/ | 47 | dist/ | ||
| 48 | - | build/⏎̸ | 48 | + | build/.worktrees/ |
M README.md +16 -3
| @@ -1,10 +1,21 @@ | |||
| 1 | - | # WLTurbo - Wayland Client Library for Go | |
| 1 | + | # WLTurbo | |
| 2 | 2 | ||
| 3 | - | A performance-focused Wayland client runtime for Go, the foundation for protocol bindings and Wayland applications. | |
| 3 | + | A performance-focused, low-level Wayland client runtime for Go. | |
| 4 | 4 | ||
| 5 | 5 | ## Overview | |
| 6 | 6 | ||
| 7 | - | WLTurbo is a low-level Wayland client runtime: connection, wire framing, descriptor passing, object lifecycle and the bootstrap registry. Protocol bindings are provided separately (see [Protocol bindings](#protocol-bindings)). | |
| 7 | + | WLTurbo is the transport layer: connection, wire framing, descriptor passing, object lifecycle and the bootstrap registry. It is not a complete Wayland client. It has no windows, surfaces, seats, input handling or rendering, and it knows no protocol beyond the bootstrap objects. Protocol bindings are provided separately (see [Protocol bindings](#protocol-bindings)). | |
| 8 | + | ||
| 9 | + | ## Where it fits | |
| 10 | + | ||
| 11 | + | ``` | |
| 12 | + | Application | |
| 13 | + | └─ neferclient connection helpers, surfaces, seat, DMA-BUF presentation | |
| 14 | + | └─ go-wayland-bindings one package per protocol | |
| 15 | + | └─ wlturbo transport and objects (this module) | |
| 16 | + | ``` | |
| 17 | + | ||
| 18 | + | Use WLTurbo directly to speak raw Wayland or to write bindings. For an application, start with [neferclient](https://github.com/bnema/neferclient). | |
| 8 | 19 | ||
| 9 | 20 | ## Architecture | |
| 10 | 21 | ||
| @@ -39,6 +50,8 @@ After `display.Roundtrip()` discovers globals, call `display.Registry().BindNego | |||
| 39 | 50 | ||
| 40 | 51 | ## Quick Start | |
| 41 | 52 | ||
| 53 | + | This opens a connection and dispatches events. Binding globals needs the protocol packages from `go-wayland-bindings`. | |
| 54 | + | ||
| 42 | 55 | ```go | |
| 43 | 56 | package main | |
| 44 | 57 | ||
| @@ -1,10 +1,21 @@ | |||||
| 1 | - | # WLTurbo - Wayland Client Library for Go | 1 | + | # WLTurbo |
| 2 | 2 | ||||
| 3 | - | A performance-focused Wayland client runtime for Go, the foundation for protocol bindings and Wayland applications. | 3 | + | A performance-focused, low-level Wayland client runtime for Go. |
| 4 | 4 | ||||
| 5 | ## Overview | 5 | ## Overview | ||
| 6 | 6 | ||||
| 7 | - | WLTurbo is a low-level Wayland client runtime: connection, wire framing, descriptor passing, object lifecycle and the bootstrap registry. Protocol bindings are provided separately (see [Protocol bindings](#protocol-bindings)). | 7 | + | WLTurbo is the transport layer: connection, wire framing, descriptor passing, object lifecycle and the bootstrap registry. It is not a complete Wayland client. It has no windows, surfaces, seats, input handling or rendering, and it knows no protocol beyond the bootstrap objects. Protocol bindings are provided separately (see [Protocol bindings](#protocol-bindings)). |
| 8 | + | ||||
| 9 | + | ## Where it fits | |||
| 10 | + | ||||
| 11 | + | ``` | |||
| 12 | + | Application | |||
| 13 | + | └─ neferclient connection helpers, surfaces, seat, DMA-BUF presentation | |||
| 14 | + | └─ go-wayland-bindings one package per protocol | |||
| 15 | + | └─ wlturbo transport and objects (this module) | |||
| 16 | + | ``` | |||
| 17 | + | ||||
| 18 | + | Use WLTurbo directly to speak raw Wayland or to write bindings. For an application, start with [neferclient](https://github.com/bnema/neferclient). | |||
| 8 | 19 | ||||
| 9 | ## Architecture | 20 | ## Architecture | ||
| 10 | 21 | ||||
| @@ -39,6 +50,8 @@ After `display.Roundtrip()` discovers globals, call `display.Registry().BindNego | |||||
| 39 | 50 | ||||
| 40 | ## Quick Start | 51 | ## Quick Start | ||
| 41 | 52 | ||||
| 53 | + | This opens a connection and dispatches events. Binding globals needs the protocol packages from `go-wayland-bindings`. | |||
| 54 | + | ||||
| 42 | ```go | 55 | ```go | ||
| 43 | package main | 56 | package main | ||
| 44 | 57 | ||||