Move /usr/local/etc/rc to /etc/rc.opnsense in order to be able
to boot without /usr mounted. Move the /boot files along with
it since they require the same type of /usr/local-escapting.
1. This needs further testing. :)
2. Inspect rc script for commands depend on /usr tools
Our rc.shutdown stays where it is, if we can shutdown we should be
able to access it. If not, it's not grabbed via /etc/rc.shutdown.
Now that we have metadata injection at build time read it instead
of its auxiliary files. Allow live-mount to snoop the metadata and
afterwards we can start to marry the version and firmware-product
file.
Last puzzle piece will be a tool called "opnsense-version" to read
the JSON metadata and return it in a piecemeal fashion of a part
of the system requires that info, especially from the shell.
We have successfully decoupled rc.installer from other components
so now we can merge both utilities. We use opnsense-installer for
user support, which is easier to invoke and remember.
The new package targets have no drawbacks compared to auto live
mount, but the latter has proven difficult and does not match the
normal boot scenario and could potentially panic due to unionfs
being broken beyond repair (kib@'s words in spirit, not mine).
Discussed with: @adschellevis