Packages / golang

APT repository · deb.freshdeb.com/golangprinted 28 Oct 2026, 07:20 UTC

golang

Go, the compiler, tools and standard library. golang-go makes it /usr/bin/go, as the distribution's does, and each supported minor is its own line, installable side by side. Two release lines, each its own APT component, for Debian 12 and 13, Ubuntu 22.04, 24.04 and 26.04 on amd64 and arm64.

Componentlatest

mirrors v1.27, currently 1.27.3, and moves when a newer line takes over.

Release line
Deliver to
golang-go 2:1.27.3-1+freshdeb~deb13

1Trust the signing key (once per machine)

sudo install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.freshdeb.com/freshdeb-archive-keyring.gpg \
  | sudo tee /etc/apt/keyrings/freshdeb-archive-keyring.gpg >/dev/null

Fingerprint 3BBD F03A 9C0B F890 F8CA 9510 7595 CC55 468F 3161. How to verify.

2Add the source

sudo tee /etc/apt/sources.list.d/freshdeb-golang.sources >/dev/null <<EOF
Types: deb
URIs: https://deb.freshdeb.com/golang
Suites: $(. /etc/os-release && echo $VERSION_CODENAME)
Components: latest
Signed-By: /etc/apt/keyrings/freshdeb-archive-keyring.gpg
EOF

With auto, the shell reads the codename from /etc/os-release on the machine you paste this into.

3Install

sudo apt update && sudo apt install golang-go
apt policy golang-go   # expect 2:1.27.3-1+freshdeb~…

Already on the distribution's golang? The freshdeb version sorts higher, so apt upgrade moves you over in place. Config and data stay where Debian put them.

golang-go 2:1.27.3-1+freshdeb~deb13

Compared with Debian's package

Debian's packaging decides where things go: package names, paths, users, services and how upgrades behave. The build follows upstream's own release builds wherever Debian's differs.

Source
Upstream's release tarball, pinned by the sha256 go.dev publishes, built with upstream's make.bash. None of Debian's patches: they only skip tests on architectures not built here.
Bootstrap
A pinned Go from go.dev, since the older releases have no Go recent enough to build 1.26 or 1.27. make.bash then rebuilds the toolchain with itself, so the bootstrap compiler isn't in the packages.
Default go
golang-go, golang-src, golang-doc, golang and golang-any, which Debian builds from golang-defaults, come from the same source, so apt install golang-go gives this Go as /usr/bin/go and gofmt. Like golang-defaults' they carry epoch 2.
Layout
Debian's: golang-1.27-go in /usr/lib/go-1.27, with -src and -doc. Each minor has its own packages, so the distribution's golang-1.26-go or ours can stay installed next to golang-1.27-go.
Defaults
Upstream's go.env, as Debian's: proxy.golang.org, sum.golang.org and GOTOOLCHAIN=auto. Settings from go env -w stay.

Packing list

Every release line of golang and the distributions it's built for. Each line is its own APT component and only gets the releases it follows (v1.27: 1.27.x, patch releases only). After upstream end of life it stops building but stays installable. Hatched cells have no build: usually that distribution already ships the same or a newer version itself.

LineComponentCurrentbookwormDebian 12trixieDebian 13jammyUbuntu 22.04nobleUbuntu 24.04resoluteUbuntu 26.04Support
1.27 v1.27latest 1.27.3 built: 2:1.27.3-1built: 2:1.27.3-1built: 2:1.27.3-1built: 2:1.27.3-1built: 2:1.27.3-1 until Aug 2027
1.26 v1.26 1.26.10 built: 2:1.26.10-1built: 2:1.26.10-1built: 2:1.26.10-1built: 2:1.26.10-1built: 2:1.26.10-1 until Feb 2027

Versions follow <upstream>-<revision>+freshdeb~<distro>, distro being deb12, deb13, ubuntu22.04, ubuntu24.04 or ubuntu26.04, for amd64 and arm64. Published versions are never rebuilt or replaced.

Contents

golang-1.27-go
The compiler, tools and compiled standard library, in /usr/lib/go-1.27.
golang-1.27
Metapackage for the minor's compiler, sources and documentation.
golang-1.27-doc
The minor's documentation.
golang-1.27-src
The minor's standard library sources.
golang-go
/usr/bin/go and gofmt for this Go.
golang-any
Transitional, depends on golang-go.
golang-src
The default Go's standard library sources.
golang-doc
The default Go's documentation.
golang
Metapackage for the default Go, its sources and documentation.

Origin

Upstream
go.googlesource.com/gorelease tags pinned to commit hashes, built from the checksummed release tarball
Debian packaging
salsa.debian.org/go-team/compiler/golangimported unmodified at 8f81a73 (1.27.3-1, unstable)
Our changes
overlays under overlays/ for bookworm, trixie, jammy, noble, resolute.
Built for
bookworm, trixie, jammy, noble, resoluteamd64, arm64, built natively

Also in Developer tools

Maintained by Blendbyte

Blendbyte builds cloud infrastructure, web apps, and developer tools. We've been shipping software to production for 20+ years.

These packages run in our own stack, which is why we keep them maintained. Issues and PRs get read. Good ones get merged.

Also from Blendbytenginx-modules.com: pre-built nginx dynamic modules (Brotli, GeoIP2, ModSecurity and more) for nginx.org's nginx, on the same Debian and Ubuntu releases.