Support multiple install methods for a single binary
- Dominant language
- Go
- Stars
- 57
- Forks
- 10
- Avg merge
- 5d 9h
- Merged PRs (30d)
- 7
Description
In order to make more flexible binny configurations, while remaining performant, it would be useful to support multiple installation methods.
An example that needs this is: installing `gh` on FreeBSD. Today, there is no binary published for FreeBSD, so a user would need to use the `go-install` method for portability. However, the `go-install` method is slow since it needs to download all dependencies and run a complete go build. It would be preferable to attempt to download a binary using the `github-release` method, and if that failed to fall back to a `go-install`.
Contributor guide
No contributing guide indexed for this repository
Research direction
Trace the existing github-release and go-install methods and how a binary selects its installation method. Determine how an ordered fallback can remain performant, then verify that a binary can try github-release and use go-install when no compatible release is available, with tests covering both outcomes.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- cli
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100