It's been confusing to say the least, resulting in multiple
misuses throughout the code. The idea was that /cf pointed
to a read-write root, while / pointed to read-only root.
For non-embedded images this was emulated by linking
/conf -> /cf/conf, which, is a bit questionable because now
you can write from /conf as well and don't have to use /cf/conf
at all.
A couple of lines are left in /usr/local/etc/rc which need to
be reviewed so that migration paths are safe for all types
of firmware upgrades.
- remove the use for pfSctl, replaced with a new configd control script to be able to remove the check_reload_status port
- replace use of global $g['booting'] because some scripts use this outside the main loop which causes strange behavior ( for example dhcp client which starts a newwanip on connect ). replaced which check on file /var/run/booting which is set in rc script
We can dash out jails, use them for development or production
environments even. Sure, they may not support some priviledged
operation, but keeping weird glue around that is probably not
in all the places it should be is weird.
etcmfs has been known to break when /etc gets too big, so
just remove it with a general /tmp partition that is set via
the tools.git through rc.conf and slap unionfs mounts on top.
Make "src" the implicit "/usr/local" so that nobody can
sneak in weird files in the base file system or potentially
overwrite them.
This is the last time, I swear... :)