How to install Alacritty on Ubuntu and other Linux distros

Alacritty – An OpenGL Terminal emulator for Linux

To install Alacritty on Ubuntu, one apt command is enough, but the version you get depends on your release. Alacritty is a GPU-accelerated terminal emulator written in Rust. It runs just as well on Debian, Arch and Fedora.

This guide covers apt, snap and a source build for any Linux distro. It then sets up the config file and the default-terminal step, which older tutorials often get wrong.

How can Alacritty improve your Terminal experience?

  • Blazingly Fast: Unlike other Terminal emulators, the secret to the speed behind Alacritty is that it leverages the power of the system’s GPU on every platform, resulting in blinding speed and responsiveness, while being incredibly smooth, even while working with complex text and huge volumes of data being displayed in the terminal.
  • Lightweight Design: For the high degree of customizability, Alacritty actually uses minimal system resources, all the while maintaining impressive speed and responsiveness.
  • Highly Customizable: It allows for extensive configuration, users can change the look and feel of the terminal experience to a high degree with the help of a config file. Alacritty offers and encourages users to customize the terminal to their own taste and needs, from font rendering and color palettes to custom key bindings and keyboard shortcuts.
  • Open-Source: Being open-source, Alacritty is always going to receive updates, and that new features are always being worked on. Moreover, it’s free and transparent, a perfect choice for individuals and organizations.
  • A Dedicated Vi Mode: This Terminal supports the VI mode, which allows you to quickly scroll using keyboard shortcuts, searching and opening URLs is also allowed. Just press Ctrl+ Shift + Space on your keyboard to activate this mode.

Pre-requisites

To install and use Alacritty on your Linux system, it is required that you have support for, at least:

  1. OpenGL ES 2.0
  2. Have the Rust compiler installed, version 1.85 or newer (For building from source)

In case you don’t already have the Rust compiler installed on your Linux system, you can go through this article here.

Check what you have with rustc --version. The minimum has climbed over the years, from 1.70 in the 0.13.0 release to 1.74 in 0.14.0 and 1.85 today, because current Alacritty builds on Rust’s 2024 edition.

Install Alacritty on Ubuntu: apt, snap or source?

Ubuntu carries Alacritty in its own archive, so apt is the fastest way in. But the archive freezes the version for the life of a release, so the build you get depends on which Ubuntu you run.

MethodUbuntu 26.04Ubuntu 24.04Updates
apt0.16.10.13.2With the release
snap0.17.00.17.0Automatic
Source0.17.00.17.0Manual rebuild

Ubuntu 26.04 ships 0.16.1 and Ubuntu 24.04 ships 0.13.2, which predates the [general] config table added in 0.14.0. Upstream is at 0.17.0, released on April 6, 2026, so the snap or a source build suits 24.04 better.

  • Pick apt when you want the simplest install and the distro’s own updates.
  • Pick the snap when you want 0.17.0 with automatic updates.
  • Pick a source build when you want the newest release and full control over features.

Older guides add a third-party PPA first. People report online that the widely used aslatter PPA still serves 0.15.1 for Ubuntu 24.04, so it is not worth adding another repository when the snap or a source build gives you 0.17.0.

In one published test on a virtual machine, the snap took 697 ms to launch and exit against 278 ms for the apt build. It also bundles its own Mesa graphics libraries instead of using the ones on your host.

Installation

Alacritty is cross-platform, meaning it is able to run on any system, Windows, Linux or Mac. For the sake of this article, we’ll only be covering the installation process on Linux (Ubuntu/Linux Mint in our case).

Using the package Manager

Perhaps the easiest method to install this application on your Linux distribution would be to use the package manager shipped with your distribution. Type the following command in your Terminal window:

# On Debian and Ubuntu based distributions
sudo apt update && sudo apt install alacritty

# On Arch Linux based distributions:
sudo pacman -S alacritty

# On Fedora workstation:
sudo dnf install alacritty

Confirm the result with alacritty --version. The Ubuntu package also registers Alacritty as an x-terminal-emulator alternative, which matters when you set the default terminal later. Our guide to apt vs apt-get covers the command itself.

Building from Source and Configuration (GitHub)

Step 1: Clone the GitHub repository.

You can find the link to the official GitHub repository of Alacritty here. You can clone the repository to your local file-system with the following command:

git clone https://github.com/alacritty/alacritty.git
cd alacritty
Terminal output after cloning the Alacritty GitHub repository
Clone Alacritty GitHub Repository

Step 2: Confirm you have the Rust Compiler installed

To make sure you have the correct Rust compiler installed (since Alacritty’s code is written in Rust), you can run the following command in the terminal:

rustup override set stable
rustup update stable
Terminal output while checking the Rust compiler with rustup
Check For Rust Compiler Installation

If you don’t have the Rust compiler installed, please refer to the prerequisites section in this article.

