Commit Graph

1259 Commits

Author SHA1 Message Date
Martin Weinelt
6acfc788cc
buildMozillaMach: add curl into crashreporter rpath
Firefox has been crashy during the 106 cycle on my laptop, so I saw the
crashreporter more often than not. In the terminal spew I found

> Failed to open curl lib from binary, use libcurl.so instead

and the GUI told me submitting the report had failed. Not great if you
actually except to have your bugs fixed at some point.
2022-11-08 07:52:12 +01:00
R. Ryantm
c01fdc7455 firefox-unwrapped: 106.0.4 -> 106.0.5 2022-11-04 22:43:35 +00:00
Bernardo Meurer
51ebf9d12e
Merge pull request #198608 from taku0/thunderbird-desktop-item 2022-11-04 14:53:51 +00:00
taku0
aaa9a95e02 thunderbird, thunderbird-bin: fix desktop item
Generate appropriate desktop item for Thunderbird.

Fixes #194851.
2022-11-03 17:24:37 +09:00
R. Ryantm
82e5d263b9 firefox-unwrapped: 106.0.3 -> 106.0.4 2022-11-03 06:30:04 +00:00
Martin Weinelt
0fad4307e8
firefox-unwrapped: 106.0.2 -> 106.0.3
https://www.mozilla.org/en-US/firefox/106.0.3/releasenotes/
2022-10-31 02:01:01 +01:00
Martin Weinelt
bd66d2fe38
firefox-unwrapped: 106.0.1 -> 106.0.2
https://www.mozilla.org/en-US/firefox/106.0.2/releasenotes/
2022-10-26 09:00:09 +02:00
Martin Weinelt
1f6b6f02e9
firefox-unwrapped: 106.0 -> 106.0.1
https://www.mozilla.org/en-US/firefox/106.0.1/releasenotes/
2022-10-20 12:22:18 +02:00
Vladimír Čunát
c08efaf08b
firefox: fix build on aarch64-linux by upstream patch 2022-10-18 12:30:27 +02:00
Martin Weinelt
43c3a9fdf6
firefox-esr-102-unwrapped: 102.3.0esr -> 102.4.0esr
https://www.mozilla.org/en-US/firefox/102.4.0/releasenotes/
2022-10-17 13:43:57 +02:00
Martin Weinelt
5ac348c7f3
firefox-unwrapped: 105.0.3 -> 106.0
https://www.mozilla.org/en-US/firefox/106.0/releasenotes/
2022-10-17 13:23:33 +02:00
Jan Tojnar
50c6895e77 gnome-browser-connector: 10.1 → 42.0
https://discourse.gnome.org/t/split-and-rename-of-chrome-gnome-shell/11075
815ec9e1af...v42.0

- Renamed and split into a separate repo from the extensions.
- CMake build replaced with Meson (jq also not needed)
- requests Python module not needed since updates are now solely handled by GNOME Shell itself

Also

- Corrected license
- Cleaned up the module
- Replaced PYTHONPATH in a wrapper by Python environment

Changelog-Reviewed-By: Jan Tojnar <jtojnar@gmail.com>
2022-10-11 18:52:12 +02:00
Martin Weinelt
5255c541a6
firefox-unwrapped: 105.0.2 -> 105.0.3
https://www.mozilla.org/en-US/firefox/105.0.3/releasenotes/
2022-10-08 03:44:34 +02:00
Martin Weinelt
a12dd80a49
firefox-unwrapped: 105.0.1 -> 105.0.2
https://www.mozilla.org/en-US/firefox/105.0.2/releasenotes/
2022-10-04 21:35:10 +02:00
Ryan Hendrickson
c5b04c9144 firefox: address automated review comments 2022-10-01 12:58:22 -04:00
Martin Weinelt
68c0ca4416 Merge remote-tracking branch 'origin/master' into staging-next 2022-09-25 21:36:31 +02:00
Martin Weinelt
ec248bd566
firefox-unwrapped: 105.0 -> 105.0.1
https://www.mozilla.org/en-US/firefox/105.0.1/releasenotes/
2022-09-23 03:20:33 +02:00
Martin Weinelt
54a3b8e5fa
firefox-unwrapped: Use https url in update script 2022-09-23 03:20:27 +02:00
Martin Weinelt
766a59d215
buildMozillaMach: Build 102esr using nss_esr 2022-09-21 13:45:38 +02:00
Martin Weinelt
18e3293550
buildMozillaMach: Prune control flow for versions <102 2022-09-21 13:45:38 +02:00
Martin Weinelt
b3c86ef755
firefox-esr-91-unwrapped: drop
The 91 series has reached its end of life.
2022-09-21 13:45:38 +02:00
Martin Weinelt
f559d89cd0
firefox-esr-102-unwrapped: 102.2.0esr -> 102.3.0esr
https://www.mozilla.org/en-US/firefox/102.3.0/releasenotes/
https://www.mozilla.org/en-US/security/advisories/mfsa2022-41/

