# Google API keys (see http://www.chromium.org/developers/how-tos/api-keys) # Note: These are for Chakra Linux use ONLY. For your own distribution, please # get your own set of keys. _google_default_client_id=3502044743.apps.googleusercontent.com _google_default_client_secret=TPvjII_2SwZn_9Ic0kRKqjtG pkgbase="libreoffice" pkgname=('libreoffice-common' 'libreoffice-base' 'libreoffice-calc' 'libreoffice-draw' 'libreoffice-impress' 'libreoffice-gtk3' 'libreoffice-kde5' 'libreoffice-math' 'libreoffice-sdk' 'libreoffice-sdk-doc' 'libreoffice-writer' 'libreoffice-en-US' 'libreoffice-postgresql-connector' 'libreoffice-extension-wiki-publisher' 'libreoffice-extension-nlpsolver') _LOver=6.1.4.2 pkgver=6.1.4 pkgrel=1 arch=('x86_64') license=('LGPL3') url="http://www.libreoffice.org/" screenshot="http://wstaw.org/m/2012/04/20/libre2.png" makedepends=( # makedepends 'sane' 'perl-archive-zip' 'zip' 'unzip' 'unixodbc' 'gtk3' 'gtk2' 'gobject-introspection' 'apache-ant' 'gperf' 'cppunit>=1.14.0' 'glu' 'libodfgen' 'beanshell' 'kcoreaddons' 'ki18n' 'kwindowsystem' 'kconfig' 'kio' 'libldap' 'libmythes' 'junit' 'libwpg' 'imagemagick' 'mdds' 'poppler>=0.12.0' 'mesa' 'gst-plugins-base' 'java-runtime' 'postgresql-libs' 'clucene' 'doxygen' 'libvisio' 'bluez-libs' 'junit' 'hsqldb-java' 'libzmf' # libreoffice main pkg "curl>=7.20.0" "hunspell>=1.2.8" 'python3' 'libwpd>=0.9.2' 'libwps' 'libxaw' "neon>=0.28.6" 'pango' 'nss' 'libjpeg' 'libxrandr' 'libgl' 'dbus-glib' "icu>=4.6" 'libxslt' 'redland' 'graphite' 'hyphen' 'lpsolve' 'gcc-libs' 'sh' 'librsvg' 'lcms2' 'hicolor-icon-theme' 'desktop-file-utils' 'shared-mime-info' 'translate-toolkit' 'xdg-utils' 'ttf-dejavu' 'libcups' 'libmwaw' 'ttf-liberation' 'glew' 'libetonyek' 'harfbuzz-icu' 'gdb' 'libzmf' 'serf' 'libtommath' 'gpgme' 'boost' ) _mirror="https://download.documentfoundation.org/libreoffice/src/$pkgver" #_mirror="http://dev-builds.libreoffice.org/pre-releases/src" _additional_source_url="https://dev-www.libreoffice.org/src" _additional_source_url2="https://dev-www.libreoffice.org/extern" _gentoo_patch_url="https://dev.gentoo.org/~asturm/distfiles" source=(${_mirror}/libreoffice{,-help,-translations}-${_LOver}.tar.xz{,.asc} # Environment variables ${_additional_source_url}/xmlsec1-1.2.25.tar.gz ${_additional_source_url}/35c94d2df8893241173de1d16b6034c0-swingExSrc.zip ${_additional_source_url}/798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip ${_additional_source_url}/a7983f859eafb2677d7ff386a023bc40-xsltml_2.1.2.zip ${_additional_source_url}/8ab049135b2d15313da5d9f0656894a1-commons-lang3-3.3.1-src.tar.gz ${_additional_source_url}/2c9b0f83ed5890af02c0df1c1776f39b-commons-httpclient-3.1-src.tar.gz ${_additional_source_url}/048751f3271906db5126ab76870444c4-commons-codec-1.9-src.zip ${_additional_source_url}/eeb2c7ddf0d302fba4bfc6e97eac9624-libbase-1.1.6.zip ${_additional_source_url}/39bb3fcea1514f1369fcfc87542390fd-sacjava-1.3.zip ${_additional_source_url}/3404ab6b1792ae5f16bbd603bd1e1d03-libformula-1.1.7.zip ${_additional_source_url}/97b2d4dba862397f446b217e2b623e71-libloader-1.1.6.zip ${_additional_source_url}/f94d9870737518e3b597f9265f4e9803-libserializer-1.1.6.zip ${_additional_source_url}/8ce2fcd72becf06c41f7201d15373ed9-librepository-1.1.6.zip ${_additional_source_url}/d8bd5eed178db6e2b18eeed243f85aa8-flute-1.1.6.zip ${_additional_source_url}/3bdf40c0d199af31923e900d082ca2dd-libfonts-1.1.6.zip ${_additional_source_url}/ace6ab49184e329db254e454a010f56d-libxml-1.1.7.zip ${_additional_source_url}/db60e4fde8dd6d6807523deb71ee34dc-liblayout-0.2.10.zip ${_additional_source_url}/ba2930200c9f019c2d93a8c88c651a0f-flow-engine-0.9.4.zip ${_additional_source_url}/libexttextcat-3.4.5.tar.xz ${_additional_source_url}/libcmis-0.5.1.tar.gz ${_additional_source_url}/liborcus-0.13.4.tar.gz ${_additional_source_url}/liblangtag-0.6.2.tar.bz2 ${_additional_source_url}/0168229624cfac409e766913506961a8-ucpp-1.3.2.tar.gz ${_additional_source_url}/17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip ${_additional_source_url2}/8249374c274932a21846fa7629c2aa9b-officeotron-0.7.4-master.jar ${_additional_source_url2}/odfvalidator-1.2.0-incubating-SNAPSHOT-jar-with-dependencies+ODFTOOLKIT-460+ODFTOOLKIT-461.jar ${_additional_source_url2}/185d60944ea767075d27247c3162b3bc-unowinreg.dll ${_additional_source_url}/bae83fa5dc7f081768daace6e199adc3-glm-0.9.4.6-libreoffice.zip ${_additional_source_url}/commons-logging-1.2-src.tar.gz ${_additional_source_url}/libcdr-0.1.4.tar.xz ${_additional_source_url}/libmspub-0.1.4.tar.xz ${_additional_source_url}/libatomic_ops-7_2d.zip ${_additional_source_url}/libfreehand-0.1.2.tar.xz ${_additional_source_url}/Firebird-3.0.0.32483-0.tar.bz2 ${_additional_source_url}/libe-book-0.1.3.tar.xz ${_additional_source_url}/libabw-0.1.2.tar.xz ${_additional_source_url}/libpagemaker-0.0.4.tar.xz ${_additional_source_url}/language-subtag-registry-2018-04-23.tar.bz2 ${_additional_source_url}/CoinMP-1.7.6.tgz ${_additional_source_url}/libstaroffice-0.0.6.tar.xz ${_additional_source_url}/4b87018f7fff1d054939d19920b751a0-collada2gltf-master-cb1d97788a.tar.bz2 ${_additional_source_url}/OpenCOLLADA-master-6509aa13af.tar.bz2 ${_additional_source_url}/libgltf/libgltf-0.1.0.tar.gz ${_additional_source_url}/pdfium-3426.tar.bz2 ${_additional_source_url}/libepubgen-0.1.1.tar.xz ${_additional_source_url}/libnumbertext-1.0.4.tar.xz ${_additional_source_url}/libqxp-0.0.1.tar.xz ${_additional_source_url}/lxml-4.1.1.tgz make-pyuno-work-with-system-wide-module-install.diff) validpgpkeys=('C2839ECAD9408FBE9531C3E9F434A1EFAFEEAEA3') # LibreOffice Build Team (CODE SIGNING KEY) sha1sums=('1bc6176b461fb59961057053f3c5df86edd0bd1d' 'SKIP' '038dae96766650c87867e6d3de30ce74fb5984d5' 'SKIP' 'f228cfc59a54e5257152c8bc7131814c7a313fd8' 'SKIP' '0ef1117b8d11da475fd8d842a1341c675e627ab9' '1acea86fd399ed7817879d36370d3d1f8b109050' '8a90669029e107b61953b90ba11545fef586c2ca' '2d49e11b0b711970f494294dc3698f05eb294853' 'c78ddd06845e267ba5bec20a38430f66eec3e0e4' '5c604f102e0716597b3d2659ac3e77f80a02f22d' '885cc4b6c9472d95e2515e777f6018a90657e974' '43a7ff11dd15370d456b20a093e1ee81279163a0' 'b92930010622906778f713fb8f0153fa0683d018' '3232dd31859be4f7eb443c33e8e3287f394789a0' '47b58e0ef2d856df26372a7061ae43fae6e08051' '5ecb895ffc1eff2c381fa78d2197d0c57422b3df' 'a637c0c3ad3be32d6814972e1c45e547c5f6359d' '3478ebc27bb76025f4b5c2ae6a9bac6090e2cb09' 'e393beea80d36ff27b732882c706826988a64f5c' 'b19ad429273abb116432eae3af955ecaf1ab5b17' '65dfba9970bb862d09c1f9e636b86b22f05d3936' '1acd76cd63f7b19f6a0252eb029c3cb13a25aa9b' 'dd6b4163c752a44384f309f8dabb830161f5f85f' '94c00715ae8a31bc8e5a6a699e36c22d0020649e' '9598262549571491ebfdf9d2c20bfe5fd37d8d25' '8f2c0d7f0c2ae9510a58f570aa4bc894c31e22c1' '452eba922e4f41603539c9dc39947d2271e47093' '7168b0f40aa5c72267899601c116d2348d2f56ec' 'f4772556920231cf164348e51285b0c18dfc7f5b' '68fc1959b1387448fc6d71134ee3e45f4dbc996a' '0619ed3a89644bef318df67db12045b2b590585b' '73ad0ffc515f44a5ae1f1501ebb858153b523937' '0a134d01e9aeb09b33f4c7450fb41abb7bed9db6' '59148610e572d1a79c4f3494a01d020944f0e1c1' 'dcfe4dba518b44cc500385e878b66f53c5734df6' '58a4a5d602bc5f2bfebe4c7b054d565ae11b758c' 'f945b23b7801a3601998973028a054ee379967cb' 'e4a5d0ae688a754a9159be581c28b63a98777115' '18fde9588c236d51eea9437ed882d8b751daf01f' '6d6327d7c7a26c173993604e68915e226fb5185c' '4e8e9a6711c6dcbb937a295135f955dee6efc52f' '9414d32c4898e2c424dce590bab6e925df151a17' 'f52c74abcbf55c72cd89f709db658ea33ed45154' 'd4f0ab61702fe24f3d89ec625616583e77a33697' '1169780b4a0c515b23b96c913fd9bc52ceb7fb39' 'c4f5760a1d21213dc52e2cf3ad9c0b9112585f36' '719ab0d7b711650c787fe9bfb51109321d21e07b' '1f3070598936acf30f6bdce51a1cce7874e482fc' '48e81c60e173552fce77ce3b414e68b7d52a5301' '1fb3b31e1e0dd79cd602e0d24c34f8c30ebe127f' 'a5963474afcc8e7b0eb352754325c21e1a1f5e18' '154279bc5939d7099697887ea15c5ca921abeaeb' 'fed07f208b58c42bb85b0721fb2fae193da6f780') noextract=(xmlsec1-1.2.25.tar.gz 35c94d2df8893241173de1d16b6034c0-swingExSrc.zip 798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip a7983f859eafb2677d7ff386a023bc40-xsltml_2.1.2.zip 8ab049135b2d15313da5d9f0656894a1-commons-lang3-3.3.1-src.tar.gz 2c9b0f83ed5890af02c0df1c1776f39b-commons-httpclient-3.1-src.tar.gz 048751f3271906db5126ab76870444c4-commons-codec-1.9-src.zip eeb2c7ddf0d302fba4bfc6e97eac9624-libbase-1.1.6.zip 39bb3fcea1514f1369fcfc87542390fd-sacjava-1.3.zip 3404ab6b1792ae5f16bbd603bd1e1d03-libformula-1.1.7.zip 97b2d4dba862397f446b217e2b623e71-libloader-1.1.6.zip f94d9870737518e3b597f9265f4e9803-libserializer-1.1.6.zip 8ce2fcd72becf06c41f7201d15373ed9-librepository-1.1.6.zip d8bd5eed178db6e2b18eeed243f85aa8-flute-1.1.6.zip 3bdf40c0d199af31923e900d082ca2dd-libfonts-1.1.6.zip ace6ab49184e329db254e454a010f56d-libxml-1.1.7.zip db60e4fde8dd6d6807523deb71ee34dc-liblayout-0.2.10.zip ba2930200c9f019c2d93a8c88c651a0f-flow-engine-0.9.4.zip libexttextcat-3.4.5.tar.xz libcmis-0.5.1.tar.gz liborcus-0.13.4.tar.gz liblangtag-0.6.2.tar.bz2 0168229624cfac409e766913506961a8-ucpp-1.3.2.tar.gz 17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip 8249374c274932a21846fa7629c2aa9b-officeotron-0.7.4-master.jar odfvalidator-1.2.0-incubating-SNAPSHOT-jar-with-dependencies+ODFTOOLKIT-460+ODFTOOLKIT-461.jar 185d60944ea767075d27247c3162b3bc-unowinreg.dll bae83fa5dc7f081768daace6e199adc3-glm-0.9.4.6-libreoffice.zip commons-logging-1.2-src.tar.gz libcdr-0.1.4.tar.xz libmspub-0.1.4.tar.xz libatomic_ops-7_2d.zip libfreehand-0.1.2.tar.xz Firebird-3.0.0.32483-0.tar.bz2 libe-book-0.1.3.tar.xz libabw-0.1.2.tar.xz libpagemaker-0.0.4.tar.xz CoinMP-1.7.6.tgz language-subtag-registry-2018-04-23.tar.bz2 4b87018f7fff1d054939d19920b751a0-collada2gltf-master-cb1d97788a.tar.bz2 OpenCOLLADA-master-6509aa13af.tar.bz2 libgltf-0.1.0.tar.gz libstaroffice-0.0.6.tar.xz libnumbertext-1.0.4.tar.xz lxml-4.1.1.tgz pdfium-3426.tar.bz2 libepubgen-0.1.1.tar.xz libqxp-0.0.1.tar.xz) prepare() { cd libreoffice-$_LOver # fix exttextcat build error # /usr/include/features.h:330:4: error: #warning _FORTIFY_SOURCE requires compiling with optimization (-O) [-Werror=cpp] unset CPPFLAGS # move external sources into place mkdir -p ${srcdir}/ext_sources && pushd ${srcdir}/ext_sources for source in "${noextract[@]}"; do ln -sf ${srcdir}/$source . done popd # don't run broken tests sed -i "/CppunitTest_sd_export_ooxml2/d" sd/Module_sd.mk sed -i "/CppunitTest_sw_ww8export2/d" sw/Module_sw.mk sed -i "/CppunitTest_emfio_emf_test/d" emfio/Module_emfio.mk # unowinreg.dll must be a file not a symlink or the result will become a broken symlink # /usr/share/libreoffice/sdk/classes/win/unowinreg.dll -> /build/libreoffice/src/185d60944ea767075d27247c3162b3bc-unowinreg.dll rm ${srcdir}/ext_sources/185d60944ea767075d27247c3162b3bc-unowinreg.dll cp -f ${srcdir}/185d60944ea767075d27247c3162b3bc-unowinreg.dll ${srcdir}/ext_sources # fix not upstreamable pyuno paths - FS#54250 patch -Np1 -i ${srcdir}/make-pyuno-work-with-system-wide-module-install.diff #use the CFLAGS but remove the LibO overridden ones for i in $CFLAGS; do case "$i" in -O?|-pipe|-Wall|-g|-fexceptions) continue;; esac ARCH_FLAGS="$ARCH_FLAGS $i" done } build() { cd libreoffice-$_LOver export PYHTON=/usr/bin/python3 ./autogen.sh --with-build-version="${pkgver} Chakra GNU/Linux-${pkgrel}" --with-vendor="Chakra GNU/Linux" \ --enable-split-app-modules \ --with-parallelism=${MAKEFLAGS/-j/} \ --with-external-tar="${srcdir}/ext_sources" \ --disable-fetch-external \ --enable-release-build \ --prefix=/usr --exec-prefix=/usr --sysconfdir=/etc \ --libdir=/usr/lib --mandir=/usr/share/man \ --with-lang="" \ --enable-avahi \ --enable-dbus \ --disable-evolution2 \ --with-system-graphite\ --enable-gio\ --disable-epm \ --disable-gtk \ --enable-gtk3 \ --disable-dconf \ --disable-mergelibs \ --enable-introspection \ --enable-qt5 \ --enable-gtk3-kde5 \ --disable-gstreamer-0-10 \ --enable-openssl \ --enable-odk \ --enable-python=system \ --enable-scripting-beanshell \ --enable-scripting-javascript \ --enable-ext-wiki-publisher \ --enable-ext-nlpsolver \ --without-fonts \ --without-system-glm \ --without-system-libcdr \ --without-system-jfreereport \ --without-system-apache-commons \ --with-system-mdds \ --without-myspell-dicts \ --with-system-libvisio \ --without-system-libcmis \ --without-system-libmspub \ --without-system-libexttextcat \ --without-system-orcus \ --without-system-liblangtag \ --with-system-libetonyek \ --without-system-libfreehand \ --without-system-firebird \ --without-system-libatomic-ops \ --without-system-libebook \ --without-system-libabw \ --without-system-libnumbertext \ --with-system-dicts \ --with-external-dict-dir=/usr/share/hunspell \ --with-external-hyph-dir=/usr/share/hyphen \ --with-external-thes-dir=/usr/share/mythes \ --with-system-beanshell \ --with-system-cppunit \ --with-system-libwpg \ --with-system-libwps \ --with-system-libodfgen \ --with-system-redland \ --with-ant-home="/usr/share/java/apache-ant"\ --with-system-boost \ --with-system-icu \ --with-system-cairo \ --with-system-libs \ --with-system-mythes \ --with-system-headers \ --with-system-libzmf \ --without-system-libstaroffice \ --without-system-hsqldb \ --without-system-libpagemaker \ --without-system-coinmp \ --with-alloc=system \ --with-system-clucene \ --without-system-xmlsec \ --without-system-libepubgen \ --without-system-libqxp \ --with-gdrive-client-id=${_google_default_client_id} \ --with-gdrive-client-secret=${_google_default_client_secret} \ --disable-dependency-tracking touch src.downloaded #./download make build-nocheck # fake installation to create split file lists mkdir $srcdir/fakeinstall make DESTDIR=${srcdir}/fakeinstall distro-pack-install } package_libreoffice-common() { pkgdesc="common files for LibreOffice - a productivity suite that is compatible with other major office suites" install=${pkgbase}.install depends=("hunspell" "python3" "neon" 'poppler' 'nspr' "icu" 'libsm' 'redland' 'hyphen' 'graphite' 'lcms2' 'hicolor-icon-theme' 'desktop-file-utils' 'shared-mime-info' 'xdg-utils' 'clucene' 'libodfgen' 'libmwaw' 'lpsolve' 'libmythes' 'libvisio' 'libzmf' 'glew' 'harfbuzz-icu' 'libreoffice-langpack') optdepends=('libreoffice-langpack: additional languages support' 'java-runtime: adds java support' 'libcups: adds printing support' 'nss: adds support for signed files/macros' 'pstoedit: translates PostScript and PDF graphics into other vector formats' 'libmythes: for use in thesaurus' 'beanshell: interactive java -- good for prototyping /macros' # 'vigra: C++ computer vision library, usable in Basebmp' 'libmspack: library for Microsoft compression formats for use in FontOOo' 'libwpg: library for importing and converting Corel WordPerfect(tm) Graphics images' 'sane: for scanner access' 'unixodbc: adds ODBC database support' 'gst-plugins-base: + some gstr-plugins to support multimedia content, e.g. in impress' 'libetonyek: Apple Keynote document importer' 'libreoffice-desktop-integration: for KDE4/Plasma/GTK3 integration') backup=(etc/libreoffice/sofficerc etc/libreoffice/bootstraprc etc/libreoffice/psprint.conf etc/profile.d/libreoffice.sh) groups=('libreoffice') provides=('libreoffice-extension-pdfimport' 'libreoffice-extension-presenter-screen' 'libreoffice-scripting-beanshell' 'libreoffice-scripting-javascript' 'libreoffice-extensions-report-builder' 'libreoffice-extension-scripting-python' 'libreoffice-extension-presentation-minimizer') # create directories from *list.txt file for directory in `grep ^%dir ${srcdir}/libreoffice-$_LOver/file-lists/common_list.txt`; do install -dm755 ${pkgdir}/${directory/\%dir/} done # install files into the pkg from fakeinstall dir for file in `grep -v ^%dir $srcdir/libreoffice-$_LOver/file-lists/common_list.txt`; do dirname=`dirname $file` # check if directory has been already been created - some are missing like manpages [ -d ${pkgdir}/$dirname ] || install -dm755 ${pkgdir}/$dirname # mv file from fakeinstall to pkgdir mv ${srcdir}/fakeinstall${file} ${pkgdir}$file done # put configuration files into place install -dm755 ${pkgdir}/etc/libreoffice install -m644 ${pkgdir}/usr/lib/libreoffice/program/{bootstraprc,sofficerc} ${pkgdir}/etc/libreoffice/ install -m644 ${pkgdir}/usr/lib/libreoffice/share/psprint/psprint.conf ${pkgdir}/etc/libreoffice/ # install dummy links to make them found by LibO cd ${pkgdir}/usr/lib/libreoffice/program/ ln -vsf /etc/libreoffice/{bootstraprc,sofficerc} . cd ${pkgdir}/usr/lib/libreoffice/share/psprint/ ln -vsf /etc/libreoffice/psprint.conf . # remove conflicting files rm -f ${pkgdir}/usr/lib/libreoffice/program/classes/ScriptProviderForJavaScript.jar rm -f ${pkgdir}/usr/lib/libreoffice/program/classes/js.jar rm -f ${pkgdir}/usr/lib/libreoffice/program/services/scriptproviderforjavascript.rdb # workaround all packages now depend on that file cp ${srcdir}/fakeinstall/usr/lib/libreoffice/share/registry/writer.xcd ${pkgdir}/usr/lib/libreoffice/share/registry/writer.xcd # add missing files from Beanshell provider # create directories from *list.txt file for directory in `grep ^%dir ${srcdir}/libreoffice-$_LOver/file-lists/orig/gid_Module_Optional_Extensions_Script_Provider_For_BS`; do install -dm755 ${pkgdir}/${directory/\%dir/} done # install files into the pkg from fakeinstall dir for file in `grep -v ^%dir $srcdir/libreoffice-$_LOver/file-lists/orig/gid_Module_Optional_Extensions_Script_Provider_For_BS`; do dirname=`dirname $file` # check if directory has been already been created - some are missing like manpages [ -d ${pkgdir}/$dirname ] || install -dm755 ${pkgdir}/$dirname # mv file from fakeinstall to pkgdir mv ${srcdir}/fakeinstall${file} ${pkgdir}$file || /bin/true # some double file entries make it fail done # move dicts to en-US langpack to avoid file conflicts with en-GBen-ZA packages rm ${pkgdir}/usr/lib/libreoffice/share/wordbook/en-GB.dic mv ${pkgdir}/usr/lib/libreoffice/share/wordbook/en-US.dic ${srcdir}/ } package_libreoffice-base() { pkgdesc="GUI Spreadsheet Applicationdatabase front-end for LibreOffice. Allows creation and management of databases through a GUI." depends=('libreoffice-common') optdepends=('libreoffice-postgresql-connector' 'libreoffice-desktop-integration: for KDE4/Plasma/GTK3 integration') backup=() groups=('libreoffice') replaces=('libreoffice') # create directories from *list.txt file for directory in `grep ^%dir ${srcdir}/libreoffice-$_LOver/file-lists/base_list.txt`; do install -dm755 ${pkgdir}/${directory/\%dir/} done # install files into the pkg from fakeinstall dir for file in `grep -v ^%dir $srcdir/libreoffice-$_LOver/file-lists/base_list.txt`; do dirname=`dirname $file` # check if directory has been already been created - some are missing like manpages [ -d ${pkgdir}/$dirname ] || install -dm755 ${pkgdir}/$dirname # mv file from fakeinstall to pkgdir mv ${srcdir}/fakeinstall${file} ${pkgdir}$file done } package_libreoffice-postgresql-connector() { pkgdesc="A PostgreSQL connector for the database front-end for LibreOffice" depends=('libreoffice-base' 'postgresql-libs') groups=('libreoffice') replaces=('libreoffice') # workaround double entries in the file list mv ${srcdir}/libreoffice-$_LOver/file-lists/postgresql_list.txt ${srcdir}/libreoffice-$_LOver/file-lists/postgresql_list.txt.orig sort ${srcdir}/libreoffice-$_LOver/file-lists/postgresql_list.txt.orig | uniq 1>& ${srcdir}/libreoffice-$_LOver/file-lists/postgresql_list.txt # create directories from *list.txt file for directory in `grep ^%dir ${srcdir}/libreoffice-$_LOver/file-lists/postgresql_list.txt`; do install -dm755 ${pkgdir}/${directory/\%dir/} done # install files into the pkg from fakeinstall dir for file in `grep -v ^%dir $srcdir/libreoffice-$_LOver/file-lists/postgresql_list.txt`; do dirname=`dirname $file` # check if directory has been already been created - some are missing like manpages [ -d ${pkgdir}/$dirname ] || install -dm755 ${pkgdir}/$dirname # mv file from fakeinstall to pkgdir mv ${srcdir}/fakeinstall${file} ${pkgdir}$file done } package_libreoffice-calc() { pkgdesc="Spreadsheet application for LibreOffice." depends=('libreoffice-common' 'lpsolve' 'libwps' ) optdepends=('libreoffice-desktop-integration: for KDE4/Plasma/GTK3 integration') backup=() groups=('libreoffice') replaces=('libreoffice') # create directories from *list.txt file for directory in `grep ^%dir ${srcdir}/libreoffice-$_LOver/file-lists/calc_list.txt`; do install -dm755 ${pkgdir}/${directory/\%dir/} done # install files into the pkg from fakeinstall dir for file in `grep -v ^%dir $srcdir/libreoffice-$_LOver/file-lists/calc_list.txt`; do dirname=`dirname $file` # check if directory has been already been created - some are missing like manpages [ -d ${pkgdir}/$dirname ] || install -dm755 ${pkgdir}/$dirname # mv file from fakeinstall to pkgdir mv ${srcdir}/fakeinstall${file} ${pkgdir}$file done } package_libreoffice-draw() { pkgdesc="Drawing Application for LibreOffice." depends=('libreoffice-common') optdepends=('libreoffice-desktop-integration: better desktop environment integration') backup=() groups=('libreoffice') replaces=('libreoffice') # create directories from *list.txt file for directory in `grep ^%dir ${srcdir}/libreoffice-$_LOver/file-lists/draw_list.txt`; do install -dm755 ${pkgdir}/${directory/\%dir/} done # install files into the pkg from fakeinstall dir for file in `grep -v ^%dir $srcdir/libreoffice-$_LOver/file-lists/draw_list.txt`; do dirname=`dirname $file` # check if directory has been already been created - some are missing like manpages [ -d ${pkgdir}/$dirname ] || install -dm755 ${pkgdir}/$dirname # mv file from fakeinstall to pkgdir mv ${srcdir}/fakeinstall${file} ${pkgdir}$file done } package_libreoffice-impress() { pkgdesc="Presentation Application for LibreOffice." depends=('libreoffice-common') optdepends=('mesa: for the OGLTrans extension' 'libreoffice-desktop-integration: better desktop environment integration') backup=() groups=('libreoffice') replaces=('libreoffice') # create directories from *list.txt file for directory in `grep ^%dir ${srcdir}/libreoffice-$_LOver/file-lists/impress_list.txt`; do install -dm755 ${pkgdir}/${directory/\%dir/} done # install files into the pkg from fakeinstall dir for file in `grep -v ^%dir $srcdir/libreoffice-$_LOver/file-lists/impress_list.txt`; do dirname=`dirname $file` # check if directory has been already been created - some are missing like manpages [ -d ${pkgdir}/$dirname ] || install -dm755 ${pkgdir}/$dirname # mv file from fakeinstall to pkgdir mv ${srcdir}/fakeinstall${file} ${pkgdir}$file done } package_libreoffice-kde5() { pkgdesc="Plug-in for LibreOffice that enables integration into Plasma desktop environment." depends=('kcoreaddons' 'kio' 'kwindowsystem' 'kconfig' 'ki18n' 'gtk3') provides=(libreoffice-desktop-integration) replaces=('libreoffice-qt5' "libreoffice-kde4<=$pkgver") groups=('libreoffice') # Merge kde and kde4 filelists as we do not bother with compat anymore # Not worth fixing unless really cleaning up the install completely # cat ${srcdir}/libreoffice-$_LOver/file-lists/kde_list.txt >> ${srcdir}/libreoffice-$_LOver/file-lists/kde4_list.txt # create directories from *list.txt file for directory in `grep ^%dir ${srcdir}/libreoffice-$_LOver/file-lists/kde4_list.txt`; do install -dm755 ${pkgdir}/${directory/\%dir/} done # install files into the pkg from fakeinstall dir for file in `grep -v ^%dir $srcdir/libreoffice-$_LOver/file-lists/kde4_list.txt`; do dirname=`dirname $file` # check if directory has been already been created - some are missing like manpages [ -d ${pkgdir}/$dirname ] || install -dm755 ${pkgdir}/$dirname # mv file from fakeinstall to pkgdir mv ${srcdir}/fakeinstall${file} ${pkgdir}$file done } package_libreoffice-gtk3() { pkgdesc="Plug-in for LibreOffice that enables GTK3 engine." depends=('gtk3') provides=(libreoffice-desktop-integration) groups=('libreoffice') # create directories from *list.txt file for directory in `grep ^%dir ${srcdir}/libreoffice-$_LOver/file-lists/gnome_list.txt`; do install -dm755 ${pkgdir}/${directory/\%dir/} done # install files into the pkg from fakeinstall dir for file in `grep -v ^%dir $srcdir/libreoffice-$_LOver/file-lists/gnome_list.txt`; do dirname=`dirname $file` # check if directory has been already been created - some are missing like manpages [ -d ${pkgdir}/$dirname ] || install -dm755 ${pkgdir}/$dirname # mv file from fakeinstall to pkgdir mv ${srcdir}/fakeinstall${file} ${pkgdir}$file done rm -rfv $pkgdir/usr/lib/libreoffice/share/registry } package_libreoffice-math() { pkgdesc="Equation Editor Application for LibreOffice." depends=('libreoffice-common') optdepends=('libreoffice-desktop-integration: better desktop environment integration') backup=() groups=('libreoffice') replaces=('libreoffice') # create directories from *list.txt file for directory in `grep ^%dir ${srcdir}/libreoffice-$_LOver/file-lists/math_list.txt`; do install -dm755 ${pkgdir}/${directory/\%dir/} done # install files into the pkg from fakeinstall dir for file in `grep -v ^%dir $srcdir/libreoffice-$_LOver/file-lists/math_list.txt`; do dirname=`dirname $file` # check if directory has been already been created - some are missing like manpages [ -d ${pkgdir}/$dirname ] || install -dm755 ${pkgdir}/$dirname # mv file from fakeinstall to pkgdir mv ${srcdir}/fakeinstall${file} ${pkgdir}$file done } package_libreoffice-sdk() { pkgdesc="Software Development Kit for LibreOffice." depends=('libreoffice-common' 'gcc-libs' 'sh' 'make' 'zip' 'gcc' 'java-environment') backup=() groups=('libreoffice') # create directories from *list.txt file for directory in `grep ^%dir ${srcdir}/libreoffice-$_LOver/file-lists/sdk_list.txt`; do install -dm755 ${pkgdir}/${directory/\%dir/} done # install files into the pkg from fakeinstall dir for file in `grep -v ^%dir $srcdir/libreoffice-$_LOver/file-lists/sdk_list.txt`; do dirname=`dirname $file` # check if directory has been already been created - some are missing like manpages [ -d ${pkgdir}/$dirname ] || install -dm755 ${pkgdir}/$dirname # mv file from fakeinstall to pkgdir mv ${srcdir}/fakeinstall${file} ${pkgdir}$file done } package_libreoffice-sdk-doc() { pkgdesc="Software Development Kit documentation for LibreOffice" depends=('libreoffice-common' 'libreoffice-sdk') optdepends=() backup=() groups=('libreoffice') # create directories from *list.txt file for directory in `grep ^%dir ${srcdir}/libreoffice-$_LOver/file-lists/sdk_doc_list.txt`; do install -dm755 ${pkgdir}/${directory/\%dir/} done # install files into the pkg from fakeinstall dir for file in `grep -v ^%dir $srcdir/libreoffice-$_LOver/file-lists/sdk_doc_list.txt`; do dirname=`dirname $file` # check if directory has been already been created - some are missing like manpages [ -d ${pkgdir}/$dirname ] || install -dm755 ${pkgdir}/$dirname # mv file from fakeinstall to pkgdir mv ${srcdir}/fakeinstall${file} ${pkgdir}$file done #fix permissions find ${pkgdir}/usr/lib/libreoffice/sdk/examples -type f -exec chmod -x {} \; } package_libreoffice-writer() { pkgdesc="Word Processor Applicationfor LibreOffice." depends=('libreoffice-common' 'libwpd' 'libwps' 'libxml2') optdepends=('libwpg: library for importing and converting Corel WordPerfect(tm) Graphics images' 'libreoffice-desktop-integration: better desktop environment integration') backup=() groups=('libreoffice') replaces=('libreoffice') # create directories from *list.txt file for directory in `grep ^%dir ${srcdir}/libreoffice-$_LOver/file-lists/writer_list.txt`; do install -dm755 ${pkgdir}/${directory/\%dir/} done # install files into the pkg from fakeinstall dir for file in `grep -v ^%dir $srcdir/libreoffice-$_LOver/file-lists/writer_list.txt`; do dirname=`dirname $file` # check if directory has been already been created - some are missing like manpages [ -d ${pkgdir}/$dirname ] || install -dm755 ${pkgdir}/$dirname # mv file from fakeinstall to pkgdir mv ${srcdir}/fakeinstall${file} ${pkgdir}$file done # workaround this file belongs now to common rm -vf ${pkgdir}/usr/lib/libreoffice/share/registry/writer.xcd } package_libreoffice-en-US() { pkgdesc="English (US) language pack for LibreOffice" #arch=('x86_64') provides=('libreoffice-langpack') # create directories from *list.txt file for directory in `grep ^%dir ${srcdir}/libreoffice-$_LOver/file-lists/lang_en_US_list.txt`; do install -dm755 ${pkgdir}/${directory/\%dir/} done # install files into the pkg from fakeinstall dir for file in `grep -v ^%dir $srcdir/libreoffice-$_LOver/file-lists/lang_en_US_list.txt`; do dirname=`dirname $file` # check if directory has been already been created - some are missing like manpages [ -d ${pkgdir}/$dirname ] || install -dm755 ${pkgdir}/$dirname # mv file from fakeinstall to pkgdir mv ${srcdir}/fakeinstall${file} ${pkgdir}$file done # en-US.dic install -Dm644 ${srcdir}/en-US.dic ${pkgdir}/usr/lib/libreoffice/share/wordbook/en-US.dic } package_libreoffice-extension-wiki-publisher() { pkgdesc="This extension enables you to create Wiki articles on MediaWiki servers without having to know the syntax of the MediaWiki markup language" #arch=('any') depends=('libreoffice-common' 'java-environment') groups=('libreoffice-extensions') install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions unzip -q ${srcdir}/libreoffice-$_LOver/workdir/Extension/wiki-publisher.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/wiki-publisher } package_libreoffice-extension-nlpsolver() { pkgdesc="This extension integrates into Calc and offers new Solver engines to use for optimizing nonlinear programming models" #arch=('any') depends=('libreoffice-common' 'java-environment') groups=('libreoffice-extensions') install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions unzip -q ${srcdir}/libreoffice-$_LOver/workdir/Extension/nlpsolver.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/nlpsolver }