Trac issueshttps://gitlab.torproject.org/legacy/trac/-/issues2020-06-16T01:26:35Zhttps://gitlab.torproject.org/legacy/trac/-/issues/34432Integrate fenix toolchain into tor-browser-build's master2020-06-16T01:26:35ZGeorg KoppenIntegrate fenix toolchain into tor-browser-build's masterWe decided to not create a new branch to take care of the Fenix toolchain while continuing to build nightly builds with the ESR 68 toolchains (and later ESR 78 toolchains for desktop builds). Rather, we'll follow boklm's idea of namespac...We decided to not create a new branch to take care of the Fenix toolchain while continuing to build nightly builds with the ESR 68 toolchains (and later ESR 78 toolchains for desktop builds). Rather, we'll follow boklm's idea of namespacing the projects to fenix-$project if there are Fenix specific needs and keep everything on `master`. This should avoid diverging branches and a tricky merge at the end.Georg KoppenGeorg Koppenhttps://gitlab.torproject.org/legacy/trac/-/issues/34247Update tor-browser-build README2020-06-16T01:13:07ZGeorg KoppenUpdate tor-browser-build READMEOver the time some errors and things to correct have accumulated in the `README` file. We should fix them.Over the time some errors and things to correct have accumulated in the `README` file. We should fix them.Georg KoppenGeorg Koppenhttps://gitlab.torproject.org/legacy/trac/-/issues/34242Creating containers for Linux targets is busted due to outdated apt2020-06-16T01:13:06ZGeorg KoppenCreating containers for Linux targets is busted due to outdated aptFor Linux containers we hardcode `0.9.7.9+deb7u8` as the minimal `apt` version but that's not available anymore on `deb.freexian.com`. Rather it's `0.9.7.9+deb7u9` now.For Linux containers we hardcode `0.9.7.9+deb7u8` as the minimal `apt` version but that's not available anymore on `deb.freexian.com`. Rather it's `0.9.7.9+deb7u9` now.Georg KoppenGeorg Koppenhttps://gitlab.torproject.org/legacy/trac/-/issues/34228Update Linux toolchain for ESR 782020-06-16T01:26:27ZGeorg KoppenUpdate Linux toolchain for ESR 78We need to go over out Linux toolchain and update it wherever we think we need it for Firefox 78 ESR.We need to go over out Linux toolchain and update it wherever we think we need it for Firefox 78 ESR.Georg KoppenGeorg Koppenhttps://gitlab.torproject.org/legacy/trac/-/issues/34219Enable ZSTD support properly for Android2020-06-16T01:13:04ZGeorg KoppenEnable ZSTD support properly for AndroidIn #28766 we tried to enable ZSTD support for Android but just specifying `--enable-zstd` when compiling `tor` and extracting the library is not enough:
```
WARNING: Unable to find libzstd, install pkg-config, and check the PKG_CONFIG_PA...In #28766 we tried to enable ZSTD support for Android but just specifying `--enable-zstd` when compiling `tor` and extracting the library is not enough:
```
WARNING: Unable to find libzstd, install pkg-config, and check the PKG_CONFIG_PATH environment variable, or set ZSTD_CFLAGS and ZSTD_LIBS
```Georg KoppenGeorg Koppenhttps://gitlab.torproject.org/legacy/trac/-/issues/34202Remove xz (LZMA) project for now2020-06-16T01:13:02ZGeorg KoppenRemove xz (LZMA) project for nowThe xz project is currently unused and starts to bitrot. We should remove it for now and add it properly back once we actually need it.The xz project is currently unused and starts to bitrot. We should remove it for now and add it properly back once we actually need it.Georg KoppenGeorg Koppenhttps://gitlab.torproject.org/legacy/trac/-/issues/34187Update zlib build script to pick up new android toolchain2020-06-16T01:26:25ZGeorg KoppenUpdate zlib build script to pick up new android toolchainIt seems in order to pick up the new android toolchain we need to update our `zlib` project as well.It seems in order to pick up the new android toolchain we need to update our `zlib` project as well.Georg KoppenGeorg Koppenhttps://gitlab.torproject.org/legacy/trac/-/issues/34108Write script to keep track of toolchain changes2020-06-16T01:26:23ZGeorg KoppenWrite script to keep track of toolchain changesWe have a lot of different requirements for our toolchain (see: #33557) due to a number of different projects involved in building Fenix. We should write a script that we run periodically to keep track of necessary toolchain changes ahea...We have a lot of different requirements for our toolchain (see: #33557) due to a number of different projects involved in building Fenix. We should write a script that we run periodically to keep track of necessary toolchain changes ahead of time.Georg KoppenGeorg Koppenhttps://gitlab.torproject.org/legacy/trac/-/issues/34101Add tor-browser-build project for application-services2020-06-16T01:26:23ZGeorg KoppenAdd tor-browser-build project for application-servicesUnless we rip out all of the `application-services` (which I currently don't think we'll do) we need to have a project for it in `tor-browser-build`.
This will be a fun one to build. See the `lib` dir for some build scripts and [the meg...Unless we rip out all of the `application-services` (which I currently don't think we'll do) we need to have a project for it in `tor-browser-build`.
This will be a fun one to build. See the `lib` dir for some build scripts and [the megazord design](https://github.com/mozilla/application-services/blob/master/docs/design/megazords.md).Georg KoppenGeorg Koppenhttps://gitlab.torproject.org/legacy/trac/-/issues/34015geckoview is not built reproducible2020-06-16T01:12:48ZGeorg Koppengeckoview is not built reproducibleWhile checking for reproducibility issues within geckoview .aar files I realized that `libxul.so` differs. All other artifacts match when built on different machines. Attached is the diff.While checking for reproducibility issues within geckoview .aar files I realized that `libxul.so` differs. All other artifacts match when built on different machines. Attached is the diff.Georg KoppenGeorg Koppenhttps://gitlab.torproject.org/legacy/trac/-/issues/34014Support sqlite3 in our python project2020-06-16T01:26:21ZGeorg KoppenSupport sqlite3 in our python projectPython3 we use needs sqlite3 support now.Python3 we use needs sqlite3 support now.Georg KoppenGeorg Koppenhttps://gitlab.torproject.org/legacy/trac/-/issues/34013Bump node version to v10.21.02020-06-16T01:26:20ZGeorg KoppenBump node version to v10.21.0Update our node version to what is used in mozilla-central.Update our node version to what is used in mozilla-central.Georg KoppenGeorg Koppenhttps://gitlab.torproject.org/legacy/trac/-/issues/34012Bump cbindgen version to 0.14.12020-06-16T01:26:20ZGeorg KoppenBump cbindgen version to 0.14.1Update to latest cbindgen used on mozilla-central.Update to latest cbindgen used on mozilla-central.Georg KoppenGeorg Koppenhttps://gitlab.torproject.org/legacy/trac/-/issues/34011Bump clang version to 9.0.12020-06-16T01:26:19ZGeorg KoppenBump clang version to 9.0.1Let's go away from clang 8.0.1Let's go away from clang 8.0.1Georg KoppenGeorg Koppenhttps://gitlab.torproject.org/legacy/trac/-/issues/33973Create fat .aar for geckoview2020-06-16T01:26:18ZGeorg KoppenCreate fat .aar for geckoviewDownstream consumers like `android-components` and `fenix` use fat .aar files. We need to create them out of ouf per-arch ones. https://bugzilla.mozilla.org/show_bug.cgi?id=1508976 is the bug where this got implemented on Mozilla's side.Downstream consumers like `android-components` and `fenix` use fat .aar files. We need to create them out of ouf per-arch ones. https://bugzilla.mozilla.org/show_bug.cgi?id=1508976 is the bug where this got implemented on Mozilla's side.Georg KoppenGeorg Koppenhttps://gitlab.torproject.org/legacy/trac/-/issues/33971Document Authenticode code signing certificate renewal process2020-06-16T01:27:00ZGeorg KoppenDocument Authenticode code signing certificate renewal processWhile it is still fresh we should document the process of renewing our Windows code signing certificate.While it is still fresh we should document the process of renewing our Windows code signing certificate.Georg KoppenGeorg Koppenhttps://gitlab.torproject.org/legacy/trac/-/issues/33936Make our fetch-gradle-dependencies script smarter regarding dependency location2020-06-16T01:26:16ZGeorg KoppenMake our fetch-gradle-dependencies script smarter regarding dependency locationWe fetch gradle dependencies with our `fetch-gradle-dependencies` script but don't really care where exactly we put them in that process. We should change that, though, because otherwise we need to do in build scripts things like
`cp -r ...We fetch gradle dependencies with our `fetch-gradle-dependencies` script but don't really care where exactly we put them in that process. We should change that, though, because otherwise we need to do in build scripts things like
`cp -r $gradle_repo/m2/* $gradle_repo` to adjust the paths so that gradle can find them.
That's a thing our script should do in the first place to avoid complexity in our build scripts.Georg KoppenGeorg Koppenhttps://gitlab.torproject.org/legacy/trac/-/issues/33932Improve steps for creating gradle dependencies lists for projects2020-06-16T01:26:14ZGeorg KoppenImprove steps for creating gradle dependencies lists for projectsThe steps we have for creating lists of gradle dependencies are still not bullet proof. I stumbled across a case where a download got attempted but then a redirect happened which included a different URL and which finally failed. Our cur...The steps we have for creating lists of gradle dependencies are still not bullet proof. I stumbled across a case where a download got attempted but then a redirect happened which included a different URL and which finally failed. Our current instructions don't cope with that case (and probably other corner cases neither).
I've thinking about that and feel we can do better if we mimmick gradle's behavior more:
1) We keep the first step we currently have (extracting all the attempted downloads)
2) We actually try to download all those resources ourselves and compute their sha256 sum.
3) Download failures are easily removable (no sha256 sum is created in that case) and we just remove the successful duplicates.Georg KoppenGeorg Koppenhttps://gitlab.torproject.org/legacy/trac/-/issues/33930Tor binary we build seems to not getting picked up in nightly builds2020-06-15T23:02:06ZGeorg KoppenTor binary we build seems to not getting picked up in nightly buildsWe build Tor for Android now ourselves thanks to the fix for #28766. But unfortunately it seems at least as it is not picked up yet, despite #32993 claiming so. I stumbled across this when testing a fix for #32027. The branch has all pat...We build Tor for Android now ourselves thanks to the fix for #28766. But unfortunately it seems at least as it is not picked up yet, despite #32993 claiming so. I stumbled across this when testing a fix for #32027. The branch has all patches for #28704 and children but it's still shown that we use the Tor we've been bundling so far but not the one we compile.Georg KoppenGeorg Koppenhttps://gitlab.torproject.org/legacy/trac/-/issues/33927Add tor-browser-build project for fenix2020-06-16T01:26:13ZGeorg KoppenAdd tor-browser-build project for fenixWe need an own project for FenixWe need an own project for FenixGeorg KoppenGeorg Koppen