2024-07-21 21:58:18 +02:00
|
|
|
{
|
|
|
|
perSystem = {
|
|
|
|
config,
|
|
|
|
pkgs,
|
|
|
|
...
|
|
|
|
}: {
|
|
|
|
# https://github.com/numtide/treefmt-nix?tab=readme-ov-file#flake-parts
|
|
|
|
formatter = config.treefmt.build.wrapper;
|
|
|
|
treefmt = {
|
|
|
|
projectRootFile = "flake.nix";
|
2024-07-22 00:05:07 +02:00
|
|
|
enableDefaultExcludes = true;
|
2024-07-22 01:20:41 +02:00
|
|
|
settings = {
|
|
|
|
global.excludes = ["*.png"];
|
|
|
|
};
|
2024-07-21 21:58:18 +02:00
|
|
|
programs = {
|
|
|
|
alejandra.enable = true;
|
|
|
|
|
|
|
|
shellcheck.enable = true; # cannot be configured, errors on basic bash convention
|
|
|
|
|
|
|
|
prettier = {
|
|
|
|
enable = true;
|
|
|
|
package = pkgs.prettierd;
|
2024-07-22 01:20:41 +02:00
|
|
|
settings.editorconfig = true;
|
2024-07-21 21:58:18 +02:00
|
|
|
};
|
|
|
|
|
|
|
|
shfmt = {
|
|
|
|
enable = true;
|
|
|
|
# https://flake.parts/options/treefmt-nix.html#opt-perSystem.treefmt.programs.shfmt.indent_size
|
|
|
|
indent_size = 2; # set to 0 to use tabs
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
}
|