/[packages]/cauldron/flash-player-plugin/current/SPECS/flash-player-plugin.spec
ViewVC logotype

Annotation of /cauldron/flash-player-plugin/current/SPECS/flash-player-plugin.spec

Parent Directory Parent Directory | Revision Log Revision Log


Revision 227535 - (hide annotations) (download)
Thu Mar 29 20:39:40 2012 UTC (12 years ago) by anssi
File size: 12268 byte(s)
- new version 11.2.202.228
  o fixes a memory corruption vulnerability (CVE-2012-0773)

1 ennael 89107 Summary: Flash Player plugin for browsers
2 doktor5000 151537 Name: flash-player-plugin
3 anssi 227535 Version: 11.2.202.228
4 anssi 210094 Release: %mkrel 1
5 ennael 89107 License: Proprietary
6     URL: http://www.adobe.com/products/flashplayer/
7     Group: Networking/WWW
8 doktor5000 151631 ExclusiveArch: %ix86 x86_64
9 anssi 134274 Requires(pre): curl
10 ennael 89107
11     # obtained by objdump -x /usr/lib/mozilla/plugins/libflashplayer.so | grep NEEDED
12     # helper: for i in $(objdump -p libflashplayer.so | grep NEEDED | awk '{ print $2 }'); do
13     # echo -n "$i: "; rpm -qf /usr/lib64/$i; done
14     # libX11.so.6 libXext.so.6 libXt.so.6 libfreetype.so.6
15     Requires: %{_lib}x11_6 %{_lib}xext6 %{_lib}xt6 %{_lib}freetype6
16     # libfontconfig.so.1 libgtk-x11-2.0.so.0, libgdk-x11-2.0.so.0
17     Requires: %{_lib}fontconfig1 %{_lib}gtk+-x11-2.0_0
18     # libatk-1.0.so.0 libgdk_pixbuf-2.0.so.0 libpangocairo-1.0.so.0, libpango-1.0.so.0
19     Requires: %{_lib}atk1.0_0 %{_lib}gdk_pixbuf2.0_0 %{_lib}pango1.0_0
20     # libcairo.so.2 libgobject-2.0.so.0, libgmodule-2.0.so.0, libglib-2.0.so.0
21     Requires: %{_lib}cairo2 %{_lib}glib2.0_0
22     # libnss3.so, libsmime3.so, libssl3.so libplds4.so, libplc4.so, libnspr4.so
23     Requires: %{_lib}nss3 %{_lib}nspr4
24     # required for audio, dlopened:
25     Requires: %{_lib}alsa2
26     # dlopened:
27     Requires: %{_lib}curl4
28     # dlopened, for video acceleration:
29     Suggests: %{_lib}vdpau1
30     #
31     Conflicts: FlashPlayer < 9.0.115.0-5
32     Conflicts: flash-plugin FlashPlayer-plugin flashplayer-plugin
33     # Conflict with free plugins to avoid user confusion as to which one is
34     # actually used:
35     Conflicts: gnash-firefox-plugin
36     Conflicts: swfdec-mozilla
37     Conflicts: lightspark-mozilla-plugin
38     Conflicts: libflashsupport < 0.20080000.1
39     Obsoletes: flash-player-plugin10.2 < 10.2.152
40 doktor5000 151537 Provides: flash-player-plugin11
41     Obsoletes: flash-player-plugin11
42 anssi 98265 BuildRequires: kde4-macros
43 ennael 89107 BuildRoot: %{_tmppath}/%{name}-root
44    
45     %description
46     Adobe Flash Player plugin for browsers.
47    
48     NOTE: This package does not contain the Flash Player itself. The
49 doktor5000 151537 software will be automatically downloaded from Adobe during package
50     installation.
51 ennael 89107
52 anssi 152188 Installing this package indicates acceptance of the Flash Player EULA,
53 anssi 152244 available at http://www.adobe.com/products/eulas/players/flash/
54     %ifnarch x86_64
55     and as %{_libdir}/mozilla/plugins/LICENSE.flashplayer.
56     %endif
57 ennael 89107
58 anssi 134274 # It would be preferable to have the KCM module in the main package with
59     # simply not requiring any kde stuff. However, standard KDE installation
60     # doesn't necessary include libkutils4. - Anssi 08/2011
61     %package kde
62     Summary: Flash Player KDE settings module
63     Group: Networking/WWW
64     Requires: %{name} = %{version}-%{release}
65     Requires(post): %{name} = %{version}-%{release}
66     # helper: for i in $(objdump -p usr/lib/kde4/kcm_adobe_flash_player.so | grep NEEDED | awk '{ print $2 }'); do
67     # echo -n "$i: "; rpm -qf /usr/lib64/$i; done
68     Requires: %{_lib}kdeui5
69     Requires: %{_lib}sm6
70     Requires: %{_lib}ice6
71     Requires: %{_lib}x11_6
72     Requires: %{_lib}xext6
73     Requires: %{_lib}xft2
74     Requires: %{_lib}xau6
75     Requires: %{_lib}xdmcp6
76     Requires: %{_lib}xpm4
77     Requires: %{_lib}kutils4
78     Requires: %{_lib}kdecore5
79     Requires: %{_lib}qtdbus4
80     Requires: %{_lib}qtcore4
81     Requires: %{_lib}qtsvg4
82     Requires: %{_lib}qtgui4
83     Conflicts: flash-player-plugin < 10.3.183.5
84 doktor5000 151537 Provides: flash-player-plugin11-kde
85     Obsoletes: flash-player-plugin11-kde
86 anssi 134274
87     %description kde
88     KDE settings module for Adobe Flash Player.
89    
90     NOTE: This package does not contain the software itself. The
91     software will be automatically downloaded from the Adobe server
92 doktor5000 151537 during package installation.
93 anssi 134274
94 anssi 152188 Installing this package indicates acceptance of the Flash Player EULA,
95 anssi 152244 available at http://www.adobe.com/products/eulas/players/flash/
96     %ifnarch x86_64
97     and as %{_libdir}/mozilla/plugins/LICENSE.flashplayer.
98     %endif
99 anssi 134274
100 ennael 89107 %prep
101     %setup -c -T
102    
103 anssi 152244 # Always prefer versioned archives instead of unversioned ones, so that when
104     # Adobe updates the Flash Player, the old md5sum continues to work until
105     # this package is updated for the new version.
106    
107 doktor5000 151631 # The linuxdownload.adobe.com rpm usually stays up longer, but fpdownload.macromedia.com is faster.
108     # Their md5sums usually differ.
109    
110 doktor5000 151537 %ifarch %ix86
111 anssi 166427 %define downurl1 http://fpdownload.macromedia.com/get/flashplayer/pdc/%{version}/flash-plugin-%{version}-release.i386.rpm
112 anssi 227535 %define tmd5sum1 76682964de6c8bf07bac5b0f337d03fc
113 anssi 152244 %define downurl2 http://linuxdownload.adobe.com/linux/i386/flash-plugin-%{version}-release.i386.rpm
114 anssi 227535 %define tmd5sum2 ab0147f2b186c351032eaf712f27ec67
115 anssi 152244 %define downurl3 %nil
116     %define tmd5sum3 %nil
117     %define tarname flash-plugin-%{version}-release.i386.rpm
118    
119     %define warn_on_missing_files 1
120 doktor5000 151537 %endif
121 anssi 134330
122 doktor5000 151537 %ifarch x86_64
123 anssi 166427 %define downurl1 http://fpdownload.macromedia.com/get/flashplayer/pdc/%{version}/flash-plugin-%{version}-release.x86_64.rpm
124 anssi 227535 %define tmd5sum1 69b53182770c42487e553a271d40edd2
125 anssi 166427 %define downurl2 http://linuxdownload.adobe.com/linux/x86_64/flash-plugin-%{version}-release.x86_64.rpm
126 anssi 227535 %define tmd5sum2 8867460a02cdf2480df6eb2b9e3fc4a4
127 anssi 166427 %define downurl3 %nil
128     %define downurl3 %nil
129 anssi 152244 %define tarname flash-plugin-%{version}-release.x86_64.rpm
130    
131 anssi 166427 %define warn_on_missing_files 1
132 ennael 89107 %endif
133    
134 anssi 134274 %define file %{_localstatedir}/lib/%{name}/%{tarname}
135    
136     %install
137     rm -rf %{buildroot}
138    
139     install -d -m755 %{buildroot}%{_localstatedir}/lib/%{name}
140     install -d -m755 %{buildroot}%{_libdir}/mozilla/plugins
141     touch %{buildroot}%{_libdir}/mozilla/plugins/libflashplayer.so
142 doktor5000 151631 touch %{buildroot}%{_libdir}/mozilla/plugins/LICENSE.flashplayer
143     touch %{buildroot}%{_libdir}/mozilla/plugins/README.flashplayer
144 anssi 134274 touch %{buildroot}%{_localstatedir}/lib/%{name}/%{tarname}
145    
146     install -d -m755 %{buildroot}%{_bindir}
147     touch %{buildroot}%{_bindir}/flash-player-properties
148    
149     install -d -m755 %{buildroot}%{_kde_services}
150     touch %{buildroot}%{_kde_services}/kcm_adobe_flash_player.desktop
151     install -d -m755 %{buildroot}%{_kde_libdir}/kde4
152     touch %{buildroot}%{_kde_libdir}/kde4/kcm_adobe_flash_player.so
153    
154     install -d -m755 %{buildroot}%{_datadir}/applications
155     touch %{buildroot}%{_datadir}/applications/flash-player-properties.desktop
156    
157     for i in 16 22 24 32 48; do
158     install -d -m755 %{buildroot}%{_iconsdir}/hicolor/${i}x${i}/apps
159     touch %{buildroot}%{_iconsdir}/hicolor/${i}x${i}/apps/flash-player-properties.png
160     done
161    
162     install -d -m755 %{buildroot}%{_datadir}/%{name}
163     cat > %{buildroot}%{_datadir}/%{name}/functions << EOF
164 anssi 152244 next_file() {
165     FILENUM=\$((FILENUM+1))
166     eval FILE_SRC="\\\$FILE\${FILENUM}_SRC"
167     eval FILE_DST="\\\$FILE\${FILENUM}_DST"
168     eval FILE_PRM="\\\$FILE\${FILENUM}_PRM"
169     [ -n "\$FILE_SRC" ]
170     }
171    
172 anssi 134274 tar_extract() {
173 doktor5000 151631 extractdir=\$(mktemp -d --tmpdir=/tmp)
174 anssi 134274 if [ -z "\$extractdir" ]; then
175     echo "Error during extraction." >&2
176     exit 1
177     fi
178    
179     cd "\$extractdir" || exit 1
180 anssi 152244
181     if [ "\$(head -c4 "%file")" = \$'\\xED\\xAB\\xEE\\xDB' ]; then
182     rpm2cpio "%file" | cpio -i --quiet -d -R root:root
183     else
184     tar -xzf "%file" --no-same-owner --no-same-permissions
185     fi
186    
187     # Avoid leaving old files in case of failure below
188     FILENUM=0
189     while next_file; do
190     rm -f "\$FILE_DST"
191     done
192    
193     FILENUM=0
194     while next_file; do
195     if [ ! -f "\$FILE_SRC" ]; then
196     %if %warn_on_missing_files
197     echo "Warning: \$FILE_SRC not found in the Flash Player archive," >&2
198     echo " skipping installation of \$FILE_DST." >&2
199     echo " Please file a bug report at https://bugs.mageia.org/ ." >&2
200 anssi 134274 %endif
201 anssi 152244 continue
202     fi
203    
204 anssi 141931 chmod "\$FILE_PRM" "\$FILE_SRC"
205 anssi 134274 mv -f "\$FILE_SRC" "\$FILE_DST"
206     done
207     rm -rf "\$extractdir"
208     }
209     EOF
210    
211     %clean
212     rm -rf %{buildroot}
213    
214     %pre
215     checkmd5sum() {
216     [ -e "$1" ] || return 1
217     FILEMD5="$(md5sum $1 | cut -d" " -f1)"
218     [ -n "$FILEMD5" ] || return 1
219     MD5NUM=1
220     eval MD5SUM="\$MD5SUM$MD5NUM"
221     while [ "$MD5SUM" ]; do
222     [ "$MD5SUM" = "$FILEMD5" ] && return 0
223     MD5NUM=$((MD5NUM+1))
224     eval MD5SUM="\$MD5SUM$MD5NUM"
225     done
226     return 1
227     }
228 anssi 182382
229     get_proxy_from_urpmi() {
230     if [ -e /etc/urpmi/proxy.cfg ]; then
231     proxy="$(grep ^http_proxy= /etc/urpmi/proxy.cfg 2>/dev/null)"
232     proxy_user="$(grep ^proxy_user= /etc/urpmi/proxy.cfg 2>/dev/null)"
233    
234     proxy="${proxy#http_proxy=}"
235     proxy_user="${proxy_user#proxy_user=}"
236    
237     [ -n "$proxy" ] && echo "--proxy $proxy"
238     [ -n "$proxy_user" ] && echo "--proxy-user $proxy_user"
239     fi
240     }
241    
242 ennael 89107 MD5SUM1="%{tmd5sum1}"
243     MD5SUM2="%{tmd5sum2}"
244 anssi 152244 MD5SUM3="%{tmd5sum3}"
245     MD5SUM4=
246 ennael 89107 URL1="%{downurl1}"
247     URL2="%{downurl2}"
248 anssi 152244 URL3="%{downurl3}"
249     URL4=
250 anssi 134274
251     URLNUM=1
252    
253     install -d -m 0755 %{_localstatedir}/lib/%{name}
254    
255     echo "Note that by downloading the Adobe Flash Player you indicate your acceptance of"
256 anssi 152188 echo "the EULA, available at http://www.adobe.com/products/eulas/players/flash/"
257 anssi 134274 while ! checkmd5sum "%file"; do
258     eval URL="\$URL$URLNUM"
259     if [ -z "$URL" ]; then
260     echo "Error: Unable to download Flash Player. This is likely due to this package" >&2
261     echo " being too old. Please file a bug report at https://bugs.mageia.org" >&2
262     echo " so that the package gets updated. Thank you." >&2
263     echo "" >&2
264     echo " In the meantime, you can download Flash Player manually from" >&2
265     echo " http://get.adobe.com/flashplayer/" >&2
266 doktor5000 151631 rm -f "%file"
267     [ "$(ls -A "%{_localstatedir}/lib/%{name}")" ] && rm -rf "%{_localstatedir}/lib/%{name}"
268 anssi 134274 exit 1
269     fi
270     URLNUM=$((URLNUM+1))
271     echo "Downloading from $URL:"
272 anssi 182382 curl --connect-timeout 20 -m 10800 -L $(get_proxy_from_urpmi) "$URL" > "%file"
273 anssi 134274 done
274    
275     %post
276 doktor5000 151631 FILE1_SRC="usr/%{_lib}/flash-plugin/libflashplayer.so"
277 ennael 89107 FILE1_DST="%{_libdir}/mozilla/plugins/libflashplayer.so"
278 anssi 141931 FILE1_PRM="0755"
279 anssi 152188 FILE2_SRC="usr/%{_lib}/flash-plugin/LICENSE"
280 doktor5000 151631 FILE2_DST="%{_libdir}/mozilla/plugins/LICENSE.flashplayer"
281     FILE2_PRM="0644"
282     FILE3_SRC="usr/%{_lib}/flash-plugin/README"
283     FILE3_DST="%{_libdir}/mozilla/plugins/README.flashplayer"
284 anssi 141931 FILE3_PRM="0644"
285 anssi 98265
286 anssi 152188 FILE4_SRC="usr/bin/flash-player-properties"
287     FILE4_DST="%{_bindir}/flash-player-properties"
288     FILE4_PRM="0755"
289     FILE5_SRC="usr/share/applications/flash-player-properties.desktop"
290     FILE5_DST="%{_datadir}/applications/flash-player-properties.desktop"
291     FILE5_PRM="0644"
292 anssi 98265
293 anssi 152188 FILE6_SRC="usr/share/icons/hicolor/16x16/apps/flash-player-properties.png"
294     FILE6_DST="%{_iconsdir}/hicolor/16x16/apps/flash-player-properties.png"
295     FILE6_PRM="0644"
296     FILE7_SRC="usr/share/icons/hicolor/22x22/apps/flash-player-properties.png"
297     FILE7_DST="%{_iconsdir}/hicolor/22x22/apps/flash-player-properties.png"
298     FILE7_PRM="0644"
299     FILE8_SRC="usr/share/icons/hicolor/24x24/apps/flash-player-properties.png"
300     FILE8_DST="%{_iconsdir}/hicolor/24x24/apps/flash-player-properties.png"
301     FILE8_PRM="0644"
302     FILE9_SRC="usr/share/icons/hicolor/32x32/apps/flash-player-properties.png"
303     FILE9_DST="%{_iconsdir}/hicolor/32x32/apps/flash-player-properties.png"
304     FILE9_PRM="0644"
305     FILE10_SRC="usr/share/icons/hicolor/48x48/apps/flash-player-properties.png"
306     FILE10_DST="%{_iconsdir}/hicolor/48x48/apps/flash-player-properties.png"
307     FILE10_PRM="0644"
308     FILE11_SRC=
309    
310 anssi 134274 . %{_datadir}/%{name}/functions
311     tar_extract
312 anssi 98265
313 anssi 134274 # show in KDE as well (in case user doesn't have -kde subpkg
314 anssi 152244 sed -i 's,NotShowIn=KDE;,,' %{_datadir}/applications/flash-player-properties.desktop 2>/dev/null || :
315 anssi 134274 # otherwise KDE hides it:
316 anssi 152244 sed -i 's,GNOME;,,' %{_datadir}/applications/flash-player-properties.desktop 2>/dev/null || :
317 anssi 98265
318 anssi 152188 echo "Adobe Flash Player installation successful."
319 ennael 89107
320 anssi 166421 %pre kde
321     # When installing both main package and -kde, failure of %pre of main package
322     # can prevent installation of it, but urpmi/rpm will try to install -kde
323     # regardless. FIXME.
324     # For now, workaround it by preventing -kde installation as well:
325     [ -e %{_datadir}/%{name}/functions ]
326 ennael 89107
327 anssi 134274 %post kde
328 doktor5000 151631 FILE1_SRC="usr/%{_lib}/kde4/kcm_adobe_flash_player.so"
329 anssi 134274 FILE1_DST="%{_kde_libdir}/kde4/kcm_adobe_flash_player.so"
330 anssi 141931 FILE1_PRM="0755"
331 anssi 134274 FILE2_SRC="usr/share/kde4/services/kcm_adobe_flash_player.desktop"
332     FILE2_DST="%{_kde_services}/kcm_adobe_flash_player.desktop"
333 anssi 141931 FILE2_PRM="0644"
334     FILE3_SRC=
335 ennael 89107
336 anssi 134274 . %{_datadir}/%{name}/functions
337     tar_extract
338 ennael 89107
339 anssi 152244 sed -i 's,=personal,=network-and-connectivity,' %{_kde_services}/kcm_adobe_flash_player.desktop 2>/dev/null || :
340 ennael 89107
341     %files
342 doktor5000 151537
343 ennael 89107 %dir %{_localstatedir}/lib/%{name}
344     %ghost %{_localstatedir}/lib/%{name}/%{tarname}
345 anssi 134274 %dir %{_datadir}/%{name}
346     %{_datadir}/%{name}/functions
347    
348 ennael 89107 %dir %{_libdir}/mozilla
349     %dir %{_libdir}/mozilla/plugins
350     %ghost %{_libdir}/mozilla/plugins/libflashplayer.so
351 doktor5000 151631 %ghost %{_libdir}/mozilla/plugins/LICENSE.flashplayer
352     %ghost %{_libdir}/mozilla/plugins/README.flashplayer
353 ennael 89107
354 anssi 98265 %ghost %{_bindir}/flash-player-properties
355     %ghost %{_datadir}/applications/flash-player-properties.desktop
356     %ghost %{_iconsdir}/hicolor/*/apps/flash-player-properties.png
357 ennael 89107
358 anssi 134274 %files kde
359     %defattr(-,root,root)
360 anssi 98265 %ghost %{_kde_libdir}/kde4/kcm_adobe_flash_player.so
361     %ghost %{_kde_services}/kcm_adobe_flash_player.desktop

  ViewVC Help
Powered by ViewVC 1.1.30