Commit Graph

1087 Commits

Author SHA1 Message Date
Shea Levy
7456be85db
Merge branch 'staging-next' into staging 2022-05-18 06:40:21 -04:00
squalus
4a1f7f8472 buildMozillaMach: fix builds with crash reporting disabled
- only try to build and copy crash reporting symbols when crash
  reporting is enabled
- fixes the librewolf build
2022-05-16 13:52:15 -07:00
github-actions[bot]
e2602ad62e
Merge staging-next into staging 2022-05-16 00:04:11 +00:00
Jan Tojnar
d1b77f990f Merge branch 'staging-next' into staging
Conflicts:
	pkgs/applications/networking/browsers/firefox/common.nix between f6c5761935 and a373324120.
2022-05-15 07:08:29 +02:00
Martin Weinelt
142cf31abb
firefox: 100.0 -> 100.0.1
https://www.mozilla.org/en-US/firefox/100.0.1/releasenotes/
2022-05-15 01:37:15 +02:00
Martin Weinelt
a179998a06
buildMozillaMach: Update native python env var
With Firefox 100.0 the following deprecation warning comes up:

> The "MACH_USE_SYSTEM_PYTHON" environment variable is deprecated,
> please unset it or replace it with either
> "MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=system" or
> "MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=none"

And since we want to continue using our own python we're going for the
system value when the version is at least 100.0.
2022-05-13 17:31:40 +02:00
Martin Weinelt
a373324120
buildMozillaMach: create symbols output
Thie zip bundle in this output is used in the dumps sent by the
crashreporter. For this to happen we need to upload this zip file to
https://symbols.mozilla.org, which is a separate effort.
2022-05-13 17:31:39 +02:00
Rick van Schijndel
1f75e49103
Merge pull request #147986 from NickCao/rustc-llvmpackages
firefox: fix cross compilation
2022-05-13 09:26:16 +02:00
Nick Cao
f6c5761935
firefox-unwrapped: fix cross compilation 2022-05-13 13:28:52 +08:00
github-actions[bot]
d79af4efe4
Merge staging-next into staging 2022-05-13 00:03:35 +00:00
Martin Weinelt
766cf76b4f
Merge pull request #172323 from ncfavier/fix-firefox-tmp.json 2022-05-13 01:53:45 +02:00
Thiago Kenji Okada
5c5187646d
Merge pull request #172366 from ncfavier/wrappers-cleanup
make{,Binary}Wrapper: some cleanups
2022-05-12 22:17:34 +01:00
Naïm Favier
88369997e1
makeBinaryWrapper: add extractCmd
A small shell script that can be used to extract a binary wrapper's
makeCWrapper call from its embedded docstring, without depending on
makeBinaryWrapper.
2022-05-12 01:44:02 +02:00
Martin Weinelt
f53bffda16
Merge pull request #160980 from squalus/librewolf-dir 2022-05-12 00:52:18 +02:00
davidak
a2c863ce2f
Merge pull request #171900 from kevincox/firefox-crashreporter
firefox: Enable crash reporter by default.
2022-05-11 16:50:20 +02:00
Naïm Favier
2ae69114a1
makeWrapper: implement --inherit-argv0
For symmetry/interoperability with makeBinaryWrapper. Implemented as
--argv0 '$0'
2022-05-10 22:07:57 +02:00
Naïm Favier
b0f5004a06
wrapFirefox: move back into $out 2022-05-10 13:19:54 +02:00
squalus
b1571265b5 librewolf: move out of firefox directory
Simplifies Firefox maintenance. See #160520

- make the firefox common.nix available from the top level as
  buildMozillaMach
- use new buildMozillaMach function in librewolf expressions
- minor changes to update script
2022-05-10 00:10:21 -07:00
Martin Weinelt
e33498fb74
Merge pull request #172002 from S-NA/support-more-audio-backends 2022-05-10 02:15:54 +02:00
S. Nordin Abouzahra
0bafb3baa7 firefox: support JACK and sndio audio backends
You can set `media.cubeb.backend` in `about:config` to force a specific
backend.
2022-05-07 18:36:06 -04:00
Naïm Favier
863cdf8f09
wrapFirefox: handle binary wrappers
We can't just edit binary wrappers in place because of a length
mismatch, so we have to parse the generating makeCWrapper call out of
the binary, extract wrapper arguments from it and add them to the
Firefox wrapper.

