Zed is a high-performance, “multiplayer”, free and open source code editor written in Rust and developed in the open on GitHub. It was created by the same authors as the Atom text editor, and although it has IDE features, it is very responsive. In this tutorial, we learn how to install Zed on some of the most used Linux distributions.
In this tutorial you will learn:
- How to install Zed from source
- How to install Zed using the official tarball release
- How to install Zed as a native package

Category | Requirements, Conventions or Software Version Used |
---|---|
System | Distribution-agnostic |
Software | Git is required to clone Zed repository and built the editor from source |
Other | Root privileges |
Conventions | # – requires given linux-commands to be executed with root privileges either directly as a root user or by use of sudo command$ – requires given linux-commands to be executed as a regular non-privileged user |
Installing Zed from source
If we want to build Zed from source, the first thing we have to do is to clone the git repository hosted on GitHub. In order to do that, we must ensure git is installed on our system. On Fedora, we can install it using dnf
:
$ sudo dnf install git
To install the “git” package on Debian, and Debian-based distributions, instead, we can use
apt
:
$ sudo apt install git
On Archlinux, we can perform the installation with the pacman
package manager:
$ sudo pacman -S git
To clone the Zed repository, we run:
$ git clone https://github.com/zed-industries/zed
The repository includes a convenience script we can use to install build dependencies on the most used Linux distributions. The script invokes rustup to install rust and the rust toolchain, and adds the ~/.cargo/bin
directory to our PATH (cargo is the rust package manager). We move into the repository directory, then we invoke the script:
$ cd zed $ ./script/linux
We will be prompted to provide our administrative password to perform the installation of the required packages.
WARNING
As invoked from the script/linux script, rustup appends a line to shell configuration files (typically ~/.bashrc
and ~/.profile
or ~/.bash_profile
), to source the ~/.cargo/env
file, which in turn, adds the ~/.cargo/bin
directory to our PATH. To avoid this, we should modify the script so that it calls rustup with the --no-modify-path
option.
Once all dependencies are installed, we can build and install the code from source by running:
$ source ~/.bashrc && script/install-linux
Once the build is complete, the Zed binary will be installed, only for our user, under the ~/.local/bin
directory, while the desktop launcher will be placed under ~/.local/share/applications
. We should be able to visualize it in the application menu of our favorite desktop environment.
Installing Zed from a release tarball
A cross-distribution method to install Zed, if we don’t want to build it from source, consists into downloading and installing the tarball containing the pre-compiled application directly from GitHub. In this example, we download the x86_64 version of the latest release, which, at the moment of writing, is 0.144.3
. To download the tarball from the command line, we can use curl
:
$ curl -LO https://github.com/zed-industries/zed/releases/download/v0.144.3/zed-linux-x86_64.tar.gz
At this point, all we have to do is extract the tarball, which contains the executable together with the needed libraries. The typical way to install third party software packaged this way, system-wide, is to extract the tarball under the
/opt
directory:
$ sudo tar -C /opt -xzf zed-linux-x86_64.tar.gz
To be able to invoke Zed without specifying the full path of the binary file, we need to create a link to it in a directory in our PATH. For system-wide installation this is typically /usr/local/bin
(we avoid linking binaries in /usr/bin
in order to avoid conflicts with software installed directly with the distribution package manager):
$ sudo ln -s /opt/zed.app/bin/zed /usr/local/bin
To be able to invoke Zed “graphically”, we also need to create a link to the Zed launcher in the appropriate place, which, for system-wide installations, is /usr/local/share/applications
. Before doing it, however, we need to change the value of the Icon
option inside the launcher, whose value is “zed”, by default:
[Desktop Entry] Icon=zed
Since only the name of the icon is specified, and not its full path, the system will look for it under the “hicolor” icons directory (/usr/share/icons/hicolor), but it wouldn’t find it, since we didn’t copy it there. For the launcher to work with our setup, we need to pass the absolute path of the icon, instead, which, in our case, is /opt/zed.app/share/icons/hicolor/512x512/apps/zed.png
. To write the icon path, we run:
$ sudo sed -i 's_Icon=zed_Icon=/opt/zed.app/share/icons/hicolor/512x512/apps/zed.png_' /opt/zed.app/share/applications/zed.desktop
We can now create a link to the file under /usr/local/share/applications
:
$ sudo ln -s /opt/zed.app/share/applications/zed.desktop /usr/local/share/applications
At this point, the launcher should correctly appear in the application menu of the desktop environment we are using:

Install Zed natively
Some distributions, such as Archlinux and Manjaro, include Zed in their official repositories. To install it, we can run:
$ sudo pacman -S zed
Another distribution, which packages Zed in its repositories, is NixOS. To install the packages system-wide, we need to edit the /etc/nixos/configuration.nix
file, and ensure the “zed-editor” package is included in the package list:
environment.systemPackages = with pkgs; [ zed-editor ];
After saving the file, to actually perform the installation, we run:
$ sudo nixos-rebuild switch
Other major distributions don’t have a Zed package available. In certain cases, however, the editor can be installed from third party software repositories. We should always be aware that packages hosted in those repositories are not official, therefore we must install them with care. The third party Zed rpm package, installable on Fedora, for example, can be found in the “Terra” repository. To add it as a software source to our system, we can use the following command:
$ sudo dnf install --repofrompath 'terra,https://repos.fyralabs.com/terra$releasever' --setopt='terra.gpgkey=https://repos.fyralabs.com/terra$releasever/key.asc' terra-release
We will be prompted to install the terra-release
package and trust the GPG key fingerprint of the repository. Once the repository is available, we can install Zed, by running:
$ sudo dnf install zed
The complete list of distributions which include Zed in their repositories, and those for which third party repositories are available, is maintained here.
Closing thoughts
Zed is a high-performance open source code editor written in Rust, with many features. In this article, we saw how to install it on Linux, by compiling it from source or from the official tarball releases. In certain distributions, Zed can also be installed directly via the package manager, from official or third party repositories.