diff --git a/extra/firefox/build b/extra/firefox/build index e699a898..87996918 100755 --- a/extra/firefox/build +++ b/extra/firefox/build @@ -1,24 +1,6 @@ #!/bin/sh -e -( - cd dom/media/webrtc/third_party_build/gn-configs - - mv x64_False_arm64_linux.json x64_False_arm64_linux_True.json - mv x64_False_arm64_linux.mozconfig x64_False_arm64_linux_True.mozconfig - mv x64_False_x64_linux.json x64_False_x64_linux_True.json - mv x64_False_x86_linux.json x64_False_x86_linux_True.json - mv x64_False_x86_linux.mozconfig x64_False_x86_linux_True.mozconfig - mv x64_True_arm64_linux.json x64_True_arm64_linux_True.json - mv x64_True_arm64_linux.mozconfig x64_True_arm64_linux_True.mozconfig - mv x64_True_x64_linux.json x64_True_x64_linux_True.json - mv x64_True_x64_linux.mozconfig x64_True_x64_linux_True.mozconfig - mv x64_True_x86_linux.json x64_True_x86_linux_True.json - mv x64_True_x86_linux.mozconfig x64_True_x86_linux_True.mozconfig -) - -mv widget/gtk/mozwayland/mozwayland.h widget/gtk/wayland/mozwayland.h - -for p in no-x11/*.patch *.patch; do +for p in *.patch; do patch -p1 < "$p" done @@ -81,6 +63,7 @@ export MOZ_NOSPAM=1 cat > .mozconfig << EOF ac_add_options --prefix=/usr ac_add_options --libdir=/usr/lib +ac_add_options --enable-default-toolkit=cairo-gtk3-wayland-only ac_add_options --enable-strip ac_add_options --enable-release ac_add_options --enable-rust-simd @@ -89,7 +72,6 @@ ac_add_options --enable-install-strip ac_add_options --enable-official-branding ac_add_options --enable-application=browser ac_add_options --enable-optimize="${CFLAGS:-} -w" -ac_add_options --with-wayland ac_add_options --with-system-libvpx ac_add_options --with-system-ffi ac_add_options --with-system-png diff --git a/extra/firefox/checksums b/extra/firefox/checksums index 4d7c1b67..6a895854 100644 --- a/extra/firefox/checksums +++ b/extra/firefox/checksums @@ -1,10 +1,10 @@ -dc109861204f6938fd8f147af89a694eb516f3d4bb64ce3f0116452d654a8417 -5a5089d5ddec57e0f41b1370ace7907d1b74df96b57be53623b9f52f28f92121 +55ab5b517d58bbcbc837640263a8371cf1fba3d9f508e54537c4d2cbbfb86095 f0611136bee505811e9ca11ca7ac188ef5323a8e2ef19cffd3edb3cf08fd791e 3dce6601b495f5b3d45b59f7d2492a340ee7e84b5beca17e48f862502bd5603f f0e8bb1f9b7eb0b01285495a2699df3a4b766784c1765a8f1aeedf63c0806369 036d96991646d0449ed0aa952e4fbe21b476ce994abc276e49d30e686708bd37 ba6e380bc3d2cbd1b3a505ab97687498335c334d8a4be7f465ad30ee366806c7 86ce49e650dd117f0f2928a7f810a58df526b1087c274d35eeb9c5bbf09eac5b -765b59342bece7d7b52ddabfff6962c645b26d56f6aead11d4c8517ef803c6d1 +0317f66976cd50bc34688033cfb220e84cb8a3c909133f05c67e951d4d8100f1 +509ce8c2e956481850cf3fbbeb2adcfd72a29f0699ccf2d00c24d1f81167a1dc 4a232e3aa3973894a58c126b9e901c924d4e1ca3e00c4fc82d08de4b880183a9 diff --git a/extra/firefox/patches/fix-wayland-only.patch b/extra/firefox/patches/fix-wayland-only.patch new file mode 100644 index 00000000..d13d5643 --- /dev/null +++ b/extra/firefox/patches/fix-wayland-only.patch @@ -0,0 +1,54 @@ +diff --git a/widget/gtk/mozgtk/mozgtk.c b/widget/gtk/mozgtk/mozgtk.c +index d7dbbc6..fd88c49 100644 +--- a/widget/gtk/mozgtk/mozgtk.c ++++ b/widget/gtk/mozgtk/mozgtk.c +@@ -6,6 +6,8 @@ + + #include "mozilla/Types.h" + ++MOZ_EXPORT unsigned int gtk_get_debug_flags(void) { return 0; } ++ + #ifdef MOZ_X11 + # include + // Bug 1271100 +diff --git a/widget/gtk/nsClipboard.cpp b/widget/gtk/nsClipboard.cpp +index 555e8ce..543027f 100644 +--- a/widget/gtk/nsClipboard.cpp ++++ b/widget/gtk/nsClipboard.cpp +@@ -34,12 +34,15 @@ + #include "mozilla/SchedulerGroup.h" + #include "mozilla/StaticPrefs_widget.h" + #include "mozilla/TimeStamp.h" ++#include "GRefPtr.h" + #include "WidgetUtilsGtk.h" + + #include "imgIContainer.h" + + #include +-#include ++#if defined(MOZ_X11) ++# include ++#endif + + #include "mozilla/Encoding.h" + +diff --git a/widget/gtk/nsWindow.cpp b/widget/gtk/nsWindow.cpp +index c09386c..9db855a 100644 +--- a/widget/gtk/nsWindow.cpp ++++ b/widget/gtk/nsWindow.cpp +@@ -5304,12 +5304,11 @@ void nsWindow::ConfigureGdkWindow() { + // tearing because Gecko does not align its framebuffer updates with + // vblank. + SetCompositorHint(GTK_WIDGET_COMPOSIDED_ENABLED); +- +- // Dummy call to a function in mozgtk to prevent the linker from removing +- // the dependency with --as-needed. +- XShmQueryExtension(DefaultXDisplay()); + } + #endif ++ // Dummy call to a function in mozgtk to prevent the linker from removing ++ // the dependency with --as-needed. ++ gtk_get_debug_flags(); + #ifdef MOZ_WAYLAND + if (GdkIsWaylandDisplay()) { + mSurfaceProvider.Initialize(this); diff --git a/extra/firefox/patches/no-dbus.patch b/extra/firefox/patches/no-dbus.patch index 319009f4..47a3cd20 100644 --- a/extra/firefox/patches/no-dbus.patch +++ b/extra/firefox/patches/no-dbus.patch @@ -1,25 +1,3 @@ -diff --git a/toolkit/library/rust/shared/Cargo.toml b/toolkit/library/rust/shared/Cargo.toml ---- a/toolkit/library/rust/shared/Cargo.toml -+++ b/toolkit/library/rust/shared/Cargo.toml -@@ -38,17 +38,17 @@ log = {version = "0.4", features = ["rel - cose-c = { version = "0.1.5" } - jsrust_shared = { path = "../../../../js/src/rust/shared" } - cascade_bloom_filter = { path = "../../../components/cascade_bloom_filter" } - cert_storage = { path = "../../../../security/manager/ssl/cert_storage" } - bitsdownload = { path = "../../../components/bitsdownload", optional = true } - storage = { path = "../../../../storage/rust" } - bookmark_sync = { path = "../../../components/places/bookmark_sync", optional = true } - chardetng_c = "0.1.1" --audio_thread_priority = { version = "0.26.1" } -+audio_thread_priority = { version = "0.26.1", default_features = false, features = ["winapi"] } - mdns_service = { path="../../../../dom/media/webrtc/transport/mdns_service", optional = true } - neqo_glue = { path = "../../../../netwerk/socket/neqo_glue" } - wgpu_bindings = { path = "../../../../gfx/wgpu_bindings" } - mapped_hyph = { git = "https://github.com/jfkthame/mapped_hyph.git", rev = "746743227485a83123784df0c53227ab466612ed" } - fog_control = { path = "../../../components/glean" } - app_services_logger = { path = "../../../../services/common/app_services_logger" } - http_sfv = { path = "../../../../netwerk/base/http-sfv" } - unic-langid = { version = "0.9", features = ["likelysubtags"] } diff --git a/toolkit/components/remote/moz.build b/toolkit/components/remote/moz.build index d3bab6cf..656b32c7 100644 --- a/toolkit/components/remote/moz.build @@ -34,13 +12,13 @@ index d3bab6cf..656b32c7 100644 "nsGTKRemoteServer.cpp", "nsXRemoteClient.cpp", diff --git a/toolkit/components/remote/nsRemoteService.cpp b/toolkit/components/remote/nsRemoteService.cpp -index ef4b95cb..4941f213 100644 +index 3bcf72a..e1b5323 100644 --- a/toolkit/components/remote/nsRemoteService.cpp +++ b/toolkit/components/remote/nsRemoteService.cpp -@@ -12,12 +12,14 @@ +@@ -7,12 +7,14 @@ + #ifdef MOZ_WIDGET_GTK - # include "mozilla/WidgetUtilsGtk.h" -# ifdef MOZ_ENABLE_DBUS +# if defined(MOZ_ENABLE_DBUS) # include "nsDBusRemoteServer.h" @@ -54,7 +32,7 @@ index ef4b95cb..4941f213 100644 # endif #elif defined(XP_WIN) # include "nsWinRemoteServer.h" -@@ -102,8 +104,10 @@ RemoteResult nsRemoteService::StartClient(const char* aDesktopStartupID) { +@@ -95,8 +97,10 @@ RemoteResult nsRemoteService::StartClient(const char* aDesktopStartupID) { #ifdef MOZ_WIDGET_GTK # if defined(MOZ_ENABLE_DBUS) client = MakeUnique(); @@ -66,7 +44,7 @@ index ef4b95cb..4941f213 100644 # endif #elif defined(XP_WIN) client = MakeUnique(); -@@ -146,8 +150,10 @@ void nsRemoteService::StartupServer() { +@@ -139,8 +143,10 @@ void nsRemoteService::StartupServer() { #ifdef MOZ_WIDGET_GTK # if defined(MOZ_ENABLE_DBUS) mRemoteServer = MakeUnique(); diff --git a/extra/firefox/sources b/extra/firefox/sources index 7b37e18b..9d732ef9 100644 --- a/extra/firefox/sources +++ b/extra/firefox/sources @@ -1,10 +1,10 @@ https://ftp.mozilla.org/pub/firefox/releases/VERSION/source/firefox-VERSION.source.tar.xz -https://github.com/ATiltedTree/firefox-wayland/archive/dbf17551a416c3357687411765b48755278bd94a.tar.gz no-x11 https://ftp.gnu.org/gnu/autoconf/autoconf-2.13.tar.gz autoconf2.13/ https://github.com/yasm/yasm/releases/download/v1.3.0/yasm-1.3.0.tar.gz yasm https://fossies.org/linux/misc/zip30.tar.gz zip https://fossies.org/linux/misc/unzip60.tar.gz unzip patches/fix-clang-as.patch patches/fix-linux-header.patch +patches/fix-wayland-only.patch patches/no-dbus.patch patches/no-fribidi.patch diff --git a/extra/firefox/version b/extra/firefox/version index a9a8f3de..0c3e5422 100644 --- a/extra/firefox/version +++ b/extra/firefox/version @@ -1 +1 @@ -100.0.2 1 +101.0 1