diff options
| author | Franck Cuny <franck@fcuny.net> | 2025-08-17 19:41:36 -0700 |
|---|---|---|
| committer | Franck Cuny <franck@fcuny.net> | 2025-08-17 19:48:14 -0700 |
| commit | 257ade944e49559b898fc548f6e65e65d3319d7e (patch) | |
| tree | ccb31df6871321994ba5fa1a0d477aa1eae7d140 /treefmt.nix | |
| parent | format go code with `nix fmt` (diff) | |
| download | x-257ade944e49559b898fc548f6e65e65d3319d7e.tar.gz | |
manage the repository with nix
Add a flake.nix to manage the development shell, the formatters, add
some pre-commit checks, and such.
This might evolve a bit over time but this is a good starting point.
Diffstat (limited to 'treefmt.nix')
| -rw-r--r-- | treefmt.nix | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/treefmt.nix b/treefmt.nix new file mode 100644 index 0000000..6d19624 --- /dev/null +++ b/treefmt.nix @@ -0,0 +1,30 @@ +{ pkgs, ... }: +{ + # See https://github.com/numtide/treefmt-nix#supported-programs + projectRootFile = ".git/config"; + settings.global.includes = [ + "*.go" + "*.yaml" + "*.yml" + "*.md" + "*.nix" + ]; + settings.global.fail-on-change = true; + settings.global.no-cache = true; + programs.gofumpt = { + enable = true; + package = pkgs.gofumpt; + }; + programs.goimports.enable = true; + programs.golines.enable = true; + # GitHub Actions + programs.yamlfmt.enable = true; + programs.actionlint.enable = true; + # Markdown + programs.mdformat.enable = true; + # Nix + programs.nixfmt = { + enable = true; + package = pkgs.nixfmt-rfc-style; + }; +} |
