This is the project for the new angular.io (5.x) WebUI for FreeNAS 11. It is meant to coexist with current FreeNAS 11 Django/Dojo WebUI.
- npm >= 5
- Node.js >= 5
- Running FreeNAS 11 Nightly Machine (VM is fine)
Install the development requirements (FreeBSD 11 or later):
# pkg install npm
On some operating systems it is quickest to install npm > 3 first then install npm:
# npm install -g npm5
Checkout FreeNAS git repository:
$ git clone https://github.com/freenas/webui.git
$ cd webui
Install npm packages:
$ npm install
Run the environment configuration script (if your ip address changes later you may repeat this step)
$ ./setup_env.js -i <ip address or FQDN of the server where FreeNAS is running>
To start run
npm start
This runs a local webserver with the new WebUI, by default at https://localhost:4200. If this webserver is kept running, changes to the project will be rebuilt incrementally.
To test AOT in dev mode run
npm run start:dev:aot
To run the production build, run
npm run build:prod:aot
Getting errors about missing packages?
npm install
Getting permission errors or Failed messages when trying to run npm start
?
From the webui repo
rm -rf node_modules (may need root)
rm package-lock.json
npm cache clear --force
npm install
This should bring the npm environment back to a useable state.
To extract all of the strings from the project to be translated run:
npm run extract
This will update all of the PO files located in the directory src/assets/i18n. These can be edited with any PO editor.