It's cool and important that much of the core functionality of Frontier is
implemented in the root file rather than the kernel. But there's one
huge drawback: people can't take advantage of (many of the) new
features just by grabbing the latest app, and can't grab the latest
Frontier.root without (in many cases) massive disruption to established
preferences, settings, etc.
My ultimate goal here is that anyone should be able to just quit
Frontier, make a backup, drop the latest app+root into their current
folder, launch and be on their way. (And, revert to the previous
app+root at any time just as easily.)
Having a separate user.root probably isn't sufficient, but it's a
necessary first step and will help us discover what else is required.
e.g. user.verbs.apps and perhaps user.suites.
Note that the top level table of user.root should be "user" since
everything at the top level of open ODBs is in the global namespace.
Because of that, existing code should "just work".
There's one gotcha to watch out for: since addresses currently include
the filepath, there may be problems moving things across machines. I
wonder if that's a bug (or feature request) that we have to act on
first???
Logged In: YES
user_id=1141133
"But there's one huge drawback: people can't take advantage
of (many of the) new features just by grabbing the latest
app, and can't grab the latest Frontier.root without (in
many cases) massive disruption to established preferences,
settings, etc."
The root updates process helps a lot in this regard.
UserLand has been using it for several years successfully.
I'm working on that for the first full package release of
the open source version. Of course that means that you have
to get on board with the official release.
I mentioned on the Yahoo group that I ran into an issue <
http://groups.yahoo.com/group/frontierkernel/message/1566 >
when testing the user.root concept. I've put my own work on
the back burner for now.
However one thought occurred to me that might get us
desireable results. How about we don't move root.user but
come up with a way to swap information in and out?
"Note that the top level table of user.root should be "user"
since everything at the top level of open ODBs is in the
global namespace. Because of that, existing code should
'just work'."
Unfortunalty it just doesn't work. See my Yahoo group
message above for more info.