diff --git a/.chezmoi.toml.tmpl b/.chezmoi.toml.tmpl
new file mode 100644
index 0000000..89a6f86
--- /dev/null
+++ b/.chezmoi.toml.tmpl
@@ -0,0 +1,11 @@
+sourceDir = "~/.vdotfiles"
+
+[data.ghostty_font.darwin]
+face = "Cascadia Mono PL"
+size = "14"
+feats = ['ss01', 'ss19', 'ss20']
+
+[data.ghostty_font.linux]
+face = "IBM Plex Mono"
+size = "12"
+feats = ['ss03']
diff --git a/dot_config/ghostty/config b/dot_config/ghostty/config.tmpl
similarity index 78%
rename from dot_config/ghostty/config
rename to dot_config/ghostty/config.tmpl
index ab073cc..fb1c4a5 100644
--- a/dot_config/ghostty/config
+++ b/dot_config/ghostty/config.tmpl
@@ -1,8 +1,9 @@
-font-family = Cascadia Mono PL
-font-feature = ss01
-font-feature = ss19
-font-feature = ss20
-font-size = 12
+{{- $font := index .ghostty_font .chezmoi.os -}}
+font-family = {{ $font.face }}
+{{- range $font.feats }}
+font-feature = {{ . }}
+{{- end }}
+font-size = {{ $font.size }}
 
 cursor-style = block
 cursor-style-blink = false