Step 3: Install Dependencies

Now we’ll proceed with installing the minimum dependencies required to build Alacritty. Run the following command:

sudo apt install cmake g++ pkg-config libfontconfig1-dev libxcb-xfixes0-dev libxkbcommon-dev python3
Terminal output while installing the Alacritty build dependencies
Installing Dependencies For Alacritty

Step 4: Build Application

Now we can use the command provided below to build the application. If the build is successful, a binary file will be placed at target/release/alacritty.

cargo build --release
Terminal output of cargo build --release for Alacritty
Building Alacritty With Cargo

Build dependencies on other distros

The Step 3 command is for Debian and Ubuntu. Other distros use their own package names. The upstream install notes list the minimum set for each one, so run the line that matches your system before you build.

# Arch Linux
sudo pacman -S cmake freetype2 fontconfig pkg-config make libxcb libxkbcommon python

# Fedora
sudo dnf install cmake freetype-devel fontconfig-devel libxcb-devel libxkbcommon-devel g++

# openSUSE
sudo zypper install cmake freetype-devel fontconfig-devel libxcb-devel libxkbcommon-devel gcc-c++

# Void Linux
sudo xbps-install cmake freetype-devel expat-devel fontconfig-devel libxcb-devel pkg-config python3

# Alpine Linux
sudo apk add cmake pkgconf freetype-dev fontconfig-dev python3 libxcb-dev

Build the latest release instead of master

Cloning gives you the development branch by default. Check out the newest stable tag first, which skips release candidates, so the build matches a published version such as 0.17.0. Install Git first if you need it, using our Git on Ubuntu guide.

git fetch --tags
git checkout "$(git tag --sort=-v:refname | grep -E '^v[0-9]+\.[0-9]+\.[0-9]+$' | head -1)"
cargo build --release

If you only need the binary and no menu entry or man pages, cargo install alacritty also works once the dependencies are in place. It skips the terminfo file and desktop entry, so I would use the full steps below for a daily terminal.

Install the binary, terminfo and desktop entry

A finished build leaves the binary in target/release. Copy it into your PATH, then register the terminfo entry and the desktop file so Alacritty shows up in your app menu and programs know how to talk to it.

sudo tic -xe alacritty,alacritty-direct extra/alacritty.info
sudo cp target/release/alacritty /usr/local/bin
sudo cp extra/logo/alacritty-term.svg /usr/share/pixmaps/Alacritty.svg
sudo desktop-file-install extra/linux/Alacritty.desktop
sudo update-desktop-database

Run infocmp alacritty afterwards. If it prints without errors the terminfo entry is in place. The 0.17.0 release also dropped a broken flash capability from that file. Then alacritty --version should show the tag you built.

Install man pages and shell completions

Man pages need scdoc and gzip, so install both with your package manager first. The 0.17.0 release added a fifth page called alacritty-escapes(7). The commands below install all five in the right folders.

sudo mkdir -p /usr/local/share/man/man1 /usr/local/share/man/man5 /usr/local/share/man/man7
scdoc < extra/man/alacritty.1.scd | gzip -c | sudo tee /usr/local/share/man/man1/alacritty.1.gz > /dev/null
scdoc < extra/man/alacritty-msg.1.scd | gzip -c | sudo tee /usr/local/share/man/man1/alacritty-msg.1.gz > /dev/null
scdoc < extra/man/alacritty.5.scd | gzip -c | sudo tee /usr/local/share/man/man5/alacritty.5.gz > /dev/null
scdoc < extra/man/alacritty-bindings.5.scd | gzip -c | sudo tee /usr/local/share/man/man5/alacritty-bindings.5.gz > /dev/null
scdoc < extra/man/alacritty-escapes.7.scd | gzip -c | sudo tee /usr/local/share/man/man7/alacritty-escapes.7.gz > /dev/null

For bash completions copy the file into your home folder and source it from .bashrc. This keeps completions working even if you delete the cloned repository later. Zsh and fish use the _alacritty and alacritty.fish files in extra/completions.

mkdir -p ~/.bash_completion
cp extra/completions/alacritty.bash ~/.bash_completion/alacritty
echo "source ~/.bash_completion/alacritty" >> ~/.bashrc

Using Snap Store

You can also use the command given below to install Alacritty on your Linux system if you are using Ubuntu. Just copy and paste the command in your Terminal window:

sudo snap install alacritty --classic
Alacritty terminal window running on Ubuntu after the snap install
Using Alacritty Terminal

The snap comes from the Snapcrafters community rather than the Alacritty project. It needs classic confinement. If snapd is missing, run sudo apt install snapd and log out and back in. Our guide to snaps in Linux covers the basics.

Configure Alacritty with alacritty.toml

