Hi Nz.
I'm not sure if I understand what you saying about the "Master Profile".
But you can create a libremesh firmware image without adding any profile
and you will get the default options which, in theory, are the ones
which work better and cover more use-cases. So, not selecting any
network profile is the same of using a master profile IMO.
Regarding your other point, maybe this PR (which is already merged into
Master) solves your issues?
I’ve been following the expansion of our
network-profiles repo and I
keep growing a stronger and stronger idea that it’s becoming harder and
harder to understand which of the various configs works best.
LiMe has the amazing goal to help automate and standardize all of the
best-practices for mesh networking out of the box, and yet the defaults
don’t seem to work at their best. The default
network-profiles/libremesh/default profile still uses adhoc, the ath10k
workarounds still need to be stolen from the quintanalibre profile, and
I only learned about the babel flavor from the MieresLliure profile.
Furthermore I still believe that running a diff of the entire
lime-defaults file between profiles is cumbersome, and I believe one
should be able to override a single setting [like the wpa2-psk setting
for the APNAME network] without needing to copy-paste the entire
lime-defaults file, and changing that single setting, especially so that
in the future, when the default lime-defaults gets better, all profiles
inherit the new changes while only maintaining the specific overrides
they have applied. Also sometimes I see settings applied in uci-defaults
rather than in lime-defaults, and that too is confusing.
This is in addition to the fact that there are of course several dev
branches on the lime-sdk repo, which further complicates things, but it
is necessary as we all know to make things move forward.
I think we should be adopting a “master profile” approach where the
default is the best option out there. Say MieresLliure tries out babel
and that works out better than bmx6, we implement that into default, and
everyone can benefit, making that the new default. Say instead that an
A/B test reveals bmx7 works better, we pull that and make that the
default. We’ve made 802.11s the new default some time back, but still
loads of profiles out there use adhoc.
I’m saying that too much of the config is profile-specific, whereby I
think a profile should literally only have customizations inside, like
the name of the community or of the public network name. And yes of
course we should still be able to force bmx7 the default, but only for
dev purposes, run a public test [A/B or whatever], gather data in a
scientific way, and determine publicly which of the results should be
pulled and made the default, thereby pushing the new config to all
existing profiles [because - for example - the openNET.io profile won’t
have a long lime-defaults file specifying bmx6 or babel, it’ll simply
say “make the public network called openNET.io and password Aurora42+”,
and nothing else, unless explicitly specified].
This would allow for a much lower fragmentation [think of it kind of
like project treble in the android world].
I love LiMe and strongly believe that a highly consistent and
lightweight customization will avoid the apparently inevitable
fragmented and confusing future several open projects out there suffer from.
Let me know what you think
Nz
_______________________________________________
lime-users mailing list
lime-users(a)lists.libremesh.org
https://lists.libremesh.org/mailman/listinfo/lime-users