#!/bin/ksh # Workaround for some tmux silliness # TODO: way too hacky REAL_TMUX=${REAL_TMUX:-/usr/pkg/bin/tmux} if [ ! -x "$REAL_TMUX" ] ; then REAL_TMUX="$(which tmux)" fi if [ -n "$1" ] ; then $REAL_TMUX "$@" exit fi myhost="$(hostname)" SESSION_NAME="${myhost%%.*}" if $REAL_TMUX ls -F "#{session_name}" | grep -q "^${SESSION_NAME}\$" ; then # set necessary session variables for envvar in DBUS_SESSION_BUS_ADDRESS XDG_RUNTIME_DIR XDG_SEAT XDG_SESSION_CLASS XDG_SESSION_COOKIE XDG_SESSION_ID XDG_SESSION_TYPE XDG_VTNR ; do nameref val=$envvar [ -n "$val" ] && $REAL_TMUX setenv -t $SESSION_NAME $envvar "$val" done $REAL_TMUX attach -t $SESSION_NAME else $REAL_TMUX new -s $SESSION_NAME fi