CINXE.COM
Getting Set Up To Work On The Firefox Codebase — Firefox Source Docs documentation
<!DOCTYPE html> <html class="writer-html5" lang="en" data-content_root="../"> <head> <meta charset="utf-8" /><meta name="viewport" content="width=device-width, initial-scale=1" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Getting Set Up To Work On The Firefox Codebase — Firefox Source Docs documentation</title> <link rel="stylesheet" type="text/css" href="../_static/pygments.css?v=fa44fd50" /> <link rel="stylesheet" type="text/css" href="../_static/css/theme.css?v=19f00094" /> <link rel="stylesheet" type="text/css" href="../_static/graphviz.css?v=fd3f3429" /> <link rel="stylesheet" type="text/css" href="../_static/copybutton.css?v=76b2166b" /> <link rel="stylesheet" type="text/css" href="../_static/custom_theme.css?v=a7d3e023" /> <link rel="stylesheet" type="text/css" href="../_static/design-style.1e8bd061cd6da7fc9cf755528e8ffc24.min.css?v=0a3b3ea7" /> <link rel="shortcut icon" href="../_static/firefox.ico"/> <!--[if lt IE 9]> <script src="../_static/js/html5shiv.min.js"></script> <![endif]--> <script src="../_static/jquery.js?v=5d32c60e"></script> <script src="../_static/_sphinx_javascript_frameworks_compat.js?v=2cd50e6c"></script> <script src="../_static/documentation_options.js?v=5929fcd5"></script> <script src="../_static/doctools.js?v=9a2dae69"></script> <script src="../_static/sphinx_highlight.js?v=dc90522c"></script> <script src="../_static/clipboard.min.js?v=a7894cd8"></script> <script src="../_static/copybutton.js?v=30646c52"></script> <script src="../_static/design-tabs.js?v=36754332"></script> <script src="../_static/js/theme.js"></script> <link rel="index" title="Index" href="../genindex.html" /> <link rel="search" title="Search" href="../search.html" /> <link rel="next" title="Contributing to Mozilla projects" href="../contributing/contributing_to_mozilla.html" /> <link rel="prev" title="Firefox for iOS" href="../overview/ios.html" /> </head> <body class="wy-body-for-nav"> <div class="wy-grid-for-nav"> <nav data-toggle="wy-nav-shift" class="wy-nav-side"> <div class="wy-side-scroll"> <div class="wy-side-nav-search" > <a href="../index.html" class="icon icon-home"> Firefox Source Docs <img src="../_static/firefox-wordmark.svg" class="logo" alt="Logo"/> </a><! -- This code is governed by the BSD license --> <div> <h3>Quick search</h3> <script> (function () { var cx = "dd12886298f75dbef"; var gcse = document.createElement("script"); gcse.async = true; gcse.src = "https://cse.google.com/cse.js?cx=" + cx; var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(gcse, s); })(); </script> <gcse:search></gcse:search> </div> </div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu"> <p class="caption" role="heading"><span class="caption-text">Overview</span></p> <ul> <li class="toctree-l1"><a class="reference internal" href="../glossary/index.html">A Glossary of Common Terms</a></li> <li class="toctree-l1"><a class="reference internal" href="../overview/index.html">A Quick Guide to Mozilla Applications</a></li> </ul> <p class="caption" role="heading"><span class="caption-text">Getting Started</span></p> <ul class="current"> <li class="toctree-l1 current"><a class="current reference internal" href="#">Getting Set Up To Work On The Firefox Codebase</a><ul> <li class="toctree-l2"><a class="reference internal" href="../contributing/contributing_to_mozilla.html">Contributing to Mozilla projects</a></li> <li class="toctree-l2"><a class="reference internal" href="windows_build.html">Building Firefox On Windows</a></li> <li class="toctree-l2"><a class="reference internal" href="macos_build.html">Building Firefox On macOS</a></li> <li class="toctree-l2"><a class="reference internal" href="linux_build.html">Building Firefox On Linux</a></li> <li class="toctree-l2"><a class="reference internal" href="linux_32bit_build_on_64bit_OS.html">Building Firefox 32-bit On Linux 64-bit</a></li> <li class="toctree-l2"><a class="reference internal" href="common_build_errors.html">Common Build Errors</a></li> <li class="toctree-l2"><a class="reference internal" href="contributing_code.html">How To Contribute Code To Firefox</a></li> </ul> </li> </ul> <p class="caption" role="heading"><span class="caption-text">Working On Firefox</span></p> <ul> <li class="toctree-l1"><a class="reference internal" href="../contributing/index.html">Working on Firefox</a></li> <li class="toctree-l1"><a class="reference internal" href="../bug-mgmt/index.html">Bug Handling</a></li> </ul> <p class="caption" role="heading"><span class="caption-text">Firefox User Guide</span></p> <ul> <li class="toctree-l1"><a class="reference internal" href="../devtools-user/index.html">Firefox DevTools User Docs</a></li> </ul> <p class="caption" role="heading"><span class="caption-text">Source Code Documentation</span></p> <ul> <li class="toctree-l1"><a class="reference internal" href="../mots/index.html">Governance</a></li> <li class="toctree-l1"><a class="reference internal" href="../browser/index.html">Firefox Front-end</a></li> <li class="toctree-l1"><a class="reference internal" href="../dom/index.html">DOM</a></li> <li class="toctree-l1"><a class="reference internal" href="../editor/index.html">Editor</a></li> <li class="toctree-l1"><a class="reference internal" href="../layout/index.html">Style system (CSS) & Layout</a></li> <li class="toctree-l1"><a class="reference internal" href="../gfx/index.html">Graphics</a></li> <li class="toctree-l1"><a class="reference internal" href="../ipc/index.html">Processes, Threads and IPC</a></li> <li class="toctree-l1"><a class="reference internal" href="../devtools/index.html">Firefox DevTools Contributor Docs</a></li> <li class="toctree-l1"><a class="reference internal" href="../toolkit/index.html">Toolkit</a></li> <li class="toctree-l1"><a class="reference internal" href="../js/index.html">SpiderMonkey</a></li> <li class="toctree-l1"><a class="reference internal" href="../mobile/android/geckoview/index.html">GeckoView</a></li> <li class="toctree-l1"><a class="reference internal" href="../mobile/android/fenix/index.html">Fenix</a></li> <li class="toctree-l1"><a class="reference internal" href="../mobile/android/focus-android/index.html">Focus for Android</a></li> <li class="toctree-l1"><a class="reference internal" href="../dom/bindings/webidl/index.html">WebIDL</a></li> <li class="toctree-l1"><a class="reference internal" href="../modules/libpref/index.html">libpref</a></li> <li class="toctree-l1"><a class="reference internal" href="../networking/index.html">Networking</a></li> <li class="toctree-l1"><a class="reference internal" href="../remote/index.html">Remote Protocols</a></li> <li class="toctree-l1"><a class="reference internal" href="../services/index.html">Services</a></li> <li class="toctree-l1"><a class="reference internal" href="../uriloader/index.html">File Handling</a></li> <li class="toctree-l1"><a class="reference internal" href="../widget/cocoa/index.html">Firefox on macOS</a></li> <li class="toctree-l1"><a class="reference internal" href="../widget/windows/index.html">Firefox on Windows</a></li> <li class="toctree-l1"><a class="reference internal" href="../toolkit/components/ml/index.html">Firefox AI Platform</a></li> <li class="toctree-l1"><a class="reference internal" href="../accessible/index.html">Accessibility</a></li> <li class="toctree-l1"><a class="reference internal" href="../code-quality/index.html">Code quality</a></li> <li class="toctree-l1"><a class="reference internal" href="../writing-rust-code/index.html">Writing Rust Code</a></li> <li class="toctree-l1"><a class="reference internal" href="../rust-components/index.html">Rust Components</a></li> <li class="toctree-l1"><a class="reference internal" href="../tools/profiler/index.html">Gecko Profiler</a></li> <li class="toctree-l1"><a class="reference internal" href="../performance/index.html">Performance</a></li> <li class="toctree-l1"><a class="reference internal" href="../storage/index.html">Database bindings (SQLite, KV, …)</a></li> <li class="toctree-l1"><a class="reference internal" href="../xpcom/index.html">XPCOM</a></li> <li class="toctree-l1"><a class="reference internal" href="../nspr/index.html">NSPR</a></li> <li class="toctree-l1"><a class="reference internal" href="../security/nss/index.html">Network Security Services (NSS)</a></li> <li class="toctree-l1"><a class="reference internal" href="../content-security/index.html">Web Security Checks in Gecko</a></li> </ul> <p class="caption" role="heading"><span class="caption-text">The Firefox Build System</span></p> <ul> <li class="toctree-l1"><a class="reference internal" href="../mach/index.html">Mach</a></li> <li class="toctree-l1"><a class="reference internal" href="../tools/try/index.html">Pushing to Try</a></li> <li class="toctree-l1"><a class="reference internal" href="../build/buildsystem/index.html">Build System</a></li> <li class="toctree-l1"><a class="reference internal" href="../taskcluster/index.html">Firefox CI and Taskgraph</a></li> <li class="toctree-l1"><a class="reference internal" href="../tools/moztreedocs/index.html">Managing Documentation</a></li> <li class="toctree-l1"><a class="reference internal" href="../mozbuild/vendor/index.html">Vendoring Third Party Components</a></li> </ul> <p class="caption" role="heading"><span class="caption-text">Testing & Test Infrastructure</span></p> <ul> <li class="toctree-l1"><a class="reference internal" href="../testing/automated-testing/index.html">Automated Testing</a></li> <li class="toctree-l1"><a class="reference internal" href="../testing/treeherder-try/index.html">Understanding Treeherder Results</a></li> <li class="toctree-l1"><a class="reference internal" href="../testing/sheriffed-intermittents/index.html">Sheriffed intermittent failures</a></li> <li class="toctree-l1"><a class="reference internal" href="../testing/tests-for-new-config/index.html">Turning on Firefox tests for a new configuration</a></li> <li class="toctree-l1"><a class="reference internal" href="../testing/intermittent/index.html">Avoiding intermittent tests</a></li> <li class="toctree-l1"><a class="reference internal" href="../testing/testing-policy/index.html">Testing Policy</a></li> <li class="toctree-l1"><a class="reference internal" href="../testing/ci-configs/index.html">Configuration Changes</a></li> <li class="toctree-l1"><a class="reference internal" href="../testing/browser-chrome/index.html">Browser chrome mochitests</a></li> <li class="toctree-l1"><a class="reference internal" href="../testing/chrome-tests/index.html">Chrome Tests</a></li> <li class="toctree-l1"><a class="reference internal" href="../testing/marionette/index.html">Marionette</a></li> <li class="toctree-l1"><a class="reference internal" href="../testing/geckodriver/index.html">geckodriver</a></li> <li class="toctree-l1"><a class="reference internal" href="../testing/test-verification/index.html">Test Verification</a></li> <li class="toctree-l1"><a class="reference internal" href="../testing/webrender/index.html">WebRender Tests</a></li> <li class="toctree-l1"><a class="reference internal" href="../testing/mochitest-plain/index.html">Mochitest</a></li> <li class="toctree-l1"><a class="reference internal" href="../testing/xpcshell/index.html">XPCShell tests</a></li> <li class="toctree-l1"><a class="reference internal" href="../testing/tps/index.html">TPS</a></li> <li class="toctree-l1"><a class="reference internal" href="../web-platform/index.html">web-platform-tests</a></li> <li class="toctree-l1"><a class="reference internal" href="../gtest/index.html">GTest</a></li> <li class="toctree-l1"><a class="reference internal" href="../tools/fuzzing/index.html">Fuzzing</a></li> <li class="toctree-l1"><a class="reference internal" href="../tools/sanitizer/index.html">Sanitizer</a></li> <li class="toctree-l1"><a class="reference internal" href="../testing/perfdocs/index.html">Performance Testing</a></li> <li class="toctree-l1"><a class="reference internal" href="../tools/code-coverage/index.html">Code coverage</a></li> <li class="toctree-l1"><a class="reference internal" href="../testing-rust-code/index.html">Testing & Debugging Rust Code</a></li> </ul> <p class="caption" role="heading"><span class="caption-text">Releases & Updates</span></p> <ul> <li class="toctree-l1"><a class="reference internal" href="../update-infrastructure/index.html">Mozilla Update Infrastructure</a></li> <li class="toctree-l1"><a class="reference internal" href="../update-infrastructure/index.html#watershed-updates">Watershed Updates</a></li> <li class="toctree-l1"><a class="reference internal" href="../update-infrastructure/index.html#desupport-updates">Desupport Updates</a></li> </ul> <p class="caption" role="heading"><span class="caption-text">Localization & Internationalization</span></p> <ul> <li class="toctree-l1"><a class="reference internal" href="../intl/index.html">Internationalization</a></li> <li class="toctree-l1"><a class="reference internal" href="../l10n/index.html">Localization</a></li> </ul> <p class="caption" role="heading"><span class="caption-text">Firefox and Python</span></p> <ul> <li class="toctree-l1"><a class="reference internal" href="../mozbase/index.html">mozbase</a></li> <li class="toctree-l1"><a class="reference internal" href="../python/index.html">Using third-party Python packages</a></li> </ul> <p class="caption" role="heading"><span class="caption-text">Metrics Collected in Firefox</span></p> <ul> <li class="toctree-l1"><a class="reference internal" href="../metrics/index.html">Metrics</a></li> </ul> </div> </div> </nav> <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"><nav class="wy-nav-top" aria-label="Mobile navigation menu" > <i data-toggle="wy-nav-top" class="fa fa-bars"></i> <a href="../index.html">Firefox Source Docs</a> </nav> <div class="wy-nav-content"> <div class="rst-content"> <!-- This Source Code Form is subject to the terms of the Mozilla Public - License, v. 2.0. If a copy of the MPL was not distributed with this file, - You can obtain one at http://mozilla.org/MPL/2.0/. --><div role="navigation" aria-label="Page navigation"> <ul class="wy-breadcrumbs"> <li><a href="../index.html" class="icon icon-home" aria-label="Home"></a></li> <li class="breadcrumb-item active">Getting Set Up To Work On The Firefox Codebase</li> <li class="wy-breadcrumbs-aside"> <a href="https://bugzilla.mozilla.org/enter_bug.cgi?product=Developer+Infrastructure&component=Firefox+Source+Docs%3A+Content&short_desc=Documentation+issue+on+setup/index&comment=URL+=+https://firefox-source-docs.mozilla.org/setup/index.html&bug_file_loc=https://firefox-source-docs.mozilla.org/setup/index.html" rel="nofollow" >Report an issue</a > / <a href="../_sources/setup/index.rst.txt" rel="nofollow"> View page source</a > </li> </ul> <hr/> </div> <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article"> <div itemprop="articleBody"> <section id="getting-set-up-to-work-on-the-firefox-codebase"> <h1>Getting Set Up To Work On The Firefox Codebase<a class="headerlink" href="#getting-set-up-to-work-on-the-firefox-codebase" title="Link to this heading">¶</a></h1> <p>This page will help you get set up to build Firefox on your own machine.</p> <p>Don’t hesitate to look at the <a class="reference internal" href="../contributing/contribution_quickref.html#firefox-contributors-quick-reference"><span class="std std-ref">Firefox Contributors Quick Reference</span></a> to read a quick tutorial.</p> <div class="toctree-wrapper compound"> <p class="caption" role="heading"><span class="caption-text">Thank you for contributing to Firefox</span></p> <ul> <li class="toctree-l1"><a class="reference internal" href="../contributing/contributing_to_mozilla.html">Contributing to Mozilla projects</a><ul> <li class="toctree-l2"><a class="reference internal" href="../contributing/contributing_to_mozilla.html#what-skills-do-i-need">What skills do I need?</a></li> </ul> </li> </ul> </div> <div class="toctree-wrapper compound"> <p class="caption" role="heading"><span class="caption-text">Setting Up Your Machine</span></p> <ul> <li class="toctree-l1"><a class="reference internal" href="windows_build.html">Building Firefox On Windows</a></li> <li class="toctree-l1"><a class="reference internal" href="macos_build.html">Building Firefox On macOS</a></li> <li class="toctree-l1"><a class="reference internal" href="linux_build.html">Building Firefox On Linux</a></li> <li class="toctree-l1"><a class="reference internal" href="linux_32bit_build_on_64bit_OS.html">Building Firefox 32-bit On Linux 64-bit</a></li> <li class="toctree-l1"><a class="reference internal" href="common_build_errors.html">Common Build Errors</a></li> </ul> </div> <div class="toctree-wrapper compound"> <p class="caption" role="heading"><span class="caption-text">Getting Ready To Contribute</span></p> <ul> <li class="toctree-l1"><a class="reference internal" href="contributing_code.html">How To Contribute Code To Firefox</a><ul> <li class="toctree-l2"><a class="reference internal" href="contributing_code.html#finding-something-to-work-on">Finding something to work on</a><ul> <li class="toctree-l3"><a class="reference internal" href="contributing_code.html#find-a-bug-we-ve-identified-as-a-good-fit-for-new-contributors">Find a bug we’ve identified as a good fit for new contributors.</a></li> <li class="toctree-l3"><a class="reference internal" href="contributing_code.html#fix-that-one-bug">Fix that one bug</a></li> </ul> </li> <li class="toctree-l2"><a class="reference internal" href="contributing_code.html#fixing-your-bug">Fixing your bug</a></li> <li class="toctree-l2"><a class="reference internal" href="contributing_code.html#getting-your-code-reviewed">Getting your code reviewed</a><ul> <li class="toctree-l3"><a class="reference internal" href="contributing_code.html#following-up-and-responding">Following up and responding</a></li> </ul> </li> <li class="toctree-l2"><a class="reference internal" href="contributing_code.html#getting-code-into-firefox">Getting code into Firefox</a></li> <li class="toctree-l2"><a class="reference internal" href="contributing_code.html#do-it-all-again">Do it all again!</a></li> <li class="toctree-l2"><a class="reference internal" href="contributing_code.html#more-information">More information</a></li> </ul> </li> </ul> </div> </section> </div> </div> <footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer"> <a href="../overview/ios.html" class="btn btn-neutral float-left" title="Firefox for iOS" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a> <a href="../contributing/contributing_to_mozilla.html" class="btn btn-neutral float-right" title="Contributing to Mozilla projects" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a> </div> <hr/> <div role="contentinfo"> <p></p> </div> Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/readthedocs/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>. </footer> </div> </div> </section> </div> <script> jQuery(function () { SphinxRtdTheme.Navigation.enable(true); }); </script> </body> </html>