K7DXS, The repos match the structure (and more documentation exists) from OpenWRT that we derive from.
arednbase: This is the linux kernel and core building blocks of a mesh node -- we hope to just package and reuse all the right components needed and not have to patch at this level.
aredn_ar71xx: These are all the configuration files and perl code where we spend 95%+ of our time to make AREADN what it is. One can make these changes on a live node directly -- you don't need a repository until ready to configuration manage changes.
aredn_packages: These are add-on packages we create. Tunnel, meshchat, etc.
bbhn_brcm24: frozen repo with linksys related releases
K7DXS, Generally, the first place to start is to fix a defect or create something new that you think would be of interest to others. These changes can be directly sent or hosted on your own website. Reference Trevor's contributions: http://www.trevorsbench.com/ . MeshChat is a great example of a very popular application that is an add-on to the AREDN releases and is separate.
Once you create something, and I recommend just doing so on a live mesh node, then there's a lot of folks on the AREDN team and in the community that can advise in the forums how to handle the code depending on what it is. Then a choice can be made to check your code into a repo, to submit separately, or that you may want to retain licensing and control yourself.
Getting into the inner AREDN circle and checking directly into the AREDN repos historically happens by these type of contributions first. Conrad started by porting to UBNT, I just started debugging prominent OLSR issues at the time, Darryl created what is today the tunnel capabilities, Trevor wrote meshchat, Randy helped beta testing and deployed our website, and Andre hurds us cats among other key leadership and domain contributions.
Actually, seeing as you've mentioned switching to Lua because it's lightweight, I've started porting perlfunc.pl to Lua. I'll put it up on a public repository tomorrow and post the link here. Even if you ditch the Lua idea, it's helping me sharpen both my Perl and my Lua skills.
I wouldn't expect a lot of the perl code routines will be coming over--TBD. If you load OpenWRT Chaos Calmer release on a mesh node, it includes all the LUCI-Lua UI technology and no perl. You could pick a page in the existing AREDN UI and seek to create this page in the LUCI structure with LUA underneath. With a clean Chaos Calmer install, look around under /usr/lib/lua as I recall. There's already some overlap of what is in the perl module in the LUA routines from Chaos Calmer to reuse rather than reinventing this wheel or bringing a duplicate implementation of existing routines.
As a best practice, using components that are experimental, beta, or other not-yet-released are not put into an AREDN release. It would be somewhat of a conflicting definition for AREDN to call something released, that the owners of the component do not. All the specific versions of components that are in Chaos Calmer are to be used, with case-by-case consideration to pull in a newer version of a component or a patch. But this means we take on the effort and risk of knowing all the dependencies still work. Historically, we have pulled in newer OLSR releases because it resolved critical issues.
arednbase: This is the linux kernel and core building blocks of a mesh node -- we hope to just package and reuse all the right components needed and not have to patch at this level.
aredn_ar71xx: These are all the configuration files and perl code where we spend 95%+ of our time to make AREADN what it is. One can make these changes on a live node directly -- you don't need a repository until ready to configuration manage changes.
aredn_packages: These are add-on packages we create. Tunnel, meshchat, etc.
bbhn_brcm24: frozen repo with linksys related releases
Joe AE6XE
Once you create something, and I recommend just doing so on a live mesh node, then there's a lot of folks on the AREDN team and in the community that can advise in the forums how to handle the code depending on what it is. Then a choice can be made to check your code into a repo, to submit separately, or that you may want to retain licensing and control yourself.
Getting into the inner AREDN circle and checking directly into the AREDN repos historically happens by these type of contributions first. Conrad started by porting to UBNT, I just started debugging prominent OLSR issues at the time, Darryl created what is today the tunnel capabilities, Trevor wrote meshchat, Randy helped beta testing and deployed our website, and Andre hurds us cats among other key leadership and domain contributions.
Joe AE6XE
;-)
Joe AE6XE