Fixes: CVE-2022-40959, CVE-2022-40960, CVE-2022-40958, CVE-2022-40956
       CVE-2022-40957, CVE-2022-40962
2022-09-20 15:04:10 +02:00
Martin Weinelt
11b3d69652
firefox-unwrapped: 104.0.2 -> 105.0
https://www.mozilla.org/en-US/firefox/105.0/releasenotes/
https://www.mozilla.org/en-US/security/advisories/mfsa2022-40

Fixes: CVE-2022-40959, CVE-2022-40960, CVE-2022-40958, CVE-2022-40961,
       CVE-2022-40956, CVE-2022-40957, CVE-2022-40962
2022-09-20 14:59:01 +02:00
linsui
09800d7f75 firefox wrapper: write extraPrefsFiles before extraPrefs 2022-09-07 21:36:04 +08:00
Martin Weinelt
c9a750458f
firefox-unwrapped: 104.0.1 -> 104.0.2
https://www.mozilla.org/en-US/firefox/104.0.2/releasenotes/
2022-09-05 18:52:14 +02:00
Atemu
e661714656 firefox: use ffmpeg_5
Allows for AV1 VAAPI decoding
2022-09-02 00:12:41 +02:00
Martin Weinelt
66124effe6
firefox-unwrapped: 104.0 -> 104.0.1
https://www.mozilla.org/en-US/firefox/104.0.1/releasenotes/
2022-08-30 02:38:19 +02:00
github-actions[bot]
8f206d92d9
Merge master into staging-next 2022-08-23 18:01:18 +00:00
Martin Weinelt
1c98a4b64b
firefox-esr-102-unwrapped: 102.1.0esr -> 102.2.0esr
https://www.mozilla.org/en-US/firefox/102.2.0/releasenotes/

Fixes: CVE-2022-38472, CVE-2022-38473, CVE-2022-38476, CVE-2022-38477,
       CVE-2022-38478
2022-08-23 17:50:55 +02:00
Martin Weinelt
d50d54a0fe
firefox-esr-91-unwrapped: 91.12.0esr -> 91.13.0esr
https://www.mozilla.org/en-US/firefox/91.13.0/releasenotes/

Fixes: CVE-2022-38472, CVE-2022-38473, CVE-2022-38478
2022-08-23 17:50:26 +02:00
Martin Weinelt
097a473056
firefox-unwrapped: 103.0.2 -> 104.0
https://www.mozilla.org/en-US/firefox/104.0/releasenotes/

Fixes: CVE-2022-38472, CVE-2022-38473, CVE-2022-38474, CVE-2022-38475,
       CVE-2022-38477, CVE-2022-38478
