diff --git a/.gitignore b/.gitignore index 10f5e87..c833eeb 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ secrets/keys/private-keys-v1.d/ result *.~undo-tree~ *.iso +.pre-commit-config.yaml diff --git a/SwarselSystems.org b/SwarselSystems.org index 9ebd05b..cb99f27 100644 --- a/SwarselSystems.org +++ b/SwarselSystems.org @@ -684,16 +684,29 @@ In this section I am creating some attributes that define general concepts of my homeManagerModules = import ./modules/home; packages = forEachSystem (pkgs: import ./pkgs { inherit pkgs; }); - devShells = forEachSystem - (pkgs: + devShells = forAllSystems ( + system: + let + pkgs = nixpkgs.legacyPackages.${system}; + checks = self.checks.${system}; + in { default = pkgs.mkShell { NIX_CONFIG = "experimental-features = nix-command flakes"; - nativeBuildInputs = [ pkgs.nix pkgs.home-manager pkgs.git ]; + inherit (checks.pre-commit-check) shellHook; + buildInputs = checks.pre-commit-check.enabledPackages; + nativeBuildInputs = [ + pkgs.nix + pkgs.home-manager + pkgs.git + pkgs.just + pkgs.age + pkgs.ssh-to-age + pkgs.sops + ]; }; }); - # this sets the formatter that is going to be used by nix fmt formatter = forEachSystem (pkgs: pkgs.nixpkgs-fmt); checks = forAllSystems ( system: diff --git a/flake.nix b/flake.nix index 25dcafb..5d762b8 100644 --- a/flake.nix +++ b/flake.nix @@ -199,16 +199,30 @@ homeManagerModules = import ./modules/home; packages = forEachSystem (pkgs: import ./pkgs { inherit pkgs; }); - devShells = forEachSystem - (pkgs: - { - default = pkgs.mkShell { - NIX_CONFIG = "experimental-features = nix-command flakes"; - nativeBuildInputs = [ pkgs.nix pkgs.home-manager pkgs.git ]; - }; - }); + devShells = forAllSystems ( + system: + let + pkgs = nixpkgs.legacyPackages.${system}; + checks = self.checks.${system}; + in + { + default = pkgs.mkShell { + NIX_CONFIG = "experimental-features = nix-command flakes"; + inherit (checks.pre-commit-check) shellHook; + buildInputs = checks.pre-commit-check.enabledPackages; + nativeBuildInputs = [ + pkgs.nix + pkgs.home-manager + pkgs.git + pkgs.just + pkgs.age + pkgs.ssh-to-age + pkgs.sops + ]; + }; + } + ); - # this sets the formatter that is going to be used by nix fmt formatter = forEachSystem (pkgs: pkgs.nixpkgs-fmt); checks = forAllSystems ( system: