Ghostty can be built with -Dfont-backend=freetype, which uses FreeType without any font discovery. The Rust port only had fontconfig+freetype (default on Linux) and the CoreText variants. The new cargo feature `font-backend-freetype` on ghostty-font (forwarded by ghostty-cli and the root crate; non-Apple, non-wasm targets) behaves like Zig's mode: font-family discovery, fallback search and codepoint-map overrides are skipped (embedded fonts only); +list-fonts and +show-face print Zig's "built without a font discovery mechanism" message and exit 1; +version reports `.freetype`. The default backend is unchanged. Also registers the Rust-only benchmark tooling extensions (--time, --handler=full, ghostty-synthetic +sgr) in DEVIANT_FIXES.md. Note: `--all-features` now selects this backend for the workspace. Test Plan: - cargo test -p ghostty-font --features font-backend-freetype (198) - cargo build --features font-backend-freetype && ghostty +list-fonts
37 lines
794 B
TOML
37 lines
794 B
TOML
[package]
|
|
name = "ghostty-cli"
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
license.workspace = true
|
|
|
|
[features]
|
|
# Select the FreeType-only font backend (no font discovery), like
|
|
# `-Dfont-backend=freetype`.
|
|
font-backend-freetype = ["ghostty-font/font-backend-freetype"]
|
|
|
|
[dependencies]
|
|
flate2 = "1.1.10"
|
|
ghostty-build-info.workspace = true
|
|
ghostty-apprt.workspace = true
|
|
ghostty-config.workspace = true
|
|
ghostty-crash.workspace = true
|
|
ghostty-font.workspace = true
|
|
ghostty-input.workspace = true
|
|
ghostty-os.workspace = true
|
|
ghostty-vt.workspace = true
|
|
log = "0.4.34"
|
|
ratatui = "0.30.2"
|
|
termina = "0.3.3"
|
|
thiserror = "2.0.21"
|
|
unicode-width = "0.2.2"
|
|
|
|
[build-dependencies]
|
|
ghostty-helpgen.workspace = true
|
|
|
|
[lints]
|
|
workspace = true
|
|
|
|
[dev-dependencies]
|
|
tempfile = "3.27.0"
|
|
temp-env = "0.3.6"
|