2022-08-23 17:49:27 +02:00
github-actions[bot]
318717f2e3
Merge master into staging-next 2022-08-20 00:02:22 +00:00
Emery Hemingway
b5526585c2 treewide: inject xdg-open into wrappers as $PATH suffix
The xdg-open utility is only ever a runtime dependency and its
dependents only expect that it accept a URI as a command line
argument and do something with it that the user would expect.
For such as a trivial relationship it should be possible for
users to override xdg-open with something else in their PATH.
2022-08-19 13:11:27 -05:00
github-actions[bot]
79661ba7e2
Merge staging-next into staging 2022-08-15 18:02:00 +00:00
Ryan Hendrickson
3b1f5eab31 firefox: add application actions to .desktop file 2022-08-15 12:47:27 -04:00
Sergei Trofimovich
3ceb8a59a6
Merge pull request #185537 from trofi/decouple-strip-and-separate-debug
setup-hooks/separate-debug-info.sh: don't inhibit strip hook
2022-08-11 08:53:24 +01:00
Martin Weinelt
52aef90bc6
firefox-unwrapped: 103.0.1 -> 103.0.2
https://www.mozilla.org/en-US/firefox/103.0.2/releasenotes/
2022-08-08 22:36:45 +02:00
Sergei Trofimovich
b3b672d5a1 setup-hooks/separate-debug-info.sh: don't inhibit strip hook
Before the change separate-debug-info.sh did the stripping itself.
This scheme has a few problems:
1. Stripping happens only on ELF files. *.a and *.o files are skipped.
   Derivations have to do it manually. Usually incorrectly
   as they don't run $RANLIB (true for `glibc` and `musl`).
2. Stripping happens on all paths. Ideally only `stripDebugList` paths
   should be considered.
3. Host strip is called on Target files.

This change offloads stripping logic to strip hook. This strips more
files for `glibc` and `musl`. Now we can remove most $STRIP calls
from individual derivations.

Co-authored-by: Sandro <sandro.jaeckel@gmail.com>
2022-08-07 12:49:37 +01:00
Martin Weinelt
46d5c7389f
firefox-esr-{91,102}-unwrapped: set proper pname 2022-08-06 11:36:37 +02:00
Martin Weinelt
f53dff8a0f
Merge pull request #184811 from SuperSandro2000/SuperSandro2000-patch-4 2022-08-04 12:00:29 +02:00
Sandro
7b270bf098
firefox-unwrapped: use pname+version 2022-08-02 14:22:42 +02:00
Martin Weinelt
a03cc9a933
firefox-unwrapped: 103.0 -> 103.0.1
https://www.mozilla.org/en-US/firefox/103.0.1/releasenotes/
2022-08-01 12:59:41 +02:00
Martin Weinelt
aafd5020fa
firefox-esr-91-unwrapped: 91.11.0esr -> 91.12.0esr
https://www.mozilla.org/en-US/firefox/91.12.0/releasenotes/
https://www.mozilla.org/en-US/security/advisories/mfsa2022-29/

Fixes: CVE-2022-36319, CVE-2022-36318
2022-07-26 15:05:13 +02:00
Martin Weinelt
a2c4eb714d
firefox-esr-102-unwrapped: 102.0.1esr -> 102.1.0esr
https://www.mozilla.org/en-US/firefox/102.1.0/releasenotes/
https://www.mozilla.org/en-US/security/advisories/mfsa2022-30/

Fixes: CVE-2022-36319, CVE-2022-36318, CVE-2022-36314, CVE-2022-2505
2022-07-26 15:05:13 +02:00
Martin Weinelt
a168249ddc
firefox-unwrapped: 102.0.1 -> 103.0
https://www.mozilla.org/en-US/firefox/103.0/releasenotes/
https://www.mozilla.org/en-US/security/advisories/mfsa2022-28/

Fixes: CVE-2022-36319, CVE-2022-36317, CVE-2022-36318, CVE-2022-36314,
       CVE-2022-36315, CVE-2022-36316, CVE-2022-36320, CVE-2022-2505
