Updates Firefox to the latest release. Build tested on musl, @Duncaen had some issues with sandboxing and sndio while testing.
You can view, comment on, or merge this pull request online at:
https://github.com/voidlinux/void-packages/pull/14275
-- Commit Summary --
* nss: update to 3.37.
* firefox: update to 60.0.
* firefox-i18n: update to 60.0.
-- File Changes --
M srcpkgs/firefox-i18n/template (190)
A srcpkgs/firefox/patches/fix-webrtc-glibcisms.patch (13)
A srcpkgs/firefox/patches/rust-unitialized-field.patch (19)
M srcpkgs/firefox/template (7)
M srcpkgs/nss/patches/ssl-renegotiate-transitional.patch (24)
M srcpkgs/nss/template (6)
-- Patch Links --
https://github.com/voidlinux/void-packages/pull/14275.patch
https://github.com/voidlinux/void-packages/pull/14275.diff
There is no need to update to nss `3.37`. Firefox 60 requires at least `nss>=3.36.1`. Just update nss to `3.36.1`. Please enforce dependency on `nss>=3.36.1` in firefox template.
https://github.com/voidlinux/void-packages/blob/master/srcpkgs/firefox/files/mozconfig#L5-L8
You can remove those lines. Upstream dropped the support for building against system cairo: https://bugzilla.mozilla.org/show_bug.cgi?id=1432751.
The problem seems to be in `nss-3.37/nss/lib/freebl/chacha20poly1305.c`, =
line 27, where the wrong branch is selected because `HAVE_INT128_SUPPORT`=
isn=E2=80=99t set:
```
#if defined(HAVE_INT128_SUPPORT) && (defined(NSS_X86_OR_X64) || defined(_=
_aarch64__)) =
=
/* Use HACL* Poly1305 on 64-bit Intel and ARM */
#include "verified/Hacl_Poly1305_64.h"
#define NSS_POLY1305_64 1
#define Hacl_Poly1305_update Hacl_Poly1305_64_update
#define Hacl_Poly1305_mk_state Hacl_Poly1305_64_mk_state
#define Hacl_Poly1305_init Hacl_Poly1305_64_init
#define Hacl_Poly1305_finish Hacl_Poly1305_64_finish
typedef Hacl_Impl_Poly1305_64_State_poly1305_state Hacl_Impl_Poly1305_Sta=
te_poly1305_state;
#else
/* All other platforms get the 32-bit poly1305 HACL* implementation. */
#include "verified/Hacl_Poly1305_32.h"
#define NSS_POLY1305_32 1
#define Hacl_Poly1305_update Hacl_Poly1305_32_update
#define Hacl_Poly1305_mk_state Hacl_Poly1305_32_mk_state
#define Hacl_Poly1305_init Hacl_Poly1305_32_init
#define Hacl_Poly1305_finish Hacl_Poly1305_32_finish
typedef Hacl_Impl_Poly1305_32_State_poly1305_state Hacl_Impl_Poly1305_Sta=
te_poly1305_state;
#endif /* HAVE_INT128_SUPPORT */
```
When I modify line 40 in nss=E2=80=99s template to
aarch64*) _ARCH=3D"aarch64"; CFLAGS+=3D" -DNS_PTR_GT_32 -DHAVE_INT128=
_SUPPORT";;
the build succeeds.
Haven=E2=80=99t checked for 32-bit ARM, yet.
-- =
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub:
https://github.com/voidlinux/void-packages/pull/14275#issuecomment-388562=
342=
Or is it because `$_use64` isn=E2=80=99t used in the template=E2=80=99s c=
ross-build branch?
-- =
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub:
https://github.com/voidlinux/void-packages/pull/14275#issuecomment-388564=
641=