Flatpak doesn’t make it easy to have Audio plugins for Audio application. There are 4 formats at least: LADSPA, DSSI, LV and VST (native + windows). For now I’ll focus on the first 3, VST will come next.
Here is my proposal for audio plugins in Flatpak on flathub:
I created a base app used to build audio application AND plugins. This will provide the base libraries built to support the plugins: See https://github.com/flathub/flathub/pull/1460 (current status: Pull Request)
It is based off the KDE 5.14 runtime as to have Qt5 and has gtk2 built, as well as common modules needed for the audio plugins. One of the issues I have run into is that if GNOME 3.36 is required, it’s a bit more complicated.
Please, feel free to submit feedback on the pull request.
Once it is available on Flathub, plugins shall be submitted (they can’t build otherwise). I already have a few that I did package to actually test this concept, in all 3 formats, with the first being So-SynthLV2: https://github.com/flathub/flathub/pull/1459
Also update the following Flatpaks to build against the base app and add the extension point (I have already done the work locally for some):
- Muse3 sequencer (LADSPA, DSSI)
- Hydrogen (LADSPA)
- gsequencer (LADSPA, DSSI and LV2) that ship with some plugins that instead should be build as Flatpak extensions first.
- Audacity (LADSPA, LV2)
- Ardour (current status: Pull Request https://github.com/flathub/flathub/pull/831) (LADSPA, LV2) - this one was actually the motivation to push this effort.
Possibly other apps I haven’t listed here yet.
The base app is necessary for plugins, not the apps. It only contains DSSI and LV2, but is used for all the plugin types supported. If is now base in freedesktop sdk only, with caveat. Just updated the PR for the base app:
The BaseExtension app now contain nothing, it is just necessary to declare the extension points so that extensions can be built. This is all that is needed. It also handle the runtime versioning.
And this PR is now what’s blocking any further submissions.