FreeNAS Git Repository
Python JavaScript Shell HTML CSS TypeScript Other

IMPORTANT NOTE: This is the master branch of freenas, which is used only for the creation and testing of 9.10-Nightlies builds. If you are building or developing for:

Building FreeNAS

To build the system (experts only):


  • Your build environment must be FreeBSD 10.

  • an amd64 capable processor. 8GB of memory, or an equal/greater amount of swap space, is also required

  • You will need the following ports/packages when compiling anything FreeNAS-related:

    • ports-mgmt/poudriere-devel
    • devel/git
    • devel/gmake
    • sysutils/cdrtools
    • archivers/pxz
    • lang/python3
    • sysutils/grub2-pcbsd
    • sysutils/xorriso
    • sysutils/grub2-efi
    • py27-sphinx
    • py27-sphinxcontrib-httpdomain-1.2.1 (and all the dependencies that these ports/pkgs install, of course)

Building the System Quickstart Flow:

  • Checking out the code from git:
% cd /path/to/your-build-filesystem
% git clone
% cd freenas-build
  • Build it
% make checkout PROFILE=freenas9
% make release PROFILE=freenas9
  • Update the source tree, to pull in new source code changes
% make update PROFILE=freenas9

This will also fetch TrueOS and ports for the build from github.

The End Result:

If your build completes successfully, you'll have 64 bit release products in the release_stage directory. You will also have a tarball in your build directory containing the entire release for easy transport.