summaryrefslogtreecommitdiffstats
path: root/pkgs/servers
diff options
context:
space:
mode:
authorFlorian Peter <florian.peter@gmx.at>2019-08-10 18:56:41 +0800
committerFlorian Peter <florian.peter@gmx.at>2019-08-11 02:11:32 +0800
commit72330fc275a7d0a5ad88d7c516e7aed22b1eeb9d (patch)
tree2591a2ba2c9d7e10a392de1eadf31c337a0ab248 /pkgs/servers
parent53a4c3511bd7ca0bb902a8014b171601e231dee7 (diff)
scylladb: init at 3.0.5
Diffstat (limited to 'pkgs/servers')
-rw-r--r--pkgs/servers/scylladb/default.nix96
-rw-r--r--pkgs/servers/scylladb/seastar-configure-script-paths.patch13
2 files changed, 109 insertions, 0 deletions
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