about summary refs log tree commit diff
path: root/pkgs/misc
diff options
context:
space:
mode:
authorJanik <80165193+Janik-Haag@users.noreply.github.com>2024-01-27 01:19:54 +0100
committerGitHub <noreply@github.com>2024-01-27 01:19:54 +0100
commitc7a9d44dc76e1843542da9ab19cd0a1bafbbcd18 (patch)
tree8a026ce84d9a6b7216fb5be65ec5cd61f5d3dfba /pkgs/misc
parent117fd19a779312853ece1c2e5d44021fe039b424 (diff)
parent6d08eea4b959dd2fd20ff1da19bc410c0cec56b7 (diff)
Merge pull request #282816 from mandos/tmuxPlugins.session-wizard
tmuxPlugins.session-wizard: add at 1.2.0
Diffstat (limited to 'pkgs/misc')
-rw-r--r--pkgs/misc/tmux-plugins/default.nix33
1 files changed, 33 insertions, 0 deletions
diff --git a/pkgs/misc/tmux-plugins/default.nix b/pkgs/misc/tmux-plugins/default.nix
index 8a5d74b12aa50..d01499af26475 100644
--- a/pkgs/misc/tmux-plugins/default.nix
+++ b/pkgs/misc/tmux-plugins/default.nix
@@ -548,6 +548,39 @@ in rec {
     '';
   };
 
+  session-wizard = mkTmuxPlugin rec {
+    pluginName = "session-wizard";
+    rtpFilePath = "session-wizard.tmux";
+    version = "1.2.0";
+    src = pkgs.fetchFromGitHub {
+      owner = "27medkamal";
+      repo = "tmux-session-wizard";
+      rev = "V${version}";
+      sha256 = "sha256-IfSgX02vXdpzyu1GRF1EvzVCqqOEiTjeXtl1EvNr7EI=";
+    };
+    meta = with lib; {
+      homepage = "https://github.com/27medkamal/tmux-session-wizard";
+      description = "Tmux plugin for creating and switching between sessions based on recently accessed directories";
+      longDescription = ''
+        Session Wizard is using fzf and zoxide to do all the magic. Features:
+        * Creating a new session from a list of recently accessed directories
+        * Naming a session after a folder/project
+        * Switching sessions
+        * Viewing current or creating new sessions in one popup
+      '';
+      license = licenses.mit;
+      platforms = platforms.unix;
+      maintainers = with maintainers; [ mandos ];
+    };
+    nativeBuildInputs = [ pkgs.makeWrapper ];
+    postInstall = ''
+      substituteInPlace $target/session-wizard.tmux \
+        --replace  \$CURRENT_DIR/session-wizard.sh $target/session-wizard.sh
+      wrapProgram $target/session-wizard.sh \
+        --prefix PATH : ${with pkgs; lib.makeBinPath ([ fzf zoxide coreutils gnugrep gnused ])}
+    '';
+  };
+
   sessionist = mkTmuxPlugin {
     pluginName = "sessionist";
     version = "unstable-2017-12-03";