Alacritty does not create a config file for you. It reads TOML and checks a short list of locations for alacritty.toml, so a single file under your home folder is all you need.

Where Alacritty looks for alacritty.toml

  • $XDG_CONFIG_HOME/alacritty/alacritty.toml
  • $XDG_CONFIG_HOME/alacritty.toml
  • $HOME/.config/alacritty/alacritty.toml
  • $HOME/.alacritty.toml
  • /etc/alacritty/alacritty.toml

The third path is the usual choice. Create that folder and file in your editor, then read man 5 alacritty for every option. Our guide to editing files in Linux helps if you are new to terminal editors.

A starter config

This minimal file sets padding, window opacity, font and scrollback. With live_config_reload on, saving the file updates open windows without a restart. Launch alacritty -v once to see which config files it loaded.

[general]
live_config_reload = true

[window]
padding = { x = 10, y = 8 }
opacity = 0.96

[font]
normal = { family = "monospace", style = "Regular" }
size = 12.0

[scrolling]
history = 50000

Add a theme

The alacritty-theme repository on GitHub collects community color schemes as TOML files. Clone it into your config folder and import one from the [general] table, so switching themes means editing one line.

git clone https://github.com/alacritty/alacritty-theme ~/.config/alacritty/themes
[general]
import = ["~/.config/alacritty/themes/themes/tokyo_night.toml"]

Convert an old alacritty.yml

Older tutorials use alacritty.yml. The 0.13.0 release switched the format to TOML and added a converter, so run alacritty migrate instead of rewriting the file by hand. Add --dry-run first to preview the result.

alacritty migrate --dry-run
alacritty migrate

The 0.14.0 release moved settings such as import and live_config_reload into a [general] table. The migrate command handles that change as well. Release 0.17.0 added support for TOML 1.1 syntax.

Make Alacritty the default terminal

Ctrl+Alt+T and the Open in Terminal menu entry do not all follow the same setting, so the right method depends on your desktop and your Ubuntu release. Pick the one that matches yours.

Ubuntu 24.04 and Debian: update-alternatives

On Ubuntu 24.04 the Ctrl+Alt+T shortcut uses x-terminal-emulator. The apt package registers itself there, so you only select it. A source build or the snap is not registered, so add it with a priority first.

sudo update-alternatives --set x-terminal-emulator /usr/bin/alacritty
sudo update-alternatives --install /usr/bin/x-terminal-emulator x-terminal-emulator /usr/local/bin/alacritty 50
sudo update-alternatives --set x-terminal-emulator /usr/local/bin/alacritty

For the snap, use /snap/bin/alacritty in both commands. Run sudo update-alternatives --config x-terminal-emulator to pick from a numbered menu instead, where the current default carries an asterisk. Press Ctrl+Alt+T afterwards to confirm the change.

Ubuntu 26.04: xdg-terminals.list

Ubuntu 26.04 on GNOME launches terminals through xdg-terminal-exec, which reads a user list before the system default. Write the Alacritty desktop file name into it. The snap’s desktop file is named alacritty_alacritty.desktop, so snap users write that name instead.

echo Alacritty.desktop > ~/.config/xdg-terminals.list
xdg-terminal-exec --print-id

GNOME and KDE settings

On GNOME people report that two gsettings keys set the launcher without touching alternatives. On KDE Plasma people report that the keyboard shortcut still points at Konsole until you change it under the Shortcuts settings.

gsettings set org.gnome.desktop.default-applications.terminal exec 'alacritty'
gsettings set org.gnome.desktop.default-applications.terminal exec-arg ''

Do not set Alacritty as your login shell

Alacritty is a terminal emulator, not a shell. People report online that putting its path into chsh or /etc/passwd makes every new terminal spawn another one until the session crashes. Change your shell with our chsh guide and leave Alacritty to the launcher settings above.

Update and uninstall Alacritty

Updating follows the install method. Package installs update with the system, while a source build needs a fresh checkout and compile. Removing Alacritty works the same way, except source installs leave files behind.

Update Alacritty

  • apt: sudo apt update && sudo apt install --only-upgrade alacritty
  • snap: sudo snap refresh alacritty

For a source build, fetch the new tag, rebuild and replace the binary with install. People report that cp fails with “Text file busy” while an Alacritty window is open. The -s flag also strips debug symbols, which shrank the binary from about 64 MB to 8.8 MB.

git fetch --tags
git checkout "$(git tag --sort=-v:refname | grep -E '^v[0-9]+\.[0-9]+\.[0-9]+$' | head -1)"
cargo build --release
sudo install -s -m 755 target/release/alacritty /usr/local/bin/alacritty

Uninstall Alacritty

Remove the package with the tool that installed it. Source installs need their copied files deleted by hand. Your config folder stays, so a reinstall picks up the same settings.