2022-07-26 15:05:04 +02:00
Martin Weinelt
1bfb66edf8
Merge pull request #181312 from r-ryantm/auto-update/firefox-esr-102-unwrapped 2022-07-14 13:33:05 +02:00
Martin Weinelt
1f5af608e7
Merge pull request #179433 from mweinelt/firefox-updatescript
firefox: Extend upgrade script with version prefix
2022-07-14 10:54:01 +02:00
R. Ryantm
0b91cc0961 firefox-esr-102-unwrapped: 102.0esr -> 102.0.1esr 2022-07-13 03:57:47 +00:00
Martin Weinelt
e3e78bb409
firefox-unwrapped: 102.0 -> 102.0.1
https://www.mozilla.org/en-US/firefox/102.0.1/releasenotes/
2022-07-05 20:45:26 +02:00
Martin Weinelt
76ff019153
firefox: Extend upgrade script with version prefix
Prevents upgrades of versioned ESR packages between major versions.
2022-06-28 11:53:18 +02:00
Martin Weinelt
ddc17118f0
firefox-esr-91-unwrapped: 91.10.0esr -> 91.11.0esr
https://www.mozilla.org/en-US/firefox/91.11.0/releasenotes/
2022-06-27 14:20:47 +02:00
Martin Weinelt
1832364599
firefox-esr-102-unwrapped: init at 102.0esr
https://www.mozilla.org/en-US/firefox/102.0/releasenotes/
2022-06-27 14:20:47 +02:00
Martin Weinelt
736555d08f
firefox-unwrapped: 101.0.1 -> 102.0
https://www.mozilla.org/en-US/firefox/102.0/releasenotes/
2022-06-27 14:20:42 +02:00
aszlig
9744ff74ad
firefox: Improve detecting signing requirements
Firefox 61 started to enforce signatures for add-ons and since
commit d031843a1e, we get an evaluation
error that recommends the user to switch to Firefox ESR.

This isn't an option for everyone and as I also pointed out in the pull
request[1] introducing the above commit, I've been building Firefox like
this:

  let
    firefoxNoSigning = firefox-unwrapped.overrideAttrs (lib.const {
      MOZ_REQUIRE_SIGNING = false;
    });
  in wrapFirefox firefoxNoSigning {
    nixExtensions = ...;
  }

However, this only works after manually modifying nixpkgs (or copy &
paste wrapper.nix elsewhere) every time I want to have a new Firefox
version. Of course, this gets annoying and tedious after a while, so
this motivated me to properly fix this to not only check for an ESR
version but also check the value of MOZ_REQUIRE_SIGNING.

Note that I'm using toString here to check for the value because there
are several ways (false, null, "", ...) to set the environment variable
to an empty string and toString makes sure that it really is the desired
behaviour. I specifically checked the Firefox source and also tested
this with multiple values and only building with MOZ_REQUIRE_SIGNING
set to an empty string seems to work (no "0", "false" or other
variants).

Additionally, there is another method to allow unsigned add-ons, which
is by using the --with-unsigned-addon-scopes configure option[2].
Unfortunately, this does not work with nixExtensions because we don't
have (or want) a central directory where those add-ons reside.

Given that nixExtensions disallows manually installing add-ons, setting
MOZ_REQUIRE_SIGNING to false should be safe in this case.

[1]: https://github.com/NixOS/nixpkgs/pull/133504
[2]: https://bugs.archlinux.org/task/63075

Signed-off-by: aszlig <aszlig@nix.build>
2022-06-21 11:54:08 +02:00
github-actions[bot]
6eeef3eaa8
Merge master into staging-next 2022-06-13 00:02:20 +00:00
Martin Weinelt
d5a87edeab
buildMozillaMach: allow PGO on all Linux platforms
Tested on the aarch64 community builder and it didn't get stuck like
back when we first tried to enable PGO.
2022-06-12 12:42:14 +02:00
github-actions[bot]
0fff57e90d
Merge master into staging-next 2022-06-11 00:01:54 +00:00
R. Ryantm
4b582932fb firefox-unwrapped: 101.0 -> 101.0.1
https://www.mozilla.org/en-US/firefox/101.0.1/releasenotes/
2022-06-10 22:35:36 +02:00
Martin Weinelt
299b9a1b59
buildMozillaMach: add patch for rust-cbindgen 0.24 compat
Fixes a regression caused by an update to rust-cbindgen 0.24.x, where
the definition for ROOT_CLIP_CHAIN is now autogenerated and causes the
build to abort with a redefinition error.

