Running WriteFreely on FreeBSD
This site is a WriteFreely site, running on FreeBSD 12. As it happens, making WriteFreely fly on FreeBSD was more problematic than I expected.
To quote my own README:
The trick is that their ActivityPub implementation is a beast to build. I've never had the go complier get hit by the OOM killer before so that was special.
I tried cross-compiling the app on my Linux laptop but the app requires cgo. Go's usual cross-compilation magic doesn't apply. WriteFreely's release process builds binaries for Linux, Windows, and Mac via xgo. xgo, in turn, requires docker and a huge docker image. Fuck that.
I ended up throwing it into my beefy HardenedBSD server. The build process chewed 3GB of RAM and most of 8 cores.
To maybe help someone else, I'm publishing the binary I built and the startup script I wrote over at https://git.sungo.wtf/sungo/writefreely-freebsd
The binary was built on HardenedBSD 11 with go 1.11 and I'm running it on FreeBSD 12.
I'll keep the repo up to date as new releases occur.