-
Notifications
You must be signed in to change notification settings - Fork 141
Open
Labels
enhancementNew feature or requestNew feature or request
Description
treefmt-nix currently doesn't support golangci-lint, a popular and comprehensive Go linter. Go developers have to use separate tools or less comprehensive linters.
Proposed Solution
Add programs/golangci-lint.nix with comprehensive configuration options, following patterns from typos.nix and prettier.nix:
enableLinters/disableLinters: Control which linters to runconfigFile: Path to custom config filetimeout: Set analysis timeoutconcurrency: Configure CPU usagebuildTags: Specify build tagstests: Control test file analysisfastOnly: Run only fast linters
Implementation
I can implement this new formatter with:
- Full golangci-lint CLI option support
- Follows established treefmt-nix patterns
- Comprehensive configuration options
- Auto-fixing capabilities (
--fixflag)
This would allow users to configure golangci-lint declaratively:
programs.golangci-lint = {
enable = true;
enableLinters = [ "govet" "errcheck" "staticcheck" ];
timeout = "5m";
tests = false;
};Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request