Where apps hide your files
Ghostty reads a plain text config from ~/.config/ghostty/ or from its Application Support folder, and the second one overrides the first. Here is each path, the file names, the reload shortcut and where themes live.
Ghostty reads its config from a plain text file in one of two places on a Mac. The one most guides use is:
~/.config/ghostty/config.ghostty
Ghostty's docs say that file was called config (no extension) before version 1.2.3, and both names are read, so an older setup at ~/.config/ghostty/config is still the right file. The second place is the macOS-specific folder:
~/Library/Application Support/com.mitchellh.ghostty/config.ghostty
Ghostty's docs list the XDG path first and the Application Support path second, and say that files loaded later override earlier ones. They state that all macOS-specific files load after all XDG files, so if both exist and set the same option, the Application Support copy wins.
Ghostty runs on built-in defaults when there is no file, so a missing file is normal. Be aware of one quirk in Ghostty's source: its own "open config" command picks the Application Support file if that exists, then the ~/.config one, and if neither exists it creates an empty file in Application Support. Press its shortcut on a fresh install and that is where your settings will go.
Pick one and keep to it. Two files that both set font-size are the usual reason a change "does nothing": you edit one and the other quietly overrides it. List both before you start:
ls -la ~/.config/ghostty ~/Library/Application\ Support/com.mitchellh.ghostty
If you have a dotfiles repository, ~/.config/ghostty/ is the easier choice because the same path works on Linux. If you want Ghostty's settings kept with the rest of the app's Mac data, use Application Support.
The ~/.config path follows $XDG_CONFIG_HOME when that variable is set in Ghostty's own environment, in which case Ghostty looks in $XDG_CONFIG_HOME/ghostty/ instead. An export in ~/.zshrc does not count: Ghostty opened from the Dock does not read your shell files.
Hidden folders do not show in Finder by default. Press ⇧⌘. in a Finder window to show them, or choose Go > Go to Folder (⇧⌘G) and paste the path. From Terminal, this makes the folder and an empty file only if they are missing, then opens it in your default text editor:
mkdir -p ~/.config/ghostty
touch ~/.config/ghostty/config.ghostty
open -t ~/.config/ghostty/config.ghostty
touch leaves an existing file's contents alone. If you already use the older name, create or open config instead.
Inside Ghostty, the item in the Ghostty menu that opens the config file has ⌘, as its default shortcut. Ghostty's source titles it Preferences…; recent macOS versions may show it as Settings…. Reload Configuration sits next to it.
The file is one key = value setting per line, with # for comments. Ghostty's configuration page says to print the full default configuration, with documentation for every option, using:
ghostty +show-config --default --docs
That command writes to the terminal and changes nothing, so pipe it into a pager (| less) to read it. Ghostty adds its own binary to the PATH of shells it starts, so ghostty works in a Ghostty window; in another terminal, use the full path /Applications/Ghostty.app/Contents/MacOS/ghostty. A short file looks like this:
font-size = 14
theme = dark:Catppuccin Frappe,light:Catppuccin Latte
The theme line comes from Ghostty's theme documentation: a single name, or a dark: and light: pair that switches with the system appearance.
Ghostty does not need a restart for most changes. Its docs say to press ⇧⌘, on a Mac (their wording is cmd+shift+,) to reload the config. Two caveats from the same page: some options cannot change while Ghostty is running, and others only apply to terminals you open afterwards. If a setting seems ignored, open a new window or quit and reopen the app.
Ghostty's theme docs and the notes on the theme option in its source give the two places it looks for a theme by name:
| Location | What it holds |
|---|---|
~/.config/ghostty/themes/ | Your own theme files (the themes folder inside the config folder) |
Ghostty.app/Contents/Resources/ghostty/themes | The built-in themes, inside the app package |
To see every theme Ghostty can find, run ghostty +list-themes. For a custom theme, save a file in ~/.config/ghostty/themes/ and use its file name in theme = . That folder applies even if your main config lives in Application Support. A theme file is written in the same key = value format as the config, and Ghostty's notes warn against using one from a source you do not trust. The docs also allow an absolute path, in which case Ghostty reads only that file and reports an error if it is missing, without searching elsewhere.
Treat the built-in themes folder as read-only. It sits inside the app, and an update replaces it.
Back up the config file and your themes folder, which are all you need. Copy them to the same path on the new Mac (create ~/.config/ghostty first), install Ghostty, and press the reload shortcut. A file that includes other files with a config-file setting needs those files copied too, so check the config for that line before you move it.
Time Machine covers both locations. A config rarely holds secrets, but it can reveal paths and commands, so check it before posting it online.
The .config folder starts with a dot, so Finder and Spotlight searches leave it out of normal results, and ~/Library is left out as well. A file called just config is also a hopeless search term, because that word matches hundreds of unrelated files.
Typing ghostty into Everywhere lists every item with that word in its name: the ~/.config/ghostty folder, the com.mitchellh.ghostty folder in Application Support, and any config.ghostty file, so a second copy you forgot about shows up next to the first. The ~/.config dot-folder and ~/Library/Application Support are both covered by the normal scan, so no extra permission is needed for this topic. Press ⌘↵ on a result to reveal it in Finder. It matches file names only, not the settings inside.
At ~/.config/ghostty/config.ghostty (named config before Ghostty 1.2.3), or at ~/Library/Application Support/com.mitchellh.ghostty/config.ghostty. Ghostty runs without either, and its own open-config shortcut (⌘,) creates the Application Support one if neither exists.
Ghostty's docs say files load in order and later ones override earlier ones, and that macOS-specific files load after the XDG ones. So the Application Support file wins when both set the same option.
Press ⇧⌘, in Ghostty. Some options cannot change while it runs and others only apply to new terminals, so reopen the app if a setting seems ignored.
In ~/.config/ghostty/themes/. Then set theme = <file name> in your config, and run ghostty +list-themes to check Ghostty can see it.
Everywhere keeps track of every file on your Mac — including the folders Spotlight hides and drives you have unplugged. Free for a day, then $19 once.
Version 2.20.3 · macOS 13+ · 4.7 MB · notarised