X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=google-chrome.spec;h=695e3e44f5e37687641165a66c5cb269a8253e3a;hb=147124ee8494d9a253c3b1ef1fa8ec8aebb8d7cb;hp=e4fb5148f08435ea48cbc0ddd59119fae0c81f16;hpb=a07e8637c99349d6c4dee269c9dd994cce9d8388;p=packages%2Fgoogle-chrome.git diff --git a/google-chrome.spec b/google-chrome.spec index e4fb514..695e3e4 100644 --- a/google-chrome.spec +++ b/google-chrome.spec @@ -4,21 +4,20 @@ # Conditional build: %bcond_with ffmpegsumo # using ffmpegsumo -%define flashv 23.0.0.162 %define state stable %if "%{state}" == "beta" || "%{state}" == "unstable" %define gcsuffix -%{state} %endif Summary: Google Chrome -Name: google-chrome -Version: 53.0.2785.116 +Name: google-chrome%{?gcsuffix} +Version: 88.0.4324.182 Release: 1 License: Multiple, see http://chrome.google.com/ Group: Applications/Networking -Source0: http://dl.google.com/linux/chrome/rpm/stable/x86_64/%{name}-%{state}-%{version}-%{release}.x86_64.rpm -# NoSource0-md5: b50956646dff0cb27e22cf43179e2f60 +Source0: http://dl.google.com/linux/chrome/rpm/stable/x86_64/google-chrome-%{state}-%{version}-%{release}.x86_64.rpm +# NoSource0-md5: 35919fa4002ec8a31220a1fda708a7c0 NoSource: 0 -Source1: %{name}.sh +Source1: google-chrome.sh Source2: find-lang.sh URL: http://chrome.google.com/ BuildRequires: rpm-utils @@ -32,11 +31,8 @@ Requires: hicolor-icon-theme # https://www.phoronix.com/scan.php?page=news_item&px=Google-Chrome-TSYNC-Kernel Requires: uname(release) >= 3.17 Requires: xdg-utils >= 1.0.2-4 -Suggests: browser-plugin-adobe-flash Provides: wwwbrowser -# add conflicts to trigger their update when main package is updated -Conflicts: browser-plugin-adobe-flash < %{flashv}-%{!?rel:1}%{?rel:%{rel}} -ExclusiveArch: %{x8664} +ExclusiveArch: %{x8664} BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %{expand:%%define crver %{version}} @@ -47,10 +43,9 @@ BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %define no_install_post_strip 1 %define ffmpeg_caps libffmpegsumo.so -%define flash_caps libpepflashplayer.so # list of script capabilities (regexps) not to be used in Provides -%define _noautoprov %{ffmpeg_caps} %{flash_caps} +%define _noautoprov %{ffmpeg_caps} # do not require them either %define _noautoreq %{_noautoprov} @@ -80,25 +75,6 @@ he, hi, hr, hu, id, it, ja, kn, ko, lt, lv, ml, mr, nb, nl, or, pl, pt-BR, pt-PT, ro, ru, sk, sl, sr, sv, ta, te, th, tr, uk, vi, zh-CN, zh-TW -# IMPORTANT: keep flash plugin defined as last package -%package -n browser-plugin-adobe-flash -Summary: Adobe Flash plugin from Google Chrome -Summary(pl.UTF-8): Wtyczka Adobe Flash z Google Chrome -Version: %{flashv} -Release: %{!?rel:1}%{?rel:%{rel}} -License: Free to use, non-distributable -Group: X11/Applications/Multimedia -Requires: browser-plugins >= 2.0 -Conflicts: google-chrome < 19.0.1084.52 - -%description -n browser-plugin-adobe-flash -Adobe Flash plugin from Google Chrome, which is not available in -Chromium. - -%description -n browser-plugin-adobe-flash -l pl.UTF-8 -Wtyczka Adobe Flash z Google Chrome, która nie jest dostępna w -Chromium. - %prep %setup -qcT SOURCE=%{S:0} @@ -117,13 +93,9 @@ mv chrome%{?gcsuffix}/default-app-block . mv chrome%{?gcsuffix}/product_logo_*.{png,xpm} . mv usr/share/applications/google-chrome%{?gcsuffix}.desktop . mv chrome%{?gcsuffix}/google-chrome* . +mv chrome%{?gcsuffix}/WidevineCdm/_platform_specific/linux_x64/libwidevinecdm.so chrome%{?gcsuffix}/ chmod a+x chrome%{?gcsuffix}/lib*.so* -# separate to subpackage -install -d browser-plugins -mv chrome%{?gcsuffix}/PepperFlash browser-plugins -chmod a+rx browser-plugins/PepperFlash/*.so - # included in gnome-control-center-2.28.1-3 rm default-app-block default-apps/google-chrome%{?gcsuffix}.xml @@ -131,7 +103,11 @@ rm default-app-block default-apps/google-chrome%{?gcsuffix}.xml rm chrome%{?gcsuffix}/xdg-settings rm chrome%{?gcsuffix}/xdg-mime -[ -f *.1.gz ] && gzip -d *.1.gz +if [ -n "$(ls *.1.gz)" ]; then + for file in *.1.gz; do + [ -f "$file" ] && gzip -d "$file" + done +fi %{__sed} -e 's,@localedir@,%{_libdir}/%{name},' %{SOURCE2} > find-lang.sh %{__sed} -i 's;/opt/google/chrome/product_logo_48.png;%{name}.png;' google-chrome%{?gcsuffix}.desktop @@ -140,39 +116,31 @@ rm chrome%{?gcsuffix}/xdg-mime %{__sed} -i 's#google-chrome-\(stable\|beta\|unstable\)#google-chrome#g' google-chrome%{?gcsuffix}.desktop %build -v=$(awk -F'"' '/version/{print $4}' browser-plugins/PepperFlash/manifest.json) -if [ "$v" != "%{flashv}" ]; then - : wrong version - exit 1 -fi - -# create extra file, for simplier scripting in chromium-browser.sh -echo "version=%{flashv}" > browser-plugins/PepperFlash/manifest.ver %install rm -rf $RPM_BUILD_ROOT -install -d $RPM_BUILD_ROOT{%{_bindir},%{_libdir}/%{name}/{plugins,pepper},%{_mandir}/man1,%{_desktopdir},%{_libdir}/%{name}/themes} \ +install -d $RPM_BUILD_ROOT{%{_bindir},%{_libdir}/%{name}/plugins,%{_mandir}/man1,%{_desktopdir},%{_libdir}/%{name}/themes} \ $RPM_BUILD_ROOT%{_datadir}/%{name}/extensions install -p %{SOURCE1} $RPM_BUILD_ROOT%{_bindir}/%{name} +sed -i -e 's#RPM_STATE#%{state}#g' $RPM_BUILD_ROOT%{_bindir}/%{name} + %{__sed} -i -e 's,@libdir@,%{_libdir}/%{name},' $RPM_BUILD_ROOT%{_bindir}/%{name} cp -a chrome%{?gcsuffix}/* $RPM_BUILD_ROOT%{_libdir}/%{name} -cp -p google-chrome%{?gcsuffix}.1 $RPM_BUILD_ROOT%{_mandir}/man1/google-chrome.1 +cp -p google-chrome-%{state}.1 $RPM_BUILD_ROOT%{_mandir}/man1/google-chrome%{?gcsuffix}.1 # for google-chrome --help -echo ".so google-chrome.1" > $RPM_BUILD_ROOT%{_mandir}/man1/chrome.1 -cp -p google-chrome%{?gcsuffix}.desktop $RPM_BUILD_ROOT%{_desktopdir}/google-chrome.desktop +echo ".so google-chrome%{?gcsuffix}.1" > $RPM_BUILD_ROOT%{_mandir}/man1/chrome%{?gcsuffix}.1 +cp -p google-chrome%{?gcsuffix}.desktop $RPM_BUILD_ROOT%{_desktopdir}/google-chrome%{?gcsuffix}.desktop for icon in product_logo_*.png; do size=${icon##product_logo_} size=${size%.png} + size=${size%_%{state}} install -d $RPM_BUILD_ROOT%{_iconsdir}/hicolor/${size}x${size}/apps cp -p $icon $RPM_BUILD_ROOT%{_iconsdir}/hicolor/${size}x${size}/apps/%{name}.png done -install -d $RPM_BUILD_ROOT%{_browserpluginsdir} -cp -a browser-plugins/* $RPM_BUILD_ROOT%{_browserpluginsdir} - %browser_plugins_add_browser %{name} -p %{_libdir}/%{name}/plugins # binary needs to be at that specific location, or it will abort: @@ -183,14 +151,6 @@ install -d $RPM_BUILD_ROOT/opt/google # content/browser/browser_main_loop.cc ln -s %{_libdir}/%{name} $RPM_BUILD_ROOT/opt/google/chrome%{?gcsuffix} -# official rpm just add libudev.so.0 -> libudev.so.1 symlink, so we use similar hack here -if grep -qE "libudev\.so\.0" $RPM_BUILD_ROOT%{_libdir}/%{name}/chrome; then - %{__sed} -i -e 's#libudev\.so\.0#libudev.so.1#g' $RPM_BUILD_ROOT%{_libdir}/%{name}/chrome -else - echo "Hack no longer needed? No longer linked with libudev.so.0 ?" >&2 - exit 1 -fi - # find locales %find_lang %{name}.lang # always package en-US (in main package) @@ -209,32 +169,6 @@ if [ "$1" = 0 ]; then %update_browser_plugins fi -%post -n browser-plugin-adobe-flash -%update_browser_plugins - -%postun -n browser-plugin-adobe-flash -if [ "$1" = 0 ]; then - %update_browser_plugins -fi - -# FIXME: chrome *needs* it to be in application dir. add symlink until it can load from other places -# FIXME: link PepperFlash, browser-plugins ignores subdirs, and currently nothing else than chrome browsers can do pepper -%triggerin -n browser-plugin-adobe-flash -- google-chrome -test -L %{_libdir}/%{name}/PepperFlash || ln -sf %{_browserpluginsdir}/PepperFlash %{_libdir}/%{name}/PepperFlash - -%triggerun -n browser-plugin-adobe-flash -- google-chrome -if [ "$1" = "0" ] || [ "$2" = "0" ] && [ -L %{_libdir}/%{name}/PepperFlash ]; then - rm -f %{_libdir}/%{name}/PepperFlash -fi - -%triggerin -n browser-plugin-adobe-flash -- chromium-browser-bin -test -L %{_libdir}/chromium-browser-bin/PepperFlash || ln -sf %{_browserpluginsdir}/PepperFlash %{_libdir}/chromium-browser-bin/PepperFlash - -%triggerun -n browser-plugin-adobe-flash -- chromium-browser-bin -if [ "$1" = "0" ] || [ "$2" = "0" ] && [ -L %{_libdir}/chromium-browser-bin/PepperFlash ]; then - rm -f %{_libdir}/chromium-browser-bin/PepperFlash -fi - %files %defattr(644,root,root,755) @@ -247,18 +181,17 @@ fi %{_iconsdir}/hicolor/*/apps/%{name}.png %dir %{_libdir}/%{name} +%{_libdir}/%{name}/MEIPreload %{_libdir}/%{name}/icudtl.dat %{_libdir}/%{name}/chrome_*_percent.pak %{_libdir}/%{name}/resources.pak -%{_libdir}/%{name}/natives_blob.bin -%{_libdir}/%{name}/snapshot_blob.bin +%{_libdir}/%{name}/v8_context_snapshot.bin +%{_libdir}/%{name}/libEGL.so +%{_libdir}/%{name}/libGLESv2.so %dir %{_libdir}/%{name}/locales %{_libdir}/%{name}/locales/en-US.pak -%{_libdir}/%{name}/locales/fake-bidi.pak +#%{_libdir}/%{name}/locales/fake-bidi.pak %dir %{_libdir}/%{name}/plugins -# hardcoded list of pepper plugins chrome can load -# see https://chromium.googlesource.com/chromium/chromium/+/trunk/chrome/common/chrome_paths.cc -%dir %{_libdir}/%{name}/pepper %dir %{_datadir}/%{name} # The path to the external extension .json files. # see https://chromium.googlesource.com/chromium/chromium/+/trunk/chrome/common/chrome_paths.cc @@ -269,6 +202,8 @@ fi # These unique permissions are intentional and necessary for the sandboxing %attr(4555,root,root) %{_libdir}/%{name}/chrome-sandbox +%attr(755,root,root) %{_libdir}/%{name}/crashpad_handler + # nacl %attr(755,root,root) %{_libdir}/%{name}/nacl_helper %attr(755,root,root) %{_libdir}/%{name}/nacl_helper_bootstrap @@ -276,23 +211,22 @@ fi # DRM %attr(755,root,root) %{_libdir}/%{name}/libwidevinecdm.so -%attr(755,root,root) %{_libdir}/%{name}/libwidevinecdmadapter.so + +# replace with mesa symlinks? +%dir %{_libdir}/%{name}/swiftshader +%attr(755,root,root) %{_libdir}/%{name}/swiftshader/libEGL.so +%attr(755,root,root) %{_libdir}/%{name}/swiftshader/libGLESv2.so # ffmpeg libs %if %{with ffmpegsumo} %attr(755,root,root) %{_libdir}/%{name}/libffmpegsumo.so %endif +%{_libdir}/%{name}/WidevineCdm + # hack %dir /opt/google /opt/google/chrome%{?gcsuffix} %files l10n -f %{name}.lang %defattr(644,root,root,755) - -%files -n browser-plugin-adobe-flash -%defattr(644,root,root,755) -%dir %{_browserpluginsdir}/PepperFlash -%{_browserpluginsdir}/PepperFlash/manifest.json -%{_browserpluginsdir}/PepperFlash/manifest.ver -%attr(755,root,root) %{_browserpluginsdir}/PepperFlash/libpepflashplayer.so