foot - ArchWiki

Jump to content

# foot

From ArchWiki

foot is a fast, lightweight and minimalistic Wayland terminal emulator.

## Installation

Install the foot package.

Additionally, install the foot-terminfo package for improved terminfo.

## Configuration

foot loads configuration file at `$XDG_CONFIG_HOME/foot/foot.ini` (defaulting to `$HOME/.config/foot/foot.ini`). A template for the configuration file can be found in `/etc/xdg/foot/foot.ini`; copy the template to `$XDG_CONFIG_HOME/foot/foot.ini` and uncomment the setting you want to change. Restart foot to apply the new settings.

Manual page foot.ini(5) provides detailed information on how to configure foot.

### Colors

You can customize colors by modifying `[colors-dark]` section.

Themes can be found in `/usr/share/foot/themes`. To apply a theme, add an `include` key under `[main]`.

    $HOME/.config/foot/foot.ini

    [main]
    include=/usr/share/foot/themes/name-of-theme

Tip You can check this forum post to see all themes visualized side-by-side.

### Server (daemon) mode

Note

- Advantages to run foot in server mode including reduced memory footprint and startup time.
- The downside is a performance penalty; all windows' input and output are multiplexed in the same thread (but each window will have its own set of rendering threads). This means that if one window is very busy with, for example, producing output, then other windows will suffer. Also, should the server process crash, all windows will be gone.

When run normally, foot starts a new foot process for each window.

foot can also be run in a server mode. In this mode, one process hosts multiple windows. All Wayland communication, VT parsing and rendering is done in the server process.

New windows are opened by running footclient, which remains running until the terminal window is closed, at which point it exits with the exit value of the client process (typically the shell).

Enable/start the user unit `foot-server.service` or the corresponding `foot-server.socket` for socket activation to start the foot server automatically on login.

## Tips and tricks

### GNOME

#### Show borders

Currently, GNOME does not support server side decoration on Wayland. foot running on GNOME will show a plain and flat window. You can configure foot to show borders so that different foot windows can be distinguished more easily.

    $HOME/.config/foot/foot.ini

    [csd]
    border-width=2
    border-color=ff404040

### terminfo

The standard foot package uses ncurses terminfo(5). Installing foot-terminfo allows you to use foot's upstream terminfo, which contains additional features primarily beneficial for use with tmux, like application synchronized updates and 24-bit color support.

See foot's wiki entry for more details.

## Troubleshooting

### foot-server is not started after login

The `foot-server.service` and `foot-server.socket` units require `graphical-session.target`, but Sway does not set it automatically. So create a `sway-session.target` unit and start it whenever Sway started by following the steps in Sway#Manage Sway-specific daemons with systemd.

Category:

- Terminal emulators

foot
Add topic