Put FreeNAS specific stuff under !is_truenas
Target to generate iso for testing.

(cherry picked from commit a03553aad6d182b2fbfa6deb7fba3bdd5f4eff92)
Define TRUENAS_COMPONENTS_ROOT to where trunnas files are.

This is where the TrueNAS build dir is pulled to pick out
parts used to generate TrueNAS.

(cherry picked from commit ee6c1bcc724f45fc1a43e5202e55d29985402ea7)
Make install_sata_dom.sh based on is_truenas.

(cherry picked from commit 6737cdb9be6621b883624ddb8133aba1435396d1)

Conflicts:
	build/create_iso.sh
sync from truenas, check for NANO_LABEL/VERSION
Partial sync with TrueNAS (satadom install).
Sync the required parts for dealing with satadoms.
Add NANO_LABEL_LOWER, remove useless comments.
Move is_truenas() to build/nano_env.

build/nano_env needs to make use of it, however most
of our code pulls in functions.sh AFTER nano_env.
Set the logo for the loader.conf based on NANO_LABEL.

Also define NANO_LABEL_LOWER which we'll need for a few places starting with
the cdrom loader.conf file.

(cherry picked from commit de4a8b2188691af67bdf6a625001bd9be3f14695)

Conflicts:
	build/files/loader.conf.cdrom
Make save_build.sh NANO_LABEL agnostic.

Conflicts:
	build/save_build.sh

cherry-picked from dfc3706c3032e82d257ae6a30885748091f4d8f8
Sync from TrueNAS.
sync over the HT (host tool command) from TrueNAS.

We use this command to run host tools for build tools that are
incompatible with the the build host such as geli (for the time
being).
Revert "Switch off debug output for the installer."

This reverts commit 5b1fe692c117c7ca34543347fc559b50b3e844b9.

Sync to TrueNAS.

set -e is not debug output, it is "exit on error".
Ifdef things FreeNAS/TrueNAS.

Right now we are only syncing the ports.  The rest of
this file will follow.
Retire unused guess_kern_ipc_nmbjumbo9.
Use local variables, sync from TrueNAS
Sync from TrueNAS.  XXX: needs double check.
Allow for TrueNAS kernel customizations.
merge comments for slice layout