summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--distro-configs/LibreOfficeFlatpak.conf1
-rwxr-xr-xsolenv/bin/assemble-flatpak.sh35
-rw-r--r--solenv/flatpak-manifest.in35
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"
}
]
},