diff options
-rw-r--r-- | distro-configs/LibreOfficeFlatpak.conf | 1 | ||||
-rwxr-xr-x | solenv/bin/assemble-flatpak.sh | 35 | ||||
-rw-r--r-- | solenv/flatpak-manifest.in | 35 |
3 files changed, 56 insertions, 15 deletions
diff --git a/distro-configs/LibreOfficeFlatpak.conf b/distro-configs/LibreOfficeFlatpak.conf index 68b0089cbe27..897b7cc30ff7 100644 --- a/distro-configs/LibreOfficeFlatpak.conf +++ b/distro-configs/LibreOfficeFlatpak.conf @@ -1,3 +1,4 @@ +--disable-gtk --disable-odk --enable-release-build --enable-symbols diff --git a/solenv/bin/assemble-flatpak.sh b/solenv/bin/assemble-flatpak.sh index 67cf47bad33d..b0f718a5091f 100755 --- a/solenv/bin/assemble-flatpak.sh +++ b/solenv/bin/assemble-flatpak.sh @@ -16,8 +16,7 @@ set -e cp -r "${PREFIXDIR?}"/lib/libreoffice /app/ ## libreoffice-*.desktop -> org.libreoffice.LibreOffice-*.desktop: -mkdir /app/share -mkdir /app/share/applications +mkdir -p /app/share/applications for i in "${PREFIXDIR?}"/share/applications/libreoffice-*.desktop do sed -e 's,^Exec=libreoffice,Exec=/app/libreoffice/program/soffice,' \ @@ -29,7 +28,7 @@ mv /app/share/applications/org.libreoffice.LibreOffice-startcenter.desktop \ ## icons/hicolor/*/apps/libreoffice-* -> ## icons/hicolor/*/apps/org.libreoffice.LibreOffice-*: -mkdir /app/share/icons +mkdir -p /app/share/icons for i in "${PREFIXDIR?}"/share/icons/hicolor/*/apps/libreoffice-* do mkdir -p \ @@ -38,11 +37,39 @@ do "$(dirname /app/share/icons/hicolor/"${i#"${PREFIXDIR?}"/share/icons/hicolor/}")"/org.libreoffice.LibreOffice-"${i##*/apps/libreoffice-}" done +mkdir -p /app/share/runtime/locale +for i in $(ls /app/libreoffice/program/resource) +do + lang="${i%[_@]*}" + mkdir -p /app/share/runtime/locale/"${lang}"/resource + mv /app/libreoffice/program/resource/"${i}" /app/share/runtime/locale/"${lang}"/resource + ln -s ../../../share/runtime/locale/"${lang}"/resource/"${i}" /app/libreoffice/program/resource +done + +for i in /app/libreoffice/share/registry/Langpack-*.xcd /app/libreoffice/share/registry/res/{fcfg_langpack,registry}_*.xcd +do + basename="$(basename "${i}" .xcd)" + lang="${basename#Langpack-}" + lang="${lang#fcfg_langpack_}" + lang="${lang#registry_}" + + # ship the base app with at least one Langpack/fcfg_langpack + if [ "${lang}" = "en-US" ] + then + continue + fi + + lang="${lang%-*}" + mkdir -p /app/share/runtime/locale/"${lang}"/registry + mv "${i}" /app/share/runtime/locale/"${lang}"/registry + ln -rs /app/share/runtime/locale/"${lang}"/registry/"${basename}".xcd "${i}" +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 +mkdir -p /app/share/appdata cat <<EOF >/app/share/appdata/org.libreoffice.LibreOffice.appdata.xml <?xml version="1.0" encoding="UTF-8"?> <component type="desktop"> diff --git a/solenv/flatpak-manifest.in b/solenv/flatpak-manifest.in index 594f99dd8646..766d5373d658 100644 --- a/solenv/flatpak-manifest.in +++ b/solenv/flatpak-manifest.in @@ -1,21 +1,20 @@ { "id": "org.libreoffice.LibreOffice", - "runtime": "org.gnome.Platform", - "runtime-version": "3.26", - "sdk": "org.gnome.Sdk", + "runtime": "org.freedesktop.Platform", + "runtime-version": "1.6", + "sdk": "org.freedesktop.Sdk", "sdk-extensions": [ "org.freedesktop.Sdk.Extension.gcc7", "org.freedesktop.Sdk.Extension.openjdk9" ], "build-options": { + "append-ld-library-path": "/usr/lib/sdk/gcc7/lib", "env": { "CC": "/usr/lib/sdk/gcc7/bin/gcc", - "CXX": "/usr/lib/sdk/gcc7/bin/g++", - "LD_LIBRARY_PATH": "/usr/lib/sdk/gcc7/lib" + "CXX": "/usr/lib/sdk/gcc7/bin/g++" } }, "command": "/app/libreoffice/program/soffice", - "separate-locales": false, "modules": [ { "name": "gcc7", @@ -34,14 +33,28 @@ }, { "name": "gst-libav", - "buildsystem": "meson", - "builddir": true, - "config-opts": ["-Ddisable_gtkdoc=true"], + "config-opts": [ "--disable-gtk-doc", "--with-system-libav" ], + "cleanup": [ "*.la", "/share/gtk-doc" ], + "sources": [ + { + "type" : "archive", + "url" : "https://gstreamer.freedesktop.org/src/gst-libav/gst-libav-1.10.5.tar.xz", + "sha256" : "e4d2f315f478d47281fbfdfbd590a63d23704ca37911d7142d5992616f4b28d3" + } + ] + }, + { + "name": "dbus-glib", + "cleanup": [ "*.la", "/bin", "/etc", "/include", "/libexec", "/share/gtk-doc", "/share/man" ], + "config-opts": [ + "--disable-static", + "--disable-gtk-doc" + ], "sources": [ { "type": "archive", - "url": "https://gstreamer.freedesktop.org/src/gst-libav/gst-libav-1.12.4.tar.xz", - "sha256": "2a56aa5d2d8cd912f2bce17f174713d2c417ca298f1f9c28ee66d4aa1e1d9e62" + "url": "https://dbus.freedesktop.org/releases/dbus-glib/dbus-glib-0.108.tar.gz", + "sha256": "9f340c7e2352e9cdf113893ca77ca9075d9f8d5e81476bf2bf361099383c602c" } ] }, |