2 description = "Userspace tools for bcachefs";
4 # Nixpkgs / NixOS version to use.
5 inputs.nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
6 inputs.utils.url = "github:numtide/flake-utils";
7 inputs.flake-compat = {
8 url = "github:edolstra/flake-compat";
12 outputs = { self, nixpkgs, utils, ... }:
14 overlays.default = final: prev: {
15 bcachefs = final.callPackage ./build.nix { };
17 } // utils.lib.eachDefaultSystem (system:
19 pkgs = import nixpkgs {
21 overlays = [ self.overlays.default ];
25 inherit (pkgs) bcachefs;
26 default = pkgs.bcachefs;
29 formatter = pkgs.nixfmt;
31 devShells.default = pkgs.callPackage ({ mkShell, rustc, cargo, gnumake
32 , gcc, clang, pkg-config, libuuid, libsodium, keyutils, liburcu, zlib
33 , libaio, zstd, lz4, udev, bcachefs }:
35 LIBCLANG_PATH = "${clang.cc.lib}/lib";
36 inherit (bcachefs) nativeBuildInputs buildInputs;