diff options
author | Stephan Bergmann <sbergman@redhat.com> | 2017-07-04 17:09:16 +0200 |
---|---|---|
committer | Stephan Bergmann <sbergman@redhat.com> | 2017-07-04 17:09:16 +0200 |
commit | 19c13650c81ae7e0ad6cf0d7b8661f8440ee7892 (patch) | |
tree | f0d5a83c5cf882800bce6afdd62a3662642b5840 /solenv/bin/assemble-flatpak.sh | |
parent | fe25f95c3de542f15f6043c85f7385cd7569f237 (diff) |
Break solenv/bin/assemble-flatpak.sh out of dev-tools flatpak/build.sh
,,,in preparation of moving to a flatpak-builder manifest.json approach
Change-Id: Ie9e90a85cc6e94ff7191161085c6e607512db0c4
Diffstat (limited to 'solenv/bin/assemble-flatpak.sh')
-rwxr-xr-x | solenv/bin/assemble-flatpak.sh | 110 |
1 files changed, 110 insertions, 0 deletions
diff --git a/solenv/bin/assemble-flatpak.sh b/solenv/bin/assemble-flatpak.sh new file mode 100755 index 000000000000..e73848b6e050 --- /dev/null +++ b/solenv/bin/assemble-flatpak.sh @@ -0,0 +1,110 @@ +#! /bin/bash +# +# This file is part of the LibreOffice project. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# + +# Assemble Flatpak app files and metadata under /app/, copying from the +# installation tree generated by 'make distro-pack-install-strip' (at +# $PREFIXDIR): + +set -e + +cp -r "${PREFIXDIR?}"/lib/libreoffice /app/ + +## libreoffice-startcenter.desktop -> org.libreoffice.LibreOffice.desktop, +## combining all libreoffice-*.desktop MimeType= lines: +mkdir /app/share +mkdir /app/share/applications +my_mimetypes=$(awk -d 'BEGIN { FS="="; ORS=""; semi=0 }; \ + /^MimeType=/ && length($2) \ + { if (semi) print ";"; print $2; semi = match($2, ";$") == 0 }' \ + "${PREFIXDIR?}"/share/applications/libreoffice-*.desktop) +sed -e 's,^Exec=libreoffice,Exec=/app/libreoffice/program/soffice,' \ + -e 's/^Icon=libreoffice-/Icon=org.libreoffice.LibreOffice-/' \ + -e 's|^MimeType=.*$|MimeType='"$my_mimetypes"'|' \ + "${PREFIXDIR?}"/share/applications/libreoffice-startcenter.desktop \ + >/app/share/applications/org.libreoffice.LibreOffice.desktop + +## icons/hicolor/*/apps/libreoffice-startcenter.* -> +## icons/hicolor/*/apps/org.libreoffice.LibreOffice-startcenter.*: +mkdir /app/share/icons +for i in "${PREFIXDIR?}"/share/icons/hicolor/*/apps/libreoffice-startcenter.* +do + mkdir -p \ + "$(dirname /app/share/icons/hicolor/"${i#"${PREFIXDIR?}"/share/icons/hicolor/}")" + cp -a "$i" \ + "$(dirname /app/share/icons/hicolor/"${i#"${PREFIXDIR?}"/share/icons/hicolor/}")"/org.libreoffice.LibreOffice-startcenter."${i##*/apps/libreoffice-startcenter.}" +done + +## org.libreoffice.LibreOffice.appdata.xml is manually derived from the various +## inst/share/appdata/libreoffice-*.appdata.xml (at least recent GNOME Software +## doesn't show more than five screenshots anyway, so restrict to one each from +## the five libreoffice-*.appdata.xml: Writer, Calc, Impress, Draw, Base): +mkdir /app/share/appdata +cat <<\EOF >/app/share/appdata/org.libreoffice.LibreOffice.appdata.xml +<?xml version="1.0" encoding="UTF-8"?> +<component type="desktop"> + <id>org.libreoffice.LibreOffice.desktop</id> + <metadata_license>CC0-1.0</metadata_license> + <project_license>MPL-2.0</project_license> + <name>LibreOffice</name> + <summary>The LibreOffice productivity suite</summary> + <description> + <p>LibreOffice is a powerful office suite. Its clean interface and + feature-rich tools help you unleash your creativity and enhance your + productivity. LibreOffice includes several applications that make it the most + powerful Free and Open Source office suite on the market: Writer (word + processing), Calc (spreadsheets), Impress (presentations), Draw (vector + graphics and flowcharts), Base (databases), and Math (formula editing).</p> + <p>LibreOffice supports opening and saving into a wide variety of formats, so + you can easily share documents with users of other popular office suites + without worrying about compatibility.</p> + </description> + <url type="homepage">http://www.libreoffice.org/discover/libreoffice/</url> + <url type="bugtracker">https://bugs.documentfoundation.org/</url> + <url type="donation">https://donate.libreoffice.org/</url> + <url type="faq">https://wiki.documentfoundation.org/Faq</url> + <url type="help">http://www.libreoffice.org/get-help/documentation/</url> + <url type="translate">https://wiki.documentfoundation.org/Translating_LibreOffice</url> + <screenshots> + <screenshot type="default"> + <image>http://www.libreoffice.org/assets/Uploads/Discover/Screenshots/_resampled/ResizedImage400300-Writer-02-Table-of-Contents-Getting-Started-Guide-4-2.png</image> + <caption><!-- Describe this screenshot in less than ~10 words --></caption> + </screenshot> + <screenshot> + <image>http://www.libreoffice.org/assets/Uploads/Discover/Screenshots/_resampled/ResizedImage400300-Calc-02-exemple-ods.png</image> + <caption><!-- Describe this screenshot in less than ~10 words --></caption> + </screenshot> + <screenshot> + <image>http://www.libreoffice.org/assets/Uploads/Discover/Screenshots/_resampled/ResizedImage400300-Impress-01-Blank.png</image> + <caption><!-- Describe this screenshot in less than ~10 words --></caption> + </screenshot> + <screenshot> + <image>http://www.libreoffice.org/assets/Uploads/Discover/Screenshots/_resampled/ResizedImage400300-Draw-02-Tiger-fdo82219.png</image> + <caption><!-- Describe this screenshot in less than ~10 words --></caption> + </screenshot> + <screenshot> + <image>http://www.libreoffice.org/assets/Uploads/Screenshots/Base/Screenshot-78.png</image> + <caption><!-- Describe this screenshot in less than ~10 words --></caption> + </screenshot> + </screenshots> + <developer_name>The Document Foundation</developer_name> + <update_contact>libreoffice_at_lists.freedesktop.org</update_contact> + <kudos> + <kudo>HiDpiIcon</kudo> + <kudo>HighContrast</kudo> + <kudo>ModernToolkit</kudo> + <kudo>UserDocs</kudo> + </kudos> +</component> +EOF + +## see <https://github.com/flatpak/flatpak/blob/master/app/ +## flatpak-builtins-build-finish.c> for further places where build-finish would +## look for data: +## cp ... /app/share/dbus-1/services/ +## cp ... /app/share/gnome-shell/search-providers/ |