Firefox: Difference between revisions

From John's wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 9: Line 9:
See [https://github.com/NV/tab_character_size here], for -moz-tab-size CSS tip.
See [https://github.com/NV/tab_character_size here], for -moz-tab-size CSS tip.


See [https://firefox-bug-handling.mozilla.org/triage-bugzilla Firefox Bug Handling] for info on P{1..5} severities.
See [https://firefox-bug-handling.mozilla.org/triage-bugzilla Firefox Bug Handling] for info on P{1..5} priorities.


See [https://developer.mozilla.org/en-US/docs/Mozilla/Developer_guide/How_to_Submit_a_Patch how to submit a patch].
See [https://developer.mozilla.org/en-US/docs/Mozilla/Developer_guide/How_to_Submit_a_Patch how to submit a patch].

Revision as of 22:01, 20 February 2020

https://github.com/mozilla/gecko-dev

Bug 1610402

I'm working on TAB character width is not a configurable user preference with Emilio Cobos.

View Source tab width.

See here, for -moz-tab-size CSS tip.

See Firefox Bug Handling for info on P{1..5} priorities.

See how to submit a patch.

Then create a Mozilla Phabricator account.

See phabricator.

My patch was for:

visit_type

In the places.sqlite database in the moz_historyvisits table is a 'visit_type' column. To determine what the values mean see:

jj5@jj-dev:~/desktop/mozilla-unified$ vim toolkit/components/places/nsINavHistoryService.idl

They are:

Value Name Comment
1 TRANSITION_LINK This transition type means the user followed a link and got a new toplevel window.
2 TRANSITION_TYPED This transition type means that the user typed the page's URL in the URL bar or selected it from URL bar autocomplete results, clicked on it from a history query (from the History sidebar, History menu, or history query in the personal toolbar or Places organizer.
3 TRANSITION_BOOKMARK This transition is set when the user followed a bookmark to get to the page.
4 TRANSITION_EMBED This transition type is set when some inner content is loaded. This is true of all images on a page, and the contents of the iframe. It is also true of any content in a frame if the user did not explicitly follow a link to get there.
5 TRANSITION_REDIRECT_PERMANENT Set when the transition was a permanent redirect.
6 TRANSITION_REDIRECT_TEMPORARY Set when the transition was a temporary redirect.
7 TRANSITION_DOWNLOAD Set when the transition is a download.
8 TRANSITION_FRAMED_LINK This transition type means the user followed a link and got a visit in a frame.
9 TRANSITION_RELOAD This transition type means the page has been reloaded.

bootstrap.py

These are my notes from downloading and running the bootstrap.py script.

jj5@jj-dev:~$ uname -m
x86_64
jj5@jj-dev:~$ python --version
Python 2.7.17
jj5@jj-dev:~$ python3 --version
Python 3.6.9
jj5@jj-dev:~$ df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            1.9G     0  1.9G   0% /dev
tmpfs           394M  1.1M  393M   1% /run
/dev/sda1        98G   16G   78G  18% /
tmpfs           2.0G  177M  1.8G   9% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           2.0G     0  2.0G   0% /sys/fs/cgroup
tmpfs           394M   12K  394M   1% /run/user/1000
jj5@jj-dev:~$ mkdir /var/export/jj-dev/src
jj5@jj-dev:~$ ln -s /var/export/jj-dev/src .
jj5@jj-dev:~$ cd src
jj5@jj-dev:~/src$ vim get-bootstrap.py.sh
jj5@jj-dev:~/src$ chmod +x get-bootstrap.py.sh 
jj5@jj-dev:~/src$ ./get-bootstrap.py.sh 
--2020-01-20 06:15:58--  https://hg.mozilla.org/mozilla-central/raw-file/default/python/mozboot/bin/bootstrap.py
Resolving hg.mozilla.org (hg.mozilla.org)... 63.245.208.203
Connecting to hg.mozilla.org (hg.mozilla.org)|63.245.208.203|:443... connected.
HTTP request sent, awaiting response... 200 Script output follows
Length: 7064 (6.9K) [text/x-python]
Saving to: 'bootstrap.py’

bootstrap.py          100%[=========================>]   6.90K  --.-KB/s    in 0s      

2020-01-20 06:16:00 (45.5 MB/s) - 'bootstrap.py’ saved [7064/7064]
jj5@jj-dev:~/src$ ll
total 20K
drwxrwxr-x 2 jj5 jj5 4.0K Jan 20 06:16 ./
drwxr-xr-x 6 jj5 jj5 4.0K Jan 20 06:14 ../
-rw-rw-r-- 1 jj5 jj5 6.9K Jan 20 06:16 bootstrap.py
-rwxrwxr-x 1 jj5 jj5  107 Jan 20 06:15 get-bootstrap.py.sh*
jj5@jj-dev:~/src$ chmod +x bootstrap.py 
jj5@jj-dev:~/src$ ./bootstrap.py 

Note on Artifact Mode:

Artifact builds download prebuilt C++ components rather than building
them locally. Artifact builds are faster!

Artifact builds are recommended for people working on Firefox or
Firefox for Android frontends, or the GeckoView Java API. They are unsuitable
for those working on C++ code. For more information see:
https://developer.mozilla.org/en-US/docs/Artifact_builds.

Please choose the version of Firefox you want to build:
  1. Firefox for Desktop Artifact Mode
  2. Firefox for Desktop
  3. GeckoView/Firefox for Android Artifact Mode
  4. GeckoView/Firefox for Android
Your choice: 2
Executing as root: sudo apt-get install autoconf2.13 build-essential nodejs python-dev python-pip python-setuptools unzip uuid zip
Reading package lists... Done
Building dependency tree       
Reading state information... Done
build-essential is already the newest version (12.4ubuntu1).
unzip is already the newest version (6.0-21ubuntu1).
zip is already the newest version (3.0-11build1).
nodejs is already the newest version (8.10.0~dfsg-2ubuntu0.4).
The following additional packages will be installed:
  libexpat1-dev libossp-uuid16 libpython-all-dev libpython-dev libpython2.7-dev
  python-all python-all-dev python-asn1crypto python-cffi-backend python-crypto
  python-cryptography python-idna python-ipaddress python-keyring python-keyrings.alt
  python-pip-whl python-secretstorage python-wheel python-xdg python2.7-dev
Suggested packages:
  gnu-standards python-crypto-doc python-cryptography-doc python-cryptography-vectors
  gir1.2-gnomekeyring-1.0 python-fs python-gdata python-keyczar
  python-secretstorage-doc python-setuptools-doc
The following NEW packages will be installed:
  autoconf2.13 libexpat1-dev libossp-uuid16 libpython-all-dev libpython-dev
  libpython2.7-dev python-all python-all-dev python-asn1crypto python-cffi-backend
  python-crypto python-cryptography python-dev python-idna python-ipaddress
  python-keyring python-keyrings.alt python-pip python-pip-whl python-secretstorage
  python-setuptools python-wheel python-xdg python2.7-dev uuid
0 to upgrade, 25 to newly install, 0 to remove and 0 not to upgrade.
Need to get 31.8 MB of archives.
After this operation, 52.9 MB of additional disk space will be used.
Do you want to continue? [Y/n] 

...

Executing as root: sudo apt-get install libasound2-dev libcurl4-openssl-dev libdbus-1-dev libdbus-glib-1-dev libgtk-3-dev libgtk2.0-dev libpulse-dev libx11-xcb-dev libxt-dev python-dbus xvfb yasm
Reading package lists... Done
Building dependency tree       
Reading state information... Done
libxt-dev is already the newest version (1:1.1.5-1).
libxt-dev set to manually installed.
python-dbus is already the newest version (1.2.6-1).
The following additional packages will be installed:
  gir1.2-gtk-2.0 libatk-bridge2.0-dev libatk1.0-dev libatspi2.0-dev
  libcairo-script-interpreter2 libcairo2-dev libdrm-dev libegl1-mesa-dev libepoxy-dev
  libfontconfig1-dev libfreetype6-dev libgdk-pixbuf2.0-dev libgles1 libglvnd-core-dev
  libglvnd-dev libopengl0 libpango1.0-dev libpixman-1-dev libpng-dev libpng-tools
  libwayland-bin libwayland-dev libxcb-dri2-0-dev libxcb-dri3-dev libxcb-glx0-dev
  libxcb-present-dev libxcb-randr0-dev libxcb-render0-dev libxcb-shape0-dev
  libxcb-shm0-dev libxcb-sync-dev libxcb-xfixes0-dev libxcomposite-dev libxcursor-dev
  libxdamage-dev libxext-dev libxfixes-dev libxft-dev libxi-dev libxinerama-dev
  libxkbcommon-dev libxrandr-dev libxrender-dev libxshmfence-dev libxtst-dev
  libxxf86vm-dev mesa-common-dev wayland-protocols x11proto-composite-dev
  x11proto-damage-dev x11proto-fixes-dev x11proto-input-dev x11proto-randr-dev
  x11proto-record-dev x11proto-xext-dev x11proto-xf86vidmode-dev x11proto-xinerama-dev
Suggested packages:
  libasound2-doc libcairo2-doc libcurl4-doc libidn11-dev libkrb5-dev libldap2-dev
  librtmp-dev libssh2-1-dev libgtk-3-doc libgtk2.0-doc libpango1.0-doc libwayland-doc
  libxext-doc
The following NEW packages will be installed:
  gir1.2-gtk-2.0 libasound2-dev libatk-bridge2.0-dev libatk1.0-dev libatspi2.0-dev
  libcairo-script-interpreter2 libcairo2-dev libcurl4-openssl-dev libdbus-1-dev
  libdbus-glib-1-dev libdrm-dev libegl1-mesa-dev libepoxy-dev libfontconfig1-dev
  libfreetype6-dev libgdk-pixbuf2.0-dev libgles1 libglvnd-core-dev libglvnd-dev
  libgtk-3-dev libgtk2.0-dev libopengl0 libpango1.0-dev libpixman-1-dev libpng-dev
  libpng-tools libpulse-dev libwayland-bin libwayland-dev libx11-xcb-dev
  libxcb-dri2-0-dev libxcb-dri3-dev libxcb-glx0-dev libxcb-present-dev
  libxcb-randr0-dev libxcb-render0-dev libxcb-shape0-dev libxcb-shm0-dev
  libxcb-sync-dev libxcb-xfixes0-dev libxcomposite-dev libxcursor-dev libxdamage-dev
  libxext-dev libxfixes-dev libxft-dev libxi-dev libxinerama-dev libxkbcommon-dev
  libxrandr-dev libxrender-dev libxshmfence-dev libxtst-dev libxxf86vm-dev
  mesa-common-dev wayland-protocols x11proto-composite-dev x11proto-damage-dev
  x11proto-fixes-dev x11proto-input-dev x11proto-randr-dev x11proto-record-dev
  x11proto-xext-dev x11proto-xf86vidmode-dev x11proto-xinerama-dev xvfb yasm
0 to upgrade, 67 to newly install, 0 to remove and 0 not to upgrade.
Need to get 12.4 MB of archives.
After this operation, 69.9 MB of additional disk space will be used.
Do you want to continue? [Y/n] 

...

You do not have Mercurial installed

Mercurial releases a new version every 3 months and your distro's package
may become out of date. This may cause incompatibility with some
Mercurial extensions that rely on new Mercurial features. As a result,
you may not have an optimal version control experience.

To have the best Mercurial experience possible, we recommend installing
Mercurial via the "pip" Python packaging utility. This will likely result
in files being placed in /usr/local/bin and /usr/local/lib.

How would you like to continue?
  1. Install a modern Mercurial via pip (recommended)
  2. Install a legacy Mercurial via apt
  3. Do not install Mercurial
Your choice: 1
Executing as root: sudo pip install --upgrade Mercurial
The directory '/home/jj5/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
The directory '/home/jj5/.cache/pip' or its parent directory is not owned by the current user and caching wheels has been disabled. check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
Collecting Mercurial
  Downloading https://files.pythonhosted.org/packages/f7/25/f0dba6943dfead28c07e0356f627cf4cd98842c6760593f1ea4115097ead/mercurial-5.2.2.tar.gz (7.3MB)
    100% |████████████████████████████████| 7.3MB 264kB/s
Installing collected packages: Mercurial
  Running setup.py install for Mercurial ... done
Successfully installed Mercurial-5.2.2
Your version of Python (2.7.17) is new enough.
Could not find a Rust compiler.
Will try to install Rust.
Downloading rustup-init... Ok
Running rustup-init...
info: syncing channel updates for 'stable-x86_64-unknown-linux-gnu'
info: latest update on 2019-12-19, rust version 1.40.0 (73528e339 2019-12-16)
info: downloading component 'rustc'
 57.8 MiB /  57.8 MiB (100 %)  10.9 MiB/s ETA:   0 s
info: downloading component 'rust-std'
 18.5 MiB /  18.5 MiB (100 %)  11.0 MiB/s ETA:   0 s
info: downloading component 'cargo'
info: downloading component 'rust-docs'
 11.9 MiB /  11.9 MiB (100 %)  10.9 MiB/s ETA:   0 s
info: installing component 'rustc'
info: installing component 'rust-std'
info: installing component 'cargo'
info: installing component 'rust-docs'
info: default toolchain set to 'stable'

  stable installed - rustc 1.40.0 (73528e339 2019-12-16)


Rust installation complete. You should now have rustc and cargo
in /home/jj5/.cargo/bin

The installer tries to add these to your default shell PATH, so
restarting your shell and running this script again may work.
If it doesn't, you'll need to add the new command location
manually.

If restarting doesn't work, edit your shell initialization
script, which may be called ~/.bashrc or ~/.bash_profile or
~/.profile, and add the following line:

    source /home/jj5/.cargo/env

Then restart your shell and run the bootstrap script again.

The Firefox build system and related tools store shared, persistent state
in a common directory on the filesystem. On this machine, that directory
is:

  /home/jj5/.mozbuild

If you would like to use a different directory, hit CTRL+c and set the
MOZBUILD_STATE_PATH environment variable to the directory you'd like to
use and re-run the bootstrapper.

Would you like to create this directory? (Yn): Y
Firefox can be cloned using either Git or Mercurial.

Please choose the VCS you want to use:
1. Mercurial
2. Git
Your choice: 1
Mozilla recommends a number of changes to Mercurial to enhance your
experience with it.

Would you like to run a configuration wizard to ensure Mercurial is
optimally configured? (Yn): y
================================================================================
Ensuring https://hg.mozilla.org/hgcustom/version-control-tools is up to date at /home/jj5/.mozbuild/version-control-tools
applying clone bundle from https://hg.cdn.mozilla.net/hgcustom/version-control-tools/548ae9caadb16ff054d1753cc5f4b34055c9821e.zstd.hg
adding changesets
adding manifests
adding file changes
added 7436 changesets with 17866 changes to 2906 files                                                                                                                                                    
finished applying clone bundle
searching for changes
no changes found
7436 local changesets published
1426 files updated, 0 files merged, 0 files removed, 0 files unresolved
(activating bookmark @)
================================================================================
This wizard will guide you through configuring Mercurial for an optimal
experience contributing to Mozilla projects.

The wizard makes no changes without your permission.

To begin, press the enter/return key.

You don't have a username defined in your Mercurial config file. In order
to author commits, you'll need to define a name and e-mail address.

This data will be publicly available when you send commits/patches to others.
If you aren't comfortable giving us your full name, pseudonames are
acceptable.

(Relevant config option: ui.username)
What is your name? John Elliot V
What is your e-mail address? jj5@jj5.net
setting ui.username=John Elliot V <jj5@jj5.net>

Mercurial has implemented some functionality behind ui.tweakdefaults config,
that most users would like by default, but would break some workflows due to
backwards compatibility issues.
You can find more info by running:

  $ hg help config.ui

and checking the "tweakdefaults" section.

Would you like to enable these features (Yn)?  y
Mercurial is not configured to produce diffs in a more readable format.

Would you like to change this (Yn)?  y
Mercurial can provide richer terminal interactions for some operations
by using the popular "curses" library.

Would you like to enable "curses" interfaces (Yn)?  y
Various extensions provide functionality to rewrite repository history. These
enable more powerful - and often more productive - workflows.

If history rewriting is enabled, the following extensions will be enabled:

absorb
  `hg absorb` automatically squashes/folds uncommitted changes in the working
  directory into the appropriate previous changeset. Learn more at
  https://gregoryszorc.com/blog/2018/11/05/absorbing-commit-changes-in-mercurial-4.8/.

histedit
  `hg histedit` allows interactive editing of previous changesets. It presents
  you a list of changesets and allows you to pick actions to perform on each
  changeset. Actions include reordering changesets, dropping changesets,
  folding multiple changesets together, and editing the commit message for
  a changeset.

rebase
  `hg rebase` allows re-parenting changesets from one "branch" of a DAG
  to another. The command is typically used to "move" changesets based on
  an older changeset to be based on the newest changeset.

Would you like to enable these history editing extensions (Yn)?  y

The evolve extension is a Mercurial extension for faster and
safer mutable history. It implements the changeset evolution concept
for Mercurial, allowing for safe and simple history re-writing. It
includes some new commands such as fold, prune and amend which may
improve your user experience with Mercurial.

The evolve extension is recommended for working with Firefox repositories.
More information about changeset evolution can be found by running:

 $ hg help evolution

as well as:

 $ hg help -e evolve

once the `evolve` extension is enabled.

(Relevant config option: extensions.evolve)

Would you like to enable the evolve extension? (Yn)  y
adding changesets
adding manifests
adding file changes
added 4617 changesets with 9472 changes to 471 files
new changesets bbeef801409c:3947964a4ce7
updating to branch stable
312 files updated, 0 files merged, 0 files removed, 0 files unresolved                                                                                                                                    
Evolve was downloaded successfully.
The "watchman" filesystem watching tool could not be found or isn't
working.

Mercurial can leverage "watchman" to make many operations
(like `hg status` and `hg diff`) much faster. Mozilla *highly*
recommends installing "watchman" when working with the Firefox
repository.

Please see https://facebook.github.io/watchman/docs/install.html
for instructions on installing watchman. Please ensure `watchman`
is available on PATH (you should be able to run `watchman` from
your shell).

Enable logging of commands to help diagnose bugs and performance problems (Yn)  y
Enable the shelve feature. Equivalent to git stash (Yn)  y
The firefoxtree extension makes interacting with the multiple Firefox
repositories easier:

* Aliases for common trees are pre-defined. e.g. `hg pull central`
* Pulling from known Firefox trees will create "remote refs" appearing as
  tags. e.g. pulling from fx-team will produce a "fx-team" tag.
* The `hg fxheads` command will list the heads of all pulled Firefox repos
  for easy reference.
* `hg push` will limit itself to pushing a single head when pushing to
  Firefox repos.
* A pre-push hook will prevent you from pushing multiple heads to known
  Firefox repos. This acts quicker than a server-side hook.

The firefoxtree extension is *strongly* recommended if you:

a) aggregate multiple Firefox repositories into a single local repo
b) perform head/bookmark-based development (as opposed to mq)

(Relevant config option: extensions.firefoxtree)

Would you like to activate firefoxtree (Yn)?  y
The "clang-format" extension provides execution of clang-format at the commit steps.
It relies on ./mach clang-format directly.
Would you like to activate clang-format (Yn)?  y
The "js-format" extension provides execution of eslint+prettier at the commit steps.
It relies on ./mach eslint --fix directly.
Would you like to activate js-format (Yn)?  y
It is common to want a quick view of changesets that are in progress.

The ``hg wip`` command provides such a view.

Example Usage:

 $ hg wip
 @  5887 armenzg tip @ Bug 1313661 - Bump pushlog_client to 0.6.0. r=me
 : o  5885 glob mozreview: Improve the error message when pushing to a submitted/discarded review request (bug 1240725) r?smacleod
 : o  5884 glob hgext: Support line breaks in hgrb error messages (bug 1240725) r?gps
 :/
 o  5883 mars mozreview: add py.test and demonstration tests to mozreview (bug 1312875) r=smacleod
 : o  5881 glob autoland: log mercurial commands to autoland.log (bug 1313300) r?smacleod
 :/
 o  5250 gps ansible/docker-hg-web: set USER variable in httpd process
 |
 ~

(Not shown are the colors that help denote the state each changeset
is in.)

(Relevant config options: alias.wip, revsetalias.wip, templates.wip)

Would you like to install the `hg wip` alias (Yn)?  y
The ``hg smart-annotate`` command provides experimental support for
viewing the annotate information while skipping certain changesets,
such as code-formatting changes.

Would you like to install the `hg smart-annotate` alias (Yn)?  y
Will you be submitting commits to Mozilla (Yn)?  n
The push-to-try extension generates a temporary commit with a given
try syntax and pushes it to the try server. The extension is intended
to be used in concert with other tools generating try syntax so that
they can push to try without depending on mq or other workarounds.

(Relevant config option: extensions.push-to-try)

Would you like to activate push-to-try (Yn)?  y
Your config file needs updating.
Would you like to see a diff of the changes first (Yn)?  y
--- hgrc.old
+++ hgrc.new
@@ -0,0 +1,41 @@
+[ui]
+username = John Elliot V <jj5@jj5.net>
+tweakdefaults = true
+interface = curses
+[diff]
+git = true
+showfunc = true
+[extensions]
+absorb =
+histedit =
+rebase =
+evolve = /home/jj5/.mozbuild/evolve/hgext3rd/evolve
+blackbox =
+shelve =
+firefoxtree = /home/jj5/.mozbuild/version-control-tools/hgext/firefoxtree
+clang-format = /home/jj5/.mozbuild/version-control-tools/hgext/clang-format
+js-format = /home/jj5/.mozbuild/version-control-tools/hgext/js-format
+push-to-try = /home/jj5/.mozbuild/version-control-tools/hgext/push-to-try
+[rebase]
+experimental.inmemory = yes
+[alias]
+wip = log --graph --rev=wip --template=wip
+smart-annotate = annotate -w --skip ignored_changesets
+[revsetalias]
+wip = (parents(not public()) or not public() or . or (head() and branch(default))) and (not obsolete() or orphan()^) and not closed() and not (fxheads() - date(-90))
+ignored_changesets = desc("ignore-this-changeset") or extdata(get_ignored_changesets)
+[templates]
+wip = '{label("wip.branch", if(branches,"{branches} "))}{label(ifeq(graphnode,"x","wip.obsolete","wip.{phase}"),"{rev}:{node|short}")}{label("wip.user", " {author|user}")}{label("wip.tags", if(tags," {tags}"))}{label("wip.tags", if(fxheads," {fxheads}"))}{if(bookmarks," ")}{label("wip.bookmarks", if(bookmarks,bookmarks))}{label(ifcontains(rev, revset("parents()"), "wip.here"), " {desc|firstline}")}'
+[color]
+wip.bookmarks = yellow underline
+wip.branch = yellow
+wip.draft = green
+wip.here = red
+wip.obsolete = none
+wip.public = blue
+wip.tags = yellow
+wip.user = magenta
+[experimental]
+graphshorten = true
+[extdata]
+get_ignored_changesets = shell:cat `hg root`/.hg-annotate-ignore-revs 2> /dev/null || true

Write changes to hgrc file (Yn)?  y
Your hgrc file is currently readable by others.

Sensitive information such as your Bugzilla credentials could be
stolen if others have access to this file/machine.

Would you like to fix the file permissions (Yn)  y
Changing permissions of /home/jj5/.hgrc

If you would like to clone the mozilla-unified Mercurial repository, please
enter the destination path below.

Destination directory for Mercurial clone (leave empty to not clone): /var/export/jj-dev/mozilla-unified

Cloning Firefox Mercurial repository to /var/export/jj-dev/mozilla-unified
pulling from https://hg.mozilla.org/mozilla-unified
applying clone bundle from https://hg.cdn.mozilla.net/mozilla-unified/e9a3c8df0fc53e02d6fdd72f0a30e2fa88583077.zstd-max.hg
adding changesets
adding manifests                                                                                                                                                                                          
adding file changes                                                                                                                                                                                       
added 571804 changesets with 3532701 changes to 552550 files (+12 heads)                                                                                                                                  
finished applying clone bundle
searching for changes
adding changesets
adding manifests                                                                                                                                                                                          
adding file changes
updated firefox tree tag aurora
updated firefox tree tag autoland
updated firefox tree tag beta
updated firefox tree tag central
updated firefox tree tag esr10
updated firefox tree tag esr17
updated firefox tree tag esr24
updated firefox tree tag esr31
updated firefox tree tag esr38
updated firefox tree tag esr45
updated firefox tree tag esr52
updated firefox tree tag esr60
updated firefox tree tag esr68
updated firefox tree tag fx-team
updated firefox tree tag inbound
updated firefox tree tag release
added 12 changesets with 45 changes to 36 files
new changesets 615d4ace089d:06b1d6b38002
571804 local changesets published
(run 'hg update' to get a working copy)

updating to "central" - the development head of Gecko and Firefox
(warning: large working directory being used without fsmonitor enabled; enable fsmonitor to improve performance; see "hg help -e fsmonitor")
285730 files updated, 0 files merged, 0 files removed, 0 files unresolved                                                                                                                                 
Firefox source code available at /var/export/jj-dev/mozilla-unified

Build system telemetry

Mozilla collects data about local builds in order to make builds faster and
improve developer tooling. To learn more about the data we intend to collect
read here:
https://firefox-source-docs.mozilla.org/build/buildsystem/telemetry.html.

If you have questions, please ask in #build in irc.mozilla.org. If you would
like to opt out of data collection, select (N) at the prompt.

Would you like to enable build system telemetry? (Yn): y

Thanks for enabling build telemetry! You can change this setting at any time by editing the config file `/home/jj5/.mozbuild/machrc`

0:04.19 Setting up artifact node.tar.xz
0:04.20 Downloading artifact to local cache: /home/jj5/.mozbuild/toolchains/bad1328b69e924ec-node.tar.xz
0:04.44 Downloading... 0.0 %
0:06.31 Downloading... 100.0 %
0:06.36 untarring "/home/jj5/.mozbuild/node.tar.xz"
0:02.96 Setting up artifact clang.tar.xz
0:02.96 Downloading artifact to local cache: /home/jj5/.mozbuild/toolchains/7903192c2a5bf947-clang.tar.xz
0:03.78 Downloading... 0.0 %
0:24.37 Downloading... 100.0 %
0:24.85 untarring "/home/jj5/.mozbuild/clang.tar.xz"
1:26.13 Setting up artifact cbindgen.tar.xz
1:26.14 Downloading artifact to local cache: /home/jj5/.mozbuild/toolchains/a8e3b544082d318e-cbindgen.tar.xz
1:26.40 Downloading... 0.0 %
1:26.67 Downloading... 100.0 %
1:26.67 untarring "/home/jj5/.mozbuild/cbindgen.tar.xz"
0:02.93 Setting up artifact clang-tidy.tar.xz
0:02.93 Downloading artifact to local cache: /home/jj5/.mozbuild/toolchains/0dbe7fb2d4893944-clang-tidy.tar.xz
0:03.19 Downloading... 0.0 %
0:08.65 Downloading... 100.0 %
0:08.78 untarring "/home/jj5/.mozbuild/clang-tools/clang-tidy.tar.xz"
0:02.82 Setting up artifact nasm.tar.bz2
0:02.83 Downloading artifact to local cache: /home/jj5/.mozbuild/toolchains/3fa85ee25c9b561d-nasm.tar.bz2
0:03.10 Downloading... 0.0 %
0:03.19 Downloading... 100.0 %
0:03.22 untarring "/home/jj5/.mozbuild/nasm.tar.bz2"
0:03.01 Setting up artifact sccache.tar.xz
0:03.02 Downloading artifact to local cache: /home/jj5/.mozbuild/toolchains/74cc61d37c99b38b-sccache.tar.xz
0:03.25 Downloading... 0.0 %
0:04.10 Downloading... 100.0 %
0:04.17 untarring "/home/jj5/.mozbuild/sccache.tar.xz"
0:03.45 Setting up artifact lucetc.tar.xz
0:03.45 Downloading artifact to local cache: /home/jj5/.mozbuild/toolchains/1e5a07a1a8d3faa2-lucetc.tar.xz
0:03.69 Downloading... 0.0 %
0:04.02 Downloading... 100.0 %
0:04.03 untarring "/home/jj5/.mozbuild/lucetc.tar.xz"
0:03.20 Setting up artifact wasi-sysroot.tar.xz
0:03.20 Downloading artifact to local cache: /home/jj5/.mozbuild/toolchains/59dc751ae04661ee-wasi-sysroot.tar.xz
0:03.45 Downloading... 0.0 %
0:06.76 Downloading... 100.0 %
0:06.87 untarring "/home/jj5/.mozbuild/wasi-sysroot.tar.xz"

Your system should be ready to build Firefox for Desktop!

To build Firefox for Desktop, please restart the shell (Start a new terminal window)