My Journey to the Ultimate Terminal: Why I’m Using Ghostty in Linux and MacOS

I’ve spent years exploring different terminal emulators. As a long-time KDE user, Konsole was my home for a long time. However, when the “new wave” of GPU-accelerated terminals arrived, I started chasing performance. I moved to Alacritty, then Kitty, and finally discovered Ghostty in early 2025. I haven’t looked back since.

What makes Ghostty special is how it balances raw power with extreme simplicity. While it works perfectly out of the box, I’m a firm believer in personalizing the tools I use every day.

Some features

  • GPU Acceleration: Uses Metal (macOS) or OpenGL (Linux) for near-zero input lag and buttery-smooth scrolling.

  • Native UI: Unlike other cross-platform terminals, it uses platform-native tabs and windows (GTK4 on Linux, SwiftUI on macOS) for a seamless look.

  • GPU Ligatures: One of the few terminals that renders complex font ligatures (like => or !=) directly on the GPU for maximum speed.

  • Secure Entry: Includes a “Secure Keyboard Entry” mode to prevent other apps from “sniffing” sensitive data like passwords.

  • Embeddable Core: Built as a library (libghostty), meaning its engine can be tucked inside other applications or IDEs.

One of the coolest features I found is its native support for shaders.

What is a Shader?

In the context of a terminal, a shader (specifically a GLSL fragment shader) is a small program that runs directly on your GPU. Instead of your computer just “printing text,” the shader calculates how every single pixel should look in real-time. This allows you to add visual effects—like CRT scanlines, retro grain, or even falling snow—without slowing down your CPU.

You can find a nice collection of shaders here: https://github.com/0xhckr/ghostty-shaders

My Minimalist Setup

I love that I can achieve a beautiful, functional setup with just five lines of code. Here is my current ~/.config/ghostty/config:

Bash

theme = Ayu
font-family = "Hack Nerd Font Mono"
font-size = 14
custom-shader = ~/.config/ghostty/shaders/just-snow.glsl
background-opacity = 0.85

That’s it. Just five lines to go from a standard prompt to a hardware-accelerated, snow-dusted workspace.
Ghostty terminal

Compartir

Leave a comment

Leave a Reply