aboutsummaryrefslogtreecommitdiff
path: root/files/id/archive/b2g_os/developing_firefox_os/index.html
blob: d36360d6fab9e498b347a740ff52f4809fc675f5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
---
title: Developing Firefox OS
slug: Archive/B2G_OS/Developing_Firefox_OS
tags:
  - B2G
  - Developing
  - Firefox OS
  - NeedsTranslation
  - TopicStub
translation_of: Archive/B2G_OS/Developing_Firefox_OS
---
<div class="summary">
<p><span class="seoSummary">Bagian ini memberikan dokumentasi yang berguna yang mencakup berbagai cara di mana OS Firefox (codename Boot2Gecko, atau B2G) dapat dimodifikasi / disesuaikan selama proses pembuatan, dan bagaimana Anda dapat membantu mengembangkan area platform tingkat rendah seperti <a href="/en-US/docs/Mozilla/Gecko">Gecko</a> dan <a href="/en-US/Firefox_OS/Platform/Gonk">Gonk</a>.</span></p>
</div>

<div class="note">
<p><strong>Catatan</strong>: Jika Anda secara khusus tertarik untuk membantu mengembangkan Gaia, antarmuka pengguna Firefox OS, Anda harus berkonsultasi dengan halaman Mengembangkan Gaia kami.</p>
</div>

<h2 id="Catatan_Kontribusi_Umum">Catatan Kontribusi Umum</h2>

<p>Karena Gecko adalah bagian integral dari browser Firefox, berkontribusi pada komponen yang terkait dengan Firefox Gecko adalah proses yang mirip dengan Gecko pada umumnya; Menyumbang Gonk juga lumayan mirip. Pada dasarnya, Anda perlu mengenal komunitas, pelajari bagaimana basis kode bekerja, dan temukan bug untuk dikerjakan. Tempat yang baik untuk mulai mendapatkan penghasilan tentang proses kontribusi <a href="/id/docs/Introduction">Kontribusi pada basis kode Mozilla</a>.</p>

<p>Anda harus belajar tentang Gecko — cara kerjanya dan bagaimana strukturnya. <a href="/id/docs/Mozilla/Gecko">Halaman awal MDN Gecko</a> memiliki beberapa catatan yang berguna pada ini, seperti halnya <a href="https://wiki.mozilla.org/Gecko:Overview">Gecko: halaman Tinjauan</a> pada Mozilla Wiki. Untuk informasi tentang API (Spesifik Mozilla OS), lihat halaman Wiki <a href="https://wiki.mozilla.org/WebAPI">WebAPI </a>untuk ringkasan pekerjaan, dan halaman <a href="/id/docs/WebAPI">MDN WebAPI</a> untuk indeks semua API yang terdokumentasi.</p>

<p>Next, look at <a href="/en-US/Firefox_OS/Platform/Gonk">Gonk</a>, the kernel that Firefox OS runs on top of. Gonk is basically another porting target for Gecko, just like Mac OS X, Windows and Linux are in the case of Desktop Firefox versions. Gonk itself is really just a stripped down version of the Android Open Source Project — we tend not to change much of Gonk itself since most of the source code isn't under our control, and the device partners we work with to create Firefox OS devices usually provide device-specific code to interface between the device and Gecko/Gonk.</p>

<p>There is still work to be done on APIs, however. Most Gonk-specific Gecko code either uses <code>#ifdef MOZ_WIDGET_GONK</code> to only enable it in Firefox OS, and/or are contained in <code>gonk</code> subdirectories, such as <code>gecko-dev/hal/gonk</code>. Try cloning the <a href="https://github.com/mozilla/gecko-dev">gecko-dev</a> repo locally and having a look around. Our <a href="/en-US/docs/Mozilla_Source_Code_Directory_Structure">Mozilla Source Code Directory Structure</a> article is also useful.</p>

<p>Next, you should learn more about <a href="/en-US/Firefox_OS/Platform/Architecture">Firefox OS architecture</a>, how to <a href="/en-US/Firefox_OS/Building">Build Firefox OS</a> (start with the <a href="/en-US/Firefox_OS/Building_and_installing_Firefox_OS/Firefox_OS_build_process_summary">Firefox OS build process summary</a>), and how to <a href="/en-US/Firefox_OS/Developing_Firefox_OS/Porting">Port Firefox OS</a> to other devices.</p>

<p>Firefox OS is developed as a series of separate Modules: review the <a href="https://wiki.mozilla.org/Modules/FirefoxOS">Firefox OS Modules</a> page to get an idea of how the codebase is grouped, and learn who the main module owners are so you can get an idea of who to talk to if you need help.</p>

<div class="note">
<p><strong>Note</strong>: To find help, the best places to start are the <a href="https://lists.mozilla.org/listinfo/dev-b2g">dev-b2g mailing list</a>, and the #b2g chatroom on <a href="https://wiki.mozilla.org/IRC">Mozilla IRC</a>.</p>
</div>

<h2 id="Specific_Firefox_OS_development_topics">Specific Firefox OS development topics</h2>

<dl>
 <dt><a href="/en-US/Firefox_OS/Developing_Firefox_OS/Filing_bugs_against_Firefox_OS">Filing bugs against Firefox OS</a></dt>
 <dd>This article provides a guide to filing bugs against any aspect of Firefox OS.</dd>
 <dt><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Firefox_OS/Tips_and_tricks/modifying_hosts_file" title="/en-US/docs/Mozilla/Firefox_OS/Tips_and_tricks/modifying_hosts_file">Modifying the hosts file</a></dt>
 <dd>A guide to what can be achieved by modifying the Firefox OS hosts file.</dd>
 <dt><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Firefox_OS/Customization_with_the_.userconfig_file" title="https://developer.mozilla.org/en-US/docs/Mozilla/Firefox_OS/Customization_with_the_.userconfig_file">Customization with the .userconfig file</a></dt>
 <dd>How to customize the build and execution of Firefox OS by changing the <code>.userconfig</code> file.</dd>
 <dt><a href="/en-US/Firefox_OS/Developing_Firefox_OS/Customizing_the_b2g.sh_script">Customizing the b2g.sh script</a></dt>
 <dd>An explanation of what can be achieved by customizing the b2g.sh script, which runs the b2g application and controls many aspects of the system.</dd>
 <dt><a href="/en-US/docs/Mozilla/Firefox_OS/Developing_Firefox_OS/Customizing_DNS">Customizing DNS</a></dt>
 <dd>This article outlines a procedure to change the DNS servers for all interfaces (wifi, cellular, etc.) on a Firefox OS device.</dd>
</dl>