macOS nightly builds with packaged locales fail
I think we never got macOS nightly builds with packaged locales yet because of brand.dtd
.
Now that that problem has been solved, we've found another one: manifests are copied to obj-x86_64-apple-darwin/dist/bin/chrome/
but not to obj-x86_64-apple-darwin/dist/Tor Browser.app/Contents/Resources/chrome/
.
It seems Mozilla changed their documentation since I've started working on the matter, and they added a new command: ./mach package-multi-locale
.
It does three things:
- call
./mach build chrome-$AB_CD
, like we do - "Repackage the browser" (see
python/mozbuild/mozbuild/mach_commands.py:2492
on 102.4) - Calls the equivalent of
./mach package
(with another direct call to make)
So, the problems are
-
- isn't exposed as a standalone
mach
command, but rather calls make directly
- isn't exposed as a standalone
-
- fails, because we don't have the tools to build the dmg
The "repackaging the browser" can be reproduced in this way:
pushd obj-x86_64-apple-darwin/browser/app/
gmake -jsomething tools
popd
So, the possible solutions are:
- add this with a few comments to explain where it comes from, and think about it when it breaks again
- easy, and no patch required in
tor-browser.git
- easy, and no patch required in
- run
./mach package-multi-locale --locales en-US $MOZ_CHROME_MULTILOCALE || true
(notice the lack of quotes) to make it prepare whatever we need and accept its failure- easy, too, but logs will be polluted with a useless failure
- patch
python/mozbuild/mozbuild/mach_commands.py
not to create the package (and maybe callstage-package
, instead? Or just return)- "cross" patch required, but at least if the patch of
tor-browser.git
fails to apply we immediately spot the problem
- "cross" patch required, but at least if the patch of
One of my question now is: is stage-package
an officially recognized command? Or have we ever used it even though we "weren't allowed" to?
/cc @boklm