about summary refs log tree commit diff
path: root/nixpkgs/pkgs/servers/http/couchdb/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/servers/http/couchdb/default.nix')
-rw-r--r--nixpkgs/pkgs/servers/http/couchdb/default.nix39
1 files changed, 39 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/servers/http/couchdb/default.nix b/nixpkgs/pkgs/servers/http/couchdb/default.nix
new file mode 100644
index 000000000000..5239c027b8fa
--- /dev/null
+++ b/nixpkgs/pkgs/servers/http/couchdb/default.nix
@@ -0,0 +1,39 @@
+{ stdenv, fetchurl, erlang, icu, openssl, spidermonkey, curl, help2man
+, sphinx, which, file, pkgconfig, getopt }:
+
+stdenv.mkDerivation rec {
+  name = "couchdb-${version}";
+  version = "1.7.1";
+
+  src = fetchurl {
+    url = "mirror://apache/couchdb/source/${version}/apache-${name}.tar.gz";
+    sha256 = "1b9cbdrmh1i71mrwvhm17v4cf7lckpil1vvq7lpmxyn6zfk0l84i";
+  };
+
+  nativeBuildInputs = [ help2man which file pkgconfig sphinx ];
+  buildInputs = [ erlang icu openssl spidermonkey curl ];
+
+  postInstall = ''
+    substituteInPlace $out/bin/couchdb --replace getopt "${getopt}/bin/getopt"
+  '';
+
+  /*
+  Versions of SpiderMonkey after the js185-1.0.0 release remove the optional
+  enforcement of preventing anonymous functions in a statement context. This
+  will most likely break your existing JavaScript code as well as render all
+  example code invalid.
+
+  If you wish to ignore this error pass --enable-js-trunk to ./configure.
+  */
+  configureFlags = [
+    "--enable-js-trunk"
+  ];
+
+  meta = with stdenv.lib; {
+    description = "A database that uses JSON for documents, JavaScript for MapReduce queries, and regular HTTP for an API";
+    homepage = http://couchdb.apache.org;
+    license = licenses.asl20;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ garbas ];
+  };
+}