Skip to content

Commit d650c29

Browse files
committed
linux: gtk/adw version policy
1 parent 4e26a2b commit d650c29

File tree

1 file changed

+59
-9
lines changed

1 file changed

+59
-9
lines changed

docs/linux/index.mdx

Lines changed: 59 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ description: |-
44
Ghostty works great on Linux, with support for both Wayland
55
and X11 and packages across a variety of distributions and
66
formats.
7-
hideSidecar: true
87
---
98

109
Ghostty works really hard to "just work" on Linux, with detection
@@ -17,9 +16,9 @@ features of Ghostty, documentation on integrating Ghostty with specific
1716
Linux distributions and environments, etc.
1817

1918
<Note>
20-
This section is dedicated to Linux for Linux users but Ghostty is
21-
just as first-class on macOS, as well, with a native application
22-
written in Swift and built with Xcode.
19+
This section is dedicated to Linux for Linux users but Ghostty is just as
20+
first-class on macOS, as well, with a native application written in Swift and
21+
built with Xcode.
2322
</Note>
2423

2524
## Installing on Linux
@@ -28,17 +27,68 @@ Options for installing Ghostty on Linux include pre-built packages
2827
on most popular distributions or building from source. Both of these
2928
options are well documented at the links below.
3029

31-
<CardLinks cards={
32-
[
30+
<CardLinks
31+
cards={[
3332
{
3433
title: "Binaries and Packages",
3534
href: "/docs/install/binary",
36-
description: "Pre-built packages for quick setup on most popular Linux distributions.",
35+
description:
36+
"Pre-built packages for quick setup on most popular Linux distributions.",
3737
},
3838
{
3939
title: "Build from Source",
4040
href: "/docs/install/build",
41-
description: "Download a source tarball and build Ghostty from source."
42-
}
41+
description: "Download a source tarball and build Ghostty from source.",
42+
},
4343
]}
4444
/>
45+
46+
## Supported GTK/Adwaita Versions
47+
48+
The table below shows the minimum required GTK and Adwaita versions
49+
for specific Ghostty versions.
50+
51+
| Ghostty Version | GTK Version | Adwaita Version |
52+
| --------------- | ----------- | --------------- |
53+
| 1.2.x | 4.18 | 1.7 |
54+
| 1.1.x | 4.8 | 1.2 |
55+
56+
### Policy
57+
58+
The minimum required GTK and Adwaita versions for Ghostty is the
59+
minimum version that is available in the most recent LTS releases of
60+
Debian, Fedora, and Ubuntu at the time of a Ghostty minor release.
61+
In a Ghostty version number `X.Y.Z`, the `Y` is a minor release.
62+
63+
Patch releases will never bump dependency requirements, so users can always
64+
safely and confidently update to the latest patch release within the same
65+
minor release. In a Ghostty version number `X.Y.Z`, the `Z` is a patch release.
66+
67+
Ghostty supports many more distributions, but we explicitly specify Debian,
68+
Fedora, and Ubuntu since they tend to have the most conservative package
69+
repository practices that typically contain the oldest versions of any
70+
other popular distributions.
71+
72+
<Note>
73+
**Why not continue to support older GTK/Adwaita versions?** Backporting
74+
feature support to older GTK/Adwaita versions is impractical from a
75+
maintenance perspective. Beyond a certain point, it overcomplicates the widget
76+
tree and the version sprawl becomes harder and harder to test against. We
77+
don't currently have a robust system for testing GUI interactions on older
78+
GTK/Adwaita versions beyond manual testing.
79+
</Note>
80+
81+
<Note>
82+
**So if I have an older version of GTK/Adwaita, I can't use Ghostty?** Not
83+
necessarily. You can continue to use the specified Ghostty versions in the
84+
table above that match your GTK/Adwaita versions. If your GTK/Adwaita versions
85+
are older than the minimum required versions in the table, then unfortunately
86+
you will not be able to use Ghostty. Sorry.
87+
</Note>
88+
89+
### Other Dependencies
90+
91+
Our other dependencies are typically much more API-stable so we tend to
92+
support a wider range of versions than GTK and Adwaita. As a matter of policy,
93+
we follow the same policy as stated above for all dependencies, but we're
94+
more likely to be flexible with other dependencies.

0 commit comments

Comments
 (0)