diff options
author | Alan Pearce | 2024-05-02 13:55:48 +0200 |
---|---|---|
committer | Alan Pearce | 2024-05-02 22:40:38 +0200 |
commit | 7ad48953a4d9470d2f4fe89343c0b09bff410c58 (patch) | |
tree | 9aa74fcb05f51df6b56d1a6025217dd3c5075a4b /default.nix | |
download | searchix-7ad48953a4d9470d2f4fe89343c0b09bff410c58.tar.lz searchix-7ad48953a4d9470d2f4fe89343c0b09bff410c58.tar.zst searchix-7ad48953a4d9470d2f4fe89343c0b09bff410c58.zip |
chore: initial commit
Diffstat (limited to 'default.nix')
-rw-r--r-- | default.nix | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/default.nix b/default.nix new file mode 100644 index 0000000..0697abc --- /dev/null +++ b/default.nix @@ -0,0 +1,68 @@ +let + sources = import ./nix/sources.nix; +in +{ pkgs ? ( + import sources.nixpkgs { + overlays = [ + (import "${sources.gomod2nix}/overlay.nix") + ]; + } + ) +}: { + searchix = pkgs.buildGoApplication { + pname = "searchix"; + version = "0.1"; + pwd = ./.; + src = ./.; + modules = ./gomod2nix.toml; + }; + + pre-commit-check = (import sources.git-hooks).run { + src = ./.; + hooks = { + gotest.enable = true; + golangci-lint.enable = true; + staticcheck.enable = true; + + statix.enable = true; + deadnix = { + enable = true; + excludes = [ "./nix" ]; + }; + nixpkgs-fmt.enable = true; + + convco.enable = true; + + check-case-conflicts.enable = true; + check-symlinks.enable = true; + editorconfig-checker.enable = true; + prettier = { + enable = true; + types_or = [ "plain-text" "yaml" ]; + settings = { + check = true; + }; + }; + + yamllint = { + enable = true; + }; + go-mod-tidy = { + enable = true; + name = "go-mod-tidy"; + description = "Run `go mod tidy`"; + types_or = [ "go" "go-mod" ]; + entry = "${pkgs.go}/bin/go mod tidy"; + pass_filenames = false; + }; + gomod2nix = { + enable = true; + name = "gomod2nix"; + description = "Import go.mod updates to nix"; + types_or = [ "go-sum" ]; + entry = "${pkgs.gomod2nix}/bin/gomod2nix"; + pass_filenames = false; + }; + }; + }; +} |