![https://github.com/raw/ninuxorg/nnxx-firmware/master/docs/nnxx.png](https://github.com/raw/ninuxorg/nnxx-firmware/master/docs/nnxx.png)
Table of Contents:
This repository contains the ansible configurations of the various components that are being used in the NNXX (Ninux Experimental) infrastructure (ninux experimental).
The firmware is based on LEDE and the following additional software:
- olsrd2
- luci-ssl
- openvpn
- openwisp-config
The firmware images are managed via ansible-openwisp2-imagegenerator, an ansible role that allows to build several lede firmware images for different organizations while keeping track of their configurations (for more information regarding the process, see the project's README).
- a debian/ubuntu based VM
- root access
- at least 100 GB of free space
Note: please take some time to read about the build process of ansible-openwisp2-imagegenerator.
First of all, you have to install the requirments roles role via ansible-galaxy:
ansible-galaxy install -r requirements.yml
In order to compile the firmware, you need to have access to one of the hosts listed in the hosts, preferably via an SSH key installed on the server.
Recompile the image builders and build all the images:
ansible-playbook -i hosts firmware.yml -l builder -u <user> -e "recompile=1 cores=4"
After the first compilation, you can avoid recompiling again by running:
ansible-playbook -i hosts firmware.yml -l builder -u <user>
Run only the building steps by using the specific tags:
ansible-playbook -i hosts firmware.yml -l builder -u <user> -t generator,build
To compile on a different host than the ones specified in the hosts file, create a private_hosts
file:
[builder] my.project.org ansible_user=user ansible_port=22
Now run:
ansible-playbook -i private_hosts firmware.yml -l builder -e "recompile=1 cores=4"