diff --git a/pkgs/tools/misc/tmux-cssh/default.nix b/pkgs/tools/misc/tmux-cssh/default.nix new file mode 100644 index 000000000000..f54cd2756eb1 --- /dev/null +++ b/pkgs/tools/misc/tmux-cssh/default.nix @@ -0,0 +1,41 @@ +{ stdenv, fetchFromGitHub, makeWrapper, tmux }: + +stdenv.mkDerivation { + name = "tmux-cssh-20151015"; + + src = fetchFromGitHub { + owner = "dennishafemann"; + repo = "tmux-cssh"; + rev = "21750733c5b6fa2fe23b9e50ce69d8564f2f742a"; + sha256 = "473e27f3b69864b905d1340d97917cd202705c761611eb3aec4c24521f69b52c"; + }; + + buildInputs = [ makeWrapper ]; + + installPhase = '' + mkdir -p $out/bin + cp tmux-cssh $out/bin/tmux-cssh + wrapProgram $out/bin/tmux-cssh --suffix PATH : ${tmux}/bin + ''; + + meta = { + homepage = https://github.com/dennishafemann/tmux-cssh; + description = "SSH to multiple hosts at the same time using tmux"; + + longDescription = + '' + tmux is a terminal multiplexer, like e.g. screen, which gives you a + possibility to use multiple virtual terminal session within one real + terminal session. tmux-cssh (tmux-cluster-ssh) sets a comfortable and + easy to use functionality, clustering and synchronizing virtual + tmux-sessions, on top of tmux. No need for a x-server or x-forwarding. + tmux-cssh works just with tmux and in an low-level terminal-environment, + like most server do. + ''; + + license = stdenv.lib.licenses.asl20; + + platforms = stdenv.lib.platforms.unix; + maintainers = with stdenv.lib.maintainers; [ zimbatm ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index bd78c7a6aec5..63db3da6364c 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3205,6 +3205,8 @@ let tmux = callPackage ../tools/misc/tmux { }; + tmux-cssh = callPackage ../tools/misc/tmux-cssh { }; + tmuxinator = callPackage ../tools/misc/tmuxinator { }; tmin = callPackage ../tools/security/tmin { };