aboutsummaryrefslogtreecommitdiff
path: root/nixpkgs/pkgs/servers/nfs-ganesha
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/servers/nfs-ganesha')
-rw-r--r--nixpkgs/pkgs/servers/nfs-ganesha/default.nix48
-rw-r--r--nixpkgs/pkgs/servers/nfs-ganesha/sysstatedir.patch15
2 files changed, 63 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/servers/nfs-ganesha/default.nix b/nixpkgs/pkgs/servers/nfs-ganesha/default.nix
new file mode 100644
index 00000000000..adbcbb63759
--- /dev/null
+++ b/nixpkgs/pkgs/servers/nfs-ganesha/default.nix
@@ -0,0 +1,48 @@
+{ stdenv, fetchFromGitHub, cmake, pkg-config
+, krb5, xfsprogs, jemalloc, dbus, libcap
+, ntirpc, liburcu, bison, flex, nfs-utils
+} :
+
+stdenv.mkDerivation rec {
+ pname = "nfs-ganesha";
+ version = "3.3";
+
+ src = fetchFromGitHub {
+ owner = "nfs-ganesha";
+ repo = "nfs-ganesha";
+ rev = "V${version}";
+ sha256 = "1w48rqrbqah0hnirvjdz8lyr9ah8b73j3cgsppb04gnrmpssgmb6";
+ };
+
+ patches = [ ./sysstatedir.patch ];
+
+ preConfigure = "cd src";
+
+ cmakeFlags = [ "-DUSE_SYSTEM_NTIRPC=ON" ];
+
+ nativeBuildInputs = [
+ cmake
+ pkg-config
+ bison
+ flex
+ ];
+
+ buildInputs = [
+ krb5
+ xfsprogs
+ jemalloc
+ dbus.lib
+ libcap
+ ntirpc
+ liburcu
+ nfs-utils
+ ];
+
+ meta = with stdenv.lib; {
+ description = "NFS server that runs in user space";
+ homepage = "https://github.com/nfs-ganesha/nfs-ganesha/wiki";
+ maintainers = [ maintainers.markuskowa ];
+ platforms = platforms.linux;
+ license = licenses.lgpl3Plus;
+ };
+}
diff --git a/nixpkgs/pkgs/servers/nfs-ganesha/sysstatedir.patch b/nixpkgs/pkgs/servers/nfs-ganesha/sysstatedir.patch
new file mode 100644
index 00000000000..534f71743e7
--- /dev/null
+++ b/nixpkgs/pkgs/servers/nfs-ganesha/sysstatedir.patch
@@ -0,0 +1,15 @@
+diff --git a/src/include/config-h.in.cmake b/src/include/config-h.in.cmake
+index 51697310b..2b5f91075 100644
+--- a/src/include/config-h.in.cmake
++++ b/src/include/config-h.in.cmake
+@@ -72,8 +72,8 @@
+ #define NFS_GANESHA 1
+
+ #define GANESHA_CONFIG_PATH "@SYSCONFDIR@/ganesha/ganesha.conf"
+-#define GANESHA_PIDFILE_PATH "@SYSSTATEDIR@/run/ganesha.pid"
+-#define NFS_V4_RECOV_ROOT "@SYSSTATEDIR@/lib/nfs/ganesha"
++#define GANESHA_PIDFILE_PATH "/run/ganesha.pid"
++#define NFS_V4_RECOV_ROOT "/var/lib/nfs/ganesha"
+ /**
+ * @brief Default value for krb5_param.ccache_dir
+ */