foot
Lightweight Wayland-native terminal emulator with a server/client mode, Sixel support and few dependencies.
Overview
foot is a terminal emulator for Wayland on Linux, written in C. It is Wayland-native and not tied to any desktop environment, and it aims to stay lightweight in dependencies, disk use and memory. It suits people running a Wayland compositor who want a small, fast terminal and leave tabs and tiling to the compositor or a multiplexer.
By default each foot process is a single window. In server mode, started with foot --server (or through socket activation, with systemd user units included), one process hosts every window and footclient opens new ones. Windows then share fonts and the glyph cache, which reduces memory use and startup time. The cost is that all windows' input and output run on one thread, so a busy window slows the others, and a server crash closes every window. Each window still has its own rendering threads. foot does not use GPU rendering.
Configuration is an INI file at ~/.config/foot/foot.ini, documented in the foot.ini(5) man page, and every key binding can be changed there. Fonts are any that FreeType can load, including bitmap and color emoji fonts, with per-font fallback settings and on-the-fly font resizing and DPI-based size adjustment. URL handling is keyboard-driven: Ctrl+Shift+O labels every visible URL with a key sequence that opens it, or copies it if you bind show-urls-copy.
Other features include scrollback search, Sixel images, true color, styled and colored underlines, synchronized updates, IME input via text-input-v3, and multi-seat support. With shell integration through OSC 7 and OSC 133, new windows open in the current directory, you can jump between prompts, and you can pipe the last command's output to another program. foot shapes individual grapheme clusters but not whole text runs, so programming-font ligatures are not supported.
foot alternatives
Windows Terminal
Microsoft's terminal for Windows that hosts PowerShell, cmd and WSL shells in tabs and panes, with GPU text rendering and JSON settings.
gpu · mux · ligatures · images
Tabby
Cross-platform Electron terminal with a built-in SSH, Telnet and serial client, saved connection profiles and a plugin system.
mux · ligatures · images
Alacritty
Cross-platform OpenGL terminal emulator written in Rust, configured with a TOML file and leaving tabs and splits to a multiplexer like tmux.
gpu
Warp
Terminal written in Rust with an IDE-style command editor, command output grouped into blocks, and built-in AI agents.
gpu · ligatures
Termux
Android terminal emulator and Linux environment that installs packages through its own apt repository, no root required.
Ghostty
Terminal emulator written in Zig with GPU rendering and a native UI on each platform: Swift/AppKit on macOS, GTK on Linux.
gpu · mux · ligatures · images
add a badge to your README
Maintain foot? Show that it's featured on trmn. The badge links back to this page.
[](https://www.trmn.sh/terminals/foot?utm_source=badge)<a href="https://www.trmn.sh/terminals/foot?utm_source=badge"><img src="https://www.trmn.sh/badge/terminals/foot.svg" alt="Featured on trmn" height="20"></a>