From 257ade944e49559b898fc548f6e65e65d3319d7e Mon Sep 17 00:00:00 2001 From: Franck Cuny Date: Sun, 17 Aug 2025 19:41:36 -0700 Subject: 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. --- treefmt.nix | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 treefmt.nix (limited to 'treefmt.nix') 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; + }; +} -- cgit v1.2.3