Watch
1
0
Fork
You've already forked souveraine-viewtop
0
souveraine-viewtop/Cargo.toml
Fimeg 18d3781c2a deps: pin the fork tip that explains itself
Same code; the revision now lands on the commit carrying the fork rationale,
so a reader following the dependency arrives at the explanation.
2026-08-23 11:44:19 -04:00

73 lines
2.8 KiB
TOML

[workspace]
resolver = "3"
members = [
"crates/sessiond-client",
"crates/wire",
"crates/compositor",
"crates/shell-host",
]
[workspace.package]
version = "0.1.0"
edition = "2024"
license = "AGPL-3.0-or-later"
authors = ["Fimeg"]
repository = "https://forge.caseytunturi.com/Fimeg/souveraine-viewtop"
[workspace.dependencies]
# async runtime + primitives
tokio = { version = "1.52", features = ["rt-multi-thread", "macros", "sync", "time", "net", "io-util"] }
futures = "0.3"
# errors / (de)serialization
thiserror = "2"
anyhow = "1"
serde = { version = "1", features = ["derive"] }
serde_json = "1"
# tracing
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
# graphics. Still pinned to the revision the flutter-engine patch series was
# built against — the graphics half and the embedder half move together or not
# at all. `souveraine` is that revision (812bd33) plus one commit, in our own
# fork, so the pin is unchanged in substance:
#
# 8772275 wlr-layer-shell: do not validate a role the client already destroyed
# 403a3d0 session-lock: tolerate a bufferless commit before the first ack
#
# The first is upstream's bug: its pre-commit hook outlives the role object, so
# the null-buffer commit that unmaps a layer surface reads defaults and posts
# InvalidSize to a destroyed zwlr_layer_surface_v1, killing any client on normal
# teardown. Our shell hit it every time it tore down its dock and crash-looped.
# Worth sending upstream.
#
# The second is not upstream's bug and is labelled as such in its own commit: Qt
# commits a lock surface once before acking, which the protocol forbids outright,
# and we tolerate it when nothing is attached because the alternative is the
# owner locked out of the phone. The real fix belongs in Qt.
#
# The pin also now carries the atmosphere half of the render path:
#
# 645961c gles: optional linear-space gamut transform on sampled textures
# 48adf6f gles: optional chromatic split on sampled textures
#
# Both are off by default and both degrade to today's output rather than to a
# black screen — the split behind a shader define so a driver that refuses it
# links plain glass and the phone still comes up.
#
# Either way, this is why we build from gitea and not from GitHub.
smithay = { git = "https://forge.caseytunturi.com/Fimeg/smithay.git", rev = "227c7e43389317278e7d2b313d59d95c55ea9f36", default-features = false }
smithay-drm-extras = { git = "https://forge.caseytunturi.com/Fimeg/smithay.git", rev = "227c7e43389317278e7d2b313d59d95c55ea9f36", default-features = false }
winit = "0.30"
calloop = { version = "0.14", features = ["signals"] }
# in-workspace
viewtop-sessiond-client = { path = "crates/sessiond-client" }
viewtop-wire = { path = "crates/wire" }
[profile.release]
lto = "thin"
codegen-units = 1
strip = "debuginfo"