48 lines
1013 B
Markdown
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
|