#! /bin/bash -l # Time-stamp: ############################################################################ # Install tmux 2.9a on Centos # Adapted from https://gist.github.com/j3j3k/2378f8e7bca7bcda7ffab16b6b97a328 CMD_PREFIX= TMUX_VERSION=2.9a LIBEVENT_VERSION=2.1.10-stable STOWDIR=${STOWDIR:=$HOME/stow} ################################################################################ print_error_and_exit() { echo "*** ERROR *** $*"; exit 1; } usage() { cat < Download and install libevent ${LIBEVENT_VERSION}" [ ! -f "libevent-${LIBEVENT_VERSION}.tar.gz" ] && \ ${CMD_PREFIX} curl -LOk https://github.com/libevent/libevent/releases/download/release-${LIBEVENT_VERSION}/libevent-${LIBEVENT_VERSION}.tar.gz # Build if not yet done if [ ! -f "${STOWDIR}/libevent-${LIBEVENT_VERSION}/include/event.h" ]; then echo " ... building libevent " ${CMD_PREFIX} tar xf libevent-${LIBEVENT_VERSION}.tar.gz ${CMD_PREFIX} cd libevent-${LIBEVENT_VERSION} ${CMD_PREFIX} ./configure --prefix=${STOWDIR}/libevent-${LIBEVENT_VERSION} ${CMD_PREFIX} make ${CMD_PREFIX} make install fi # DOWNLOAD SOURCES FOR TMUX AND MAKE AND INSTALL echo "==> Download and install Tmux ${TMUX_VERSION}" [ ! -f "tmux-${TMUX_VERSION}.tar.gz" ] && \ ${CMD_PREFIX} curl -LOk https://github.com/tmux/tmux/releases/download/${TMUX_VERSION}/tmux-${TMUX_VERSION}.tar.gz # Build if not yet done if [ ! -f "${STOWDIR}/tmux-${TMUX_VERSION}/bin/tmux" ]; then echo " ... building tmux " ${CMD_PREFIX} tar xf tmux-${TMUX_VERSION}.tar.gz ${CMD_PREFIX} cd tmux-${TMUX_VERSION} ${CMD_PREFIX} ./configure --prefix=${STOWDIR}/tmux-${TMUX_VERSION} ${CMD_PREFIX} make ${CMD_PREFIX} make install fi echo "=> enable tmux" ${CMD_PREFIX} stow -d ${STOWDIR} tmux-${TMUX_VERSION} # ${CMD_PREFIX} pkill tmux # close your terminal window (flushes cached tmux executable) # open new shell and check tmux version ${CMD_PREFIX} tmux -V