diff options
author | Marius Bakke <marius@gnu.org> | 2021-03-19 00:13:42 +0100 |
---|---|---|
committer | Marius Bakke <marius@gnu.org> | 2021-03-19 00:14:11 +0100 |
commit | 1155a88308df7649fe74bd5bb8279a4d103ce386 (patch) | |
tree | 375a7e9bd49b1c60071618a7951b936e718e75b9 | |
parent | 5dd33960bc773774dd3c2fd508e1b9ed3f8a73e2 (diff) |
gnu: ungoogled-chromium: Update to 89.0.4389.90-1.
* gnu/packages/patches/ungoogled-chromium-system-opus.patch: New file.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/chromium.scm (%preserved-third-party-files): Adjust for 89.
(%chromium-version): Remove variable.
(%ungoogled-revision): Set to 89.0.4389.90-1.
(%ungoogled-origin): Conditionally set file name based on commit/tag.
(%guix-patches): Add the new file.
(libvpx/chromium): Update to 1.9.0-104-gb5d77a48d.
(ungoogled-chromium)[version]: Use %UNGOOGLED-REVISION.
[source]: Update hash.
[arguments]: Adjust #:configure-flags for build system changes. Don't build
with external WebRTC SSL library. Remove obsolete substitution.
[inputs]: Remove OPENSSL. Change from PIPEWIRE to PIPEWIRE-0.3.
-rw-r--r-- | gnu/local.mk | 1 | ||||
-rw-r--r-- | gnu/packages/chromium.scm | 64 | ||||
-rw-r--r-- | gnu/packages/patches/ungoogled-chromium-system-opus.patch | 27 |
3 files changed, 55 insertions, 37 deletions
diff --git a/gnu/local.mk b/gnu/local.mk index 0422beac82..afd9c17f9c 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1725,6 +1725,7 @@ dist_patch_DATA = \ %D%/packages/patches/udiskie-no-appindicator.patch \ %D%/packages/patches/ungoogled-chromium-extension-search-path.patch \ %D%/packages/patches/ungoogled-chromium-system-nspr.patch \ + %D%/packages/patches/ungoogled-chromium-system-opus.patch \ %D%/packages/patches/unison-fix-ocaml-4.08.patch \ %D%/packages/patches/unknown-horizons-python-3.8-distro.patch \ %D%/packages/patches/unzip-CVE-2014-8139.patch \ diff --git a/gnu/packages/chromium.scm b/gnu/packages/chromium.scm index b81a773c3d..de7c887061 100644 --- a/gnu/packages/chromium.scm +++ b/gnu/packages/chromium.scm @@ -65,7 +65,6 @@ #:use-module (gnu packages regex) #:use-module (gnu packages serialization) #:use-module (gnu packages speech) - #:use-module (gnu packages tls) #:use-module (gnu packages valgrind) #:use-module (gnu packages vulkan) #:use-module (gnu packages video) @@ -96,7 +95,6 @@ "net/third_party/quiche" ;BSD-3 "net/third_party/uri_template" ;ASL2.0 "third_party/abseil-cpp" ;ASL2.0 - "third_party/adobe/flash/flapper_version.h" ;no license, trivial "third_party/angle" ;BSD-3 "third_party/angle/src/common/third_party/base" ;BSD-3 "third_party/angle/src/common/third_party/smhasher" ;Public domain @@ -105,10 +103,6 @@ "third_party/angle/src/third_party/libXNVCtrl" ;Expat "third_party/angle/src/third_party/trace_event" ;BSD-3 "third_party/angle/src/third_party/volk" ;Expat - "third_party/angle/third_party/vulkan-headers" ;ASL2.0 - "third_party/angle/third_party/vulkan-loader" ;ASL2.0 - "third_party/angle/third_party/vulkan-tools" ;ASL2.0 - "third_party/angle/third_party/vulkan-validation-layers" ;ASL2.0 "third_party/apple_apsl" ;APSL2.0 "third_party/axe-core" ;MPL2.0 "third_party/blink" ;BSD-3, LGPL2+ @@ -161,7 +155,6 @@ "third_party/emoji-segmenter" ;ASL2.0 "third_party/flatbuffers" ;ASL2.0 "third_party/fusejs" ;ASL2.0 - "third_party/glslang" ;BSD-3, Expat, ASL2.0 "third_party/google_input_tools" ;ASL2.0 "third_party/google_input_tools/third_party/closure_library" ;ASL2.0 "third_party/google_input_tools/third_party/closure_library/third_party/closure" ;Expat @@ -189,6 +182,8 @@ "third_party/libsrtp" ;BSD-3 "third_party/libsync" ;ASL2.0 "third_party/libudev" ;LGPL2.1+ + "third_party/liburlpattern" ;Expat + "third_party/libva_protected_content" ;Expat ;; FIXME: build/linux/unbundle/libvpx.gn does not work for all users. "third_party/libvpx" ;BSD-3 @@ -203,6 +198,7 @@ "third_party/markupsafe" ;BSD-3 "third_party/mesa_headers" ;Expat, SGI "third_party/metrics_proto" ;BSD-3 + "third_party/minigbm" ;BSD-3 "third_party/modp_b64" ;BSD-3 "third_party/nasm" ;BSD-2 "third_party/nearby" ;ASL2.0 @@ -220,7 +216,8 @@ "third_party/pdfium/third_party/skia_shared" ;BSD-3 "third_party/pdfium/third_party/freetype/include/pstables.h" ;FreeType "third_party/perfetto" ;ASL2.0 - "third_party/pffft" ;the "FFTPACK" license, similar to BSD-3 + "third_party/perfetto/protos/third_party/chromium" ;BSD-3 + "third_party/pffft" ;the "FFTPACK" license "third_party/ply" ;BSD-3 "third_party/polymer" ;BSD-3 "third_party/private_membership" ;ASL2.0 @@ -236,7 +233,6 @@ "third_party/s2cellid" ;ASL2.0 "third_party/schema_org" ;CC-BY-SA3.0 "third_party/securemessage" ;ASL2.0 - "third_party/shaka-player" ;ASL2.0 "third_party/shell-encryption" ;ASL2.0 "third_party/skia" ;BSD-3 "third_party/skia/include/third_party/skcms" ;BSD-3 @@ -244,8 +240,6 @@ "third_party/skia/third_party/vulkanmemoryallocator" ;BSD-3, Expat "third_party/smhasher" ;Expat, public domain "third_party/speech-dispatcher" ;GPL2+ - "third_party/spirv-headers" ;ASL2.0 - "third_party/SPIRV-Tools" ;ASL2.0 "third_party/sqlite" ;Public domain "third_party/swiftshader" ;ASL2.0 "third_party/swiftshader/third_party/astc-encoder" ;ASL2.0 @@ -258,6 +252,7 @@ "third_party/ukey2" ;ASL2.0 "third_party/usb_ids" ;BSD-3 "third_party/usrsctp" ;BSD-2 + "third_party/vulkan-deps" ;ASL2.0, BSD-3, Expat "third_party/vulkan_memory_allocator" ;Expat "third_party/wayland/protocol" ;Expat "third_party/wayland/stubs" ;BSD-3, Expat @@ -310,8 +305,7 @@ (string-append "ungoogled-chromium-" category "-" name)))) (sha256 (base32 hash)))) -(define %chromium-version "88.0.4324.182") -(define %ungoogled-revision "b98f2d51406c84a75df96f0da9dee3c0d790963d") +(define %ungoogled-revision "89.0.4389.90-1") (define %debian-revision "debian/84.0.4147.105-1") (define %debian-patches @@ -326,10 +320,12 @@ (uri (git-reference (url "https://github.com/Eloston/ungoogled-chromium") (commit %ungoogled-revision))) (file-name (git-file-name "ungoogled-chromium" - (string-take %ungoogled-revision 7))) + (if (= 40 (string-length %ungoogled-revision)) + (string-take %ungoogled-revision 7) + %ungoogled-revision))) (sha256 (base32 - "1c9y1dn9s06pskkjw2r8lsbplak8m2rwh4drixvjpif7b4cgdhay")))) + "0pr756d1b4wc67d61b21yszi7mx1hsjy14i44j0kvcwm05pgnf79")))) (define %guix-patches (list (local-file @@ -337,6 +333,9 @@ (search-patch "ungoogled-chromium-system-nspr.patch"))) (local-file (assume-valid-file-name + (search-patch "ungoogled-chromium-system-opus.patch"))) + (local-file + (assume-valid-file-name (search-patch "ungoogled-chromium-extension-search-path.patch"))))) ;; This is a source 'snippet' that does the following: @@ -418,7 +417,7 @@ (define libvpx/chromium (package (inherit libvpx) - (version "1.9.0-88-g12059d956") + (version "1.9.0-104-gb5d77a48d") (source (origin (inherit (package-source libvpx)) (uri (git-reference @@ -427,7 +426,7 @@ (file-name (git-file-name "libvpx" version)) (sha256 (base32 - "14knnvfaskfz97vs3lfqrdpcbcx22s6qp16213wdnvnsf4c1lx1b")))))) + "07nkpx8myw5nd4bkaj6l4wr5ipk2c6lg9cwirz0i5qbr659051rk")))))) ;; 'make-ld-wrapper' can only work with an 'ld' executable, so we need ;; this trick to make it wrap 'lld'. @@ -457,17 +456,17 @@ (define-public ungoogled-chromium (package (name "ungoogled-chromium") - (version (string-append %chromium-version "-0." - (string-take %ungoogled-revision 7))) + (version %ungoogled-revision) (synopsis "Graphical web browser") (source (origin (method url-fetch) (uri (string-append "https://commondatastorage.googleapis.com" "/chromium-browser-official/chromium-" - %chromium-version ".tar.xz")) + (string-drop-right %ungoogled-revision 2) + ".tar.xz")) (sha256 (base32 - "10av060ix6lgsvv99lyvyy03r0m3zwdg4hddbi6dycrdxk1iyh9h")) + "16i7bgk2jbcqs2p28nk5mlf0k6wah594pcsfm8b154nxbyf0iihi")) (modules '((guix build utils))) (snippet (force ungoogled-chromium-snippet)))) (build-system gnu-build-system) @@ -488,9 +487,6 @@ ;; Use the "official" release optimizations, as opposed to ;; a developer build. "is_official_build=true" - (string-append "max_jobs_per_link=" - ;; Respect the default cap of 8 jobs. - (number->string (min 8 (parallel-job-count)))) "clang_use_chrome_plugins=false" "chrome_pgo_phase=0" "use_sysroot=false" @@ -533,7 +529,6 @@ "use_system_zlib=true" "use_gnome_keyring=false" ;deprecated by libsecret - "use_openh264=true" "use_pulseaudio=true" "link_pulseaudio=true" "icu_use_data_file=false" @@ -548,6 +543,10 @@ '("use_vaapi=true") '()) + "media_use_ffmpeg=true" + "media_use_libvpx=true" + "media_use_openh264=true" + ;; Do not artifically restrict formats supported by system ffmpeg. "proprietary_codecs=true" "ffmpeg_branding=\"Chrome\"" @@ -556,17 +555,15 @@ "rtc_use_h264=true" "rtc_use_pipewire=true" "rtc_link_pipewire=true" + "rtc_pipewire_version=\"0.3\"" ;; Don't use bundled sources. "rtc_build_json=true" ;FIXME: libc++ std::string ABI difference "rtc_build_libevent=false" "rtc_build_libvpx=false" "rtc_build_opus=false" - "rtc_build_ssl=false" "rtc_build_libsrtp=true" ;FIXME: fails to find headers "rtc_build_usrsctp=true" ;TODO: package this - (string-append "rtc_ssl_root=\"" - (assoc-ref %build-inputs "openssl") - "/include/openssl\"")) + "rtc_build_ssl=true") ;XXX: the bundled BoringSSL is required? #:phases (modify-phases %standard-phases (add-after 'unpack 'patch-stuff @@ -604,12 +601,6 @@ (("third_party/icu/source/(common|i18n)/") "")) - ;; Fix faulty ICU call. Likely fixed in M89. - (substitute* - "third_party/blink/renderer/platform/wtf/text/text_codec_icu.cc" - (("ideographicSpaceCharacter") - "kIdeographicSpaceCharacter")) - ;; XXX: Should be unnecessary when use_system_lcms2=true. (substitute* "third_party/pdfium/core/fxcodec/icc/iccmodule.h" (("include \"third_party/lcms/include/lcms2\\.h\"") @@ -865,11 +856,10 @@ ("nss" ,nss) ("openh264" ,openh264) ("openjpeg" ,openjpeg) ;PDFium only - ("openssl" ,openssl) ("opus" ,opus+custom) ("pango" ,pango) ("pciutils" ,pciutils) - ("pipewire" ,pipewire) + ("pipewire" ,pipewire-0.3) ("pulseaudio" ,pulseaudio) ("snappy" ,snappy) ("speech-dispatcher" ,speech-dispatcher) diff --git a/gnu/packages/patches/ungoogled-chromium-system-opus.patch b/gnu/packages/patches/ungoogled-chromium-system-opus.patch new file mode 100644 index 0000000000..6f887a31a4 --- /dev/null +++ b/gnu/packages/patches/ungoogled-chromium-system-opus.patch @@ -0,0 +1,27 @@ +Add missing build dependency on Opus so that system headers are found. + +Taken from upstream: +https://chromium-review.googlesource.com/c/chromium/src/+/2644623 + +diff --git a/third_party/blink/renderer/modules/webcodecs/BUILD.gn b/third_party/blink/renderer/modules/webcodecs/BUILD.gn +--- a/third_party/blink/renderer/modules/webcodecs/BUILD.gn ++++ b/third_party/blink/renderer/modules/webcodecs/BUILD.gn +@@ -65,6 +65,7 @@ blink_modules_sources("webcodecs") { + "//media/mojo/clients", + "//media/mojo/mojom", + "//third_party/libyuv:libyuv", ++ "//third_party/opus", + ] + if (media_use_openh264) { + deps += [ "//third_party/openh264:encoder" ] +diff --git a/third_party/blink/renderer/modules/webcodecs/DEPS b/third_party/blink/renderer/modules/webcodecs/DEPS +--- a/third_party/blink/renderer/modules/webcodecs/DEPS ++++ b/third_party/blink/renderer/modules/webcodecs/DEPS +@@ -19,6 +19,7 @@ include_rules = [ + + "+third_party/libyuv", + "+third_party/openh264", ++ "+third_party/opus", + + "+ui/gfx/color_space.h", + "+ui/gfx/geometry/rect.h", |