about summary refs log tree commit diff
diff options
context:
space:
mode:
authorSilvan Mosberger <contact@infinisil.com>2019-08-10 21:07:48 +0200
committerGitHub <noreply@github.com>2019-08-10 21:07:48 +0200
commit67600d701875386b6ce92891887236866a4aa1f5 (patch)
tree97208330bc33c6f65641533710e778ac6092f0da
parent5c7afdd607ee5cb923996617e7d919cf1b296794 (diff)
parent72330fc275a7d0a5ad88d7c516e7aed22b1eeb9d (diff)
downloadnixlib-67600d701875386b6ce92891887236866a4aa1f5.tar
nixlib-67600d701875386b6ce92891887236866a4aa1f5.tar.gz
nixlib-67600d701875386b6ce92891887236866a4aa1f5.tar.bz2
nixlib-67600d701875386b6ce92891887236866a4aa1f5.tar.lz
nixlib-67600d701875386b6ce92891887236866a4aa1f5.tar.xz
nixlib-67600d701875386b6ce92891887236866a4aa1f5.tar.zst
nixlib-67600d701875386b6ce92891887236866a4aa1f5.zip
scylladb: init at 3.0.5 (#61438)
scylladb: init at 3.0.5
-rw-r--r--maintainers/maintainer-list.nix5
-rw-r--r--pkgs/development/libraries/libsystemtap/default.nix30
-rw-r--r--pkgs/development/libraries/thrift/0.10.nix39
-rw-r--r--pkgs/development/tools/parsing/antlr/3.5.nix24
-rw-r--r--pkgs/servers/scylladb/default.nix96
-rw-r--r--pkgs/servers/scylladb/seastar-configure-script-paths.patch13
-rw-r--r--pkgs/top-level/all-packages.nix10
7 files changed, 208 insertions, 9 deletions
diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix
index 65095e785968..2312f3fe7558 100644
--- a/maintainers/maintainer-list.nix
+++ b/maintainers/maintainer-list.nix
@@ -1763,6 +1763,11 @@
     github = "fare";
     name = "Francois-Rene Rideau";
   };
