]> git.sesse.net Git - bcachefs-tools-debian/blob - flake.nix
Disable pristine-tar option in gbp.conf, since there is no pristine-tar branch.
[bcachefs-tools-debian] / flake.nix
1 {
2   description = "Userspace tools for bcachefs";
3
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";
9     flake = false;
10   };
11
12   outputs = { self, nixpkgs, utils, ... }:
13     {
14       overlays.default = final: prev: {
15         bcachefs = final.callPackage ./build.nix { };
16       };
17     } // utils.lib.eachDefaultSystem (system:
18       let
19         pkgs = import nixpkgs {
20           inherit system;
21           overlays = [ self.overlays.default ];
22         };
23       in {
24         packages = {
25           inherit (pkgs) bcachefs;
26           bcachefs-fuse = pkgs.bcachefs.override { fuseSupport = true; };
27           default = pkgs.bcachefs;
28         };
29
30         formatter = pkgs.nixfmt;
31
32         devShells.default = pkgs.callPackage ({ mkShell, rustc, cargo, gnumake
33           , gcc, clang, pkg-config, libuuid, libsodium, keyutils, liburcu, zlib
34           , libaio, zstd, lz4, udev, bcachefs }:
35           mkShell {
36             LIBCLANG_PATH = "${clang.cc.lib}/lib";
37             inherit (bcachefs) nativeBuildInputs buildInputs;
38           }) { };
39       });
40 }