diff --git a/pkgs/misc/tmux-plugins/default.nix b/pkgs/misc/tmux-plugins/default.nix index 2ee755b02d98..f62d8c8c1f6e 100644 --- a/pkgs/misc/tmux-plugins/default.nix +++ b/pkgs/misc/tmux-plugins/default.nix @@ -1056,6 +1056,49 @@ in }; }; + tmux-sm = mkTmuxPlugin { + pluginName = "tmux-sm"; + version = "0-unstable-2026-05-14"; + src = fetchFromGitHub { + owner = "vimlinuz"; + repo = "tmux-sm"; + rev = "97d411a11d124443c982d17fde03c1e09809d7b1"; + hash = "sha256-7HW/TLP/yyQp4j0/utA0tibTv+suV1B2K56pUS3Z004="; + }; + nativeBuildInputs = [ pkgs.makeWrapper ]; + rtpFilePath = "main.tmux"; + postInstall = '' + chmod +x $target/scripts/session-manager + wrapProgram $target/scripts/session-manager \ + --prefix PATH : ${ + with pkgs; + lib.makeBinPath [ + fzf + gawk + coreutils + ] + } + chmod +x $target/scripts/sessionizer + wrapProgram $target/scripts/sessionizer \ + --prefix PATH : ${ + with pkgs; + lib.makeBinPath [ + fzf + tree + findutils + coreutils + ] + } + ''; + meta = { + homepage = "https://github.com/vimlinuz/tmux-sm"; + description = "Fuzzy terminal popup to manage tmux sessions using `fzf`"; + license = lib.licenses.mit; + platforms = lib.platforms.unix; + maintainers = with lib.maintainers; [ vimlinuz ]; + }; + }; + tmux-thumbs = pkgs.callPackage ./tmux-thumbs { inherit mkTmuxPlugin; };