gvm icon indicating copy to clipboard operation
gvm copied to clipboard

add support for system-wide go install

Open neurogenesis opened this issue 10 years ago • 12 comments

gvm is great for managing user-specific or version-specific install of go, but doesn't support management of the system's version of go (used by default if a user hasn't installed gvm).

to simplify deployment and use of go apps to app-specific VMs or docker containers, where multiple versions likely aren't necessary, it would be nice to be able to install / manage the system version of go (/usr/bin/go). this would also allow a great cross-platform method of installing go, as no OS-specific packages are supported (rpm, apt/deb, etc.).

neurogenesis avatar May 21 '14 16:05 neurogenesis

Bump for this feature!

benbayard avatar Jun 29 '14 02:06 benbayard

This seems contrary to the intent of a version manager. The installation method for Go is unambiguous and easy to follow.

:-1: from me.

sgerrand avatar Jul 30 '14 09:07 sgerrand

@sgerrand Huh? What if you want several versions available to different users across the system?

skottler avatar Jul 30 '14 13:07 skottler

That use case seems fine to me, but appears different to this issue's description as currently phrased.

sgerrand avatar Jul 30 '14 13:07 sgerrand

@sgerrand

The installation method for Go is unambiguous and easy to follow.

if you're installing / removing / maintaining it manually, then yes... it is straightforward and easy to follow the instructions. if you're automating the installation of go across multiple platforms, particularly for those where OS packages don't exist (like ubuntu), then a universal go installation manager would be of high value.

some reasons why this would be helpful:

  • if dev and ops are using the same tools to manage go versions and environments, it will be easier to maintain parity across environments and keep production stable.
  • a system-wide go would be helpful for quickly bootstrapping servers with common admin apps, without having to set user-specific properties for all users on the system.
  • updating / maintaining a system-wide version of go would be much easier with something like gvm, as it is for Ruby with rvm or rbenv.
  • using a common tool like gvm would help make applications reliably portable across different customer environments (as go would be installed in a similar manner). without OS-specific packages, go installations will likely vary from environment to environment.

@skottler, having a system-wide installation of go isn't mutually exclusive of a user-specific installation. Tools like rvm and rbenv for ruby allow a system default to be easily overridden per user.

neurogenesis avatar Jul 30 '14 13:07 neurogenesis

bump

squanto avatar Aug 26 '14 05:08 squanto

Bump.

The installation method for Go is unambiguous and easy to follow.

Perhaps, but I don't want to have to figure it out all over again every few months, specially with cross compiler installs and all that.

tve avatar Dec 17 '14 05:12 tve

+1

marcioAlmada avatar Dec 28 '14 04:12 marcioAlmada

+1, the current per-user install is not at all dev-ops friendly.

bedge avatar Apr 20 '15 16:04 bedge

+1

rezen avatar Jan 28 '16 21:01 rezen

+1

yusuf81 avatar Apr 23 '17 18:04 yusuf81

If running on Ubuntu, we moved to godeb regarding the Docker scenario:

RUN wget https://godeb.s3.amazonaws.com/godeb-amd64.tar.gz && tar -xvzf godeb-amd64.tar.gz && rm -f godeb-amd64.tar.gz
RUN ./godeb install 1.11.4

Hopefully it helps someone ✌️

scalp42 avatar Dec 20 '18 20:12 scalp42