{ inputs, ... }: { perSystem = { system, pkgs, ... }: let treefmtEval = inputs.treefmt-nix.lib.evalModule pkgs { projectRootFile = "flake.nix"; programs = { nixfmt.enable = true; deadnix.enable = true; }; }; mkPreCommitHooks = src: inputs.pre-commit-hooks.lib.${system}.run { inherit src; hooks = { check-merge-conflicts.enable = true; deadnix.enable = true; detect-private-keys.enable = true; end-of-file-fixer.enable = true; mixed-line-endings.enable = true; shellcheck = { enable = true; excludes = [ "\\.envrc$" ]; }; flake-checker.enable = true; treefmt = { enable = true; entry = "${treefmtEval.config.build.wrapper}/bin/treefmt --ci"; }; trim-trailing-whitespace.enable = true; }; }; in { checks = { pre-commit-check = mkPreCommitHooks ./.; }; }; }