about summary refs log tree commit diff
path: root/pkgs/servers
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2008-03-15 22:51:46 +0000
committerLudovic Courtès <ludo@gnu.org>2008-03-15 22:51:46 +0000
commitfa2f6c52726493cfe09c97245fda66f5954c00da (patch)
tree2b156399a165936b5bf9b8def45eae1ae3c45569 /pkgs/servers
parent76ac9b3b86fae034c93169b58e168e5469243a44 (diff)
Add portmap, an ONC RPC directory service.
svn path=/nixpkgs/trunk/; revision=11138
Diffstat (limited to 'pkgs/servers')
-rw-r--r--pkgs/servers/portmap/default.nix39
1 files changed, 39 insertions, 0 deletions
diff --git a/pkgs/servers/portmap/default.nix b/pkgs/servers/portmap/default.nix
new file mode 100644
index 0000000000000..df50c3320296a
--- /dev/null
+++ b/pkgs/servers/portmap/default.nix
@@ -0,0 +1,39 @@
+{ fetchurl, stdenv, lib, tcpWrapper
+, daemonUser, daemonUID, daemonGID }:
+
+assert daemonUser -> (!daemonUID && !daemonGID);
+
+stdenv.mkDerivation rec {
+  name = "portmap-6.0";
+  src = fetchurl {
+    url = "http://neil.brown.name/portmap/${name}.tgz";
+    sha256 = "1pj13ll4mbfwjwpn3fbg03qq9im6v2i8fcpa3ffp4viykz9j1j02";
+  };
+
+  patchPhase = ''
+    substituteInPlace "Makefile" --replace "/usr/share" "" \
+      --replace "install -o root -g root" "install"
+  '';
+
+  makeFlags =
+   lib.concatStringsSep " "
+     (lib.optional daemonUser "RPCUSER=\"${daemonUser}\""
+      ++ lib.optional daemonUID "DAEMON_UID=${daemonUID}"
+      ++ lib.optional daemonGID "DAEMON_GID=${daemonGID}");
+
+  buildInputs = [ tcpWrapper ];
+
+  installPhase = ''
+    ensureDir "$out/sbin" && ensureDir "$out/man/man8" && \
+    make install BASEDIR=$out
+  '';
+
+  meta = {
+    description = ''portmap is a part of the ONC RPC software collection
+                    implementing remote procedure calls (RPCs) between
+		    computer programs.  It is widely used by NFS and NIS,
+		    among others.'';
+    homepage = http://neil.brown.name/portmap/;
+    license = "BSD";
+  };
+}