sudo apt purge alacritty
sudo snap remove --purge alacritty
sudo rm -f /usr/local/bin/alacritty /usr/share/pixmaps/Alacritty.svg /usr/share/applications/Alacritty.desktop
sudo rm -f /usr/local/share/man/man1/alacritty*.1.gz /usr/local/share/man/man5/alacritty*.5.gz /usr/local/share/man/man7/alacritty*.7.gz
sudo update-desktop-database

If you registered a source build as the default terminal, run sudo update-alternatives --remove x-terminal-emulator /usr/local/bin/alacritty too. Otherwise Ctrl+Alt+T keeps pointing at a deleted file. See our guide to uninstalling packages on Ubuntu for the general commands.

Fix common Alacritty install errors

Most install problems come from a toolchain that is too old or a config written for a newer release. These are the three cases I would check first when a build or a launch fails.

Error: feature edition2024 is required

Cargo stops before compiling when the toolchain predates Rust 1.85. Update rustup if you use it. On Ubuntu 24.04 the default cargo is 1.75, but newer versioned packages sit beside it in the archive.

rustup update stable
sudo apt install cargo-1.91 rustc-1.91
RUSTC=rustc-1.91 cargo-1.91 build --release

Unused config key: general

The Ubuntu 24.04 apt package predates the [general] table, so it ignores the whole table and the theme import with it. Alacritty logs one warning and opens with default colors.

[WARN ] [alacritty_config_derive] Unused config key: general

Either install a newer build or move import and live_config_reload to the top level of the file, which older releases accept. Current releases still load that layout but warn about it on every start.

import = ["~/.config/alacritty/themes/themes/tokyo_night.toml"]
live_config_reload = true

WaylandError NoCompositor when launching over SSH

This appears when WAYLAND_DISPLAY is set but the desktop session actually runs on X11. Check the session type, then unset the variable and point DISPLAY at the local screen. Our guide to environment variables in Linux explains how they work.

loginctl list-sessions
loginctl show-session 1 -p Type
unset WAYLAND_DISPLAY
export DISPLAY=:0

Tabs and splits with tmux

Alacritty has no tabs or splits by design. The project’s FAQ leaves them to a window manager or a terminal multiplexer such as tmux, so pair it with tmux for sessions that survive a disconnect.

Alacritty can run several windows from one process, which keeps resource usage down. The 0.14.0 release added a headless mode through alacritty --daemon, which starts that process without opening a window.

If you want tabs built in, compare the alternatives in our terminal emulator roundup. The Kitty install guide and the Terminator guide cover two of those alternatives step by step.

Key takeaways

  • Alacritty needs OpenGL ES 2.0 and runs on most distros.
  • On Ubuntu, apt is simplest but 24.04 ships an old build.
  • The snap carries 0.17.0 and updates itself.
  • Source builds need Rust 1.85 or newer.
  • Config lives in alacritty.toml and is never created for you.
  • Run alacritty migrate to convert an old alacritty.yml.
  • Use update-alternatives or xdg-terminals.list for the default terminal.
  • Tabs and splits come from tmux or your window manager.

Frequently asked questions

How do I install Alacritty on Ubuntu?

Run sudo apt update && sudo apt install alacritty on Ubuntu 24.04 or newer. For the latest release use sudo snap install alacritty --classic or build from source with cargo.

Which Alacritty version does apt install on Ubuntu?

Ubuntu 26.04 ships Alacritty 0.16.1 and Ubuntu 24.04 ships 0.13.2, while upstream is at 0.17.0. Use the snap or a source build for the newest release.

Does Alacritty need a GPU?

It needs OpenGL ES 2.0 support, which most graphics hardware provides. On virtual machines without a GPU, Mesa falls back to software rendering and Alacritty still runs normally.

Does Alacritty support tabs and splits?

No. The project leaves tabs and splits to your window manager or a multiplexer such as tmux, so pair Alacritty with tmux for panes and persistent sessions.

Where is the Alacritty config file?

Alacritty does not create one. Add alacritty.toml at ~/.config/alacritty/alacritty.toml and it loads on the next start or reloads live when live_config_reload is true.

How do I make Alacritty the default terminal on Ubuntu?

On Ubuntu 24.04 with the apt package run sudo update-alternatives --set x-terminal-emulator /usr/bin/alacritty. On Ubuntu 26.04 write Alacritty.desktop into the user file ~/.config/xdg-terminals.list instead.

How do I uninstall Alacritty?

Use sudo apt purge alacritty for the apt package or sudo snap remove --purge alacritty for the snap. Source installs need their copied files deleted by hand.

Conclusion

To install Alacritty on Ubuntu, use apt on Ubuntu 26.04 and the snap or a source build on Ubuntu 24.04 when you want the current 0.17.0 release. Most other Linux distros package it as well. Add an alacritty.toml for settings and pair it with tmux for tabs and splits.