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

publish monique on Flathub? #129

Open
gozes opened this issue Nov 7, 2023 · 15 comments
Open

publish monique on Flathub? #129

gozes opened this issue Nov 7, 2023 · 15 comments

Comments

@gozes
Copy link

gozes commented Nov 7, 2023

I would be great if monique was distributed on flathub so that it could be easily installed on any Linux distro.

would it be possible to have this package as flatpak insed of a zip?

https://docs.flathub.org/docs/category/for-app-authors

@baconpaul
Copy link
Collaborator

@hfiguiere kindly published surge proper to flat hub. Perhaps he could do same here? Monique is not as developed as surge proper; we did a port once the source was open sourced to make it work but have a list of maintenance items still which could have some TLC applied.

How have you found the flatpak plugin experience? I thought, other than bitwig, it could be a bit challenging for daws to find flatpak vst3s and the like?

@baconpaul
Copy link
Collaborator

https://github.com/flathub/org.surge_synth_team.surge-xt

there's surge-xt - while I haven't used flatpak and don't know how to test it, perusing those files it seems like the monique build would be similar, if not easier, than that.

@gozes
Copy link
Author

gozes commented Nov 7, 2023

Another benefit of having it in Flathub is that you can then. Loaded into the Ardour version from Flathub. As a side bonus you can then also do that on the steam deck which kind of cool to have a full DAW + Monique on the steam deck.

@hfiguiere
Copy link

There is no release.

Flathub has a policy about publishing released software

(I already have a package, just waiting for a release to submit it)

@baconpaul
Copy link
Collaborator

Oh gotcha. So I would need to find a moment in git history to tag it with some official tag and then it would all just work? Is it anything other than making a tag like "v2.7.4" in git and letting you know here? (Well and having the software be release ready of course :) )

Thanks so much for quick responses!

@hfiguiere
Copy link

I have a draft submission for Monique at flathub/flathub#4675

It's waiting for a release.

@gozes
Copy link
Author

gozes commented Nov 16, 2023

Did you include the lv2 plugin in the flatpak build and make it accessible to other flatpaks? If you didn't then you may want to consider doing it. Having it as an lv2 as well means that plugin host like Ardour flatpak can find it and use it from inside Ardour like they would use any other lv2 plugin

@hfiguiere
Copy link

It currently only build the VST3 (in addition to the standalone). It work with Ardour.

@gozes
Copy link
Author

gozes commented Nov 16, 2023

Great so I guess all it's needed is a tag release then?

@hfiguiere
Copy link

I'll add CLAP soon, but LV2 build fails as juce_lv2_helper crashes.

@hfiguiere
Copy link

hfiguiere commented Nov 16, 2023

Program received signal SIGSEGV, Segmentation fault.
resize_component_to_host_display (component=..., original_bounds=..., wanted_scale=0.699999988)
    at /run/build/monique/src/ui/monique_ui_MainWindow.cpp:1339
1339	    const auto host_height = host_display->userArea.getHeight();
(gdb) where 
#0  resize_component_to_host_display (component=..., original_bounds=..., wanted_scale=0.699999988)
    at /run/build/monique/src/ui/monique_ui_MainWindow.cpp:1339
#1  0x00007ffff75293c6 in Monique_Ui_Mainwindow::update_size (this=<optimized out>)
    at /run/build/monique/src/ui/monique_ui_MainWindow.cpp:1367
#2  0x00007ffff75497ac in Monique_Ui_Mainwindow::Monique_Ui_Mainwindow (this=this@entry=0x5555559e87d0, 
    ui_refresher_=0x5555559e8740) at /run/build/monique/src/ui/monique_ui_MainWindow.cpp:4442
#3  0x00007ffff74e64ea in MoniqueAudioProcessor::createEditor (this=0x55555557ba50)
    at /usr/include/c++/13.2.0/bits/unique_ptr.h:199
#4  0x00007ffff74e1433 in juce::lv2_client::RecallFeature::writeUiTtl (proc=..., libraryPath=...)
    at /run/build/monique/libs/JUCE/modules/juce_audio_plugin_client/LV2/juce_LV2_Client.cpp:1301
#5  0x00007ffff74de739 in juce::lv2_client::RecallFeature::doRecall::{lambda(char const*)#1}::operator()(char const) const (__closure=<optimized out>, libraryPath=<optimized out>)
    at /run/build/monique/libs/JUCE/modules/juce_audio_plugin_client/LV2/juce_LV2_Client.cpp:806
#6  0x00007ffff7dfc08a in __libc_start_call_main () from /usr/lib/x86_64-linux-gnu/libc.so.6
#7  0x00007ffff7dfc14b in __libc_start_main () from /usr/lib/x86_64-linux-gnu/libc.so.6
#8  0x0000555555555125 in _start () at ../sysdeps/x86_64/start.S:115
(gdb) p host_display
$1 = (const juce::Displays::Display * const) 0x0
(gdb) 

(there is NO X11 in that context)

@baconpaul
Copy link
Collaborator

Yeah juce 7 lv2 doesn’t work in ci for us. That’s why surge 1.3 will also not have an lv2

I’ll find a morning to see if there’s any egregious bugs in the port and if not will slap a tag on it

@hfiguiere
Copy link

Yeah juce 7 lv2 doesn’t work in ci for us. That’s why surge 1.3 will also not have an lv2

reminds me of projucer 5 that requires X11 to --save.

@baconpaul
Copy link
Collaborator

Yeah I think it’s the same class of thing

lv2 requires you to print the values your params happen to have at build time in your build step. That’s really the key issue which causes the plug-in to load. I think that triggers window stuff. I lightly tried to dig up the old xvfb code I had from juce 5 but then realized I didn’t have any target hosts which supported lv2 and didn’t support vst3 or clap so I just sort of figured I can skip the binary and if people want an lv2 they can self build

also the juce 7 lv2 seems to use features which aren’t in all the daws or something?

But honestly I haven’t paid that much attention. Figure at some point an enterprising person who is motivated will figure it out, or not!

@baconpaul
Copy link
Collaborator

Oh and if we are gonna tag Monique we should tag b-step also. I’ll do both one morning before the holidays then update 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

3 participants