nixir/flake.nix
NotAShelf 7584eb76e1
meta: switch to justfile for task organization
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: Ib4000ab597f94b2dd3dccf1e31fce3a76a6a6964
2026-02-23 02:26:47 +03:00

57 lines
1.3 KiB
Nix

{
inputs.nixpkgs.url = "github:NixOS/nixpkgs?ref=nixos-unstable";
outputs = {nixpkgs, ...}: let
systems = ["x86_64-linux" "aarch64-linux"];
forAllSystems = nixpkgs.lib.genAttrs systems;
pkgsFor = system: nixpkgs.legacyPackages.${system};
in {
devShells = forAllSystems (system: let
pkgs = pkgsFor system;
in {
default = pkgs.mkShell {
name = "nixir";
buildInputs = with pkgs; [
boost.dev
libblake3.dev
nixVersions.nixComponents_2_32.nix-store
nixVersions.nixComponents_2_32.nix-expr
nixVersions.nixComponents_2_32.nix-cmd
nixVersions.nixComponents_2_32.nix-fetchers
nixVersions.nixComponents_2_32.nix-main
nixVersions.nixComponents_2_32.nix-util
nixVersions.nix_2_32
];
nativeBuildInputs = with pkgs; [
cmake
pkg-config
ninja
bear
clang-tools
just
entr
];
env.NIX_PLUGINABI = "0.2";
};
});
formatter = forAllSystems (system: let
pkgs = pkgsFor system;
in
pkgs.writeShellApplication {
name = "nix3-fmt-wrapper";
runtimeInputs = [
pkgs.alejandra
pkgs.fd
];
text = ''
fd "$@" -t f -e nix -x alejandra -q '{}'
'';
});
};
}