2024-04-16 20:57:07 +02:00
|
|
|
{
|
|
|
|
inputs = {
|
|
|
|
nixpkgs.url = github:NixOS/nixpkgs;
|
|
|
|
oxalica.url = github:oxalica/rust-overlay;
|
|
|
|
};
|
|
|
|
|
|
|
|
outputs = { nixpkgs, oxalica, ... }: let
|
|
|
|
pkgs = import nixpkgs { system = "x86_64-linux"; overlays = [(import oxalica)]; };
|
|
|
|
in{
|
|
|
|
devShell."x86_64-linux" = pkgs.mkShell {
|
2024-04-19 00:12:21 +02:00
|
|
|
buildInputs = with pkgs;
|
|
|
|
let rust = (rust-bin.selectLatestNightlyWith (toolchain: toolchain.default.override {
|
|
|
|
extensions = [ "rust-src" "rustfmt" "rust-analyzer" ];
|
|
|
|
}));
|
|
|
|
in [
|
|
|
|
rust
|
2024-04-16 20:57:07 +02:00
|
|
|
openssl
|
|
|
|
pkg-config
|
|
|
|
evcxr
|
2024-04-19 00:12:21 +02:00
|
|
|
llvmPackages_16.clang
|
|
|
|
llvmPackages_16.libclang
|
2024-04-16 20:57:07 +02:00
|
|
|
];
|
2024-04-19 00:12:21 +02:00
|
|
|
|
|
|
|
shellHook = ''
|
|
|
|
export LIBCLANG_PATH="${pkgs.llvmPackages_16.libclang.lib}/lib";
|
|
|
|
export ROCKSDB_LIB_DIR="${pkgs.rocksdb}/lib";
|
|
|
|
'';
|
2024-04-16 20:57:07 +02:00
|
|
|
};
|
|
|
|
};
|
|
|
|
}
|