blob: a0d1c1714be0dc1a13b3c89cadfa12225338ca85 [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|:-------------------|:------------------|:----------------------------|:--------------------------|
mikioh96f68ee2018-08-01 11:16:10 +090019| 6.4 | amd64, arm, 386 | Go 1.11 | |
20| 6.2 through 6.3 | amd64, arm, 386 | Go 1.9 | |
mikiohc6812382018-12-17 09:20:25 +090021| 6.1 | amd64, arm, 386 | Go 1.8 | Go 1.10.7 |
22| 6.0 | amd64, 386 | Go 1.4.1 _*_ | Go 1.10.7 |
23| 6.0 | arm | Go 1.5 | Go 1.10.7 |
Mikio Hara47264402018-02-08 08:58:37 +090024| 5.9 | amd64, 386 | Go 1.4.1 _*_ | Go 1.8.7 |
25| 5.9 | arm | Go 1.5 | Go 1.8.7 |
Mikio Hara21fdcde2017-05-24 21:35:56 +090026| 5.6 through 5.8 | amd64, 386 | Go 1.4.1 _*_ | Go 1.7.6 |
27| 5.5 | amd64, 386 | Go 1.3 _*_ | Go 1.7.6 |
Mikio Harac53c0cd2016-10-20 16:15:03 +090028| 5.0 through 5.4 | amd64, 386 | Go 1 | Go 1.2.2 |
Mikio Hara69c9dc42017-03-23 12:35:02 +090029
Mikio Haraddebc2c2016-09-29 16:31:41 +090030_*_ Go 1.5 or above is recommended.
Andrew Gerrand5bc444d2014-12-10 11:35:11 +110031
Erik Williamson1c94c542017-09-28 20:20:43 -070032## Longterm support
33
Erik Williamson2221b052017-09-28 20:26:55 -070034Go 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 -070035
Mikio Hara82de2872016-09-29 14:41:13 +090036## ulimits (` /etc/login.conf `)
Andrew Gerrand5bc444d2014-12-10 11:35:11 +110037
Michael McConville8ccc3172016-01-13 23:39:29 -050038Edit `/etc/login.conf` so that the staff class has the proper
Andrew Gerrand5bc444d2014-12-10 11:35:11 +110039settings. The following is a working example of the staff class:
40```
41staff:\
42 :datasize-cur=infinity:\
43 :datasize-max=infinity:\
44 :datasize=infinity:\
45 :openfiles-cur=4096:\
46 :maxproc-max=512:\
47 :maxproc-cur=512:\
48 :ignorenologin:\
49 :requirehome@:\
50 :tc=default:
51```
52
Michael McConvilleeee069b2016-01-13 23:36:43 -050053If the database file `/etc/login.conf.db` exists, you need to rebuild it with:
Andrew Gerrand5bc444d2014-12-10 11:35:11 +110054```
55# cap_mkdb /etc/login.conf
56```
57
Michael McConville1abb1222016-01-13 23:41:10 -050058Ensure that the user you intend to build Go with is in the `staff` login class:
Andrew Gerrand5bc444d2014-12-10 11:35:11 +110059```
Michael McConville1abb1222016-01-13 23:41:10 -050060# usermod -L staff your_username_here
Michael McConville9d08e0a2016-01-13 23:17:38 -050061```