public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
* [rpms/chromium] epel9-next: - Fix youtube stop working
@ 2026-08-07 16:07 Than Ngo
  0 siblings, 0 replies; only message in thread
From: Than Ngo @ 2026-08-07 16:07 UTC (permalink / raw)
  To: git-commits

            A new commit has been pushed.

            Repo   : rpms/chromium
            Branch : epel9-next
            Commit : 36e349916c9948fc7afb9bff8e1ed6c3d6848006
            Author : Than Ngo <than@redhat.com>
            Date   : 2025-02-09T23:48:31+01:00
            Stats  : +68/-181 in 5 file(s)
            URL    : https://src.fedoraproject.org/rpms/chromium/c/36e349916c9948fc7afb9bff8e1ed6c3d6848006?branch=epel9-next

            Log:
            - Fix youtube stop working
- Fix build errors
- Remove build_remoting, build_clear_key_cdm, policy_templates

---
diff --git a/chrome-remote-desktop@.service b/chrome-remote-desktop@.service
deleted file mode 100644
index 4b5b1fc..0000000
--- a/chrome-remote-desktop@.service
+++ /dev/null
@@ -1,14 +0,0 @@
-[Unit]
-Description="Chrome Remote Desktop host daemon"
-
-[Service]
-User=%i
-Environment=HOME=%h
-ExecStart=@@CRD_PATH@@/chrome-remote-desktop --start --foreground
-ExecStop=@@CRD_PATH@@/chrome-remote-desktop --stop
-ExecReload=@@CRD_PATH@@/chrome-remote-desktop --reload
-Restart=always
-TimeoutStopSec=10
-
-[Install]
-WantedBy=multi-user.target

