-
-
Save pylipp/ea5f830532e0c38ff70055cf7337fc43 to your computer and use it in GitHub Desktop.
installation script for tmux 1.9a
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# Script for installing tmux and dependencies. | |
# tmux will be installed in ~/.local by default. | |
# Prerequisites: - gcc | |
# - wget | |
# define versions | |
tmux_version=${1:-2.6} | |
libevent_version="2.0.21" | |
ncurses_version="5.9" | |
tmux_name="tmux-$tmux_version" | |
tmux_relative_url="$tmux_name/$tmux_name" | |
libevent_name="libevent-$libevent_version-stable" | |
ncurses_name="ncurses-$ncurses_version" | |
# set the installation directory | |
target_dir="$HOME/.local" | |
# download source files for tmux, libevent, and ncurses | |
# save them in /tmp | |
cd /tmp | |
wget -O $tmux_name.tar.gz http://sourceforge.net/projects/tmux/files/tmux/$tmux_relative_url.tar.gz/download | |
wget -O $libevent_name.tar.gz https://github.com/downloads/libevent/libevent/$libevent_name.tar.gz | |
wget -O $ncurses_name.tar.gz ftp://ftp.gnu.org/gnu/ncurses/$ncurses_name.tar.gz | |
# extract files, configure, and compile | |
# libevent installation | |
tar xvzf $libevent_name.tar.gz | |
cd $libevent_name | |
./configure --prefix=$target_dir --disable-shared | |
make | |
make install | |
cd - | |
# ncurses installation | |
tar xvzf $ncurses_name.tar.gz | |
cd $ncurses_name | |
./configure --prefix=$target_dir | |
make | |
make install | |
cd - | |
# tmux installation | |
tar xvzf ${tmux_name}*.tar.gz | |
cd ${tmux_name}*/ | |
./configure CFLAGS="-I$target_dir/include -I$target_dir/include/ncurses" LDFLAGS="-L$target_dir/lib -L$target_dir/include/ncurses -L$target_dir/include" | |
CPPFLAGS="-I$target_dir/include -I$target_dir/include/ncurses" LDFLAGS="-static -L$target_dir/include -L$target_dir/include/ncurses -L$target_dir/lib" make | |
cp tmux $target_dir/bin | |
cd - | |
version=`tmux -V | cut -d ' ' -f 2` | |
if [ -z "$version" ]; then | |
echo | |
echo "[error] failed to install tmux - check for errors in the above output" | |
exit 1 | |
fi |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment