Many store-bought machines go through a "firstrun" process when they are first plugged in. Linux ordinarily doesn't do this, because everything is configured as part of the install process. On Novena, we need to take care of this after the fact. This is the job of novena-firstrun.
The firstrun script uses whiptail, along with dpkg-reconfigure and some stupid shell tricks in order to customize the board for each user. The script will add a normal user, reset the root password, configure timezone settings, and prompt for a hostname (with an optionally-random value).
After configuration, the program removes /var/lib/firstrun indicating that it has completed its first run.