diff --git a/chromium-133-workaround-system-ffmpeg-whitelist.patch b/chromium-133-workaround-system-ffmpeg-whitelist.patch
new file mode 100644
index 0000000..e873023
--- /dev/null
+++ b/chromium-133-workaround-system-ffmpeg-whitelist.patch
@@ -0,0 +1,21 @@
+diff -up chromium-133.0.6943.53/media/ffmpeg/ffmpeg_common.cc.me chromium-133.0.6943.53/media/ffmpeg/ffmpeg_common.cc
+--- chromium-133.0.6943.53/media/ffmpeg/ffmpeg_common.cc.me	2025-02-09 19:57:35.117198035 +0100
++++ chromium-133.0.6943.53/media/ffmpeg/ffmpeg_common.cc	2025-02-09 22:57:26.429570196 +0100
+@@ -76,6 +76,8 @@ const char* GetAllowedVideoDecoders() {
+ void ApplyCodecContextSecuritySettings(AVCodecContext* codec_context) {
+   // Future versions of ffmpeg may copy the allow list from the format
+   // context.
++// Workaround for codec whitelist with system ffmpeg
++#if 0
+   if (!codec_context->codec_whitelist) {
+     // Note: FFmpeg will try to free this string, so we must duplicate it.
+     codec_context->codec_whitelist =
+@@ -83,7 +85,7 @@ void ApplyCodecContextSecuritySettings(A
+                       ? GetAllowedAudioDecoders()
+                       : GetAllowedVideoDecoders());
+   }
+-
++#endif
+   // Note: This is security sensitive. FFmpeg may not always continue safely
+   // in the presence of errors. See https://crbug.com/379418979
+   if (base::FeatureList::IsEnabled(kStrictFFmpegCodecs)) {

diff --git a/chromium-browser.appdata.xml b/chromium-browser.appdata.xml
new file mode 100644
index 0000000..e46c262
--- /dev/null
+++ b/chromium-browser.appdata.xml
@@ -0,0 +1,36 @@
+<!-- Copyright 2017 The Chromium Authors -->
+<?xml version="1.0" encoding="UTF-8"?>
+<component type="desktop">
+  <id>chromium-browser.desktop</id>
+  <update_contact>chromium-dev@chromium.org</update_contact>
+  <metadata_license>CC0-1.0</metadata_license>
+  <project_license>BSD-3-Clause and LGPL-2.1+ and Apache-2.0 and IJG and MIT and GPL-2.0+ and ISC and OpenSSL and (MPL-1.1 or GPL-2.0 or LGPL-2.0)</project_license>
+  <name>Chromium Web Browser</name>
+  <summary>The web browser from Chromium project</summary>
+  <description>
+    <p>
+    Chromium is an open-source browser project that aims to build a safer, faster,
+    and more stable way to experience the web.
+    </p>
+    <p>
+    We invite you to join our effort to build a powerful platform for developing a
+    new generation of web applications.
+    </p>
+    <p>
+    Chromium supports Vorbis, Theora, WebM and HTML5 audio and video standards, but
+    does not include the non-free AAC, H.264, MP3 or Adobe Flash code that is found
+    in Chrome.
+    </p>
+  </description>
+  <url type="homepage">https://www.chromium.org/Home</url>
+  <screenshots>
+    <screenshot type="default">
+      <image>https://www.gstatic.com/chrome/appstream/chrome-2.png</image>
+      <caption/>
+    </screenshot>
+  </screenshots>
+  <translation/>
+  <developer_name>The Chromium Authors</developer_name>
+  <url type="bugtracker">https://www.chromium.org/for-testers/bug-reporting-guidelines</url>
+  <url type="help">https://chromium.googlesource.com/chromium/src/+/main/docs/linux/debugging.md</url>
+</component>

diff --git a/chromium-browser.xml b/chromium-browser.xml
index 159e05c..3ee1e43 100644
--- a/chromium-browser.xml
+++ b/chromium-browser.xml
@@ -8,11 +8,9 @@
       <command>/usr/bin/chromium-browser %s</command>
       <icon-name>chromium-browser</icon-name>
       <run-in-terminal>false</run-in-terminal>
-      <netscape-remote>false</netscape-remote>
-      <!--
-      <tab-command>false</tab-command>
-      <win-command>false</win-command>
-      -->
+      <netscape-remote>true</netscape-remote>
+      <tab-command>/usr/bin/chromium-browser %s</tab-command>
+      <win-command>/usr/bin/chromium-browser --new-window %s</win-command>
     </web-browser>
   </web-browsers>
 </default-apps>

diff --git a/chromium.spec b/chromium.spec
index 7bf0d8d..fc2691a 100644
--- a/chromium.spec
+++ b/chromium.spec
@@ -50,9 +50,6 @@
 %global build_headless 0
 %endif
 
-# enable|disable chrome-remote-desktop build
-%global build_remoting 0
-
 # set nodejs_version
 %global nodejs_version v20.6.1
 
@@ -104,8 +101,6 @@
 %endif
 %endif
 
-%global build_clear_key_cdm 0
-
 # Disabled because of Google, starting with Chromium 88.
 %global userestrictedapikeys 0
 
@@ -318,6 +313,8 @@ Patch132: chromium-118-sigtrap_system_ffmpeg.patch
 Patch133: chromium-121-system-old-ffmpeg.patch
 # revert, it causes build error: use of undeclared identifier 'AVFMT_FLAG_NOH264PARSE'
 Patch135: chromium-133-disable-H.264-video-parser-during-demuxing.patch
+# Workaround for youtube stop working
+Patch136: chromium-133-workaround-system-ffmpeg-whitelist.patch
 
 # file conflict with old kernel on el8/el9
 Patch141: chromium-118-dma_buf_export_sync_file-conflict.patch
@@ -465,7 +462,7 @@ Source7: get_free_ffmpeg_source_files.py
 Source8: get_linux_tests_names.py
 # GNOME stuff
 Source9: chromium-browser.xml
-Source10: chrome-remote-desktop@.service
+Source10: chromium-browser.appdata.xml
 Source11: master_preferences
 
 %if ! %{system_nodejs}
@@ -933,32 +930,9 @@ Chromium is an open-source web browser, powered by WebKit (Blink).
 %package common
 Summary: Files needed for both the headless_shell and full Chromium
 
-# -common doesn't have chrome-remote-desktop bits
-# but we need to clean it up if it gets disabled again
-# NOTE: Check obsoletes version to be sure it matches
-%if ! %{build_remoting}
-Provides: chrome-remote-desktop = %{version}-%{release}
-Obsoletes: chrome-remote-desktop <= 81.0.4044.138
-%endif
-
 %description common
 %{summary}.
 
-%if %{build_remoting}
-%package -n chrome-remote-desktop
-Requires(pre): shadow-utils
-Requires(post): systemd
-Requires(preun): systemd
-Requires(postun): systemd
-Requires: xorg-x11-server-Xvfb
-Requires: python3-psutil
-Requires: chromium-common%{_isa} = %{version}-%{release}
-Summary: Remote desktop support for google-chrome & chromium
-
-%description -n chrome-remote-desktop
-Remote desktop support for google-chrome & chromium.
-%endif
-
 %package -n chromedriver
 Summary: WebDriver for Google Chrome/Chromium
 Requires: chromium-common%{_isa} = %{version}-%{release}
@@ -1028,6 +1002,7 @@ Qt6 UI for chromium.
 %patch -P132 -p1 -b .sigtrap_system_ffmpeg
 %patch -P133 -p1 -b .system-old-ffmpeg
 %patch -P135 -p1 -b .disable-H.264-video-parser-during-demuxing
+%patch -P136 -p1 -b .workaround-system-ffmpeg-whitelist
 %endif
 
 %if 0%{?rhel} == 8 || 0%{?rhel} == 9
@@ -1073,6 +1048,7 @@ Qt6 UI for chromium.
 %endif
 
 %patch -P355 -p1 -b .hardware_destructive_interference_size
+
 %patch -P358 -p1 -b .rust-clang_lib
 
 %ifarch ppc64le
@@ -1530,10 +1506,6 @@ mkdir -p %{chromebuilddir} && cp -a $(which gn) %{chromebuilddir}/
 %{chromebuilddir}/gn --script-executable=%{chromium_pybin} gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_HEADLESS_GN_DEFINES" %{headlessbuilddir}
 %endif
 
-%if %{build_remoting}
-%{chromebuilddir}/gn --script-executable=%{chromium_pybin} gen --args="$CHROMIUM_CORE_GN_DEFINES $CHROMIUM_BROWSER_GN_DEFINES" %{remotingbuilddir}
-%endif
-
 %if %{build_headless}
 # Do headless first.
 %build_target %{headlessbuilddir} headless_shell
@@ -1546,16 +1518,6 @@ mkdir -p %{chromebuilddir} && cp -a $(which gn) %{chromebuilddir}/
 %build_target %{chromebuilddir} chromedriver
 %endif
 
-%if %{build_clear_key_cdm}
-%build_target %{chromebuilddir} clear_key_cdm
-%endif
-
-%build_target %{chromebuilddir} policy_templates
-
-%if %{build_remoting}
-%build_target %{remotingbuilddir} remoting_all
-%endif
-
 %install
 rm -rf %{buildroot}
 
@@ -1624,78 +1586,14 @@ pushd %{chromebuilddir}
 		cp -a libqt6_shim.so %{buildroot}%{chromium_path}
 	%endif
 
-	%if %{build_clear_key_cdm}
-		%ifarch x86_64
-			cp -a ClearKeyCdm/_platform_specific/linux_x64/libclearkeycdm.so %{buildroot}%{chromium_path}
-		%endif
-		%ifarch aarch64
-			cp -a ClearKeyCdm/_platform_specific/linux_arm64/libclearkeycdm.so %{buildroot}%{chromium_path}
-		%endif
-		%ifarch ppc64le
-			cp -a ClearKeyCdm/_platform_specific/linux_ppc64/libclearkeycdm.so %{buildroot}%{chromium_path}
-		%endif
-	%endif
-
 	%if %{build_chromedriver}
 		# chromedriver
 		cp -a chromedriver %{buildroot}%{chromium_path}/chromedriver
 		ln -s ../..%{chromium_path}/chromedriver %{buildroot}%{_bindir}/chromedriver
 	%endif
 
-	%if %{build_remoting}
-		# Remote desktop bits
-		mkdir -p %{buildroot}%{crd_path}
-	%endif
 popd
 
-%if %{build_remoting}
-	pushd %{remotingbuilddir}
-		# Hey, there is a library now.
-		cp -a libremoting_core.so %{buildroot}%{crd_path}/
-
-		# See remoting/host/installer/linux/Makefile for logic
-		mkdir -p %{buildroot}%{crd_path}/remoting_locales
-		cp -a remoting_native_messaging_host %{buildroot}%{crd_path}/native-messaging-host
-		cp -a remote_assistance_host %{buildroot}%{crd_path}/remote-assistance-host
-		cp -a remoting_locales/*.pak %{buildroot}%{crd_path}/remoting_locales/
-		cp -a remoting_me2me_host %{buildroot}%{crd_path}/chrome-remote-desktop-host
-		cp -a remoting_start_host %{buildroot}%{crd_path}/start-host
-		cp -a remoting_user_session %{buildroot}%{crd_path}/user-session
-		chmod +s %{buildroot}%{crd_path}/user-session
-
-		# chromium
-		mkdir -p %{buildroot}%{_sysconfdir}/chromium/native-messaging-hosts
-		# google-chrome
-		mkdir -p %{buildroot}%{_sysconfdir}/opt/chrome/
-		cp -a remoting/* %{buildroot}%{_sysconfdir}/chromium/native-messaging-hosts/
-		for i in %{buildroot}%{_sysconfdir}/chromium/native-messaging-hosts/*.json; do
-			sed -i 's|/opt/google/chrome-remote-desktop|%{crd_path}|g' $i
-		done
-		mkdir -p %{buildroot}%{_sysconfdir}/opt/chrome/native-messaging-hosts
-		pushd %{buildroot}%{_sysconfdir}/opt/chrome/native-messaging-hosts
-			for i in ../../../chromium/native-messaging-hosts/*; do
-				# rpm gets unhappy when we symlink here
-				cp -a $i .
-			done
-		popd
-	popd
-
-	mkdir -p %{buildroot}/var/lib/chrome-remote-desktop
-	touch %{buildroot}/var/lib/chrome-remote-desktop/hashes
-
-	mkdir -p %{buildroot}%{_sysconfdir}/pam.d/
-	pushd %{buildroot}%{_sysconfdir}/pam.d/
-		ln -s system-auth chrome-remote-desktop
-	popd
-
-   cp -a remoting/host/linux/linux_me2me_host.py %{buildroot}%{crd_path}/chrome-remote-desktop
-   cp -a remoting/host/installer/linux/is-remoting-session %{buildroot}%{crd_path}/
-
-   mkdir -p %{buildroot}%{_unitdir}
-   cp -a %{SOURCE10} %{buildroot}%{_unitdir}/
-   sed -i 's|@@CRD_PATH@@|%{crd_path}|g' %{buildroot}%{_unitdir}/chrome-remote-desktop@.service
-%endif
-
 %if %{build_headless}
 	pushd %{headlessbuilddir}
 		cp -a *.pak headless_shell %{buildroot}%{chromium_path}
@@ -1715,9 +1613,6 @@ popd
 mkdir -p %{buildroot}%{_sysconfdir}/chromium/policies/managed
 mkdir -p %{buildroot}%{_sysconfdir}/chromium/policies/recommended
 
-cp -a out/Release/gen/chrome/app/policy/common/html/en-US/*.html .
-cp -a out/Release/gen/chrome/app/policy/linux/examples/chrome.json .
-
 mkdir -p %{buildroot}%{_datadir}/icons/hicolor/256x256/apps
 cp -a chrome/app/theme/chromium/product_logo_256.png %{buildroot}%{_datadir}/icons/hicolor/256x256/apps/%{chromium_browser_channel}.png
 mkdir -p %{buildroot}%{_datadir}/icons/hicolor/128x128/apps
@@ -1735,9 +1630,8 @@ install -m 0644 %{SOURCE11} %{buildroot}%{_sysconfdir}/%{name}/
 mkdir -p %{buildroot}%{_datadir}/applications/
 desktop-file-install --dir %{buildroot}%{_datadir}/applications %{SOURCE4}
 
-install -D -m0644 chrome/installer/linux/common/chromium-browser/chromium-browser.appdata.xml \
-  ${RPM_BUILD_ROOT}%{_datadir}/metainfo/%{chromium_browser_channel}.appdata.xml
-appstream-util validate-relax --nonet ${RPM_BUILD_ROOT}%{_datadir}/metainfo/%{chromium_browser_channel}.appdata.xml
+install -D -m0644 %{SOURCE10} ${RPM_BUILD_ROOT}%{_datadir}/appdata/%{chromium_browser_channel}.appdata.xml
+appstream-util validate-relax --nonet ${RPM_BUILD_ROOT}%{_datadir}/appdata/%{chromium_browser_channel}.appdata.xml
 
 mkdir -p %{buildroot}%{_datadir}/gnome-control-center/default-apps/
 cp -a %{SOURCE9} %{buildroot}%{_datadir}/gnome-control-center/default-apps/
@@ -1757,39 +1651,12 @@ if selinuxenabled; then
 fi
 %endif
 
-%if %{build_remoting}
-%pretrans -n chrome-remote-desktop -p <lua> 
-path = "/etc/opt/chrome/native-messaging-hosts"
-st = posix.stat(path)
-if st and st.type == "link" then
-  os.remove(path)
-end
-%endif
-
-%if %{build_remoting}
-%pre -n chrome-remote-desktop
-getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-desktop
-
-%post -n chrome-remote-desktop
-%systemd_post chrome-remote-desktop@.service
-
-%preun -n chrome-remote-desktop
-%systemd_preun chrome-remote-desktop@.service
-
-%postun -n chrome-remote-desktop
-%systemd_postun_with_restart chrome-remote-desktop@.service
-%endif
-
 %files
 %doc AUTHORS README.fedora
-%doc chrome_policy_list.html *.json
 %license LICENSE
 %config(noreplace) %{_sysconfdir}/%{name}/chromium.conf
 %config %{_sysconfdir}/%{name}/master_preferences
 %config %{_sysconfdir}/%{name}/policies/
-%if %{build_remoting}
-%exclude %{_sysconfdir}/%{name}/native-messaging-hosts/*
-%endif
 %{_bindir}/%{chromium_browser_channel}
 %{chromium_path}/*.bin
 %{chromium_path}/chrome_*.pak
@@ -1801,7 +1668,7 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt
 %{_mandir}/man1/%{chromium_browser_channel}.*
 %{_datadir}/icons/hicolor/*/apps/%{chromium_browser_channel}.png
 %{_datadir}/applications/*.desktop
-%{_datadir}/metainfo/*.appdata.xml
+%{_datadir}/appdata/*.appdata.xml
 %{_datadir}/gnome-control-center/default-apps/chromium-browser.xml
 
 %if %{use_qt}
@@ -1815,9 +1682,6 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt
 %endif
 
 %files common
-%if %{build_clear_key_cdm}
-%{chromium_path}/libclearkeycdm.so
-%endif
 %ifarch x86_64 aarch64 ppc64le
 %{chromium_path}/libvk_swiftshader.so*
 %{chromium_path}/libvulkan.so*
@@ -1901,24 +1765,6 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt
 %{chromium_path}/headless_*.pak
 %endif
 
-%if %{build_remoting}
-%files -n chrome-remote-desktop
-%{crd_path}/chrome-remote-desktop
-%{crd_path}/chrome-remote-desktop-host
-%{crd_path}/is-remoting-session
-%{crd_path}/libremoting_core.so*
-%{crd_path}/native-messaging-host
-%{crd_path}/remote-assistance-host
-%{_sysconfdir}/pam.d/chrome-remote-desktop
-%{_sysconfdir}/chromium/native-messaging-hosts/*
-%{_sysconfdir}/opt/chrome/
-%{crd_path}/remoting_locales/
-%{crd_path}/start-host
-%{crd_path}/user-session
-%{_unitdir}/chrome-remote-desktop@.service
-/var/lib/chrome-remote-desktop/
-%endif
-
 %if %{build_chromedriver}
 %files -n chromedriver
 %doc AUTHORS

^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2026-08-07 16:07 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-08-07 16:07 [rpms/chromium] epel9-next: - Fix youtube stop working Than Ngo

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox