-
Notifications
You must be signed in to change notification settings - Fork 0
Building binaries on FreeBSD
FreeBSD binaries are built using Poudriere, a FreeBSD-specific tool to build binary packages using a clean-room environment. Poudriere:
- Creates and manages lightweight virtual environments (jails) for i386 and amd64
- Keeps virtual environments up to date
- Manages the building process, logging and packaging. It can expose results via the HTTP interface.
Another tools being used is portshaker which helps to merge different FreeBSD port trees and keep them up to date. A FreeBSD port tree describes how applications should be built into binary packages and installed. This is the standard way of building third-party software on FreeBSD.
#Custom ports tree
Since node-sass
and many npm packages are not yet part of the official FreeBSD ports tree, we maintain a custom ports tree which contains the necessary elements. That's why we need portshaker to combine the official tree (containing python, compilers, node) and the custom tree.
We currently have the following custom ports:
Port name | Description |
---|---|
misc/node-gyp-headers |
Development headers for various node and iojs versions |
www/iojs42 |
Old version of io.js 1.0.4 to build binaries for NODE_MODULE_VERSION == 42 |
www/npm |
npm port modified to support io.js 1.0.4 as well as to workaround segfault in i386 environment |
textproc/libsass |
updated libsass FreeBSD port |
textproc/sassc |
sassc to match the updated libsass |
textproc/node-sass |
Instructions how to build node-sass (depends on the libsass port) |