]> git.pld-linux.org Git - packages/google-chrome.git/blobdiff - google-chrome.spec
- up to 19.0.1084.56
[packages/google-chrome.git] / google-chrome.spec
index 9d3123a29b6f937551932ca4c8f75a51dc9e6dc1..970ad4181231bc70399b126328730a69df4696e7 100644 (file)
@@ -1,18 +1,22 @@
 # NOTE
-# - to look for new version, use update-source.sh script
+# - to look and update to new version, use update-source.sh script
 
-%define                svnrev  59126
-%define                rel             1
+%define                flashv  11.2.202.236
+%define                svnrev  140965
+#define                rel             %{nil}
+%define                state   stable
 Summary:       Google Chrome
 Name:          google-chrome
-Version:       6.0.472.59
-Release:       %{svnrev}.%{rel}
+Version:       19.0.1084.56
+Release:       %{svnrev}%{?rel:.%{rel}}
 License:       Multiple, see http://chrome.google.com/
 Group:         Applications/Networking
-Source0:       http://dl.google.com/linux/rpm/stable/i386/%{name}-stable-%{version}-%{svnrev}.i386.rpm
-# Source0-md5: ac7d36782b0e13319c5770cd791a3994
-Source1:       http://dl.google.com/linux/rpm/stable/x86_64/%{name}-stable-%{version}-%{svnrev}.x86_64.rpm
-# Source1-md5: ac34c8dd58a79fba45ffd13435933c2b
+Source0:       http://dl.google.com/linux/chrome/rpm/stable/i386/%{name}-%{state}-%{version}-%{svnrev}.i386.rpm
+# NoSource0-md5:       c6698373f6ee99e00275719f61a054ce
+NoSource:      0
+Source1:       http://dl.google.com/linux/chrome/rpm/stable/x86_64/%{name}-%{state}-%{version}-%{svnrev}.x86_64.rpm
+# NoSource1-md5:       fe38f28c107038fcfda1679a7e4eb6d0
+NoSource:      1
 Source2:       %{name}.sh
 Source4:       find-lang.sh
 Patch0:                chrome-desktop.patch
@@ -21,24 +25,30 @@ BuildRequires:      rpm-utils
 BuildRequires: rpmbuild(macros) >= 1.453
 BuildRequires: sed >= 4.0
 Requires:      browser-plugins >= 2.0
-Requires:      nspr
-Requires:      nss
-Requires:      xdg-utils
+Requires:      hicolor-icon-theme
+Requires:      xdg-utils >= 1.0.2-4
 Provides:      wwwbrowser
+%ifarch %{ix86}
+Suggests:      browser-plugin-adobe-flash
+%endif
+Suggests:      browser-plugin-chrome-pdf
 ExclusiveArch: %{ix86} %{x8664}
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
+%{expand:%%define      crver %{version}}
+
 %define                find_lang       sh find-lang.sh %{buildroot}
 
 %define                _enable_debug_packages  0
 %define                no_install_post_strip   1
 
-%define                nss_caps        libfreebl3.so libnss3.so libnssckbi.so libsmime3.so ibsoftokn3.so libssl3.so libnssutil3.so
-%define                nspr_caps       libnspr4.so libplc4.so libplds4.so
 %define                ffmpeg_caps     libffmpegsumo.so
+%define                jpeg_caps       libpng12.so.0(PNG12_0)
+%define                flash_caps      libflashplayer.so
+%define                chrome_caps     libpdf.so libppGoogleNaClPluginChrome.so
 
 # list of script capabilities (regexps) not to be used in Provides
-%define                _noautoprov             %{nss_caps} %{nspr_caps} %{ffmpeg_caps}
+%define                _noautoprov             %{ffmpeg_caps} %{jpeg_caps} %{flash_caps} %{chrome_caps}
 # do not require them either
 %define                _noautoreq              %{_noautoprov}
 
@@ -55,6 +65,39 @@ Google Chrome egy böngésző, amely a minimalista külsőt házasítja össze
 a kifinomult technológiával, hogy a webböngészés gyorsabb,
 biztonságosabb és könnyebb legyen.
 
+%package -n browser-plugin-chrome-pdf
+Summary:       Chrome PDF Viewer
+Summary(pl.UTF-8):     Wtyczka PDF z Google Chrome
+Group:         X11/Applications/Graphics
+Requires:      browser-plugins >= 2.0
+Conflicts:     google-chrome < 16.0.912.75
+
+%description -n browser-plugin-chrome-pdf
+Google Chrome PDF Viewer.
+
+%description -n browser-plugin-chrome-pdf -l pl.UTF-8
+Wtyczka PDF z Google Chrome.
+
+# 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 < 16.0.912.75
+
+%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
 %ifarch %{ix86}
