Thanks a lot for taking the time to do this, Dave. I’ve got a few followups 
below.

After that, I’ll start working out a plan for discovering who best to ask about 
these subjects, and how best to approach the team for contributing. I know you 
are all super busy, and I don’t want to start randomly bugging people.



On 26 Jun 2014, at 20:42, Dave Hylands <[email protected]> wrote:

> Hi Chris,
> 
> Comments interspersed below.
> 
> From: "Chris Mills" <[email protected]>
> To: [email protected]
> Cc: "Ali Spivak" <[email protected]>
> Sent: Thursday, June 26, 2014 5:37:42 AM
> Subject: [b2g] I need your help: Developing Firefox OS documentation
> 
> Hi all,
> 
> Now I've got the Developing Gaia documentation[1] up to scratch, it is now 
> time to turn my attention to Developing Firefox OS's lower level platform 
> areas.
> 
> And I need your help to begin with, as I don't really know that much about 
> build systems, etc. The current Developing Firefox OS page[2] is now quite 
> sparse, now I've moved all the Gaia-specific stuff to a dedicated page.
> 
> The question is really: How can a contributor actually contribute to Firefox 
> OS, the non-Gaia parts, usefully?
> 
> On my list I've got:
> 
> * Gecko - this is pretty much the same as regular Firefox OS Gecko dev, but 
> can someone comment on this, and help me outline what is different? What 
> should I say here? Should we call out API writing/contributions specifically?
> Most of the things in gecko that are gonk specific either use #ifdef 
> MOZ_WIDGET_GONK or are in a gonk subdirectory.
> 
> 2202 >find gecko/ -name gonk
> gecko/hal/gonk
> gecko/widget/gonk
> gecko/dom/mobilemessage/src/gonk
> gecko/dom/telephony/gonk
> gecko/dom/system/gonk
> gecko/dom/wappush/src/gonk
> gecko/uriloader/exthandler/gonk

This is good to start with. Maybe for this I just need a page saying where the 
Gonk code lives, what skills are needed, how to find bugs to work on?

> 
> * Gonk - we currently have very little information on Gonk. What should I say 
> about this? How can externals contribute?
> gonk itself is really just a stripped down version of android. We try not to 
> change gonk itself since most of the source code isn't under our control 
> anyways.

ok, this is good to know.

> 
> The device specific stuff we normally get from the vendors we deal with.
> * Porting Firefox OS to other devices - I'm sure it would be useful to give 
> people some guidance on this, but what information should we provide?
> It really varies depending on the device, and how much customization the 
> vendor has done to the android sources.
> This page covers some high level stuff: https://wiki.mozilla.org/B2G/Porting 
> although I suspect its out of date.
> Not having ported anything yet, I'm not sure of everything that's involved.

ok, probably still worth investigating.

> * Knowing your way around the B2G build system - it would be great to provide 
> a really detailed view of how it works, what it does at each stage, etc. So 
> that developers can help with it, and fix building problems as they arise 
> (there's been a lot of traffic on the mailing list about this kind of thing 
> recently.)
> The B2G build system is really just the android build system.
> 
> gonk/misc/Android.mk is where we have a target called gecko, which in turn 
> calls make to build gecko.
> There is also a target called profile.tar.gz defined in gaia/Android.mk
> 
> Everything inside gecko then gets built using normal gecko procedures
> Everything inside gaia gets built using Android.mk and/or Makefile
> 
> The rest is pretty much built using android build.

We’ve got a fair bit of this already, in different places, but I’m sure we 
could organize them better, and provide a more detailed description of what 
happens, how it differs form Android build, how it’s the same, etc.

It would be great to be able to answer all these mails we get on dev-b2g saying 
things like “this sucks: I tried to build for the Open C and bricked my phone. 
Your instructions weren’t good enough.

> * What other B2G customizations can be done that are useful to talk about?
> What kinds of customizations? I suspect that there are many ways of 
> customizing things, from prefs, to adding native code, and/or adding default 
> apps.
> 


I really don’t know what else. Whatever else we think might be worth telling 
the community about. Whatever might be productive for them to help with.

> I have started a google doc at
> 
> https://docs.google.com/a/mozilla.com/document/d/1Wn-nQSHCxJnudyA0XgkVORpCGGBMUW6fOosxEXMkZ8Y/edit#
> 
> Where I have started to collect useful notes. Please feel free to leave 
> comments here, or reply to this mail.
> 
> I'd really love some team members who are experienced in these areas to give 
> me some help on putting together some truly useful docs.
> 
> Thanks for listening,
> 
> Chris Mills
>    Senior tech writer || Mozilla
> developer.mozilla.org || MDN
>    [email protected] || @chrisdavidmills
> 
> [1] https://developer.mozilla.org/en-US/Firefox_OS/Developing_Gaia
> [2] https://developer.mozilla.org/en-US/Firefox_OS/Developing_Firefox_OS
> 
> _______________________________________________
> dev-b2g mailing list
> [email protected]
> https://lists.mozilla.org/listinfo/dev-b2g

_______________________________________________
dev-b2g mailing list
[email protected]
https://lists.mozilla.org/listinfo/dev-b2g

Reply via email to