Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

enhancement: add script to install from GitHub releases #477

Open
smsunarto opened this issue Aug 14, 2023 · 0 comments
Open

enhancement: add script to install from GitHub releases #477

smsunarto opened this issue Aug 14, 2023 · 0 comments

Comments

@smsunarto
Copy link

smsunarto commented Aug 14, 2023

Describe the feature
Currently, users would have to go to the GitHub release page, download the correct package, and manually install it on their system.

Using an installer script created via https://github.com/jpillora/installer, you can simply provide an endpoint to curl into and the script will do the rest of the heavy lifting. This is similar to what is used by https://rustup.rs, which makes it easy to install the Rust toolchain

Installer is an HTTP server which returns shell scripts. The returned script will detect platform OS and architecture, choose from a selection of URLs, download the appropriate file, un(zip|tar|gzip) the file, find the binary (largest file) and optionally move it into your PATH. Useful for installing your favourite pre-compiled programs on hosts using only curl.

Ex:

curl https://install.magefile.org/<release>! | bash

On a side note, it might be a good idea to highlight this (and package managers) as the preferred way to install magefile (instead of installing from source, which I doubt most devs need). Building from source (especially directly from the main branch instead of releases) puts more pressure on developing in main without breaking someone's setup.

What problem does this feature address?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant