2018-01-17 15:01:04 +00:00
|
|
|
{ stdenv, pkgconfig, curl, darwin, libiconv, libgit2, libssh2,
|
2018-07-17 20:11:16 +00:00
|
|
|
openssl, sqlite, zlib, dbus, dbus-glib, gdk_pixbuf, cairo, python3,
|
2018-11-18 01:27:45 +00:00
|
|
|
libsodium, postgresql, gmp, foundationdb, ... }:
|
2017-12-12 10:55:15 +00:00
|
|
|
|
2018-01-17 15:01:04 +00:00
|
|
|
let
|
2018-05-17 16:09:33 +00:00
|
|
|
inherit (darwin.apple_sdk.frameworks) CoreFoundation Security;
|
2018-01-17 15:01:04 +00:00
|
|
|
in
|
2017-12-12 10:55:15 +00:00
|
|
|
{
|
2018-10-28 21:55:26 +00:00
|
|
|
cairo-rs = attrs: {
|
|
|
|
buildInputs = [ cairo ];
|
|
|
|
};
|
|
|
|
|
2018-01-17 15:01:04 +00:00
|
|
|
cargo = attrs: {
|
|
|
|
buildInputs = [ openssl zlib curl ]
|
|
|
|
++ stdenv.lib.optionals stdenv.isDarwin [ CoreFoundation libiconv ];
|
|
|
|
# TODO: buildRustCrate seems to use incorrect default inference
|
|
|
|
crateBin = [ { name = "cargo"; path = "src/bin/cargo.rs"; } ];
|
|
|
|
};
|
2018-10-28 21:55:26 +00:00
|
|
|
|
2018-01-17 15:01:04 +00:00
|
|
|
cargo-vendor = attrs: {
|
|
|
|
buildInputs = [ openssl zlib curl ];
|
|
|
|
# TODO: this defaults to cargo_vendor; needs to be cargo-vendor to
|
|
|
|
# be considered a cargo subcommand.
|
|
|
|
crateBin = [ { name = "cargo-vendor"; path = "src/main.rs"; } ];
|
|
|
|
};
|
2018-10-28 21:55:26 +00:00
|
|
|
|
2018-01-17 15:01:04 +00:00
|
|
|
curl-sys = attrs: {
|
2018-05-20 10:28:35 +00:00
|
|
|
buildInputs = [ pkgconfig zlib curl ];
|
|
|
|
propagatedBuildInputs = [ curl zlib ];
|
|
|
|
extraLinkFlags = ["-L${zlib.out}/lib"];
|
2018-01-17 15:01:04 +00:00
|
|
|
};
|
2018-10-28 21:55:26 +00:00
|
|
|
|
|
|
|
dbus = attrs: {
|
|
|
|
buildInputs = [ pkgconfig dbus ];
|
|
|
|
};
|
|
|
|
|
2018-11-18 01:27:45 +00:00
|
|
|
foundationdb-sys = attrs: {
|
|
|
|
buildInputs = [ foundationdb ];
|
|
|
|
# needed for 0.4+ release, when the FFI bindings are auto-generated
|
|
|
|
#
|
|
|
|
# patchPhase = ''
|
|
|
|
# substituteInPlace ./foundationdb-sys/build.rs \
|
|
|
|
# --replace /usr/local/include ${foundationdb.dev}/include
|
|
|
|
# '';
|
|
|
|
};
|
|
|
|
|
|
|
|
foundationdb = attrs: {
|
|
|
|
buildInputs = [ foundationdb ];
|
|
|
|
};
|
|
|
|
|
2018-10-28 21:55:26 +00:00
|
|
|
gobject-sys = attrs: {
|
|
|
|
buildInputs = [ dbus-glib ];
|
|
|
|
};
|
|
|
|
|
|
|
|
gio-sys = attrs: {
|
|
|
|
buildInputs = [ dbus-glib ];
|
|
|
|
};
|
|
|
|
|
|
|
|
gdk-pixbuf-sys = attrs: {
|
|
|
|
buildInputs = [ dbus-glib ];
|
|
|
|
};
|
|
|
|
|
|
|
|
gdk-pixbuf = attrs: {
|
|
|
|
buildInputs = [ gdk_pixbuf ];
|
|
|
|
};
|
|
|
|
|
2018-01-17 15:01:04 +00:00
|
|
|
libgit2-sys = attrs: {
|
|
|
|
LIBGIT2_SYS_USE_PKG_CONFIG = true;
|
|
|
|
buildInputs = [ pkgconfig openssl zlib libgit2 ];
|
|
|
|
};
|
2018-10-28 21:55:26 +00:00
|
|
|
|
2017-12-12 10:55:15 +00:00
|
|
|
libsqlite3-sys = attrs: {
|
|
|
|
buildInputs = [ pkgconfig sqlite ];
|
|
|
|
};
|
2018-10-28 21:55:26 +00:00
|
|
|
|
2018-01-17 15:01:04 +00:00
|
|
|
libssh2-sys = attrs: {
|
|
|
|
buildInputs = [ pkgconfig openssl zlib libssh2 ];
|
|
|
|
};
|
2018-10-28 21:55:26 +00:00
|
|
|
|
|
|
|
libdbus-sys = attrs: {
|
|
|
|
buildInputs = [ pkgconfig dbus ];
|
|
|
|
};
|
|
|
|
|
2018-01-17 15:01:04 +00:00
|
|
|
openssl = attrs: {
|
|
|
|
buildInputs = [ openssl ];
|
|
|
|
};
|
2018-10-28 21:55:26 +00:00
|
|
|
|
2017-12-12 10:55:15 +00:00
|
|
|
openssl-sys = attrs: {
|
|
|
|
buildInputs = [ pkgconfig openssl ];
|
|
|
|
};
|
2018-01-24 14:28:36 +00:00
|
|
|
|
2018-10-28 21:55:26 +00:00
|
|
|
pq-sys = attr: {
|
|
|
|
buildInputs = [ pkgconfig postgresql ];
|
2018-02-04 02:17:53 +00:00
|
|
|
};
|
2018-10-28 21:55:26 +00:00
|
|
|
|
2018-08-15 05:19:20 +00:00
|
|
|
rink = attrs: {
|
|
|
|
buildInputs = [ gmp ];
|
|
|
|
crateBin = [ { name = "rink"; path = "src/bin/rink.rs"; } ];
|
|
|
|
};
|
2018-10-28 21:55:26 +00:00
|
|
|
|
|
|
|
security-framework-sys = attr: {
|
|
|
|
propagatedBuildInputs = [ Security ];
|
2018-02-04 02:17:53 +00:00
|
|
|
};
|
2018-01-24 14:28:36 +00:00
|
|
|
|
2018-10-28 21:56:30 +00:00
|
|
|
serde_derive = attrs: {
|
|
|
|
buildInputs = stdenv.lib.optional stdenv.isDarwin Security;
|
|
|
|
};
|
|
|
|
|
2018-01-24 14:28:36 +00:00
|
|
|
thrussh-libsodium = attrs: {
|
|
|
|
buildInputs = [ pkgconfig libsodium ];
|
|
|
|
};
|
2018-10-28 21:55:26 +00:00
|
|
|
|
|
|
|
xcb = attrs: {
|
|
|
|
buildInputs = [ python3 ];
|
2018-05-17 16:09:33 +00:00
|
|
|
};
|
2017-12-12 10:55:15 +00:00
|
|
|
}
|