rncbc / qsynth

Qsynth - A fluidsynth Qt GUI Interface
https://qsynth.sourceforge.io
GNU General Public License v2.0
66 stars 18 forks source link

There is no qsynth flatpak #52

Closed pedrolcl closed 2 years ago

pedrolcl commented 2 years ago

My proposal is to add a qsynth flatpak to flathub: https://flathub.org/apps/category/AudioVideo

rncbc commented 2 years ago

but there's an AppImage instead ... feel free to make a flatpak whatever and file a PR for future record; know that you'll be responsible and in charge of maintaining that thing ;)

pedrolcl commented 2 years ago

I am already drafting it: https://github.com/flathub/flathub/pull/2730

The flatpak will include pulseaudio and libinstpatch (for .DLS files) support, in addition to jack2.

I will request your approval once again. Please answer there too. Thanks!

pedrolcl commented 2 years ago

I will propose a few changes, mainly to rename the desktop file as "org.rncbc.qsynth.desktop" and the appstream metadata as "org.rncbc.qsynth.xml"

rncbc commented 2 years ago

please do, you're welcome

pedrolcl commented 2 years ago

There is a problem with this code in src/qsynth.cpp:

#if defined(Q_OS_LINUX)
    ::setenv("QT_QPA_PLATFORM", "xcb", 0);
#endif

Forcing the Qt XCB platform plugin prevents starting qsynth on systems having Wayland only. I'm quite sure that qsynth works well under Wayland, so... Do you accept a patch to remove the cited lines?

rncbc commented 2 years ago

not quite willing to indulge on this. in my pov. (i do wayland for some years now) and it should work either way. but you're free to make a special build for flatpak where that line is not included.

pedrolcl commented 2 years ago

not quite willing to indulge on this. in my pov. (i do wayland for some years now) and it should work either way. but you're free to make a special build for flatpak where that line is not included.

The flatpak policy is that only patches included upstream should be included in a package. But anyway, my question is: what problem is addressed by this? The only problem I've found running qsynth under flatpak/wayland is a message that says:

qt.qpa.wayland: Wayland does not support QWindow::requestActivate().

It means that a widget was not allowed to steal the focus from another window, but that is not a big deal, IMO.

rncbc commented 2 years ago

as said, i have no problem with that and I'm running wayland for years now. if flatpak policy forbids that, then I'm getting more sure why I never liked that crap anyway. but that's just me :)

ps. what about a feature branch (rightly named flatpak)? it would be upstream ntl.? :D

pedrolcl commented 2 years ago

OK, then the only option is to ship the flatpak with mandatory X11 only.

By the way, I've been able to run the flatpak in Fedora 34 which is using pipewire, and qsynth is able to connect as a Jack client!

rncbc commented 2 years ago

By the way, I've been able to run the flatpak in Fedora 34 which is using pipewire, and qsynth is able to connect as a Jack client!

you probably should also run it over pipewire-pulseaudio replacement.

pedrolcl commented 2 years ago

The flatpak has been reviewed and approved. Here is the repository: https://github.com/flathub/org.rncbc.qsynth

Note: it is 0.9.4, I will upgrade the version as soon as you release it.

pedrolcl commented 2 years ago

And, it is published! :tada:

https://flathub.org/apps/details/org.rncbc.qsynth

Closing...