1
Fork 0
shimmeringmoon/flake.nix
prescientmoon a0e3decd7a
Initial commit, I guess
Signed-off-by: prescientmoon <git@moonythm.dev>
2024-06-22 16:40:56 +02:00

61 lines
1.5 KiB
Nix

{
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/release-24.05";
flake-utils.url = "github:numtide/flake-utils";
fenix.url = "github:nix-community/fenix";
fenix.inputs.nixpkgs.follows = "nixpkgs";
};
outputs = { self, ... }@inputs:
inputs.flake-utils.lib.eachSystem
(with inputs.flake-utils.lib.system; [ x86_64-linux ])
(system:
let
pkgs = inputs.nixpkgs.legacyPackages.${system}.extend
inputs.fenix.overlays.default;
inherit (pkgs) lib;
in
{
devShell = pkgs.mkShell rec {
packages = with pkgs; [
(fenix.complete.withComponents [
"cargo"
"clippy"
"rust-src"
"rustc"
"rustfmt"
])
rust-analyzer-nightly
ruff
clang
llvmPackages.clang
pkg-config
leptonica
tesseract
openssl
sqlite
];
LD_LIBRARY_PATH = lib.makeLibraryPath packages;
# compilation of -sys packages requires manually setting LIBCLANG_PATH
LIBCLANG_PATH = "${pkgs.llvmPackages.libclang.lib}/lib";
};
});
# {{{ Caching and whatnot
# TODO: persist trusted substituters file
nixConfig = {
extra-substituters = [
"https://nix-community.cachix.org"
];
extra-trusted-public-keys = [
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
];
};
# }}}
}