https://bugzilla.mozilla.org/show_bug.cgi?id=1773259

Patch by Ollivier Tilloy from Canonical

5622734942
2022-06-08 22:03:31 +02:00
Sergei Trofimovich
4b88d42f51 firefox: disable 'MOZILLA_OFFICIAL=1' on i686
Without the change firefox build on i686 fails at configure time:

    $ NIXPKGS_ALLOW_BROKEN=1 nix build -f. --argstr system "i686-linux" firefox
    ...
    mozbuild.configure.options.InvalidOptionError:
      '--enable-release' implied by 'MOZILLA_OFFICIAL' conflicts with '--disable-release' from the command-line

The change uses the same 32-bit guard for both. It still does not allow
i686 build to succeed for other toolchain misconfiguration, but it's a
step forward.
2022-06-05 08:44:41 -05:00
Klemens Nanni
5d27c8d53f firefox: merge identical optionalAttrs block, fix indent
Two consecutive sets are pulled in under the same `usesNixExtensions`
condition.

Due to wrong indentation, it does however they are nested.

Fix both.
2022-06-01 02:14:37 +02:00
Klemens Nanni
34364c9f5f firefox: smartcardSupport: Use multi-slot module
`onepin-opensc-pkcs11.so` only enables PIN1, but PIN2 is also required.
`opensc-pkcs11.so` enables all slots.

I can successfully use PIN1 and PIN2 in Smart-ID cards with this.
2022-06-01 01:22:45 +02:00
Martin Weinelt
f89d5a7f2c
firefox-esr-91-unwrapped: 91.9.1esr -> 91.10.0esr
https://www.mozilla.org/en-US/firefox/91.10.0/releasenotes/
https://www.mozilla.org/en-US/security/advisories/mfsa2022-21/

Fixes: CVE-2022-31736, CVE-2022-31737, CVE-2022-31738, CVE-2022-31739,
       CVE-2022-31740, CVE-2022-31741, CVE-2022-31742, CVE-2022-31747
2022-05-31 16:34:39 +02:00
Martin Weinelt
332711833d
firefox-unwrapped: 100.0.2- -> 101.0
https://www.mozilla.org/en-US/firefox/101.0/releasenotes/
https://www.mozilla.org/en-US/security/advisories/mfsa2022-20/

Fixes: CVE-2022-31736, CVE-2022-31737, CVE-2022-31738, CVE-2022-31739,
       CVE-2022-31740, CVE-2022-31741, CVE-2022-31742, CVE-2022-31743,
       CVE-2022-31744, CVE-2022-31745, CVE-2022-1919, CVE-2022-31747,
       CVE-2022-31748
2022-05-31 16:33:22 +02:00
Martin Weinelt
c5e0d57cdd
Merge pull request #173738 from mweinelt/firefox-mls 2022-05-24 20:08:46 +02:00
Martin Weinelt
2d97db7873
buildMozillaMach: set geo.provider.network.url for new profiles.
Use Mozilla Location Service as geolocation provider for new profiles,
since our Google API key does not seem to work for geolocation at this
time.

Related: https://github.com/NixOS/nixpkgs/issues/173758
2022-05-22 14:49:17 +02:00
Martin Weinelt
0750e47a4d
buildMozillaMach: Clean up Google API key configuration
Use a proper filename that and add the URL where information about
requesting API keys can be found.
2022-05-22 01:51:07 +02:00
Martin Weinelt
1ba9dfbd97
buildMozillaMach: add support for MLS
We have received our very own API key for Mozilla Location Services and
have been recognized as a Public Interest Project, implying a rate limit
of 100k daily requests¹, which should be sufficient for our population.

N.B: This key belongs to the NixOS project, please don't use ours, but
instead request your own.

