new: pdsh is a fast and efficient parallel remote shell

svn path=/nixpkgs/trunk/; revision=12313
This commit is contained in:
Peter Simons 2008-07-07 23:11:36 +00:00
parent fff2917058
commit 4797dddeb0
3 changed files with 57 additions and 0 deletions

View File

@ -0,0 +1,39 @@
{stdenv, fetchurl, perl, readline, ssh, pam}:
stdenv.mkDerivation rec
{
name = "pdsh-2.16";
meta =
{
homepage = "https://computing.llnl.gov/linux/pdsh.html";
description = "A high-performance, parallel remote shell utility.";
license = "GPLv2";
};
src = fetchurl
{
url = "mirror://sourceforge/pdsh/${name}.tar.bz2";
sha256 = "8891cd3b175d3075f7c71fa4ee2b077306117ada5dd8c0966caaa3b74eca3a3e";
};
patches = [ ./fix-missing-sys-types-h.patch ];
buildInputs = [perl readline ssh pam];
# Setting --with-machines=$out in configureFlags doesn't seem to work,
# so I specify configurePhase instead.
configurePhase = "./configure --prefix=$out --with-machines=$out/etc/machines"
+ " " + (if readline == null then "--without-readline" else "--with-readline")
+ " " + (if ssh == null then "--without-ssh" else "--with-ssh")
+ " " + (if pam == null then "--without-pam" else "--with-pam")
+ " --with-dshgroups"
+ " --with-xcpu"
+ " --without-genders"
+ " --without-mqshell"
+ " --without-mrsh"
+ " --without-netgroup"
+ " --without-nodeattr"
+ " --without-nodeupdown"
+ " --without-qshell"
+ " --without-slurm"
+ " --enable-fast-install"
+ " --disable-dependency-tracking"
+ " --disable-debug"
;
}

View File

@ -0,0 +1,11 @@
--- pdsh-2.16/src/common/hostlist.h 2008-01-29 18:35:48.000000000 +0100
+++ pdsh-2.16-patched/src/common/hostlist.h 2008-07-07 21:14:12.000000000 +0200
@@ -29,6 +29,8 @@
#ifndef _HOSTLIST_H
#define _HOSTLIST_H
+#include <sys/types.h>
+
/* Notes:
*
* If WITH_LSD_FATAL_ERROR_FUNC is defined, the linker will expect to

View File

@ -920,6 +920,13 @@ let pkgs = rec {
inherit fetchurl stdenv;
};
pdsh = import ../tools/networking/pdsh {
inherit fetchurl stdenv perl;
readline = if getPkgConfig "pdsh" "readline" true then readline else null;
ssh = if getPkgConfig "pdsh" "ssh" true then openssh else null;
pam = if getPkgConfig "pdsh" "pam" true then pam else null;
};
pinentry = import ../tools/misc/pinentry {
inherit fetchurl stdenv pkgconfig x11;
inherit (gnome) glib gtk;