Skip to main content

A python executable that saves and restores tmux sessions across reboots

Project description

tmux-restore

Overview

Works with tmux to save and restore sessions across reboots. Sessions are stored at ~/.tmux-restore.

Features

  • Save session windows, panes, and layouts automatically on detach/exit
  • Automatically restore sessions on reboot
    • Restores windows, panes, and layout
    • Restores running processes for select programs:
      • emacs/vi/vim/nvim
      • man
      • less/more
      • tail
      • top/htop
      • irssi/weechat/mutt
      • ssh
      • psql/mysql/sqlite3

To Do

  • Save environment variables
  • Add configuration option for session file
  • Add configuration option for adding running programs to save

Set Up

To install tmux-restore, run the following:

pip install tmux-restore

Then, to restore your saved sessions on reboot, edit your .bashrc file with the following content:

# colors...

# tmux-restore trigger
if ! tmux info &> /dev/null; then
    if ! tmux ls &> /dev/null; then
        (python3 -m tmux-restore &)
    fi
fi

# aliases...

It is important that this is done above alias definition to avoid conflicts. Finally, add the following content to either where the other aliases are defined in your .bashrc file or to your .bash_aliases file:

tmux() {
    command tmux $*
    (python3 -m tmux-restore save &)
}

This will ensure that your sessions save after you exit or detach from a tmux session. Restart your shell to apply the effects. Your tmux sessions will now restore themselves across reboots!

Usage

If you would like to save or restore your tmux sessions manually:

# Save
python3 -m tmux-restore save

# Restore
python3 -m tmux-restore
# OR
python3 -m tmux-restore restore

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tmux_restore-0.0.4.tar.gz (5.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tmux_restore-0.0.4-py3-none-any.whl (4.5 kB view details)

Uploaded Python 3

File details

Details for the file tmux_restore-0.0.4.tar.gz.

File metadata

  • Download URL: tmux_restore-0.0.4.tar.gz
  • Upload date:
  • Size: 5.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.0rc1

File hashes

Hashes for tmux_restore-0.0.4.tar.gz
Algorithm Hash digest
SHA256 f5d7af35b94aaaaaef02990b218de36d3276aa474b214c6fafb768e827a669db
MD5 6caaaf242ce161cd4a6afab471afc283
BLAKE2b-256 52aeb72788f609fd761df917c468afa80e0b0f2ffc1de52b3d71c93d10ec00ee

See more details on using hashes here.

File details

Details for the file tmux_restore-0.0.4-py3-none-any.whl.

File metadata

  • Download URL: tmux_restore-0.0.4-py3-none-any.whl
  • Upload date:
  • Size: 4.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.0rc1

File hashes

Hashes for tmux_restore-0.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 17b18234b24b58e0be08a7861e8a0e2409c86a953144e05ed4abc5dff63037d3
MD5 fdff5663af858967d9fb66c5be49275b
BLAKE2b-256 37fdfc6fc6d9e16e2cfad3e655139441ebf30cd68491828bbf7a54b68b0239e0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page