@@ -66,7 +109,7 @@ SOURCE=%{S:1}
 
 V=$(rpm -qp --nodigest --nosignature --qf '%{V}' $SOURCE)
 R=$(rpm -qp --nodigest --nosignature --qf '%{R}' $SOURCE)
-if [ version:$V != version:%{version} -o svnrev:$R != svnrev:%{svnrev} ]; then
+if [ version:$V != version:%{crver} -o svnrev:$R != svnrev:%{svnrev} ]; then
        exit 1
 fi
 rpm2cpio $SOURCE | cpio -i -d
@@ -80,13 +123,21 @@ mv chrome/google-chrome.desktop .
 mv chrome/google-chrome .
 chmod a+x chrome/lib*.so*
 
+# separate to subpackage
+install -d browser-plugins
+mv chrome/libpdf.so browser-plugins
+%ifarch %{ix86}
+mv chrome/libgcflashplayer.so browser-plugins
+%endif
+
 # included in gnome-control-center-2.28.1-3
 rm default-app-block default-apps/google-chrome.xml
 
-%ifarch %{x8664}
-# go figure, 32bit one doesn't have it compressed
-gzip -d *.1.gz
-%endif
+# xdg-utils snapshot required
+rm chrome/xdg-settings
+rm chrome/xdg-mime
+
+[ -f *.1.gz ] && gzip -d *.1.gz
 
 %patch0 -p1
 
@@ -94,30 +145,47 @@ gzip -d *.1.gz
 %{__sed} -i 's;/opt/google/chrome/product_logo_48.png;%{name}.png;' google-chrome.desktop
 %{__sed} -i 's;/opt/google/chrome;%{_bindir};' google-chrome.desktop
 
+%build
+%ifarch %{ix86}
+s=$(echo 'LNX %{flashv}' | tr . ,)
+v=$(strings browser-plugins/libgcflashplayer.so | grep '^LNX ')
+if [ "$v" != "$s" ]; then
+       : wrong version
+       exit 1
+fi
+%endif
+
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_bindir},%{_libdir}/%{name}/plugins,%{_mandir}/man1,%{_pixmapsdir},%{_desktopdir},%{_libdir}/%{name}/themes}
+install -d $RPM_BUILD_ROOT{%{_bindir},%{_libdir}/%{name}/plugins,%{_mandir}/man1,%{_desktopdir},%{_libdir}/%{name}/themes}
 
 install -p %{SOURCE2} $RPM_BUILD_ROOT%{_bindir}/%{name}
 %{__sed} -i -e 's,@libdir@,%{_libdir}/%{name},' $RPM_BUILD_ROOT%{_bindir}/%{name}
 cp -a chrome/* $RPM_BUILD_ROOT%{_libdir}/%{name}
-cp -a google-chrome.1 $RPM_BUILD_ROOT%{_mandir}/man1
+cp -p google-chrome.1 $RPM_BUILD_ROOT%{_mandir}/man1
 # for google-chrome --help
 echo ".so google-chrome.1" > $RPM_BUILD_ROOT%{_mandir}/man1/chrome.1
-cp -a product_logo_48.png $RPM_BUILD_ROOT%{_pixmapsdir}/%{name}.png
-cp -a google-chrome.desktop $RPM_BUILD_ROOT%{_desktopdir}
+cp -p google-chrome.desktop $RPM_BUILD_ROOT%{_desktopdir}
 
-%browser_plugins_add_browser %{name} -p %{_libdir}/%{name}/plugins
+for icon in product_logo_*.png; do
+       size=${icon##product_logo_}
+       size=${size%.png}
 
-# nspr symlinks
-for a in libnspr4.so libplc4.so libplds4.so; do
-       ln -s %{_libdir}/$a $RPM_BUILD_ROOT%{_libdir}/%{name}/$a.0d
-done
-# nss symlinks
-for a in libnss3.so libnssutil3.so libsmime3.so libssl3.so; do
-       ln -s %{_libdir}/$a $RPM_BUILD_ROOT%{_libdir}/%{name}/$a.1d
+       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}
+install -p browser-plugins/*.so $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:
+# [1070:1070:3265429789299:FATAL:zygote_host_linux.cc(130)] The SUID sandbox helper binary is missing: /opt/google/chrome/chrome-sandbox Aborting now.
+# Aborted
+install -d $RPM_BUILD_ROOT/opt/google
+ln -s %{_libdir}/%{name} $RPM_BUILD_ROOT/opt/google/chrome
+
 # find locales
 %find_lang %{name}.lang
 
@@ -125,13 +193,51 @@ done
 rm -rf $RPM_BUILD_ROOT
 
 %post
+%update_icon_cache hicolor
 %update_browser_plugins
 
 %postun
+if [ "$1" = 0 ]; then
+       %update_icon_cache hicolor
+       %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
 
+%post -n browser-plugin-chrome-pdf
+%update_browser_plugins
+
+%postun -n browser-plugin-chrome-pdf
+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
+# for chromium, we could likely patch source
+%triggerin -n browser-plugin-chrome-pdf -- google-chrome
+test -L %{_libdir}/google-chrome/libpdf.so || ln -sf plugins/libpdf.so %{_libdir}/google-chrome/libpdf.so
+
+%triggerun -n browser-plugin-chrome-pdf -- google-chrome
+rm -f %{_libdir}/google-chrome/libpdf.so
+
+%triggerin -n browser-plugin-chrome-pdf -- chromium-browser
+test -L %{_libdir}/chromium-browser/libpdf.so || ln -sf plugins/libpdf.so %{_libdir}/chromium-browser/libpdf.so
+
+%triggerun -n browser-plugin-chrome-pdf -- chromium-browser
+rm -f %{_libdir}/chromium-browser/libpdf.so
+
+%triggerin -n browser-plugin-chrome-pdf -- chromium-browser-bin
+test -L %{_libdir}/chromium-browser-bin/libpdf.so || ln -sf plugins/libpdf.so %{_libdir}/chromium-browser-bin/libpdf.so
+
+%triggerun -n browser-plugin-chrome-pdf -- chromium-browser-bin
+rm -f %{_libdir}/chromium-browser-bin/libpdf.so
+
 %files -f %{name}.lang
 %defattr(644,root,root,755)
 
@@ -140,31 +246,42 @@ fi
 
 %attr(755,root,root) %{_bindir}/%{name}
 %{_mandir}/man1/*.1*
-%{_pixmapsdir}/%{name}.png
 %{_desktopdir}/*.desktop
+%{_iconsdir}/hicolor/*/apps/%{name}.png
+
 %dir %{_libdir}/%{name}
 %{_libdir}/%{name}/chrome.pak
 %{_libdir}/%{name}/resources.pak
 %dir %{_libdir}/%{name}/locales
 %dir %{_libdir}/%{name}/plugins
