]> git.giacomolli.uk - onechat/blob - nix/devshell.nix
Check error handling and common Go mistakes
[onechat] / nix / devshell.nix
1 { pkgs }:
2 pkgs.mkShell {
3   packages = with pkgs; [
4     git
5     git-bug
6     go
7     gofumpt
8     golangci-lint
9     gopls
10     nixfmt
11     (python3.withPackages (p: [
12       p.mdformat
13       p.mdformat-gfm
14       p.mdformat-frontmatter
15     ]))
16     rstfmt
17     shellcheck
18     vim
19   ];
20
21   GOTOOLCHAIN = "local";
22
23   shellHook = ''
24     git config core.hooksPath .githooks 2>/dev/null || true
25     root=$(git rev-parse --show-toplevel 2>/dev/null || pwd)
26     export ONECHAT_DIR="''${ONECHAT_DIR:-$root/.devenv/onechat}"
27     unset root
28   '';
29 }