fork
Configure Feed
Select the types of activity you want to include in your feed.
lol
fork
Configure Feed
Select the types of activity you want to include in your feed.
1{
2 lib,
3 stdenv,
4 fetchurl,
5 autoreconfHook,
6 perl,
7 readline,
8 rsh,
9 ssh,
10 slurm,
11 slurmSupport ? false,
12}:
13
14stdenv.mkDerivation rec {
15 pname = "pdsh";
16 version = "2.35";
17
18 src = fetchurl {
19 url = "https://github.com/chaos/pdsh/releases/download/pdsh-${version}/pdsh-${version}.tar.gz";
20 sha256 = "sha256-de8VNHhI//Q/jW/5xEJP4Fx90s26ApE5kB+GGgUJPP4=";
21 };
22
23 buildInputs = [
24 perl
25 readline
26 ssh
27 ]
28 ++ (lib.optional slurmSupport slurm);
29
30 nativeBuildInputs = [ autoreconfHook ];
31
32 # Do not use git to derive a version.
33 postPatch = ''
34 sed -i 's/m4_esyscmd(\[git describe.*/[${version}])/' configure.ac
35 '';
36
37 preConfigure = ''
38 configureFlagsArray=(
39 "--infodir=$out/share/info"
40 "--mandir=$out/share/man"
41 "--with-machines=/etc/pdsh/machines"
42 ${if readline == null then "--without-readline" else "--with-readline"}
43 ${if ssh == null then "--without-ssh" else "--with-ssh"}
44 ${if rsh == false then "--without-rsh" else "--with-rsh"}
45 ${if slurmSupport then "--with-slurm" else "--without-slurm"}
46 "--with-dshgroups"
47 "--with-xcpu"
48 "--disable-debug"
49 '--with-rcmd-rank-list=ssh,krb4,exec,xcpu,rsh'
50 )
51 '';
52
53 meta = {
54 homepage = "https://github.com/chaos/pdsh";
55 description = "High-performance, parallel remote shell utility";
56 license = lib.licenses.gpl2Plus;
57
58 longDescription = ''
59 Pdsh is a high-performance, parallel remote shell utility. It has
60 built-in, thread-safe clients for Berkeley and Kerberos V4 rsh and
61 can call SSH externally (though with reduced performance). Pdsh
62 uses a "sliding window" parallel algorithm to conserve socket
63 resources on the initiating node and to allow progress to continue
64 while timeouts occur on some connections.
65 '';
66
67 platforms = lib.platforms.unix;
68 };
69}