4a7f99d55d
Part of: https://github.com/NixOS/nixpkgs/issues/108938 meta = with stdenv.lib; is a widely used pattern. We want to slowly remove the `stdenv.lib` indirection and encourage people to use `lib` directly. Thus let’s start with the meta field. This used a rewriting script to mostly automatically replace all occurances of this pattern, and add the `lib` argument to the package header if it doesn’t exist yet. The script in its current form is available at https://cs.tvl.fyi/depot@2f807d7f141068d2d60676a89213eaa5353ca6e0/-/blob/users/Profpatsch/nixpkgs-rewriter/default.nix
103 lines
1.7 KiB
Nix
103 lines
1.7 KiB
Nix
{
|
|
lib, 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 {
|
|
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 ./configure-etc-osrelease.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
|
|
patchShebangs seastar/json/json2code.py
|
|
'';
|
|
|
|
configurePhase = ''
|
|
./configure.py --mode=release
|
|
'';
|
|
|
|
installPhase = ''
|
|
mkdir $out
|
|
cp -r * $out/
|
|
'';
|
|
|
|
requiredSystemFeatures = [ "big-parallel" ];
|
|
|
|
meta = with 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;
|
|
hydraPlatforms = []; # It's huge ATM, about 18 GB.
|
|
maintainers = [ stdenv.lib.maintainers.farlion ];
|
|
};
|
|
}
|