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.
Part one makes it possible to inject branding info from the Makefile
which is not fully complete yet but can always be finished. The new
hash value can thus be used as a unqiue identifier for page resources
that may be subject to caching. By using the git hash it allows us
to have this effect on test commits as well as earch working version
as we don't want to track the changes for each file but still get a
good amount of caching.
Can't guarantee this is the final state, but opnsense-bootstrap
stopping over lingering repository information without the finger-
prints in place is not very helpful either.
Now we have a working copy of the file we need, it is already
reconfigured after install and it now also reverts FreeBSD.conf
back to its required state--which is off--to prevent problems.
Now that we have a plist it's easier to review/preview changes.
Can finally tackle the src/opnsense/contrib mess in a sensible
way with this and since we do not rely on mount/umount anymore.
When we build packages, we want to know if something is wrong.
For now, only use it in the upgrade path, not sure how to
to distinguish if a user or the build system is running the
package build.
o Makes live-mounting easier as the package config samples won't
be clobbered anymore.
o Automatically picks up ".in" files, runs replace and moves them
to their permanent location.
o Refactored src directory install while at it.