Go is an open source, statically typed, compiled programming language.
Go can be used to write software, and is used to make some of the packages that are available in the Gentoo ebuild repository.
USE flags for dev-lang/go A concurrent garbage collected and typesafe programming language
emerge --ask dev-lang/go
* After dev-lang/go is updated it is recommended to rebuild * all packages compiled with previous versions of dev-lang/go * due to the static linking nature of go. * If this is not done, the packages compiled with the older * version of the compiler will not be updated until they are * updated individually, which could mean they will have * vulnerabilities. * Run 'emerge @golang-rebuild' to rebuild all 'go' packages * See https://bugs.gentoo.org/752153 for more info
So it is advisable, after updating Go, to run:
emerge --ask @golang-rebuild
Go is a tool for managing Go source code. Usage: go <command> [arguments] The commands are: bug start a bug report build compile packages and dependencies clean remove object files and cached files doc show documentation for package or symbol env print Go environment information fix update packages to use new APIs fmt gofmt (reformat) package sources generate generate Go files by processing source get add dependencies to current module and install them install compile and install packages and dependencies list list packages or modules mod module maintenance work workspace maintenance run compile and run Go program test test packages tool run specified go tool version print Go version vet report likely mistakes in packages Use "go help <command>" for more information about a command. Additional help topics: buildconstraint build constraints buildmode build modes c calling between Go and C cache build and test caching environment environment variables filetype file types go.mod the go.mod file gopath GOPATH environment variable gopath-get legacy GOPATH go get goproxy module proxy protocol importpath import path syntax modules modules, module versions, and more module-get module-aware go get module-auth module authentication using go.sum packages package lists and patterns private configuration for downloading non-public code testflag testing flags testfunc testing functions vcs controlling version control with GOVCS Use "go help <topic>" for more information about that topic.
emerge --ask --depclean --verbose dev-lang/go
- Writing go Ebuilds — a short reference, intended to be read alongside Basic guide to write Gentoo Ebuilds and the go-module.eclass documentation
- Application level package management — provides best practice recommendations on managing the coexistence of operating system and application level package managers on Gentoo.