From 1957ef2c4ba04e213c59380a19e46c9fcee38d0e Mon Sep 17 00:00:00 2001 From: Robert Hensing Date: Thu, 29 Aug 2024 13:44:04 +0200 Subject: [PATCH] Dogfood flakeModules.partitions --- ci.nix | 12 ------------ dev/README.md | 6 ------ dev/default.nix | 16 ---------------- dev/flake.nix | 3 ++- dev/repl.nix | 3 --- flake.nix | 9 +++++++++ shell.nix | 3 +-- 7 files changed, 12 insertions(+), 40 deletions(-) delete mode 100644 ci.nix delete mode 100644 dev/README.md delete mode 100644 dev/default.nix delete mode 100644 dev/repl.nix diff --git a/ci.nix b/ci.nix deleted file mode 100644 index a360262..0000000 --- a/ci.nix +++ /dev/null @@ -1,12 +0,0 @@ -# We're doing things a bit differently because Nix doesn't let us -# split out the dev dependencies and subflakes are broken, let alone "superflakes". -# See dev/README.md -let - flake = import ./dev; - inherit (flake.inputs.nixpkgs) lib; -in -{ - inherit (flake) herculesCI; -} // { - checks = lib.recurseIntoAttrs flake.checks.${builtins.currentSystem}; -} diff --git a/dev/README.md b/dev/README.md deleted file mode 100644 index 270517d..0000000 --- a/dev/README.md +++ /dev/null @@ -1,6 +0,0 @@ - -# Separate `dev` flake - -Wouldn't recommend this pattern normally, but I'm trying to keep -deps low for `flake-parts` until we have split dev inputs -that don't carry over to dependent lock files. diff --git a/dev/default.nix b/dev/default.nix deleted file mode 100644 index df712a4..0000000 --- a/dev/default.nix +++ /dev/null @@ -1,16 +0,0 @@ -let - flake = builtins.getFlake (toString ./.); - fmc-lib = (builtins.getFlake (toString ../.)).lib; - args = { - inherit self; - } // flake.inputs; - self = { - inherit (flake) inputs; - outPath = ../.; # used by pre-commit module, etc - outputs = self.config.flake; - } // - fmc-lib.mkFlake - { inputs = args; } - ./flake-module.nix; -in -self.config.flake // { inherit (flake) inputs; } diff --git a/dev/flake.nix b/dev/flake.nix index e6fc8e5..571ebb7 100644 --- a/dev/flake.nix +++ b/dev/flake.nix @@ -3,7 +3,7 @@ inputs = { # Flakes don't give us a good way to depend on .., so we don't. - # As a consequence, this flake is a little non-standard, and + # As a consequence, this flake only provides dependencies, and # we can't use the `nix` CLI as expected. nixpkgs.url = "github:NixOS/nixpkgs"; @@ -16,5 +16,6 @@ { # The dev tooling is in ./flake-module.nix # See comment at `inputs` above. + # It is loaded into partitions.dev by the root flake. }; } diff --git a/dev/repl.nix b/dev/repl.nix deleted file mode 100644 index 4c1b0d5..0000000 --- a/dev/repl.nix +++ /dev/null @@ -1,3 +0,0 @@ -# convenience for loading into nix repl -let self = builtins.getFlake (toString ./.); -in self // { inherit self; } diff --git a/flake.nix b/flake.nix index 331450a..c36b249 100644 --- a/flake.nix +++ b/flake.nix @@ -53,6 +53,15 @@ in lib.mkFlake { inherit inputs; } { systems = [ ]; + imports = [ flakeModules.partitions ]; + partitionedAttrs.checks = "dev"; + partitionedAttrs.devShells = "dev"; + partitionedAttrs.herculesCI = "dev"; + partitions.dev.extraInputsFlake = ./dev; + partitions.dev.extraInputs.flake-parts = inputs.self; + partitions.dev.module = { + imports = [ ./dev/flake-module.nix ]; + }; flake = { inherit lib templates flakeModules; }; diff --git a/shell.nix b/shell.nix index 62bdb7b..8745f50 100644 --- a/shell.nix +++ b/shell.nix @@ -1,2 +1 @@ -# non-idiomatic, see tools/README.md -(import ./dev).devShells.${builtins.currentSystem}.default +(builtins.getFlake ("git+file://" + toString ./.)).devShells.${builtins.currentSystem}.default