Skip to content

Tmux AppImage releases. We release as soon as the official tmux gets updated, using GitHub Action.

Notifications You must be signed in to change notification settings

kiyoon/tmux-appimage

 
 

Repository files navigation

Note

This fork utilises GitHub Action to detect, build and release the latest version of tmux as soon as they release.

Tmux AppImage

build

One-liner to get the latest tmux.appimage build:

curl -s https://api.github.com/repos/kiyoon/tmux-appimage/releases/latest \
| grep "browser_download_url.*appimage" \
| cut -d : -f 2,3 \
| tr -d \" \
| wget -qi - \
&& chmod +x tmux.appimage

## optionaly, move it into your $PATH
mv tmux.appimage /usr/local/bin/tmux
tmux

What is this?

A Docker build of Tmux Appimage

Why use Docker?

The advantages of using docker:

  • Obtain consistent build results on any computer.
  • No need to install a slew of build packages on your own machine.
  • You can trust the tmux developers code, not some rando's AppImage distribution on the interwebz :p

Build it yourself from source code

I assume you have docker installed already.

#### clone me & change directory
git clone https://github.com/kiyoon/tmux-appimage.git
cd tmux-appimage

#### Set the desired tmux release tag and build
export TMUX_RELEASE_TAG=3.3a
docker build . -t tmux --build-arg TMUX_RELEASE_TAG=$TMUX_RELEASE_TAG 

#### extract the appimage file
docker create -ti --name tmuxcontainer tmux bash
docker cp tmuxcontainer:/opt/build/tmux.appimage .
docker rm -f tmuxcontainer

ls -al tmux.appimage

Where has the AppImage been tested to turn?

Required GLIBC version: 2.14

You can check this with this command:

$ # Check what tmux.appimage requires.
$ objdump -T tmux.appimage | grep -v GLIBCXX | grep GLIBC | sed 's/.*GLIBC_\([.0-9]*\).*/\1/g' | sort -Vu | tail -1
2.14

$ # Check which GLIBC is installed in your OS.
$ ldd --version
ldd (Ubuntu GLIBC 2.35-0ubuntu3.8) 2.35
Copyright (C) 2022 Free Software Foundation, Inc.

It has been tested on these fine Linux platforms and will likely work for anything newer than centos 6.9 (which is a few years old now.)

ubuntu 24.04
ubuntu 22.04
ubuntu 20.04
ubuntu 18.04
ubuntu 16.04
ubuntu 14.04
ubuntu 12.04
centos stream 10
centos stream 9
centos 8
centos 7
fedora 33
manjaro 19.02

The distributed build will not work on old os's (like Centos 6), since they have older glibc libraries. If you need it to work on those systems, try modifying the Dockerfile to use an older ubuntu as the base image and doing a docker build.

What is the sauce that makes this work?

The Dockerfile contains all the magic ingredients to compile tmux.

Huge thank you to https://github.com/michaellee8, whom taught me a lot about appimage builds with his code contributions.

About

Tmux AppImage releases. We release as soon as the official tmux gets updated, using GitHub Action.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Dockerfile 35.2%
  • Shell 32.7%
  • HCL 32.1%