Read in 3 minutes

last updated 

How to Install Go on Debian 9

Go is a modern open source programming language created by Google, used to build reliable, simple, fast and efficient software. Many popular applications, including Kubernetes, Docker, Teraform and Grafana, are written in Go.

In this tutorial we’ll walk you through the steps necessary to download and install Go on a Debian 9 system.

Prerequisites

Before continuing with this tutorial, make sure you are logged in as a user with sudo privileges.

How to Install Go

At the time of writing this article, the latest stable version of Go is version 1.10.3. Before downloading the tarball visit the official Go downloads page and check if there is a new version available.

Follow the steps below to install Go on Debian 9:

  1. Downloading Go.

    Download the Go tarball with the following wget command:

    wget https://dl.google.com/go/go1.10.3.linux-amd64.tar.gz
  2. Verifying the Go tarball.

    Use the sha256sum utility to verify the downloaded file checksum:

    sha256sum go1.10.3.linux-amd64.tar.gz
    fa1b0e45d3b647c252f51f5e1204aba049cde4af177ef9f2181f43004f901035  go1.10.3.linux-amd64.tar.gz

    Make sure the hash printed from the command above matches the one from the Go downloads page.

  3. Extracting the Go tarball.

    The following command will extract the tarball to the /usr/local directory:

    sudo tar -C /usr/local -xzf go1.10.3.linux-amd64.tar.gz
  4. Adjust the Path Variable.

    Now when the Go tarball is extracted, we need to edit the PATH environment variable so that our system knows where the Go executable binaries are located. We can do this by appending the following line to the /etc/profile file (for a system-wide installation) or to the $HOME/.profile file (for a current user installation):

    ~/.profile
    export PATH=$PATH:/usr/local/go/bin

    Save the file, and apply the new PATH environment variable to the current shell session:

    source ~/.profile

Test the Installation

To test whether Go is installed correctly on our machine we will set up a workspace and build a simple “Hello world” program.

  1. Create the workspace directory

    By default the workspace directory is set to $HOME/go, to create it type:

    mkdir ~/go
  2. Create a simple “Hello World” Go file.

    Inside the workspace create a new directory src/hello

    mkdir -p ~/go/src/hello

    and in that directory create a file named hello.go

    ~/go/src/hello/hello.go
    package main
    
    import "fmt"
    
    func main() {
        fmt.Printf("Hello, World\n")
    }

    To learn more about Go workspace directory hierarchy visit the Go Documentation page.

  3. Build the hello.go file:

    To build the file switch to the ~/go/src/hello directory and run go build:

    cd ~/go/src/hello
    go build

    The command above will build an executable named hello.

  4. Run the executable:

    You can run the executable by simply executing the command bellow:

    ./hello
    Hello, World

    If you see the same output as the one above, then you have successfully installed Go.

Conclusion

Now that you have downloaded and installed Go your Debian machine, you can start working on your Go projects.

If you hit a problem or have a feedback, leave a comment below.