gosetup/README.md

48 lines
1013 B
Markdown

# gosetup
Installs common Go development tools at pinned versions.
## Install
```bash
# current as of 2025-12-18
go install sneak.berlin/go/gosetup@a414a82306fe2095119eeeb3051bb3f23a803e1e ; hash -r ; gosetup
```
## Usage
```bash
# Install all tools at pinned versions
gosetup
# List tools and versions without installing
gosetup -l
# Dry run (show commands without executing)
gosetup -n
# Verbose output
gosetup -v
# Control parallelism (default: 4)
gosetup -j 8
```
## Updating Pinned Versions
To update `tools.json` with the latest versions:
```bash
go run ./cmd/update -o tools.json
```
## Included Tools
- **Language Server**: gopls
- **Formatters**: gofumpt, goimports, golines
- **Linters**: golangci-lint, staticcheck, errcheck, revive
- **vim-go tools**: godef, gotests, gomodifytags, impl, fillstruct, fillswitch, motion, iferr, asmfmt, gotags
- **Debugger**: dlv (delve)
- **Documentation**: godoc
- **And more**: gocyclo, ineffassign, misspell, unconvert, gopkgs, go-outline, go-symbols