All these contortions are needed because Firefox looks for its runtime
in argv0, so the proper argv0 needs to be set by wrappers to always
point to the "final" runtime. I think this could be avoided by wrapping
/lib/$libName/firefox instead of /bin/firefox, and I'd like to look into
that in the future, but for now I'm just fixing the immediate problem.
2022-05-07 20:40:43 +02:00
Kevin Cox
4206661e5d
firefox: Enable crash reporter by default.
This makes it easier to report bugs upstream and ensures that NixOS user crashes are fixed.

Based on my testing these reports weren't automatically submitted anyways so the privacy concern is minimal. For my crashes it both asked my if a crash report should be produced after a crash, and required manual sending. Although possibly the report world eventually be sent automatically.

Fixes https://github.com/NixOS/nixpkgs/issues/107889
2022-05-06 22:24:42 -04:00
squalus
e9f479eca0 librewolf: 100.0-1 -> 100.0-2 2022-05-05 07:19:14 -07:00
squalus
b04e852474 librewolf: 99.0.1-4 -> 100.0-1 2022-05-03 17:56:12 -07:00
Martin Weinelt
f6fd7e36d3
firefox-esr: 91.8.0esr -> 91.9.0esr
https://www.mozilla.org/en-US/firefox/91.9.0/releasenotes/
https://www.mozilla.org/en-US/security/advisories/mfsa2022-17/

Fixes: CVE-2022-29914, CVE-2022-29909, CVE-2022-29916, CVE-2022-29911,
       CVE-2022-29912, CVE-2022-29917
2022-05-03 15:35:22 +02:00
Martin Weinelt
3f2a09af84
firefox: 99.0.1 -> 100.0
https://www.mozilla.org/en-US/firefox/100.0/releasenotes/
https://www.mozilla.org/en-US/security/advisories/mfsa2022-16/

Fixes: CVE-2022-29914, CVE-2022-29909, CVE-2022-29911, CVE-2022-29912,
       CVE-2022-29910, CVE-2022-29915, CVE-2022-29917, CVE-2022-29918
2022-05-03 15:34:02 +02:00
Martin Weinelt
849242b667
Merge pull request #171312 from SuperSandro2000/firefox 2022-05-03 01:21:07 +02:00
Sandro Jäckel
fddfaa3b72
firefox: remove unused option 2022-05-02 22:15:56 +02:00
Vladimír Čunát
c480cc2895
Merge branch 'master' into staging-next-2022-04-23 2022-04-30 23:02:28 +02:00
squalus
4920a141ed librewolf: 99.0.1-3 -> 99.0.1-4 2022-04-29 19:06:37 -07:00
Ben Siraphob
259fa13d53 treewide: remove nativeBuildInputs that are in stdenv 2022-04-16 21:46:46 +03:00
github-actions[bot]
c58a108aaa
Merge master into staging-next 2022-04-16 06:01:08 +00:00
squalus
f681f8f18b librewolf: 99.0-1 -> 99.0.1-3 2022-04-14 09:18:34 -07:00
Vladimír Čunát
d5d94127fd
Merge branch 'staging-next' into staging
Minor conflicts; I hope I didn't mess up:
	pkgs/development/tools/misc/binutils/default.nix
	pkgs/games/openjk/default.nix
