1# ************************************************************* 2# 3# Licensed to the Apache Software Foundation (ASF) under one 4# or more contributor license agreements. See the NOTICE file 5# distributed with this work for additional information 6# regarding copyright ownership. The ASF licenses this file 7# to you under the Apache License, Version 2.0 (the 8# "License"); you may not use this file except in compliance 9# with the License. You may obtain a copy of the License at 10# 11# http://www.apache.org/licenses/LICENSE-2.0 12# 13# Unless required by applicable law or agreed to in writing, 14# software distributed under the License is distributed on an 15# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16# KIND, either express or implied. See the License for the 17# specific language governing permissions and limitations 18# under the License. 19# 20# ************************************************************* 21# version and release passed by command-line 22Version: %version 23Release: %release 24Summary: %productname desktop integration 25Name: %pkgprefix-mandriva-menus 26Group: Office 27License: ALv2 28AutoReqProv: no 29BuildArch: noarch 30# 31# FIXME: Limited Edition 2005 contains package mandrakelinux-release, 32# which provides 'mandrake-release'. We should leave 'mandrake-release' 33# here and check for the 'mandriva-release' in the future (next year). 34# 35Requires: mandrake-release 36Provides: openoffice-desktop-integration 37 38%define _unpackaged_files_terminate_build 0 39%define _binary_filedigest_algorithm 1 40%define _binary_payload w9.gzdio 41 42%define menuversion %(echo %version|cut -d'.' -f 1-2) 43%{?!update_menus:%define update_menus if [ -x /usr/bin/update-menus ]; then /usr/bin/update-menus || true ; fi} 44%{?!trigger_clean_menus:%define trigger_clean_menus if [ "$2" = "0" -a -x /usr/bin/update-menus ]; then /usr/bin/update-menus || true ; fi} 45 46%description 47%productname desktop integration 48 49# Update menus 50# 51# - core02 for spadmin (printeradmin) 52# 53%triggerin -- %pkgprefix, %pkgprefix-core01 %pkgprefix-calc %pkgprefix-draw %pkgprefix-impress %pkgprefix-writer %pkgprefix-math %pkgprefix-core02 54%{update_menus} 55 56# Update menus 57# 58# - core02 for spadmin (printeradmin) 59# 60%triggerpostun -- %pkgprefix, %pkgprefix-core01 %pkgprefix-calc %pkgprefix-draw %pkgprefix-impress %pkgprefix-writer %pkgprefix-math %pkgprefix-core02 61%{trigger_clean_menus} 62 63%post 64 65# update /etc/mime.types 66# backing out existing entries to avoid duplicates 67sed ' 68/application\/vnd\.oasis\.opendocument/d 69/application\/vnd\.openofficeorg/d 70/application\/vnd\.sun/d 71/application\/vnd\.stardivision/d 72' /etc/mime.types 2>/dev/null >> /etc/mime.types.tmp$$ 73 74# now append our stuff to the temporary file 75cat >> /etc/mime.types.tmp$$ << END 76application/vnd.oasis.opendocument.text odt 77application/vnd.oasis.opendocument.text-template ott 78application/vnd.oasis.opendocument.text-web oth 79application/vnd.oasis.opendocument.text-master odm 80application/vnd.oasis.opendocument.graphics odg 81application/vnd.oasis.opendocument.graphics-template otg 82application/vnd.oasis.opendocument.presentation odp 83application/vnd.oasis.opendocument.presentation-template otp 84application/vnd.oasis.opendocument.spreadsheet ods 85application/vnd.oasis.opendocument.spreadsheet-template ots 86application/vnd.oasis.opendocument.chart odc 87application/vnd.oasis.opendocument.formula odf 88application/vnd.oasis.opendocument.image odi 89application/vnd.sun.xml.writer sxw 90application/vnd.sun.xml.writer.template stw 91application/vnd.sun.xml.writer.global sxg 92application/vnd.stardivision.writer sdw vor 93application/vnd.stardivision.writer-global sgl 94application/vnd.sun.xml.calc sxc 95application/vnd.sun.xml.calc.template stc 96application/vnd.stardivision.calc sdc 97application/vnd.stardivision.chart sds 98application/vnd.sun.xml.impress sxi 99application/vnd.sun.xml.impress.template sti 100application/vnd.stardivision.impress sdd sdp 101application/vnd.sun.xml.draw sxd 102application/vnd.sun.xml.draw.template std 103application/vnd.stardivision.draw sda 104application/vnd.sun.xml.math sxm 105application/vnd.stardivision.math smf 106application/vnd.sun.xml.base odb 107application/vnd.openofficeorg.extension oxt 108application/vnd.openxmlformats-officedocument.wordprocessingml.document docx 109application/vnd.ms-word.document.macroenabled.12 docm 110application/vnd.openxmlformats-officedocument.wordprocessingml.template dotx 111application/vnd.ms-word.template.macroenabled.12 dotm 112application/vnd.openxmlformats-officedocument.spreadsheetml.sheet xlsx 113application/vnd.ms-excel.sheet.macroenabled.12 xlsm 114application/vnd.openxmlformats-officedocument.spreadsheetml.template xltx 115application/vnd.ms-excel.template.macroenabled.12 xltm 116application/vnd.openxmlformats-officedocument.presentationml.presentation pptx 117application/vnd.ms-powerpoint.presentation.macroenabled.12 pptm 118application/vnd.openxmlformats-officedocument.presentationml.template potx 119application/vnd.ms-powerpoint.template.macroenabled.12 potm 120END 121 122# and replace the original file 123mv -f /etc/mime.types.tmp$$ /etc/mime.types 2>/dev/null 124 125# update /etc/mailcap only at initial install 126if [ "$1" = 1 ] 127then 128 # backing out existing entries to avoid duplicates 129 sed ' 130/^# OpenOffice.org/d 131/^application\/vnd\.oasis\.opendocument/d 132/^application\/vnd\.openofficeorg/d 133/^application\/vnd\.sun/d 134/^application\/vnd\.stardivision/d 135/^application\/vnd\.ms-word/d 136/^application\/vnd\.ms-excel/d 137/^application\/vnd\.ms-powerpoint/d 138/^application\/x-star/d 139/excel/d 140/ms[-]*word/d 141/powerpoint/d 142' /etc/mailcap 2>/dev/null >> /etc/mailcap.tmp$$ 143 144 # now append our stuff to the temporary file 145 cat >> /etc/mailcap.tmp$$ << END 146# Apache OpenOffice 147application/vnd.oasis.opendocument.text; %unixfilename -view %s 148application/vnd.oasis.opendocument.text-template; %unixfilename -view %s 149application/vnd.oasis.opendocument.text-web; %unixfilename -view %s 150application/vnd.oasis.opendocument.text-master; %unixfilename -view %s 151application/vnd.sun.xml.writer; %unixfilename -view %s 152application/vnd.sun.xml.writer.template; %unixfilename -view %s 153application/vnd.sun.xml.writer.global; %unixfilename -view %s 154application/vnd.stardivision.writer; %unixfilename -view %s 155application/vnd.stardivision.writer-global; %unixfilename -view %s 156application/x-starwriter; %unixfilename -view %s 157application/vnd.oasis.opendocument.formula; %unixfilename -view %s 158application/vnd.sun.xml.math; %unixfilename -view %s 159application/vnd.stardivision.math; %unixfilename -view %s 160application/x-starmath; %unixfilename -view %s 161application/msword; %unixfilename -view %s 162application/vnd.oasis.opendocument.spreadsheet; %unixfilename -view %s 163application/vnd.oasis.opendocument.spreadsheet-template; %unixfilename -view %s 164application/vnd.sun.xml.calc; %unixfilename -view %s 165application/vnd.sun.xml.calc.template; %unixfilename -view %s 166application/vnd.stardivision.calc; %unixfilename -view %s 167application/x-starcalc; %unixfilename -view %s 168application/vnd.stardivision.chart; %unixfilename -view %s 169application/x-starchart; %unixfilename -view %s 170application/excel; %unixfilename -view %s 171application/msexcel; %unixfilename -view %s 172application/vnd.ms-excel; %unixfilename -view %s 173application/x-msexcel; %unixfilename -view %s 174application/vnd.oasis.opendocument.presentation; %unixfilename -view %s 175application/vnd.oasis.opendocument.presentation-template; %unixfilename -view %s 176application/vnd.sun.xml.impress; %unixfilename -view %s 177application/vnd.sun.xml.impress.template; %unixfilename -view %s 178application/vnd.stardivision.impress; %unixfilename -view %s 179application/x-starimpress; %unixfilename -view %s 180application/powerpoint; %unixfilename -view %s 181application/mspowerpoint; %unixfilename -view %s 182application/vnd.ms-powerpoint; %unixfilename -view %s 183application/x-mspowerpoint; %unixfilename -view %s 184application/vnd.oasis.opendocument.graphics; %unixfilename -view %s 185application/vnd.oasis.opendocument.graphics-template; %unixfilename -view %s 186application/vnd.sun.xml.draw; %unixfilename -view %s 187application/vnd.sun.xml.draw.template; %unixfilename -view %s 188application/vnd.stardivision.draw; %unixfilename -view %s 189application/x-stardraw; %unixfilename -view %s 190application/vnd.oasis.opendocument.database; %unixfilename -view %s 191application/vnd.sun.xml.base; %unixfilename -view %s 192application/vnd.openofficeorg.extension; %unixfilename %s 193application/vnd.openxmlformats-officedocument.wordprocessingml.document; %unixfilename -view %s 194application/vnd.ms-word.document.macroenabled.12;%unixfilename -view %s 195application/vnd.openxmlformats-officedocument.wordprocessingml.template; %unixfilename -view %s 196application/vnd.ms-word.template.macroenabled.12; %unixfilename -view %s 197application/vnd.openxmlformats-officedocument.spreadsheetml.sheet; %unixfilename -view %s 198application/vnd.ms-excel.sheet.macroenabled.12; %unixfilename -view %s 199application/vnd.openxmlformats-officedocument.spreadsheetml.template; %unixfilename -view %s 200application/vnd.ms-excel.template.macroenabled.12; %unixfilename -view %s 201application/vnd.openxmlformats-officedocument.presentationml.presentation; %unixfilename -view %s 202application/vnd.ms-powerpoint.presentation.macroenabled.12; %unixfilename -view %s 203application/vnd.openxmlformats-officedocument.presentationml.template; %unixfilename -view %s 204application/vnd.ms-powerpoint.template.macroenabled.12; %unixfilename -view %s 205END 206 207 # and replace the original file 208 mv -f /etc/mailcap.tmp$$ /etc/mailcap 209fi 210 211%{update_menus} 212 213 214%install 215rm -rf $RPM_BUILD_ROOT/* 216 217# hack/workaround to make SuSE's brp-symlink-script happy. It wants the targets of all links 218# to be present on the build-system/the buildroot. But the point is that we generate stale 219# links intentionally (until we find a better solution) #46226 220export NO_BRP_STALE_LINK_ERROR=yes 221 222mkdir -p $RPM_BUILD_ROOT 223 224export DESTDIR=$RPM_BUILD_ROOT 225export KDEMAINDIR=/usr 226export GNOMEDIR=/usr 227 228./create_tree.sh 229 230# 231# Mandriva menus fun 232# 233# For more info, see: 234# 235# http://qa.mandriva.com/twiki/bin/view/Main/MenuSystem 236# 237%define _menudir /usr/lib/menu 238mkdir -p $RPM_BUILD_ROOT%{_menudir} 239rm -f "$RPM_BUILD_ROOT%{_menudir}/%{name}" 240 241GenerateMenu() { 242[ -f "$RPM_BUILD_ROOT%{_menudir}/%{name}" ] || touch $RPM_BUILD_ROOT%{_menudir}/%{name} 243mimetypes_item= 244[ "$7" != "" ] && mimetypes_item="mimetypes=\"$7\"" 245cat >> $RPM_BUILD_ROOT%{_menudir}/%{name} << EOF 246?package(%pkgprefix-$6): needs=x11 section="$2" icon="%iconprefix-$3.png" title="$4" longtitle="$5" command="$1" \ 247$mimetypes_item kde_opt="InitialPreference=100" startup_notify="true" 248EOF 249} 250 251# 252# FIXME: Office/Database request in the Cooker ML, leave in Spreadsheets 253# until new group will be created 254# 255GenerateMenu "%unixfilename -base" \ 256 "More Applications/Databases" \ 257 "base" \ 258 "%productname %{menuversion} Base" \ 259 "%productname %{menuversion} Database" \ 260 "core01" \ 261 "application/vnd.oasis.opendocument.database,application/vnd.sun.xml.base" 262 263GenerateMenu "%unixfilename -calc" \ 264 "Office/Spreadsheets" \ 265 "calc" \ 266 "%productname %{menuversion} Calc" \ 267 "%productname %{menuversion} Spreadsheet" \ 268 "calc" \ 269 "application/vnd.oasis.opendocument.spreadsheet,application/vnd.oasis.opendocument.spreadsheet-template,application/vnd.sun.xml.calc,application/vnd.sun.xml.calc.template,application/vnd.stardivision.calc,application/vnd.stardivision.chart,application/msexcel,application/vnd.ms-excel" 270 271GenerateMenu "%unixfilename -draw" \ 272 "Office/Drawing" \ 273 "draw" \ 274 "%productname %{menuversion} Draw" \ 275 "%productname %{menuversion} Drawing" \ 276 "draw" \ 277 "application/vnd.oasis.opendocument.graphics,application/vnd.oasis.opendocument.graphics-template,application/vnd.sun.xml.draw,application/vnd.sun.xml.draw.template,application/vnd.stardivision.draw" 278 279GenerateMenu "%unixfilename -impress" \ 280 "Office/Presentations" \ 281 "impress" \ 282 "%productname %{menuversion} Impress" \ 283 "%productname %{menuversion} Presentation" \ 284 "impress" \ 285 "application/vnd.oasis.opendocument.presentation,application/vnd.oasis.opendocument.presentation-template,application/vnd.sun.xml.impress,application/vnd.sun.xml.impress.template,application/vnd.stardivision.impress,application/mspowerpoint" 286 287GenerateMenu "%unixfilename -writer" \ 288 "Office/Wordprocessors" \ 289 "writer" \ 290 "%productname %{menuversion} Writer" \ 291 "%productname %{menuversion} Word Processing Component" \ 292 "writer" \ 293 "application/vnd.oasis.opendocument.text,application/vnd.oasis.opendocument.text-template,application/vnd.oasis.opendocument.text-web,application/vnd.oasis.opendocument.text-master,application/vnd.sun.xml.writer,application/vnd.sun.xml.writer.template,application/vnd.sun.xml.writer.global,application/vnd.stardivision.writer,application/msword,application/vnd.ms-word,application/x-doc,application/rtf" 294 295GenerateMenu "%unixfilename -math" \ 296 "Office/Wordprocessors" \ 297 "math" \ 298 "%productname %{menuversion} Math" \ 299 "%productname %{menuversion} Formula Editor" \ 300 "math" \ 301 "application/vnd.oasis.opendocument.formula,application/vnd.sun.xml.math,application/vnd.stardivision.math" 302 303# 304# FIXME: Is there a better group than System/Configuration/Printing? I think no ... 305# 306GenerateMenu "%unixfilename-printeradmin" \ 307 "System/Configuration/Printing" \ 308 "printeradmin" \ 309 "%productname %{menuversion} Printeradmin" \ 310 "%productname %{menuversion} Printer Administration" \ 311 "core02" 312 313%clean 314rm -rf $RPM_BUILD_ROOT 315 316%preun 317# remove from /etc/mailcap only on de-install 318if [ "$1" = 0 ] 319then 320 # backing all entries pointing to our binary 321 sed '/%unixfilename/d' /etc/mailcap 2>/dev/null >> /etc/mailcap.tmp$$ 322 323 # and replace the original file 324 mv -f /etc/mailcap.tmp$$ /etc/mailcap 325fi 326 327%postun 328%{update_menus} 329 330 331%files 332%attr(0755,root,root) /usr/bin/soffice 333%attr(0755,root,root) %verify(not size md5) /usr/bin/%unixfilename 334%attr(0755,root,root) /usr/bin/%unixfilename-printeradmin 335%defattr(0644, root, root) 336%{_menudir}/%{name} 337/usr/share/application-registry/*.applications 338/usr/share/applications/%unixfilename-writer.desktop 339/usr/share/applications/%unixfilename-calc.desktop 340/usr/share/applications/%unixfilename-draw.desktop 341/usr/share/applications/%unixfilename-impress.desktop 342/usr/share/applications/%unixfilename-math.desktop 343/usr/share/applications/%unixfilename-base.desktop 344/usr/share/applications/%unixfilename-printeradmin.desktop 345/usr/share/applications/%unixfilename-startcenter.desktop 346/usr/share/mime-info/*.keys 347/usr/share/mime-info/*.mime 348/usr/share/mimelnk/application/*.desktop 349/usr/share/icons/gnome/*/apps/*png 350/usr/share/icons/gnome/*/mimetypes/*png 351/usr/share/icons/hicolor/*/apps/*png 352/usr/share/icons/hicolor/*/mimetypes/*png 353/usr/share/icons/locolor/*/apps/*png 354/usr/share/icons/locolor/*/mimetypes/*png 355 356