Build Firefox Faster with Artifact Builds

By  on  

Working on Firefox DevTools has always been a dream of mine, mostly because it feels like the ultimate way to give back to the development community and those that helped me become a success.  And when I explain who Mozilla is and people ask "Oh, so you work on Firefox?!", I can finally say "yes"!

Of course working on Firefox DevTools isn't without its problems, the biggest being that Firefox takes forever to build.  And its effect on a MacBook Pro's CPU?  Well...here's a recent photo of me building Firefox:

Build Firefox

Thankfully there's a faster way to build Firefox for local developer:  artifact builds.  Artifact builds allow you to use pre-built binaries to build Firefox for debugging DevTools (and other features) much more quickly.

Start by creating a mozconfig with the following contents:

# Automatically download and use compiled C++ components:
ac_add_options --enable-artifact-builds

# Write build artifacts to:
mk_add_options MOZ_OBJDIR=./objdir-frontend

The trigger a build using mach:

./mach clobber && ./mach build

# Use `./mach build faster` in the future

Firefox builds go from an hour (and potentially a call to the Fire Department) to just a few minutes.  If you're looking to help develop DevTools, Firefox, or simply have your own custom build of Firefox, jump on artifact builds -- these mozconfig directives are worth the time!

Recent Features

  • By
    Introducing MooTools Templated

    One major problem with creating UI components with the MooTools JavaScript framework is that there isn't a great way of allowing customization of template and ease of node creation. As of today, there are two ways of creating: new Element Madness The first way to create UI-driven...

  • By
    How to Create a RetroPie on Raspberry Pi – Graphical Guide

    Today we get to play amazing games on our super powered game consoles, PCs, VR headsets, and even mobile devices.  While I enjoy playing new games these days, I do long for the retro gaming systems I had when I was a kid: the original Nintendo...

Incredible Demos

  • By
    Build a Slick and Simple MooTools Accordion

    Last week I covered a smooth, subtle MooTools effect called Kwicks. Another great MooTools creation is the Accordion, which acts like...wait for it...an accordion! Now I've never been a huge Weird Al fan so this is as close to playing an accordion as...

  • By
    MooTools Star Ratings with MooStarRating

    I've said it over and over but I'll say it again:  JavaScript's main role in web applications is to enhance otherwise boring, static functionality provided by the browser.  One perfect example of this is the Javascript/AJAX-powered star rating systems that have become popular over the...

Discussion

    Wrap your code in <pre class="{language}"></pre> tags, link to a GitHub gist, JSFiddle fiddle, or CodePen pen to embed!