# tmux

Source: https://libtmux.org/en/tmux/

> Use tmux from your terminal: guides, topics, a versioned manual and C source reference.

![](https://libtmux.org/en/brand/tmux/tmux-logomark.svg)

Create terminal workspaces, keep sessions running, and control windows and panes from the command line.

## Install

### Debian / Ubuntu

Update the package index:

```console
$ sudo apt update
```

Install tmux:

```console
$ sudo apt install tmux
```

[Installation documentation ↗](https://github.com/tmux/tmux/wiki/Installing#Binary-packages)

### Fedora / RHEL / CentOS

On older RHEL or CentOS releases, use yum in place of dnf.

Install tmux:

```console
$ sudo dnf install tmux
```

[Installation documentation ↗](https://github.com/tmux/tmux/wiki/Installing#Binary-packages)

### Arch Linux

Install tmux:

```console
$ sudo pacman -S tmux
```

[Installation documentation ↗](https://github.com/tmux/tmux/wiki/Installing#Binary-packages)

### macOS / Homebrew

Install tmux with Homebrew:

```console
$ brew install tmux
```

[Installation documentation ↗](https://formulae.brew.sh/formula/tmux)

### Windows / psmux

psmux is a separate native Windows implementation. For upstream tmux in WSL, select the Linux distribution you use there.

Install psmux with WinGet:

```console
$ winget install --id marlocarlo.psmux --exact
```

[Installation documentation ↗](https://github.com/psmux/psmux#installation)

### NixOS

Add to /etc/nixos/configuration.nix:

```nix
programs.tmux.enable = true;
```

Apply your configuration:

```console
$ sudo nixos-rebuild switch
```

[Installation documentation ↗](https://wiki.nixos.org/wiki/Tmux#System_setup)

### Compile from source

Requires a C compiler, make, Git, autoconf, automake, bison, pkg-config, and the libevent and ncurses development packages.

Clone tmux 3.7c:

```console
$ git clone \
  --branch 3.7c \
  --depth 1 \
  https://github.com/tmux/tmux.git tmux-3.7c
```

Enter the source directory:

```console
$ cd tmux-3.7c
```

Generate the configuration script:

```console
$ sh autogen.sh
```

Configure the build:

```console
$ ./configure
```

Compile tmux:

```console
$ make
```

Install the compiled program:

```console
$ sudo make install
```

[Installation documentation ↗](https://github.com/tmux/tmux/wiki/Installing#From-version-control)

This is the [libtmux](https://libtmux.org/en/) website. Our libraries and supporting tools control tmux; these pages are maintained separately from the [official tmux website](https://github.com/tmux/tmux/wiki).

tmux was created by [Nicholas Marriott (nicm)](https://github.com/nicm) and is developed with its [contributors](https://github.com/tmux/tmux/graphs/contributors). Thank you to Nicholas Marriott and everyone who makes tmux possible.

### [Guides](https://libtmux.org/en/tmux/guides/)

[Create sessions, split panes, send input and capture output.](https://libtmux.org/en/tmux/guides/)

### [Topics](https://libtmux.org/en/tmux/topics/)

[Understand targeting, options, hooks, completion and server ownership.](https://libtmux.org/en/tmux/topics/)

### [Concepts](https://libtmux.org/en/tmux/concepts/)

[Learn how servers, sessions, windows and panes fit together.](https://libtmux.org/en/tmux/concepts/)

### [Examples](https://libtmux.org/en/tmux/examples/)

[Run complete programs with setup, expected results and cleanup.](https://libtmux.org/en/tmux/examples/)

### [Reference](https://libtmux.org/en/tmux/latest/reference/)

[Browse the C declarations and implementation in each tmux release.](https://libtmux.org/en/tmux/latest/reference/)

### [Manual](https://libtmux.org/en/tmux/latest/manual/)

[Look up command syntax, flags and behavior for your tmux version.](https://libtmux.org/en/tmux/latest/manual/)

The [language libraries](https://libtmux.org/en/) control the same tmux objects from application code. Command pages link to related guides and library APIs.