-%{_libdir}/%{name}/resources
+%{_libdir}/%{name}/default_apps
 %{_libdir}/%{name}/themes
 %attr(755,root,root) %{_libdir}/%{name}/chrome
 # These unique permissions are intentional and necessary for the sandboxing
 %attr(4555,root,root) %{_libdir}/%{name}/chrome-sandbox
 
-%attr(755,root,root) %{_libdir}/%{name}/libpdf.so
+# Native Client plugin, to use launch with --enable-nacl
+%attr(755,root,root) %{_libdir}/%{name}/libppGoogleNaClPluginChrome.so
+
+# nacl
+%attr(755,root,root) %{_libdir}/%{name}/nacl_helper
+%attr(755,root,root) %{_libdir}/%{name}/nacl_helper_bootstrap
+%attr(755,root,root) %{_libdir}/%{name}/nacl_irt_x86_*.nexe
+
 # ffmpeg libs
 %attr(755,root,root) %{_libdir}/%{name}/libffmpegsumo.so
 
-# nspr/nss symlinks
-%attr(755,root,root) %{_libdir}/%{name}/libnspr4.so.0d
-%attr(755,root,root) %{_libdir}/%{name}/libplc4.so.0d
-%attr(755,root,root) %{_libdir}/%{name}/libplds4.so.0d
-%attr(755,root,root) %{_libdir}/%{name}/libnss3.so.1d
-%attr(755,root,root) %{_libdir}/%{name}/libnssutil3.so.1d
-%attr(755,root,root) %{_libdir}/%{name}/libsmime3.so.1d
-%attr(755,root,root) %{_libdir}/%{name}/libssl3.so.1d
-
-# bundle this copy until xdg-utils will have this itself
-%attr(755,root,root) %{_libdir}/%{name}/xdg-settings
+# hack
+%dir /opt/google
+/opt/google/chrome
+
+%files -n browser-plugin-chrome-pdf
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_browserpluginsdir}/libpdf.so
+
+%ifarch %{ix86}
+%files -n browser-plugin-adobe-flash
+%defattr(644,root,root,755)
+%{_libdir}/%{name}/plugin.vch
+%attr(755,root,root) %{_browserpluginsdir}/libgcflashplayer.so
+%endif
This page took 0.096272 seconds and 4 git commands to generate.