Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

How to avoid runtime mismatch between plugins and host? #14

Closed
abique opened this issue Nov 21, 2022 · 6 comments
Closed

How to avoid runtime mismatch between plugins and host? #14

abique opened this issue Nov 21, 2022 · 6 comments

Comments

@abique
Copy link

abique commented Nov 21, 2022

Hi,

Currently no proprietary plugin vendor wants to deploy plugins on flatpak/flathub because of the potential runtime mismatch.
Also believe me, this concept is unreachable to a musician who's uncomfortable with computers, but also to many plugin vendors.

So the current situation is:

  • the user download from a website and installs a pre-built binary plugin in its home folder
  • then he can use his plugins from a host running from flatpak

I think we have to work with the following supposition:

  • plugins deployed for an older runtime will also work on the latest runtime

In the worst case, the dlopen() will fail with an error message; which can also happen with plugins installed in the user's home.
Also, most plugins will have a minimal dependency surface so the chances are high that this will work.

Then we don't need a 1:1 branch per runtime for plugins and we don't need to explain that to anyone.

Thank you for considering this issue,
Alex

@Bleuzen
Copy link

Bleuzen commented Dec 4, 2022

plugins deployed for an older runtime will also work on the latest runtime

Usually this works pretty well. For most plugins there is no need for regular rebuilds, builds still work even after multiple years.

Also there are more benefits when getting rid of the branching.
(from my old post here: #5 (comment))
basically:

  • much easier to understand
  • plugins don't disappear every year (when DAWs update their runtime)
  • easier to display in graphical software stores
  • less disk space wasted
  • faster updates
  • less work for plugin package maintainers

So I would really welcome a change regarding getting rid of the branches, at least where possible.

@jpf91
Copy link

jpf91 commented Nov 9, 2024

Any news on this issue? I wonder whether it makes sense to update https://github.com/flathub/fm.reaper.Reaper to use the 24.08 release, but I guess we will lose access to all old plugins then?

@hfiguiere
Copy link
Collaborator

Reaper is already wrong it use 24.08 but not right branch for the plugins.
This is not a bug here.

@jpf91
Copy link

jpf91 commented Nov 9, 2024

@hfiguiere That's true. I just submitted a PR to update the reaper manifest to fix this.

@abique If proprietary vendors don't want recompile their binaries for newer runtimes, couldn't they just re-release the same binaries for the new branch? This has the benefit that we still could have different releases in the branches if needed. But if testing shows that a binary plugin works fine with the newer runtime, it could just be tagged for that new branch.

@abique
Copy link
Author

abique commented Nov 9, 2024

@jpf91 then why not simply make a single release and say that it is compatible with multiple runtimes?

99% of the time for audio plugins they are forward compatible, so if they say compat with 20.04 they'll likely work in 22.04 and 24.04.

@hfiguiere
Copy link
Collaborator

nothing that can be done here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants