]> git.sesse.net Git - bcachefs-tools-debian/commitdiff
Simplify Nix(OS) development
authorDaniel B. Hill <daniel@gluo.nz>
Tue, 11 Jan 2022 11:26:05 +0000 (00:26 +1300)
committerKent Overstreet <kent.overstreet@gmail.com>
Tue, 31 May 2022 02:26:27 +0000 (22:26 -0400)
Signed-off-by: Daniel B. Hill <daniel@gluo.nz>
default.nix
nix/overlay.nix
shell.nix [new file with mode: 0644]

index 48f2aa93bacabffcd38f70ad59fda0ce64391157..a693194ed1cb1752a0c2da1d2b8191138f2c0313 100644 (file)
@@ -1,6 +1,5 @@
 { lib
-, filter
-
+, doCheck ? true
 , stdenv
 , pkg-config
 , attr
@@ -20,8 +19,7 @@
 , docutils
 , nixosTests
 
-, lastModified
-, versionString ? lastModified
+, versionString ? "0.1"
 
 , inShell ? false
 , debugMode ? inShell
@@ -39,20 +37,8 @@ stdenv.mkDerivation {
 
        version = "v0.1-flake-${versionString}";
        VERSION = "v0.1-flake-${versionString}";
-       
-       src = filter.filter {
-               name = "bcachefs-tools";
-               root = ./.;
-               exclude = [
-                       ./rust-src
-                       
-                       ./.git
-                       ./nix
-                       
-                       ./flake.nix
-                       ./flake.lock
-               ];
-       };
+
+       src = (lib.cleanSource (builtins.path { name = "bcachefs-tools-src"; path = ./. ;} ));
 
        postPatch = "patchShebangs --build doc/macro2rst.py";
 
@@ -95,7 +81,7 @@ stdenv.mkDerivation {
                "INITRAMFS_DIR=${placeholder "out"}/etc/initramfs-tools"
        ];
 
-       doCheck = true; # needs bcachefs module loaded on builder
+       doCheck = doCheck; # needs bcachefs module loaded on builder
 
        checkInputs = [
                python39Packages.pytest
@@ -116,7 +102,7 @@ stdenv.mkDerivation {
                        rm tests/test_fuse.py
                '';
 
-       dontStrip = debugMode == true;
+       dontStrip = debugMode;
        passthru = {
                bcachefs_revision = let 
                        file = builtins.readFile ./.bcachefs_revision;
index 42d3fb25b0fb0c4c173b0352ca25dc5229152bcb..8138f203b2ae7b09bfdd3fce07c3359c15bdea06 100644 (file)
@@ -4,7 +4,6 @@ final: prev: {
                tools = final.callPackage ../default.nix {
                        testWithValgrind = false;
                        filter = filter.lib;
-                       lastModified = builtins.substring 0 8 self.lastModifiedDate;
                        versionString = self.version;
                };
                toolsValgrind = final.bcachefs.tools.override {
diff --git a/shell.nix b/shell.nix
new file mode 100644 (file)
index 0000000..fc7929d
--- /dev/null
+++ b/shell.nix
@@ -0,0 +1,18 @@
+{ kversion ? "linux_5_15"
+, pkgs ? import <nixpkgs> {} }:
+
+with pkgs;
+
+let
+  tools = pkgs.callPackage ./default.nix { doCheck = false ;} ;
+in
+mkShell {
+  buildInputs = [
+    linuxKernel.packages.${kversion}.perf
+    gdb
+    ccls # code completion in neovim/emacs
+  ];
+  inputsFrom = [
+    tools
+  ];
+}