Showing only posts tagged Firefox. Show all posts.

JavaScript Interpreter Analysis, Mozilla Unified

This article details the analysis of available datum associated with each bytecode of the JavaScript interpreter in Mozilla Unified repo (that is also being used in Firefox).

Datum

The focus of the bytecode interpreter is the loop (INTERPRETER_LOOP() C macro).

Available structures are given in Interpreter() function:

  • Run State machine …

Mozilla Environment Variables, getting

Everything you need to know about environment variables in the Mozilla Unified repository. Mozilla Unified covers the following applications/products:

  • Firefox
  • Thunderbird

References

  • https://firefox-source-docs.mozilla.org/security/nss/legacy/reference/nss_environment_variables/index.html

Environment Variables

Environment variables are broken up into getting and setting the environment variables.

Setting Environment …

Mozilla Environment Variables, setting

Environment variables that got created (via setenv()) in Mozilla Unified repository, git HEAD branch:

environment variable name description source file
__GL_ALLOW_FXAA_USAGE Set to 0 to temporarily disable the FXAA antialiasing on NVidia drivers. Bug 1714483. build/mach_initialize.py
ANDROID_EMU_VK_NO_CLEANUP This envvar gets created in implementing commands for running and interacting …

Developing Mozilla on Debian 11

Project: Firefox Version: 103 Date: 2022-06-23

Dependencies needed for Firefox development on Debian 11

sudo apt-get install clang11 llvm
          sudo apt-get install libnotify-dev
          sudo apt-get install curl python3 python3-dev python3-pip
          python3 -m pip install --user mercurial
          

Caching of object file (Optional)

for faster debug cycle, optionally add the following cargo …

Mozilla Repository

Project: Firefox Version: 103 Date: 2022-06-23

Setup

To setup Firefox on Linux:

curl https://hg.mozilla.org/mozilla-central/raw-file/default/python/mozboot/bin/bootstrap.py -O
          python3 bootstrap.py
          

Build

To build & run

Once the System is bootstrapped, run:

$ cd mozilla-unified
          $ ./mach build
          

Run

To run it:

$ ./mach run
          

References …

Building `jsshell`

After Mercuralizing the Mozilla Firefox repository, the next focus is to create a MOZCONFIG. MOZCONFIG is a term and also an environment variable that holds various build settings for Mozilla projects (such as Firefox).

MOZCONFIG

we make use of a $HOME/mozconfigs directory to hold our generic but personalized build …