https://github.com/dikaeinstein/godl
Godl is a CLI tool used to download and install go binary releases on mac
https://github.com/dikaeinstein/godl
cli cobra golang
Last synced: 2 months ago
JSON representation
Godl is a CLI tool used to download and install go binary releases on mac
- Host: GitHub
- URL: https://github.com/dikaeinstein/godl
- Owner: dikaeinstein
- License: apache-2.0
- Created: 2019-01-15T12:07:25.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2024-01-28T16:14:36.000Z (over 1 year ago)
- Last Synced: 2025-03-08T13:02:30.282Z (3 months ago)
- Topics: cli, cobra, golang
- Language: Go
- Size: 9.18 MB
- Stars: 12
- Watchers: 0
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: contributing.md
- License: LICENSE
Awesome Lists containing this project
README
# godl
Godl is a CLI tool used to download and install go binary releases on mac. It supports both Intel and M1 macs.
[](https://github.com/dikaeinstein/godl/actions)
[](https://coveralls.io/github/dikaeinstein/godl?branch=master)## Download and Install
To download and install a specific version of godl, copy and paste the installation command:
```bash
curl -s https://raw.githubusercontent.com/dikaeinstein/godl/master/get.sh | sh -s -- v0.18.0
```## Install with Go
```bash
go install github.com/dikaeinstein/godl
```## Build From Source
Prerequisites for building from source are:
- make
- Go 1.18+```bash
git clone https://github.com/dikaeinstein/godl
cd godl
make build
```If you've have setup your $GOPATH or $GOBIN correctly, you should have `godl` command in your $PATH.
*To check the $GOPATH and $GOBIN; run `go env`*
Run `godl version` to verify.
Run `godl help` to get help and see available options
## Subcommands
*godl supports autocomplete for all subcommands*
- `completion` — Generates completion scripts for bash or zsh
- `download` — Download go binary archive
- `help` — Help about any command
- `install` — Installs the specified go binary release version
- `list|ls` — List the downloaded versions
- `list-remote|ls-remote` — List available remote versions
- `update` - Checks for updates.
- `version` — Show the godl version information## Typical Usage (example)
To download and install go1.20:
```bash
# To download only
godl download 1.20# To download and install if the given version is already downloaded.
sudo godl install 1.20```
Then run
```bash
go version
``````bash
output: go version go1.20 darwin/amd64 // or something similar
```### Improvement
- update sub command to install latest version or specific version (tip: exec get.sh)
- support M1 Macs### Contributing
You can take a shot at the suggested improvements from the README. Also follow the convention from the `contribution.md`