2022-04-14 09:53:21 +02:00
Martin Weinelt
07c6d44239
firefox: 99.0 -> 99.0.1
https://www.mozilla.org/en-US/firefox/99.0.1/releasenotes/
2022-04-12 15:40:44 +02:00
github-actions[bot]
28c6c88d42
Merge staging-next into staging 2022-04-10 00:02:52 +00:00
squalus
00db31b93c librewolf: 98.0.2-1 -> 99.0-1 2022-04-09 11:18:04 -07:00
github-actions[bot]
3dc8bd98b9
Merge staging-next into staging 2022-04-06 00:02:41 +00:00
Martin Weinelt
35ae0b7a1b
firefox: 91.7.1 -> 91.8.0
https://www.mozilla.org/en-US/firefox/91.8.0/releasenotes/
2022-04-06 00:18:37 +02:00
Martin Weinelt
e1e03e5bc2
firefox: 98.0.2 -> 99.0
https://www.mozilla.org/en-US/firefox/99.0/releasenotes/
2022-04-06 00:18:37 +02:00
ajs124
f3d301ab81 thunderbird{-bin}|firefox|librewolf: use nss_latest for regular releases
and nss_esr for esr releases
2022-04-03 13:14:07 +01:00
Bernardo Meurer
a158af0b1b
Merge pull request #165964 from mweinelt/firefox-hwdec 2022-03-29 09:16:18 -07:00
Martin Weinelt
6cdf69546b
firefox: allow RDD sandbox access to gpu drivers
Firefox uses a sandboxing model that only allows access to paths that
were previously explicitly granted. We can only add granular permissions
to a specific sandbox by patching, because setting LD_LIBRARY_PATH would
affect all of them.

To use hardware decoding via VA-API with Firefox 98.0.2 one needs to
head to `about:config` and enable `media.ffmpeg.vaapi.enabled`.

Closes: #157061
2022-03-29 15:44:06 +02:00
Bernardo Meurer
0e3d0d844e
Merge pull request #166078 from mweinelt/firefox-drm
firefox: fix drmSupport flag
2022-03-28 12:49:42 -07:00
Martin Weinelt
2cb9593cad firefox: always build with clang
Both LTO and PGO require the use of clang so I think its easier to just
stick with clang for all builds, so PGO and LTO could in theory be used
without each other.
2022-03-28 21:42:49 +02:00
Martin Weinelt
4cf4a7b848 firefox: add pname to throw message
https://github.com/NixOS/nixpkgs/pull/164646#discussion_r835879348
2022-03-28 21:42:49 +02:00
Martin Weinelt
05a6b3c2b7 librewolf: disable pgo support
Starts profiling, starts librewolf, but gets stuck and never terminates.
2022-03-28 21:42:49 +02:00
Martin Weinelt
0d3772f645 firefox: add profile-guided optimization
Lo and behold, we're finally catching up with Mozillas very own firefox
build in terms of speed.

PGO is an optimization technique in which in a first step we create a
build that supports instrumentation, meaning we can use it to create a
profile of how the browser behaved during usage. Then in a second pass
we create the final build that uses the acquired profiling data to
optimize the browser for the workload it actually received during
profiling.

The downside is that with PGO we now need to build Firefox twice, which
increases the build time from around 20 minutes to roughly 50 minutes.

In the Speedometer 2.0 benchmark multiple tests could see a
responsiveness improvemeant around 20-25%, which makes the increased
build time well worth it.

Sadly this benefit seems limited to x86_64-linux, builds on
aarch64-linux get stuck during profiling and I haven't found out why.

Finally, after a long time, we can say:

Closes: #76484
Supersedes: #129503
2022-03-28 21:42:49 +02:00
Martin Weinelt
2a32474802
firefox: fix drmSupport flag
In #109133 @alyssais discovered that the drmSupport flag stopped
working. This is because Mozilla decided around Firefox 51
(mozbz#1289634) to swap the default values and our flag was asking for
the wrong thing all along.

Since this flag has now been enabled for multiple years, disabling it
would mean a regression for our users. Leaving it enabled should be
unproblematic since it only controls whether Firefox shows the EME nagbar,
that allows to enable Widevine CDM, when a site requests it. The choice is
therefore completely up to the enduser.

Disabling this nagbar is still possible at runtime by setting
`browser.eme.ui.enabled` to `false`. If Widevine CDM was inadvertently
enabled it can be disabled at `media.gmp-widevinecdm.enabled`.

Supersedes: #109133
2022-03-28 18:12:02 +02:00
squalus
af9f2e4611 librewolf: 98.0-1 -> 98.0.2-1 2022-03-24 20:41:39 -07:00