Skip to content

Releases: ProjectApario/igo

v1.1.0

Choose a tag to compare

@andreimerlescu andreimerlescu released this 06 Jun 00:21
c4d2223

Full Changelog: v1.0.3...v1.1.0

Installation Instructions

MacOS

Apple Silicon

mkdir ~/bin

# USING BASH
[ -f ~/.bashrc ] && echo 'export PATH=~/bin:$PATH' >> ~/.bashrc

# USING ZSH
[ -f ~/.zshrc ] && echo 'export PATH=~/bin:$PATH' >> ~/.zshrc

curl -L https://github.com/ProjectApario/igo/releases/download/v1.1.0/igo-darwin-arm64 --output ~/bin/igo

cd ~/bin
xattr -d com.apple.quarantine igo
chmod +x igo
cd ~
which igo
igo -version

Intel

mkdir ~/bin

# USING BASH
[ -f ~/.bashrc ] && echo 'export PATH=~/bin:$PATH' >> ~/.bashrc

# USING ZSH
[ -f ~/.zshrc ] && echo 'export PATH=~/bin:$PATH' >> ~/.zshrc

curl -L https://github.com/ProjectApario/igo/releases/download/v1.1.0/igo-darwin-amd64 --output ~/bin/igo

cd ~/bin
xattr -d com.apple.quarantine igo
chmod +x igo
cd ~
which igo
igo -version

Linux

mkdir ~/bin

# USING BASH
[ -f ~/.bashrc ] && echo 'export PATH=~/bin:$PATH' >> ~/.bashrc

# USING ZSH
[ -f ~/.zshrc ] && echo 'export PATH=~/bin:$PATH' >> ~/.zshrc

curl -L https://github.com/ProjectApario/igo/releases/download/v1.1.0/igo-linux-amd64 --output ~/bin/igo

cd ~/bin
chmod +x igo
cd ~
which igo
igo -version

v1.0.3

Choose a tag to compare

@andreimerlescu andreimerlescu released this 25 May 22:39
b1a1a3d

What's Changed

Installation Instructions

MacOS

Apple Silicon

mkdir ~/bin

# USING BASH
[ -f ~/.bashrc ] && echo 'export PATH=~/bin:$PATH' >> ~/.bashrc

# USING ZSH
[ -f ~/.zshrc ] && echo 'export PATH=~/bin:$PATH' >> ~/.zshrc

curl -L https://github.com/andreimerlescu/igo/releases/download/v1.0.3/igo-darwin-arm64 ~/bin/igo

cd ~/bin
xattr -d com.apple.quarantine igo
chmod +x igo
cd ~
which igo
igo -version

Intel

mkdir ~/bin

# USING BASH
[ -f ~/.bashrc ] && echo 'export PATH=~/bin:$PATH' >> ~/.bashrc

# USING ZSH
[ -f ~/.zshrc ] && echo 'export PATH=~/bin:$PATH' >> ~/.zshrc

curl -L https://github.com/andreimerlescu/igo/releases/download/v1.0.3/igo-darwin-amd64 ~/bin/igo

cd ~/bin
xattr -d com.apple.quarantine igo
chmod +x igo
cd ~
which igo
igo -version

Linux

mkdir ~/bin

# USING BASH
[ -f ~/.bashrc ] && echo 'export PATH=~/bin:$PATH' >> ~/.bashrc

# USING ZSH
[ -f ~/.zshrc ] && echo 'export PATH=~/bin:$PATH' >> ~/.zshrc

curl -L https://github.com/andreimerlescu/igo/releases/download/v1.0.3/igo-linux-amd64 ~/bin/igo

cd ~/bin
chmod +x igo
cd ~
which igo
igo -version

Full Changelog: andreimerlescu/igo@v1.0.2...v1.0.3

v1.0.2

Choose a tag to compare

@andreimerlescu andreimerlescu released this 21 May 00:07
bb588f8

Installation Instructions

MacOS

Apple Silicon

NOTE: You cannot skip the xattr -d com.apple.quarantine igo step in the installation, otherwise, MacOS will block the binary from executing and you'll be blocked from using igo.

mkdir ~/bin

# USING BASH
[ -f ~/.bashrc ] && echo 'export PATH=~/bin:$PATH' >> ~/.bashrc

# USING ZSH
[ -f ~/.zshrc ] && echo 'export PATH=~/bin:$PATH' >> ~/.zshrc

curl -L https://github.com/ProjectApario/igo/releases/download/v1.0.2/igo-darwin-arm64 ~/bin/igo

cd ~/bin
xattr -d com.apple.quarantine igo
chmod +x igo
cd ~
which igo
igo -version

Intel

mkdir ~/bin

# USING BASH
[ -f ~/.bashrc ] && echo 'export PATH=~/bin:$PATH' >> ~/.bashrc

# USING ZSH
[ -f ~/.zshrc ] && echo 'export PATH=~/bin:$PATH' >> ~/.zshrc

curl -L https://github.com/ProjectApario/igo/releases/download/v1.0.2/igo-darwin-amd64 ~/bin/igo

cd ~/bin
xattr -d com.apple.quarantine igo
chmod +x igo
cd ~
which igo
igo -version

Linux

mkdir ~/bin

# USING BASH
[ -f ~/.bashrc ] && echo 'export PATH=~/bin:$PATH' >> ~/.bashrc

# USING ZSH
[ -f ~/.zshrc ] && echo 'export PATH=~/bin:$PATH' >> ~/.zshrc

curl -L https://github.com/ProjectApario/igo/releases/download/v1.0.2/igo-linux-amd64 ~/bin/igo

cd ~/bin
chmod +x igo
cd ~
which igo
igo -version

Example Usage

Assume that you're using GoLand from JetBrains and you're on MacOS, you can run the following and expect something along these lines:

# install igo above
igo -cmd install -gover 1.24.3
source ~/.profile
cd ~/GolandProjects/oldgo-project
go version
# 1.18.0
cd ~/GolandProjects/newgo-project
go version
# 1.24.0

igo -cmd list 

igo -cmd env

igo -cmd fix -gover 1.18.0

igo -cmd install -gover 1.23.4 --debug 

igo -cmd uninstall -gover 1.18.0 --verbose

1.18.0 will get auto-installed into ~/go/versions/1.18.0 if it does not exist in order to satisfy the shim request.

igo will use the go.mod and parse the go 1.18.0 or go 1.24.3 line and use that.

~/go/root is GOROOT which is a symlink to ~/go/versions/$(cat ~/go/version)/go

~/go/path is GOPATH which is a symlink to ~/go/versions/$(cat ~/go/version)

~/go/bin is GOBIN which is a symlink to ~/go/versions/$(cat ~/go/version)/go/bin

GOMODCACHE is set by the shim and igoto ~/go/versions/$(cat ~/go/version)/go/pkg/mod

go is a Shim Bash 5.2 script designed for Linux & MacOS only at ~/go/shims/go

gofmt is a Shim Bash 5.2 script designed for Linux & MacOS only at ~/go/shims/gofmt`

bin/go is a symlink to ~/go/shims/go which evaluates and finds ~/go/versions/$(cat ~/go/versions)/go/bin/go.$(cat ~/go/version)

Full Changelog: https://github.com/ProjectApario/igo/commits/v1.0.2