[1] https://location.services.mozilla.com/terms
2022-05-22 01:50:56 +02:00
Jan Tojnar
b8b9f52393 Merge branch 'master' into staging-next
Conflicts:
- pkgs/applications/networking/browsers/firefox/common.nix between 318fae87c0 and f6c5761935.
2022-05-21 17:52:39 +02:00
Martin Weinelt
a6685a5a78
firefox-esr: 91.9.0esr -> 91.9.1esr
https://www.mozilla.org/en-US/firefox/91.9.1/releasenotes/
https://www.mozilla.org/en-US/security/advisories/mfsa2022-19/

Fixes: CVE-2022-1802, CVE-2022-1529
2022-05-20 23:45:31 +02:00
Martin Weinelt
b7172d4238
firefox: 100.0.1 -> 100.0.2
https://www.mozilla.org/en-US/firefox/100.0.2/releasenotes/
https://www.mozilla.org/en-US/security/advisories/mfsa2022-19/

Fixes: CVE-2022-1802, CVE-2022-1529
2022-05-20 23:23:47 +02:00
Martin Weinelt
318fae87c0
buildMozillaMach: Add distribution identifier and distribution.ini
Adds a distribution id useful for aggregation of crash statistics.

Also creates a NixOS flavor, visible through the About window, that is
also exposed through telemetry data, if enabled.
2022-05-19 23:12:47 +02:00
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
Martin Weinelt
b3529accfb
firefox: reformat, sort, cleanup
It is normal for such a large derivation to accumulate mixed codestyles
over all those years making it harder to maintain.

By splitting up dependencies to one per line I noticed two unused
dependencies (hunspell, sqlite) that were removed in this change.

Also most lists are now sorted alphabetically, so reasoning about them
has become much easier.

Lists now use the same style for indentation and concat, and environment
variables are all defined in preConfigure as opposed to bare in the
derivation.

The object dir, firefox build directory, is now in a predictable
directory at ${pwd}/mozobj as opposed to ${pwd}/obj-@CONFIG_GUESS@,
saving us one wildcard expansion. This is also a good prepration for the
PGO build where we need to reference bits inside this directory.

Added a few comments and clarified others from what I've learned how the
firefox build works.
2022-03-23 17:03:42 +01:00
Martin Weinelt
178d447610
firefox: pass pciutils via wrapper instead of patching it 2022-03-23 17:03:42 +01:00
Martin Weinelt
51e5f33899
firefox: fix system libffi usage
Since Firefox 51 the --enable-system-ffi flag was renamed to
--with-systemd-ffi when it moved to the javascript toolkit parts. Rename
the flag accordingly and reintroduce the dependency.

mozbz#1294803
2022-03-23 17:03:41 +01:00
Martin Weinelt
08ea534e67
firefox: drop darwin support
Darwin support was marked broken in 2019 with Firefox 69 and has missed
therefore missed out and not been tested on the following 29 major
releases since.

It cannot be supported again without a darwin user stepping up to take
care and work on and test every major release, which hasn't happened
since I took over maintainership.

