blob: 413caddf16bc54caab29f0ab83b3cf6739bffb51 [file] [log] [blame] [view]
Andrew Gerrand5bc444d2014-12-10 11:35:11 +11001# Go on OpenBSD
2
Constantine A. Murenin1beb25b2015-02-25 20:26:18 +00003Go is available within the OpenBSD ports tree collection since OpenBSD 5.2. It is marked as i386- and amd64- only. See [`ports/lang/go`](http://ports.su/lang/go) for details.
Constantine A. Mureninc2964ab2015-02-25 20:04:31 +00004
Dimitri Sokolyuk0f43a302017-10-10 09:17:44 +02005| **OpenBSD release** | **Go in ports** |
Constantine A. Mureninc2964ab2015-02-25 20:04:31 +00006|:--------------------|:--------------------|
Dimitri Sokolyuk0f43a302017-10-10 09:17:44 +02007| 6.2 (Oct 9, 2017) | go-1.9 |
Dimitri Sokolyuk09a63d12017-04-22 13:03:37 +02008| 6.1 (Apr 11, 2017) | go-1.8 |
Dimitri Sokolyukec097922016-09-10 15:31:41 +02009| 6.0 (Sep 1, 2016) | go-1.6.3 |
Dimitri Sokolyukf0ac4272016-04-24 00:44:03 +020010| 5.9 (Mar 29, 2016) | go-1.5.4 |
Dimitri Sokolyuk6502da82015-10-19 17:15:00 +020011| 5.8 (Oct 18, 2015) | go-1.4.2 |
Jack Peirce67c88152015-05-07 20:20:37 -060012| 5.7 (May 1, 2015) | go-1.4.1 |
Constantine A. Murenin1beb25b2015-02-25 20:26:18 +000013| 5.6 (Nov 1, 2014) | go-1.3p0 |
Constantine A. Mureninc2964ab2015-02-25 20:04:31 +000014
Mikio Hara82de2872016-09-29 14:41:13 +090015## Building from source
Constantine A. Mureninc2964ab2015-02-25 20:04:31 +000016
Mikio Harac53c0cd2016-10-20 16:15:03 +090017| **Kernel version** | **Architectures** | **Initial support version** | **Final support version** |
18|:-------------------|:------------------|:----------------------------|:--------------------------|
Dimitri Sokolyuk0f43a302017-10-10 09:17:44 +020019| 6.2 | amd64, arm, 386 | Go 1.9 | |
Mikio Hara55554742016-12-12 16:42:45 +090020| 6.1 | amd64, arm, 386 | Go 1.8 | |
Mikio Hara1a58b6b2017-10-05 09:15:49 +090021| 6.0 | amd64, 386 | Go 1.4.1 _*_ | |
22| 6.0 | arm | Go 1.5 | |
Mikio Hara47264402018-02-08 08:58:37 +090023| 5.9 | amd64, 386 | Go 1.4.1 _*_ | Go 1.8.7 |
24| 5.9 | arm | Go 1.5 | Go 1.8.7 |
Mikio Hara21fdcde2017-05-24 21:35:56 +090025| 5.6 through 5.8 | amd64, 386 | Go 1.4.1 _*_ | Go 1.7.6 |
26| 5.5 | amd64, 386 | Go 1.3 _*_ | Go 1.7.6 |
Mikio Harac53c0cd2016-10-20 16:15:03 +090027| 5.0 through 5.4 | amd64, 386 | Go 1 | Go 1.2.2 |
Mikio Hara69c9dc42017-03-23 12:35:02 +090028
Mikio Haraddebc2c2016-09-29 16:31:41 +090029_*_ Go 1.5 or above is recommended.
Andrew Gerrand5bc444d2014-12-10 11:35:11 +110030
Erik Williamson1c94c542017-09-28 20:20:43 -070031## Longterm support
32
Erik Williamson2221b052017-09-28 20:26:55 -070033Go aims to support the two most recent OpenBSD releases, because OpenBSD officially supports only the two most recent releases, and makes a best-effort attempt to maintain ABI support in consecutive releases.
Erik Williamson1c94c542017-09-28 20:20:43 -070034
Mikio Hara82de2872016-09-29 14:41:13 +090035## ulimits (` /etc/login.conf `)
Andrew Gerrand5bc444d2014-12-10 11:35:11 +110036
Michael McConville8ccc3172016-01-13 23:39:29 -050037Edit `/etc/login.conf` so that the staff class has the proper
Andrew Gerrand5bc444d2014-12-10 11:35:11 +110038settings. The following is a working example of the staff class:
39```
40staff:\
41 :datasize-cur=infinity:\
42 :datasize-max=infinity:\
43 :datasize=infinity:\
44 :openfiles-cur=4096:\
45 :maxproc-max=512:\
46 :maxproc-cur=512:\
47 :ignorenologin:\
48 :requirehome@:\
49 :tc=default:
50```
51
Michael McConvilleeee069b2016-01-13 23:36:43 -050052If the database file `/etc/login.conf.db` exists, you need to rebuild it with:
Andrew Gerrand5bc444d2014-12-10 11:35:11 +110053```
54# cap_mkdb /etc/login.conf
55```
56
Michael McConville1abb1222016-01-13 23:41:10 -050057Ensure that the user you intend to build Go with is in the `staff` login class:
Andrew Gerrand5bc444d2014-12-10 11:35:11 +110058```
Michael McConville1abb1222016-01-13 23:41:10 -050059# usermod -L staff your_username_here
Michael McConville9d08e0a2016-01-13 23:17:38 -050060```