summaryrefslogtreecommitdiffstats
path: root/pkgs/tools/filesystems/orangefs
diff options
context:
space:
mode:
authorMarkus Kowalewski <markus.kowalewski@gmail.com>2019-08-21 00:25:41 +0200
committerMarkus Kowalewski <markus.kowalewski@gmail.com>2019-09-21 16:21:10 +0200
commit2906718bccd16eac7a197d6eca32be6931a707a9 (patch)
treee400f75e046cfc3b62f91fa351e4c8776c438060 /pkgs/tools/filesystems/orangefs
parentf0fec244ca380b9d3e617ee7b419c59758c8b0f1 (diff)
orangefs: init at 2.9.7
Diffstat (limited to 'pkgs/tools/filesystems/orangefs')
-rw-r--r--pkgs/tools/filesystems/orangefs/default.nix61
1 files changed, 61 insertions, 0 deletions
diff --git a/pkgs/tools/filesystems/orangefs/default.nix b/pkgs/tools/filesystems/orangefs/default.nix
new file mode 100644
index 000000000000..37f4026799b6
--- /dev/null
+++ b/pkgs/tools/filesystems/orangefs/default.nix
@@ -0,0 +1,61 @@
+{ stdenv, fetchurl, bison, flex, autoreconfHook
+, openssl, db, attr, perl, tcsh
+} :
+
+stdenv.mkDerivation rec {
+ pname = "orangefs";
+ version = "2.9.7";
+
+ src = fetchurl {
+ url = "http://download.orangefs.org/current/source/orangefs-${version}.tar.gz";
+ sha256 = "15669f5rcvn44wkas0mld0qmyclrmhbrw4bbbp66sw3a12vgn4sm";
+ };
+
+ nativeBuildInputs = [ bison flex perl autoreconfHook ];
+ buildInputs = [ openssl db attr tcsh ];
+
+ postPatch = ''
+ # Issue introduced by attr-2.4.48
+ substituteInPlace src/apps/user/ofs_setdirhint.c --replace attr/xattr.h sys/xattr.h
+
+ # Do not try to install empty sysconfdir
+ substituteInPlace Makefile.in --replace 'install -d $(sysconfdir)' ""
+
+ # perl interpreter needs to be fixed or build fails
+ patchShebangs ./src/apps/admin/pvfs2-genconfig
+
+ # symlink points to a location in /usr
+ rm ./src/client/webpack/ltmain.sh
+ '';
+
+ configureFlags = [
+ "--sysconfdir=/etc/orangefs"
+ "--enable-shared"
+ "--enable-fast"
+ "--with-ssl=${stdenv.lib.getDev openssl}"
+ ];
+
+
+ enableParallelBuilding = true;
+
+ postInstall = ''
+ # install useful helper scripts
+ install examples/keys/pvfs2-gen-keys.sh $out/bin
+ '';
+
+ postFixup = ''
+ for f in pvfs2-getmattr pvfs2-setmattr; do
+ substituteInPlace $out/bin/$f --replace '#!/bin/csh' '#!${tcsh}/bin/tcsh'
+ done
+
+ sed -i 's:openssl:${openssl}/bin/openssl:' $out/bin/pvfs2-gen-keys.sh
+ '';
+
+ meta = with stdenv.lib; {
+ description = "Scale-out network file system for use on high-end computing systems";
+ homepage = "http://www.orangefs.org/";
+ license = with licenses; [ asl20 bsd3 gpl2 lgpl21 lgpl21Plus openldap ];
+ platforms = [ "x86_64-linux" ];
+ maintainers = with maintainers; [ markuskowa ];
+ };
+}