summary refs log tree commit diff
path: root/pkgs/tools/misc/tmux-cssh/default.nix
blob: f3f5362795665f521e0a714009a032da92a3ec36 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
{ lib, 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 = lib.licenses.asl20;

    platforms = lib.platforms.unix;
    maintainers = with lib.maintainers; [ zimbatm ];
  };
}