]> ## TTM v2 (Tmux Terminal Manager) ###2026.11.11 - installs tmux 3.5a and reptyr 0.10.0, both built from source in GitHub Actions instead of prebuilt binaries (tmux from the Slackware tmux SlackBuild by Patrick J. Volkerding, reptyr from the SlackBuilds.org reptyr SlackBuild by B. Watson) - renamed to TTM v2 (Tmux Terminal Manager), plugin name ttm2; it replaces the dwttm plugin, from desertwitch or this fork, and moves your settings from dwttm.cfg to ttm2.cfg - maintained fork by andrebrait, based on desertwitch's TTM; the plugin package is built from this repository - requires Unraid 7.3.4 or later - report issues at https://github.com/andrebrait/TTM-unRAID/issues ###2026.10.16 #### Plugin Advisory: End of Support on 30.11.2026 With new details on Unraid 8 now available, it felt like the right time to make a final decision about this plugin and set clear expectations. I've been focused on new things for a while and am preparing the transition of my own infrastructure, so I can no longer give the plugin the attention and love it deserves. It wasn't an easy choice, but support will end on 30.11.2026. From that date, the plugin stays installable as-is, but without any guarantee of stability or usability, so use is entirely at your own risk. The repository will be archived, but if a future Unraid release is reported to break the plugin in the support thread, I'll have to cap the maximum supported version and prevent further installs from that version onwards. Forks are very welcome; just coordinate with the Community Applications maintainers. Thank you all for the support over the years - Unraid has been an amazing community to serve, and I hope to stay in touch with many of you on the forums or Discord. ###2026.10.06 - announce maintenance mode (no functional changes) ###2025.08.25 - fix: some browsers not allowing to resize the terminal popup window ###2025.08.21 - fix: make pages and dashboards compliant with new responsive UI - release note: the footer on-hover popup is no longer supported in the responsive UI - release note: this is due to global style constraints outside of the plugin developer control ###2025.04.27a - new: add a setting to show a footer menu with the last 10 terminal sessions ###2025.04.13 - fix: major refactor of the ttmd backend with several improvements ###2025.03.26a - new: added the reptyr command-line tool to the package (see below) - reptyr allows moving already running (non-tmux) processes into tmux sessions ###2025.02.26 - fix: future-proofing changes to base plugin structure ###2025.01.24 - fix: addressed theoretical congestion with multiple sessions ###2025.01.22 - fix: resolved issue with transition between dashboard and settings ###2025.01.14 - new: distinguish between TTM(-created) and non-TTM sessions in GUI - new: added a session grid with previews and management options to the popup ###2025.01.11 - new: added a link to a tmux cheat sheet (thanks Barry Staes) - fix: changed default array stop behavior for new installations - fix: changed escaping for some backend commands ###2025.01.10 - new: added setting to kill array-accessing sessions when array stops - release note: the default is disabled (go to TTM settings to enable this) ###2025.01.08 - fix: improve popup handling (allow multiple windows) ###2025.01.07 - fix: service startup failure after reboot with custom tmux ###2024.12.30 - new: support for unicode (thanks hurui200320) - fix: improved handling of processes and encountered errors ###2024.12.26 - release note: welcome to the first version of the plugin - release note: please report any issues in the support thread on the forums if [ -x /etc/rc.d/rc.ttmd ]; then echo "Making sure all existing TTM services are stopped (before install/upgrade)..." if ! /etc/rc.d/rc.ttmd stop >/dev/null 2>&1; then echo "WARNING:" echo "WARNING: The TTM installation script was not able to stop all TTM services." echo "WARNING: IN CASE OF PROBLEMS, please REBOOT YOUR SYSTEM to complete any upgrades." echo "WARNING:" fi else killall ttmd >/dev/null 2>&1 fi killall dwttm-poller >/dev/null 2>&1 exit 0 OLD=/boot/config/plugins/&oldName; if [ ! -e "&plgPATH;/&name;.cfg" ] && [ -d "$OLD" ]; then echo "Migrating settings from the previous TTM plugin..." mkdir -p "&plgPATH;" for f in "$OLD"/*; do [ -e "$f" ] || continue b=$(basename "$f") case "$b" in *.txz) continue ;; &oldName;.cfg) b=&name;.cfg ;; esac cp -a "$f" "&plgPATH;/$b" || exit 1 done fi rm -f /boot/config/plugins/&oldName;.plg /var/log/plugins/&oldName;.plg rm -rf /usr/local/emhttp/plugins/&oldName; "$OLD" exit 0 &pkgURL;/tmux-3.5a-x86_64-2_andrebrait.txz d50d616b92a3a45d5ae84dbb89147abf if [ -f /boot/config/plugins/unassigned.devices.preclear.plg ]; then echo "" echo "----------------------------------------------------------------" echo " Tmux is already installed from elsewhere, not reinstalling." echo " It is part of Unassigned Devices Preclear, so we'll use that." echo "----------------------------------------------------------------" echo "" touch &plgPATH;/custom elif compgen -G "/boot/extra/tmux*" >/dev/null 2>&1; then echo "" echo "----------------------------------------------------------------" echo " Tmux is already installed elsewhere, not reinstalling." echo " It was found in the /boot/extra/ folder, so we'll use that." echo "----------------------------------------------------------------" echo "" touch &plgPATH;/custom else upgradepkg --install-new &plgPATH;/tmux-3.5a-x86_64-2_andrebrait.txz rm -f &plgPATH;/custom fi # superseded packages from earlier plugin versions rm -f &plgPATH;/tmux-3.5a-x86_64-1_slack15.*.txz &plgPATH;/reptyr-0.10.0-x86_64-1_slack15.0.txz \ &plgPATH;/tmux-3.5a-x86_64-1_andrebrait.txz &plgPATH;/reptyr-0.10.0-x86_64-1_andrebrait.txz exit 0 &pkgURL;/reptyr-0.10.0-x86_64-2_andrebrait.txz 3d12226a86245ef09bf93ac2f0ccfe3c &gitURL;/archive/&plgNAME;.txz &plgMD5; CONFIG=&plgPATH;/&name;.cfg echo "Reading configuration..." if [ -e "$CONFIG" ]; then source "$CONFIG" fi if [ "$SERVICE" == "enable" ]; then if type tmux >/dev/null 2>&1 && tmux -V >/dev/null 2>&1; then echo "Starting TTM service..." /etc/rc.d/rc.ttmd start 2>&1 | logger -t "rc.ttmd" if [ "${PIPESTATUS[0]}" -eq 0 ]; then echo "TTM service has been started with success." else echo "WARNING: TTM service failed to start, check SYSLOG for more information." fi else if [ -f &plgPATH;/custom ]; then echo "Delaying TTM service start... (waiting on Tmux from another plugin/package)" /etc/rc.d/rc.ttmd delaystart >/dev/null 2>&1 & else echo "Starting TTM service..." echo "Error: Unable to start 'ttmd' - Tmux not found or not functional." echo "Error: Please refer to the 'TTM Settings' for more information on this issue." fi fi else /etc/rc.d/rc.ttmd configure 2>&1 | logger -t "rc.ttmd" echo "" echo "****************************************************************" echo " The service is disabled, please go to the TTM Settings" echo " page in order to configure and enable the TTM Service." echo "****************************************************************" fi echo "" echo "----------------------------------------------------------------" echo " TTM v2 (Tmux Terminal Manager) has been installed." echo " Version: &version; / Plugin Maintainer: &author;" echo "----------------------------------------------------------------" echo "" if [ -x /etc/rc.d/rc.ttmd ]; then echo "Making sure all existing TTM services are stopped (before uninstall)..." if ! /etc/rc.d/rc.ttmd stop >/dev/null 2>&1; then echo "WARNING:" echo "WARNING: The TTM uninstallation script was not able to stop all TTM services." echo "WARNING: IN CASE OF PROBLEMS, please REBOOT YOUR SYSTEM to remove any remaining packages." echo "WARNING:" fi else killall ttmd >/dev/null 2>&1 fi killall dwttm-poller >/dev/null 2>&1 if [ -f /boot/config/plugins/unassigned.devices.preclear.plg ]; then echo "" echo "----------------------------------------------------------------" echo " Tmux was installed from elsewhere, not removing it here." echo " It is part of Unassigned Devices Preclear, so we'll keep that." echo "----------------------------------------------------------------" echo "" rm -f &plgPATH;/tmux*.txz elif compgen -G "/boot/extra/tmux*" >/dev/null 2>&1; then echo "" echo "----------------------------------------------------------------" echo " Tmux was installed from elsewhere, not removing it here." echo " It was found in the /boot/extra/ folder, so we'll keep that." echo "----------------------------------------------------------------" echo "" rm -f &plgPATH;/tmux*.txz fi removepkg &plgPATH;/*.txz rm -rf &plgPATH; rm -rf &emhttp; rm -f /var/log/ttmd.log rm -f /etc/cron.daily/dwttm-poller >/dev/null 2>&1 echo "" echo "----------------------------------------------------------------" echo " TTM v2 (Tmux Terminal Manager) has been removed." echo " Version: &version; / Plugin Maintainer: &author;" echo "----------------------------------------------------------------" echo ""