office-gobmx/solenv/bin/assemble-flatpak.sh
Stephan Bergmann 48d09aa85e No longer append appdata for components to flatpak's metainfo
This had originally been added with
<945f6caad8>
"clean up desktop integration", see its part "append the appdata for the
separate apps (Base, Draw, etc) to the appdata XML we export for Flatpak, so
they are visible in software centers etc".  But it now started to cause Flathub
builds (like <https://buildbot.flathub.org/#/builders/14/builds/3985>) to fail
its "Check for right id in AppStream xml" step, and reportedly "the problem is
there are multiple components in the metainfo file and I'm not sure it's
allowed"
(<https://matrix.to/#/!RfXaBjokqHAbzZrgHz:matrix.org/$jWhob-a4LEH-e_TXsJwGWNfMYLF1kcWpXV_oW982ZpI?via=matrix.org&via=gnome.org&via=kde.org>).

The solution appears to be to just remove that again
(<https://matrix.to/#/!RfXaBjokqHAbzZrgHz:matrix.org/$Yrzf_ZjJxBgUVs6kuP_10Tneu1t1wKQJCM_SC1vNHC4?via=matrix.org&via=gnome.org&via=kde.org>):

> I think maybe the problem was from the times that GNOME Software was also
> moonlighting as a menu editor
> that without Flatpak providing the metainfo for LibreOffice's different
> desktop launchers, they were invisible in GNOME Software, which meant you
> couldn't add/remove them to menus or the desktop
> but since then GNOME just shows all of the launchers, and menu editing /
> categories mostly died or sank to the bottom of the 1990s ocean
> so maybe this is a non-problem
[...]
> ah ok
> ah so they don't show any more 🤣

So remove the now-unused solenv/bin/assemble-flatpak-appdata-step2.sh and
consequently rename the sole remaining
solenv/bin/assemble-flatpak-appdata-step1.sh to just
solenv/bin/assemble-flatpak-appdata.sh.

Change-Id: I3d3fef502f2114274a856102b77edafdd0ecac83
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152744
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2023-06-08 19:49:28 +02:00

71 lines
2.5 KiB
Bash
Executable file

#! /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' (at
# $PREFIXDIR):
set -e
cp -r "${PREFIXDIR?}"/lib/libreoffice /app/
ln -s /app/libreoffice/program/soffice /app/bin/libreoffice
mkdir -p /app/share/applications
"${SRCDIR?}"/solenv/bin/assemble-flatpak-desktop.sh "${PREFIXDIR?}"/share/applications/ \
/app/share/applications/
## icons/hicolor/*/apps/libreoffice-* ->
## icons/hicolor/*/apps/org.libreoffice.LibreOffice-*:
mkdir -p /app/share/icons
for i in "${PREFIXDIR?}"/share/icons/hicolor/*/apps/libreoffice-*
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/}")"/"$(basename "$i")"
cp -a "$i" \
"$(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
mkdir -p /app/share/appdata
"${SRCDIR?}"/solenv/bin/assemble-flatpak-appdata.sh /app/share/appdata/ 1
## 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/