Flatpak build does not respect extension points
When building flatpaks using the built-in flatpak tooling (i.e. Build and Export Bundle), extension points defined in the flatpak manifest do not appear to be respected.
For example, take the following extension point defined in org.gnome.Builder.json
:
"add-extensions": {
"org.gnome.Builder.Plugin": {
"version": "master",
"directory": "extensions",
"add-ld-path": "lib",
"merge-dirs": "lib/gnome-builder/plugins",
"subdirectories": true,
"no-autodownload": true,
"autodelete": true
}
}
If I create a build using flatpak-builder
cli or using CI, running flatpak info -m org.gnome.Builder//master
gives:
Flatpak Extension Points (Click to expand)
[Application]
name=org.gnome.Builder
runtime=org.gnome.Sdk/x86_64/master
sdk=org.gnome.Sdk/x86_64/master
tags=nightly;
command=gnome-builder
required-flatpak=1.0.0
[Context]
shared=network;ipc;
sockets=x11;wayland;session-bus;system-bus;fallback-x11;ssh-auth;
devices=dri;
features=devel;
filesystems=home;xdg-data/meson;xdg-run/gvfsd;xdg-run/keyring;~/.local/share/flatpak;host;/var/lib/flatpak;
[Session Bus Policy]
org.freedesktop.Flatpak=talk
org.gnome.SettingsDaemon.Color=talk
org.gtk.vfs.*=talk
org.gnome.CodeAssist.v1.*=talk
org.freedesktop.PackageKit=talk
org.freedesktop.FileManager1=talk
org.freedesktop.secrets=talk
[System Bus Policy]
org.gnome.Sysprof3=talk
org.freedesktop.Avahi=talk
org.freedesktop.PolicyKit1=talk
[Environment]
G_SLICE=always-malloc
[X-DConf]
migrate-path=/org/gnome/builder/
[Extension org.gnome.Builder.Plugin]
directory=extensions
autodelete=true
no-autodownload=true
subdirectories=true
add-ld-path=lib
merge-dirs=lib/gnome-builder/plugins
version=master
[Extension org.gnome.Builder.Locale]
directory=share/runtime/locale
autodelete=true
locale-subset=true
[Extension org.gnome.Builder.Debug]
directory=lib/debug
autodelete=true
no-autodownload=true
[Build]
built-extensions=org.gnome.Builder.Locale;org.gnome.Builder.Debug;
Whereas doing the same for a flatpak created using Builder gives the following metadata:
Flatpak No Extension Points (Click to expand)
[Application]
name=org.gnome.Builder
runtime=org.gnome.Sdk/x86_64/master
sdk=org.gnome.Sdk/x86_64/master
tags=nightly;
command=gnome-builder
required-flatpak=1.0.0
[Context]
shared=network;ipc;
sockets=x11;wayland;session-bus;system-bus;fallback-x11;ssh-auth;
devices=dri;
features=devel;
filesystems=home;xdg-data/meson;xdg-run/gvfsd;xdg-run/keyring;~/.local/share/flatpak;host;/var/lib/flatpak;
[Session Bus Policy]
org.freedesktop.Flatpak=talk
org.gnome.SettingsDaemon.Color=talk
org.gtk.vfs.*=talk
org.gnome.CodeAssist.v1.*=talk
org.freedesktop.PackageKit=talk
org.freedesktop.FileManager1=talk
org.freedesktop.secrets=talk
[System Bus Policy]
org.gnome.Sysprof3=talk
org.freedesktop.Avahi=talk
org.freedesktop.PolicyKit1=talk
[Environment]
G_SLICE=always-malloc
[X-DConf]
migrate-path=/org/gnome/builder/
Due to this, local builds of Builder cannot be used for creating or running flatpak extensions.
This was observed on nightly builder.