diff --git a/.envrc b/.envrc index 3550a30..0f94eed 100644 --- a/.envrc +++ b/.envrc @@ -1 +1,2 @@ +# shellcheck shell=bash use flake diff --git a/flake.nix b/flake.nix index fa8c5ab..5a23791 100644 --- a/flake.nix +++ b/flake.nix @@ -23,17 +23,14 @@ inherit (self) outputs; systems = [ - "aarch64-darwin" - "aarch64-linux" - "x86_64-darwin" "x86_64-linux" ]; - lib = nixpkgs.lib.extend (final: prev: inputs.synix.lib or { }); + lib = nixpkgs.lib.extend (_final: _prev: inputs.synix.lib or { }); mkNixosConfiguration = system: modules: - nixpkgs.lib.nixosSystem { + lib.nixosSystem { inherit system modules; specialArgs = { inherit inputs outputs lib; @@ -53,8 +50,6 @@ ); in { - packages = forAllSystems (pkgs: import ./pkgs pkgs); - overlays = import ./overlays { inherit inputs; }; nixosModules = import ./modules/nixos; @@ -63,6 +58,8 @@ ess-helm = mkNixosConfiguration "x86_64-linux" [ ./hosts/ess-helm ]; }; + packages = forAllSystems (pkgs: import ./pkgs pkgs); + devShells = forAllSystems (pkgs: { default = pkgs.mkShell { shellHook = "export FLAKE_PATH=$(pwd)"; @@ -72,25 +69,33 @@ formatter = forAllSystems ( pkgs: let - inherit (self.checks.${pkgs.system}.pre-commit-check.config) package configFile; - script = '' - ${pkgs.lib.getExe package} run --all-files --config ${configFile} - ''; + inherit (pkgs.stdenv.hostPlatform) system; + inherit (self.checks.${system}.pre-commit-check.config) package configFile; in - pkgs.writeShellScriptBin "pre-commit-run" script + pkgs.writeShellScriptBin "pre-commit-run" "${lib.getExe package} run --all-files --config ${configFile}" ); - checks = forAllSystems (pkgs: { - pre-commit-check = inputs.git-hooks.lib.${pkgs.system}.run { - src = ./.; - hooks = { - nixfmt.enable = true; + checks = forAllSystems ( + pkgs: + let + inherit (pkgs.stdenv.hostPlatform) system; + in + { + pre-commit-check = inputs.git-hooks.lib.${system}.run { + src = ./.; + hooks = { + actionlint.enable = true; + nixfmt.enable = true; + shellcheck.enable = true; + statix.enable = true; + yamllint.enable = true; + }; }; - }; - build-packages = pkgs.linkFarm "flake-packages-${pkgs.system}" self.packages.${pkgs.system}; - build-overlayed-packages = pkgs.linkFarm "flake-overlayed-packages-${pkgs.system}" ( - self.overlays.modifications pkgs pkgs - ); - }); + build-packages = pkgs.linkFarm "flake-packages-${system}" self.packages.${system}; + build-overlayed-packages = pkgs.linkFarm "flake-overlayed-packages-${system}" ( + self.overlays.modifications pkgs pkgs + ); + } + ); }; } diff --git a/overlays/default.nix b/overlays/default.nix index 23332b5..1d66a0f 100644 --- a/overlays/default.nix +++ b/overlays/default.nix @@ -2,10 +2,12 @@ { # synix packages accessible through 'pkgs.synix' - synix-packages = final: prev: { synix = inputs.synix.packages."${final.system}"; }; + synix-packages = final: _prev: { + synix = inputs.synix.packages."${final.stdenv.hostPlatform.system}"; + }; # packages in `pkgs/` accessible through 'pkgs.local' - local-packages = final: prev: { local = import ../pkgs { pkgs = final; }; }; + local-packages = final: _prev: { local = import ../pkgs { pkgs = final; }; }; # https://nixos.wiki/wiki/Overlays modifications = @@ -20,7 +22,7 @@ # old-stable nixpkgs accessible through 'pkgs.old-stable' old-stable-packages = final: prev: { old-stable = import inputs.nixpkgs-old-stable { - inherit (final) system; + inherit (final.stdenv.hostPlatform) system; inherit (prev) config; }; }; @@ -28,7 +30,7 @@ # unstable nixpkgs accessible through 'pkgs.unstable' unstable-packages = final: prev: { unstable = import inputs.nixpkgs-unstable { - inherit (final) system; + inherit (final.stdenv.hostPlatform) system; inherit (prev) config; }; };