summaryrefslogtreecommitdiff
path: root/gnu/packages/tmux.scm
diff options
context:
space:
mode:
authorEuAndreh <eu@euandre.org>2022-11-29 21:29:00 -0300
committerChristopher Baines <mail@cbaines.net>2022-12-13 13:42:11 +0000
commit866eb7fffbb4a011808d8231243c39c4d5e0f004 (patch)
treee3f94675d17acce2d03b7794d76ed0065546c1cd /gnu/packages/tmux.scm
parent36bd9121d670b6bfec19d6033d9d3e1bb3f3d884 (diff)
gnu: Add tmux-plugin-resurrect.
* gnu/packages/tmux.scm (tmux-plugin-resurrect): New variable. Signed-off-by: Christopher Baines <mail@cbaines.net>
Diffstat (limited to 'gnu/packages/tmux.scm')
-rw-r--r--gnu/packages/tmux.scm50
1 files changed, 50 insertions, 0 deletions
diff --git a/gnu/packages/tmux.scm b/gnu/packages/tmux.scm
index 10b78cccf7..67ce18fea1 100644
--- a/gnu/packages/tmux.scm
+++ b/gnu/packages/tmux.scm
@@ -267,3 +267,53 @@ following features:
@item Generate command lines from standard input (Pipe mode).
@end itemize")
(license license:expat)))
+
+(define-public tmux-plugin-resurrect
+ (let ((commit "a2ddfb96b94bb64a7a2e3f5fa2a7c57dce8ad579")
+ (revision "0"))
+ (package
+ (name "tmux-plugin-resurrect")
+ (version (git-version "0" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/tmux-plugins/tmux-resurrect/")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1gc8z99na1d4scn2kq4alwyn43h3r7ykz9bkhcypjh8iri6dsl0c"))))
+ (build-system trivial-build-system)
+ (arguments
+ `(#:modules ((guix build utils))
+ #:builder (begin
+ (use-modules (guix build utils))
+ (let ((out (string-append %output
+ "/share/tmux-plugins/resurrect/")))
+ (mkdir-p out)
+ (copy-recursively (assoc-ref %build-inputs "source") out)))))
+ (synopsis "Restore tmux environment after system restart")
+ (description
+ "This plugin goes to great lengths to save and restore all the details
+from your tmux environment. Here's what's been taken care of:
+
+@itemize
+@item all sessions, windows, panes and their order
+@item current working directory for each pane
+@item exact pane layouts within windows (even when zoomed)
+@item active and alternative session
+@item active and alternative window for each session
+@item windows with focus
+@item active pane for each window
+@item \"grouped sessions\" (useful feature when using tmux with multiple monitors)
+@item programs running within a pane! More details in the restoring programs doc.
+@end itemize
+
+Optional:
+
+@itemize
+@item restoring vim and neovim sessions
+@item restoring pane contents
+@end itemize")
+ (home-page "https://github.com/tmux-plugins/tmux-resurrect/")
+ (license license:expat))))