diff options
-rw-r--r-- | pkgs/misc/foldingathome/default.nix | 37 | ||||
-rw-r--r-- | pkgs/top-level/all-packages.nix | 4 |
2 files changed, 41 insertions, 0 deletions
diff --git a/pkgs/misc/foldingathome/default.nix b/pkgs/misc/foldingathome/default.nix new file mode 100644 index 0000000000000..ca4fe2657bff8 --- /dev/null +++ b/pkgs/misc/foldingathome/default.nix @@ -0,0 +1,37 @@ +{stdenv, fetchurl}: + +assert stdenv.system == "i686-linux"; + +stdenv.mkDerivation { + name = "folding-at-home-6.02"; + + src = fetchurl { + url = http://www.stanford.edu/group/pandegroup/folding/release/FAH6.02-Linux.tgz; + sha256 = "01nwi0lb4vv0xg4k04i2fbf5v5qgabl70jm5cgvw1ibgqjz03910"; + }; + + unpackPhase = "tar xvzf $src"; + + # Otherwise it doesn't work at all, even ldd thinks it's not a dynamic executable + dontStrip = true; + + # This program, to run with '-smp', wants to execute the program mpiexec + # as "./mpiexec", although it also expects to write the data files into "." + # I suggest, if someone wants to run it, in the data directory set a link + # to the store for 'mpiexec', so './mpiexec' will work. That link better + # be considered a gcroot. + installPhase = '' + BINFILES="fah6 mpiexec"; + for a in $BINFILES; do + patchelf --set-interpreter $(cat $NIX_GCC/nix-support/dynamic-linker) $a + done + ensureDir $out/bin + cp $BINFILES $out/bin + ''; + + meta = { + homepage = http://folding.stanford.edu/; + description = "Folding@home distributed computing client"; + license = "unfree"; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index b5df409b5a6e5..1a93b94a1921e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -9671,6 +9671,10 @@ let inherit fetchurl stdenv perl zlib bzip2; }; + foldingathome = import ../misc/foldingathome { + inherit fetchurl stdenv; + }; + freestyle = import ../misc/freestyle { inherit fetchurl freeglut qt4 libpng lib3ds libQGLViewer swig; inherit (xlibs) libXi; |