+  farlion = {
+    email = "florian.peter@gmx.at";
+    github = "workflow";
+    name = "Florian Peter";
+  };
   fdns = {
     email = "fdns02@gmail.com";
     github = "fdns";
diff --git a/pkgs/development/libraries/libsystemtap/default.nix b/pkgs/development/libraries/libsystemtap/default.nix
new file mode 100644
index 000000000000..ecfa3377c995
--- /dev/null
+++ b/pkgs/development/libraries/libsystemtap/default.nix
@@ -0,0 +1,30 @@
+{stdenv, fetchgit, gettext, python, elfutils}:
+
+stdenv.mkDerivation {
+  pname = "libsystemtap";
+  version = "3.2";
+
+  src = fetchgit {
+    url = git://sourceware.org/git/systemtap.git;
+    rev = "4051c70c9318c837981384cbb23f3e9eb1bd0892";
+    sha256 = "0sd8n3j3rishks3gyqj2jyqhps7hmlfjyz8i0w8v98cczhhh04rq";
+    fetchSubmodules = false;
+  };
+
+  dontBuild = true;
+
+  nativeBuildInputs = [ gettext python elfutils ];
+
+  installPhase = ''
+    mkdir -p $out/include
+    cp -r includes/* $out/include/
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Statically defined probes development files";
+    homepage = "https://sourceware.org/systemtap/";
+    license = licenses.bsd3;
+    platforms = platforms.unix;
+    maintainers = [ stdenv.lib.maintainers.farlion ];
+  };
+}
diff --git a/pkgs/development/libraries/thrift/0.10.nix b/pkgs/development/libraries/thrift/0.10.nix
new file mode 100644
index 000000000000..d626673a227a
--- /dev/null
+++ b/pkgs/development/libraries/thrift/0.10.nix
@@ -0,0 +1,39 @@
+{ stdenv, fetchurl, boost, zlib, libevent, openssl, python, pkgconfig, bison
+, flex, twisted
+}:
+
+stdenv.mkDerivation rec {
+  pname = "thrift";
+  version = "0.10.0";
+
+  src = fetchurl {
+    url = "https://archive.apache.org/dist/thrift/${version}/${pname}-${version}.tar.gz";
+    sha256 = "02x1xw0l669idkn6xww39j60kqxzcbmim4mvpb5h9nz8wqnx1292";
+  };
+
+  #enableParallelBuilding = true; problems on hydra
+
+  # Workaround to make the python wrapper not drop this package:
+  # pythonFull.buildEnv.override { extraLibs = [ thrift ]; }
+  pythonPath = [];
+
+  nativeBuildInputs = [ pkgconfig ];
+  buildInputs = [
+    boost zlib libevent openssl python bison flex twisted
+  ];
+
+  preConfigure = "export PY_PREFIX=$out";
+
+  # TODO: package boost-test, so we can run the test suite. (Currently it fails
+  # to find libboost_unit_test_framework.a.)
+  configureFlags = [ "--enable-tests=no" ];
+  doCheck = false;
+
+  meta = with stdenv.lib; {
+    description = "Library for scalable cross-language services";
+    homepage = "http://thrift.apache.org/";
+    license = licenses.asl20;
+    platforms = platforms.linux ++ platforms.darwin;
+    maintainers = [ maintainers.bjornfor ];
+  };
+}
diff --git a/pkgs/development/tools/parsing/antlr/3.5.nix b/pkgs/development/tools/parsing/antlr/3.5.nix
index 4c213ed1c4c2..6fa6323d3e87 100644
--- a/pkgs/development/tools/parsing/antlr/3.5.nix
+++ b/pkgs/development/tools/parsing/antlr/3.5.nix
@@ -1,18 +1,23 @@
-{stdenv, fetchurl, jre}:
+{stdenv, fetchurl, fetchFromGitHub, jre}:
 
 stdenv.mkDerivation rec {
-  name = "antlr-${version}";
+  pname = "antlr";
   version = "3.5.2";
-  src = fetchurl {
-    url ="https://www.antlr3.org/download/antlr-${version}-complete.jar";
+  jar = fetchurl {
+    url = "https://www.antlr3.org/download/antlr-${version}-complete.jar";
     sha256 = "0srjwxipwsfzmpi0v32d1l5lzk9gi5in8ayg33sq8wyp8ygnbji6";
   };
-
-  dontUnpack = true;
+  src = fetchFromGitHub {
+    owner = "antlr";
+    repo = "antlr3";
+    rev = "5c2a916a10139cdb5c7c8851ee592ed9c3b3d4ff";
+    sha256 = "1i0w2v9prrmczlwkfijfp4zfqfgrss90a7yk2hg3y0gkg2s4abbk";
+  };
 
   installPhase = ''
-    mkdir -p "$out"/{lib/antlr,bin}
-    cp "$src" "$out/lib/antlr/antlr-${version}-complete.jar"
+    mkdir -p "$out"/{lib/antlr,bin,include}
+    cp "$jar" "$out/lib/antlr/antlr-${version}-complete.jar"
+    cp runtime/Cpp/include/* $out/include/
 
     echo "#! ${stdenv.shell}" >> "$out/bin/antlr"
     echo "'${jre}/bin/java' -cp '$out/lib/antlr/antlr-${version}-complete.jar' -Xms200M -Xmx400M org.antlr.Tool \"\$@\"" >> "$out/bin/antlr"
@@ -32,8 +37,9 @@ stdenv.mkDerivation rec {
       frameworks. From a grammar, ANTLR generates a parser that can build and
       walk parse trees.
     '';
-    homepage = https://www.antlr.org/;
+    homepage = "https://www.antlr.org/";
     license = licenses.bsd3;
     platforms = platforms.linux;
+    maintainers = [ stdenv.lib.maintainers.farlion ];
   };
 }
diff --git a/pkgs/servers/scylladb/default.nix b/pkgs/servers/scylladb/default.nix
new file mode 100644
index 000000000000..1a168608bec2
--- /dev/null
+++ b/pkgs/servers/scylladb/default.nix
@@ -0,0 +1,96 @@
+{
+  stdenv,
+  fetchgit,
+  python3Packages,
+  pkgconfig,
+  gcc8Stdenv,
+  boost,
+  git,
+  systemd,
+  gnutls,
+  cmake,
+  makeWrapper,
+  ninja,
+  ragel,
+  hwloc,
+  jsoncpp,
+  antlr3,
+  numactl,
+  protobuf,
+  cryptopp,
+  libxfs,
+  libyamlcpp,
+  libsystemtap,
+  lksctp-tools,
+  lz4,
+  libxml2,
+  zlib,
+  libpciaccess,
+  snappy,
+  libtool,
+  thrift
+}:
+gcc8Stdenv.mkDerivation rec {
+  pname = "scylladb";
+  version = "3.0.5";
+
+  src = fetchgit {
+    url = "https://github.com/scylladb/scylla.git";
+    rev = "403f66ecad6bc773712c69c4a80ebd172eb48b13";
+    sha256 = "14mg0kzpkrxvwqyiy19ndy4rsc7s5gnv2gwd3xdwm1lx1ln8ywsi";
+    fetchSubmodules = true;
+  };
+
+  patches = [ ./seastar-configure-script-paths.patch ];
+
+  nativeBuildInputs = [
+   pkgconfig
+   cmake
+   makeWrapper
+   ninja
+  ];
+
+  buildInputs = [
+   antlr3
+   python3Packages.pyparsing
+   boost
+   git
+   systemd
+   gnutls
+   ragel
+   jsoncpp
+   numactl
+   protobuf
+   cryptopp
+   libxfs
+   libyamlcpp
+   libsystemtap
+   lksctp-tools
+   lz4
+   libxml2
+   zlib
+   libpciaccess
+   snappy
+   libtool
+   thrift
+  ];
+
+  postPatch = ''
+    patchShebangs ./configure.py
+  '';
+
+  configurePhase = ''
+    ./configure.py --mode=release
+  '';
+  installPhase = ''
+    mkdir $out
+    cp -r * $out/
+  '';
+  meta = with stdenv.lib; {
+    description = "NoSQL data store using the seastar framework, compatible with Apache Cassandra";
+    homepage = "https://scylladb.com";
+    license = licenses.agpl3;
+    platforms = stdenv.lib.platforms.linux;
+    maintainers = [ stdenv.lib.maintainers.farlion ];
+  };
+}
diff --git a/pkgs/servers/scylladb/seastar-configure-script-paths.patch b/pkgs/servers/scylladb/seastar-configure-script-paths.patch
new file mode 100644
index 000000000000..19c5c8161296
--- /dev/null
+++ b/pkgs/servers/scylladb/seastar-configure-script-paths.patch
@@ -0,0 +1,13 @@
+diff --git a/seastar/configure.py b/seastar/configure.py
+index 62d9c204..f6520635 100755
+--- a/seastar/configure.py
++++ b/seastar/configure.py
+@@ -924,7 +924,7 @@ with open(buildfile, 'w') as f:
+             command = ragel -G2 -o $out $in && sed -i -e '1h;2,$$H;$$!d;g' -re 's/static const char _nfa[^;]*;//g' $out
+             description = RAGEL $out
+         rule gen
+-            command = /bin/echo -e $text > $out
++            command = echo -e $text > $out
+             description = GEN $out
+         rule swagger
+             command = json/json2code.py -f $in -o $out
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index bd2f71c28ae2..f1d31a4ebbb1 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -11702,6 +11702,8 @@ in
     inherit (darwin.apple_sdk.frameworks) AudioUnit;
   };
 
+  libsystemtap = callPackage ../development/libraries/libsystemtap { };
+
   libgtop = callPackage ../development/libraries/libgtop {};
 
   libLAS = callPackage ../development/libraries/libLAS { };
@@ -13655,6 +13657,10 @@ in
     inherit (pythonPackages) twisted;
   };
 
+  thrift-0_10 = callPackage ../development/libraries/thrift/0.10.nix {
+    inherit (pythonPackages) twisted;
+  };
+
   tidyp = callPackage ../development/libraries/tidyp { };
 
   tinyxml = tinyxml2;
@@ -24136,6 +24142,10 @@ in
 
   sct = callPackage ../tools/X11/sct {};
 
+  scylladb = callPackage ../servers/scylladb {
+   thrift = thrift-0_10;
+   };
+
   seafile-shared = callPackage ../misc/seafile-shared { };
 
   serviio = callPackage ../servers/serviio {};