The recommendation of the people that tend to the firefox source build
is for darwin users to use firefox-bin instead.
2022-03-23 17:03:41 +01:00
Martin Weinelt
71d879b16b
firefox: drop pipewire from build inputs
Firefox does not support passing pipewire as a system library and
instead relies on a vendored copy it ships. We keep the flag because it
is tied into the wrapper, because we still need to have access to its
libraries at runtime.
2022-03-23 17:03:41 +01:00
Martin Weinelt
48eabf6838
firefox: drop hint regarding system cairo
Building with system cairo has been unsupported since Firefox 60
(mozbz#1432751) and the flag was removed in 2021 with Firefox 92
(mozbz#1722653).
2022-03-23 17:03:41 +01:00
Martin Weinelt
25e22d96ba
firefox: enable necko wifi scanner
Tied to the geolocation support flag. On Linux this uses the DBus
interface of NetworkManager to query visible accesspoints and relay them
to Mozilla location service in return for position approximation.
2022-03-23 17:03:41 +01:00
Martin Weinelt
e921e84e9d
firefox: don't set BUILD_OFFICIAL
It was removed in 2009 in favor of MOZILLA_OFFICIAL

mozbz#435923
2022-03-23 17:03:40 +01:00
Martin Weinelt
cfcc611cb4
firefox: use our own libwebp 2022-03-23 17:03:40 +01:00
Martin Weinelt
2f31fe95fd
firefox: rename patches arg to extraPatches
This is for consistency with other extra arguments that can be handed to
firefox common.nix.

Also pull the patch phase of the derivation closer together and use the
same list concat style as elsewhere.
2022-03-23 17:03:40 +01:00
Martin Weinelt
350f1345a7
firefox: unpin autoconf & icu, drop yasm
Let's not be the package that is stuck on arbitrarily old dependency
versions that should be removed anyway.
2022-03-23 17:03:40 +01:00
Martin Weinelt
3ec7f8d487
firefox: set consistent remoting name
With Firefox 98.0 the remoting name now depends on the update channel
(mozbz#1752418), which resulted in a weird app_id/wmclass of
`firefox-default`, which broke window association in GNOME and likely
other desktops.

Fixes: #165107
2022-03-23 02:13:20 +01:00
Martin Weinelt
06518a4991
firefox: 98.0.1 -> 98.0.2
https://www.mozilla.org/en-US/firefox/98.0.2/releasenotes/
2022-03-23 02:10:19 +01:00
squalus
3a46b6e1c4 librewolf: 97.0.2-1 -> 98.0-1 2022-03-16 10:46:22 -07:00
Vladimír Čunát
f48c1fda6b
Merge branch 'master' into staging-next
Conflict in pkgs/development/libraries/libvirt/default.nix
required manual adjustments.  The fetched patch is already in src.
I checked that libvirt builds.
2022-03-15 09:52:04 +01:00
Martin Weinelt
8dddd3f08a
Merge pull request #164056 from r-ryantm/auto-update/firefox-esr-91-unwrapped 2022-03-14 18:19:48 +01:00
Martin Weinelt
552cfc008a
firefox: 98.0 -> 98.0.1
https://www.mozilla.org/en-US/firefox/98.0.1/releasenotes/
2022-03-14 16:49:34 +01:00
github-actions[bot]
0ed928e4ab
Merge master into staging-next 2022-03-14 12:01:26 +00:00
R. Ryantm
7f25d6e079 firefox-esr-91-unwrapped: 91.7.0esr -> 91.7.1esr 2022-03-13 23:36:36 +00:00
Martin Weinelt
1530477650
firefox: enable RLBox sandboxing
https://hacks.mozilla.org/2021/12/webassembly-and-back-again-fine-grained-sandboxing-in-firefox-95/

Co-authored-by: Jörg Thalheim <joerg@thalheim.io>
2022-03-14 00:17:28 +01:00
github-actions[bot]
201cc2f89b
Merge master into staging-next 2022-03-09 00:02:05 +00:00
Martin Weinelt
ec6dcf1c99
Merge pull request #163197 from mweinelt/firefox98-srcbuild 2022-03-08 22:43:41 +01:00
Vladimír Čunát
f4e21f15d7
Merge #163194: firefox-bin: 97.0.2 -> 98.0
Also firefox-esr: 91.6.1esr -> 91.7.0esr
(but not plain `firefox`)
2022-03-08 20:57:37 +01:00
Martin Weinelt
99e731b05b
Merge pull request #162922 from squalus/librewolf 2022-03-08 19:12:40 +01:00
Martin Weinelt
7e5b346bd4 firefox: 97.0.2 -> 98.0
https://www.mozilla.org/en-US/firefox/98.0/releasenotes/
2022-03-07 20:54:11 +01:00
Martin Weinelt
0b59e7976a
firefox: prune maintainer list 2022-03-07 20:49:23 +01:00
Martin Weinelt
3c0a13d2d5
firefox-esr: 91.6.1esr -> 91.7.0esr
https://www.mozilla.org/en-US/firefox/91.7.0/releasenotes/
2022-03-07 20:49:19 +01:00
arcnmx
8fcde13ce7 firefox-bin: disable automatic updates 2022-03-06 07:54:10 -08:00