From 6ceaeeb714b97984190981110120973d90d57ab4 Mon Sep 17 00:00:00 2001 From: seth Date: Fri, 24 May 2024 04:50:12 -0400 Subject: flatten structure again --- checks.nix | 21 +++++++++++++++++++++ devShells.nix | 33 +++++++++++++++++++++++++++++++++ flake.nix | 10 ++++++++-- hydraJobs.nix | 27 +++++++++++++++++++++++++++ parts/checks.nix | 21 --------------------- parts/ci.nix | 27 --------------------------- parts/default.nix | 11 ----------- parts/shell.nix | 33 --------------------------------- 8 files changed, 89 insertions(+), 94 deletions(-) create mode 100644 checks.nix create mode 100644 devShells.nix create mode 100644 hydraJobs.nix delete mode 100644 parts/checks.nix delete mode 100644 parts/ci.nix delete mode 100644 parts/default.nix delete mode 100644 parts/shell.nix diff --git a/checks.nix b/checks.nix new file mode 100644 index 0000000..5ccc308 --- /dev/null +++ b/checks.nix @@ -0,0 +1,21 @@ +{inputs, ...}: { + perSystem = { + lib, + pkgs, + ... + }: { + checks = { + inherit + (inputs.flake-checks.lib.mkChecks { + root = ../.; + inherit pkgs; + }) + actionlint + alejandra + deadnix + editorconfig + statix + ; + }; + }; +} diff --git a/devShells.nix b/devShells.nix new file mode 100644 index 0000000..aa24e33 --- /dev/null +++ b/devShells.nix @@ -0,0 +1,33 @@ +{ + perSystem = { + lib, + pkgs, + inputs', + self', + ... + }: { + devShells = { + default = pkgs.mkShellNoCC { + packages = + [ + pkgs.nix + + # format + lint + pkgs.actionlint + self'.formatter + pkgs.deadnix + pkgs.nil + pkgs.statix + + # utils + pkgs.deploy-rs + pkgs.fzf + pkgs.just + self'.packages.opentofu + ] + ++ lib.optional pkgs.stdenv.isDarwin [inputs'.nix-darwin.packages.darwin-rebuild] + ++ lib.optionals pkgs.stdenv.isLinux [pkgs.nixos-rebuild inputs'.agenix.packages.agenix]; + }; + }; + }; +} diff --git a/flake.nix b/flake.nix index 59a58f7..49115a2 100644 --- a/flake.nix +++ b/flake.nix @@ -22,12 +22,18 @@ ./systems ./users - # development related outputs - ./parts + # dev outputs + ./checks.nix + ./devShells.nix + ./hydraJobs.nix # external, not so nix-y things ./ext ]; + + perSystem = {pkgs, ...}: { + formatter = pkgs.alejandra; + }; }; inputs = { diff --git a/hydraJobs.nix b/hydraJobs.nix new file mode 100644 index 0000000..ba26af5 --- /dev/null +++ b/hydraJobs.nix @@ -0,0 +1,27 @@ +{ + lib, + self, + withSystem, + ... +}: let + ciSystem = "x86_64-linux"; + derivFromCfg = deriv: deriv.config.system.build.toplevel or deriv.activationPackage; + mapCfgsToDerivs = lib.mapAttrs (lib.const derivFromCfg); +in { + flake.hydraJobs = withSystem ciSystem ({ + pkgs, + self', + ... + }: { + inherit (self') checks; + inherit (self') devShells; + darwinConfigurations = mapCfgsToDerivs self.darwinConfigurations; + homeConfigurations = mapCfgsToDerivs self.homeConfigurations; + nixosConfigurations = + mapCfgsToDerivs self.nixosConfigurations + // { + # please add aarch64 runners github...please... + atlas = lib.deepSeq (derivFromCfg self.nixosConfigurations.atlas).drvPath pkgs.emptyFile; + }; + }); +} diff --git a/parts/checks.nix b/parts/checks.nix deleted file mode 100644 index 5ccc308..0000000 --- a/parts/checks.nix +++ /dev/null @@ -1,21 +0,0 @@ -{inputs, ...}: { - perSystem = { - lib, - pkgs, - ... - }: { - checks = { - inherit - (inputs.flake-checks.lib.mkChecks { - root = ../.; - inherit pkgs; - }) - actionlint - alejandra - deadnix - editorconfig - statix - ; - }; - }; -} diff --git a/parts/ci.nix b/parts/ci.nix deleted file mode 100644 index ba26af5..0000000 --- a/parts/ci.nix +++ /dev/null @@ -1,27 +0,0 @@ -{ - lib, - self, - withSystem, - ... -}: let - ciSystem = "x86_64-linux"; - derivFromCfg = deriv: deriv.config.system.build.toplevel or deriv.activationPackage; - mapCfgsToDerivs = lib.mapAttrs (lib.const derivFromCfg); -in { - flake.hydraJobs = withSystem ciSystem ({ - pkgs, - self', - ... - }: { - inherit (self') checks; - inherit (self') devShells; - darwinConfigurations = mapCfgsToDerivs self.darwinConfigurations; - homeConfigurations = mapCfgsToDerivs self.homeConfigurations; - nixosConfigurations = - mapCfgsToDerivs self.nixosConfigurations - // { - # please add aarch64 runners github...please... - atlas = lib.deepSeq (derivFromCfg self.nixosConfigurations.atlas).drvPath pkgs.emptyFile; - }; - }); -} diff --git a/parts/default.nix b/parts/default.nix deleted file mode 100644 index d8da3fe..0000000 --- a/parts/default.nix +++ /dev/null @@ -1,11 +0,0 @@ -{ - imports = [ - ./checks.nix - ./ci.nix - ./shell.nix - ]; - - perSystem = {pkgs, ...}: { - formatter = pkgs.alejandra; - }; -} diff --git a/parts/shell.nix b/parts/shell.nix deleted file mode 100644 index aa24e33..0000000 --- a/parts/shell.nix +++ /dev/null @@ -1,33 +0,0 @@ -{ - perSystem = { - lib, - pkgs, - inputs', - self', - ... - }: { - devShells = { - default = pkgs.mkShellNoCC { - packages = - [ - pkgs.nix - - # format + lint - pkgs.actionlint - self'.formatter - pkgs.deadnix - pkgs.nil - pkgs.statix - - # utils - pkgs.deploy-rs - pkgs.fzf - pkgs.just - self'.packages.opentofu - ] - ++ lib.optional pkgs.stdenv.isDarwin [inputs'.nix-darwin.packages.darwin-rebuild] - ++ lib.optionals pkgs.stdenv.isLinux [pkgs.nixos-rebuild inputs'.agenix.packages.agenix]; - }; - }; - }; -} -- cgit v1.2.3