Установка последней последней версии golang на Ubuntu

Самый простой и быстрый способ установить последнюю версию golang, в моем случае это golang-1.12, на Ubuntu 16.04, 18.04, 18.10 и выше.

Добавляем PPA репозиторий и вперед …

sudo add-apt-repository ppa:longsleep/golang-backports
sudo apt-get update
sudo apt-get install golang-go

Для проверки установленной версии введите команду

go version

Что делать с ошибкой NO_PUBKEY

При добавлении репозитория вручную и обновления списка пакетом, можно натолкнуться на такую ошибку:

The following signatures couldn’t be verified because the public key is not available: NO_PUBKEY

Чтобы решить эту проблему, нам нужно добавить ключ шифрования:
Добавляем этот ключ с сервера ключей

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 

Если ключ не найден, пробуем найти его на другом сервере

sudo gpg --keyserver pgpkeys.mit.edu --recv-key  
sudo gpg -a --export  | sudo apt-key add -
sudo apt-get update

Upgrade Ubuntu 14.04 to 16.04 — ошибки

После, казалось бы, успешного обновления с помощью команды do-release-upgrade при выполнении простого apt-get update мы получаем ошибку:

apt-get: relocation error: /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0: symbol _ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE7compareERKS4_, version GLIBCXX_3.4.21 not defined in file libstdc++.so.6 with link time reference

Порядок действий для ее устранения:

wget http://launchpadlibrarian.net/259210936/libstdc++6_5.3.1-14ubuntu2.1_amd64.deb
sudo dpkg -i libstdc++6_5.3.1-14ubuntu2.1_amd64.deb
sudo apt-get update
sudo apt-get -f install
sudo apt-get autoremove