# Install kitty

## Binary install

You can install pre-built binaries of kitty if you are on macOS or Linux using the following simple command:

    curl -L https://sw.kovidgoyal.net/kitty/installer.sh | sh /dev/stdin

The binaries will be installed in the standard location for your OS, `/Applications/kitty.app` on macOS and `~/.local/kitty.app` on Linux. The installer only touches files in that directory. To update kitty, simply re-run the command.

## Manually installing

If something goes wrong or you simply do not want to run the installer, you can manually download and install kitty from the GitHub releases page. If you are on macOS, download the `.dmg` and install as normal. If you are on Linux, download the tarball and extract it into a directory. The kitty executable will be in the `bin` sub-directory.

## Desktop integration on Linux

If you want the kitty icon to appear in the taskbar and an entry for it to be present in the menus, you will need to install the `kitty.desktop` file. The details of the following procedure may need to be adjusted for your particular desktop, but it should work for most major desktop environments.

    # Create a symbolic link to add kitty to PATH (assuming ~/.local/bin is in
    # your PATH)
    ln -s ~/.local/kitty.app/bin/kitty ~/.local/bin/
    # Place the kitty.desktop file somewhere it can be found by the OS
    cp ~/.local/kitty.app/share/applications/kitty.desktop ~/.local/share/applications/
    # Update the path to the kitty icon in the kitty.desktop file
    sed -i "s|Icon=kitty|Icon=/home/$USER/.local/kitty.app/share/icons/hicolor/256x256/apps/kitty.png|g" ~/.local/share/applications/kitty.desktop

Note

If you use the venerable stow command to manage your manual installations, the following takes care of the above for you (use with `dest=~/.local/stow`):

    cd ~/.local/stow
    stow -v kitty.app

## Customizing the installation

- You can specify a different install location, with `dest`:

      curl -L https://sw.kovidgoyal.net/kitty/installer.sh | sh /dev/stdin \
          dest=/some/other/location

- You can tell the installer not to launch kitty after installing it with `launch=n`:

      curl -L https://sw.kovidgoyal.net/kitty/installer.sh | sh /dev/stdin \
          launch=n

- You can use a previously downloaded dmg/tarball, with `installer`:

      curl -L https://sw.kovidgoyal.net/kitty/installer.sh | sh /dev/stdin \
          installer=/path/to/dmg or tarball

## Uninstalling

All the installer does is copy the kitty files into the install directory. To uninstall, simply delete that directory.

## Building from source

kitty is easy to build from source, follow the instructions.