plugdata icon indicating copy to clipboard operation
plugdata copied to clipboard

upload to flathub

Open RustoMCSpit opened this issue 1 year ago • 11 comments

having a flatpak would be neat

RustoMCSpit avatar Jun 05 '24 22:06 RustoMCSpit

I agree!

timothyschoen avatar Jun 06 '24 12:06 timothyschoen

I agree!

yippee

RustoMCSpit avatar Jun 06 '24 17:06 RustoMCSpit

I agree

frdbr avatar Dec 29 '24 00:12 frdbr

i agree 😜

is there anything keeping you from implementing this?

umlaeute avatar May 13 '25 15:05 umlaeute

is there anything keeping you from implementing this?

I'll guess that all that's needed is more people reminding and asking for it :)

porres avatar May 13 '25 17:05 porres

Can somebody help a little here ? I tried to compile for flatpak and I am getting a persistent error related to ffmpeg and VDPAU... Trying to exclude VDPAU and even ffmpeg didnt work. In general I found it hard using the flags to disable some functionalities and make compilation less tricky.

Finally I tried to compile just for my system (Arch Linux) and I stumbled at similar errors about ffmpeg and VDPAU. If somebody could help a little by providing information I would really appreciate it.

just some output from my system(not flatpak)

[ 98%] Building CXX object CMakeFiles/plugdata_fx.dir/Libraries/JUCE/modules/juce_graphics/juce_graphics.cpp.o [ 98%] Building CXX object CMakeFiles/plugdata_fx.dir/Libraries/JUCE/modules/juce_events/juce_events.cpp.o [ 98%] Building CXX object CMakeFiles/plugdata_fx.dir/Libraries/JUCE/modules/juce_core/juce_core.cpp.o [ 98%] Building CXX object CMakeFiles/plugdata_fx.dir/Libraries/JUCE/modules/juce_data_structures/juce_data_structures.cpp.o [100%] Building CXX object CMakeFiles/plugdata_fx.dir/Libraries/JUCE/modules/juce_audio_basics/juce_audio_basics.cpp.o [100%] Linking CXX executable /home/wgslv/Work/plugdata/Plugins/Standalone/plugdata /usr/bin/ld: Libraries/pd-else/Source/Shared/ffmpeg/ffmpeg-7.0.1/libavutil/libavutil.a(hwcontext_vdpau.o): in function vdpau_device_create': hwcontext_vdpau.c:(.text+0x764): undefined reference to vdp_device_create_x11' collect2: error: ld returned 1 exit status make[2]: *** [CMakeFiles/plugdata_standalone.dir/build.make:222: /home/wgslv/Work/plugdata/Plugins/Standalone/plugdata] Error 1 make[1]: *** [CMakeFiles/Makefile2:847: CMakeFiles/plugdata_standalone.dir/all] Error 2 make[1]: *** Waiting for unfinished jobs.... [100%] Linking CXX static library plugdata_fx_artefacts/Release/libplugdata-fx_SharedCode.a [100%] Built target plugdata_fx [100%] Linking CXX static library plugdata_artefacts/Release/libplugdata_SharedCode.a [100%] Built target plugdata make: *** [Makefile:156: all] Error 2

konpatsourakis avatar Sep 25 '25 14:09 konpatsourakis

Hello, I have pretty good news I managed to successfully compile the project for Flatpak and it would be nice if we submit the project to Flathub so more people can enjoy. For now it is just the standalone version and hopefully we could do the rest later

I would really like suggestions on how we move on from here.. Maybe a pull request? A different repo? Or should I just try and submit myself?

Thank you!

konpatsourakis avatar Sep 29 '25 12:09 konpatsourakis

This is great, congrats! It would be nice to make this official. Maybe share how you did it so the the devs can submit it to flathub (if they want).

frdbr avatar Sep 29 '25 12:09 frdbr

I would really like suggestions on how we move on from here.. Maybe a pull request? A different repo?

my experience with creating flathub packages, is that it is easier to use a separate repository. (iirc it's possible to host the flatpak packing in the upstrema repository, but I found that flathub is very much expecting the packaging repository to live in their namespace; see https://docs.flathub.org/docs/for-app-authors/submission#approval)

in general i believe that keeping upstream and packaging distinct (done by different people, or just different hats) is a good thing, as it enhances the quality of the upstream releases (which comes in handy for other packaging ecosystems).

umlaeute avatar Sep 30 '25 08:09 umlaeute

Thanks,

I will probably create a repo of my own the next days and try and publish. Later if the team wants they can fork the repo or move on accordingly.

I believe this is the best option for now.

Cheers!

konpatsourakis avatar Sep 30 '25 19:09 konpatsourakis

Hello everyone,

I’ve uploaded a Flatpak manifest along with installation and build instructions here: https://github.com/rabidmachine9/plugdata-flatpak

It would be great if a few people could test it and confirm that the process works for them.

Since the manifest pulls assets like the .desktop file, icon and .metainfo.xml from the upstream repository, I had to fork the main PlugData repo and make a couple of small adjustments. You can find that fork here: https://github.com/rabidmachine9/plugdata

Possible next steps (all quite simple in my opinion):

  • Open a pull request to the official PlugData repository with the small upstream changes.
  • Decide where the Flatpak manifest (org.plugdata.PlugData.yml) should live – either alongside the project in the main repo or in a separate official plugdata-flatpak repository.
  • Submit a pull request to Flathub to publish the Flatpak. I created a template/example here: https://github.com/rabidmachine9/flathub

Flatpak building and contribution can feel a bit overwhelming at first, so please feel free to ask me if anything is unclear.

Peace!

konpatsourakis avatar Oct 10 '25 11:10 konpatsourakis

Hello everyone,

I’ve uploaded a Flatpak manifest along with installation and build instructions here: https://github.com/rabidmachine9/plugdata-flatpak

It would be great if a few people could test it and confirm that the process works for them.

Since the manifest pulls assets like the .desktop file, icon and .metainfo.xml from the upstream repository, I had to fork the main PlugData repo and make a couple of small adjustments. You can find that fork here: https://github.com/rabidmachine9/plugdata

Possible next steps (all quite simple in my opinion):

* Open a pull request to the official PlugData repository with the small upstream changes.

* Decide where the Flatpak manifest (org.plugdata.PlugData.yml) should live – either alongside the project in the main repo or in a separate official plugdata-flatpak repository.

* Submit a pull request to Flathub to publish the Flatpak. I created a template/example here: https://github.com/rabidmachine9/flathub

Flatpak building and contribution can feel a bit overwhelming at first, so please feel free to ask me if anything is unclear.

Peace!

Thanks! I'll take a look at this soon, I hope to get the next version up on Flathub. It would also be nice to have the full app working, including Gem as well.

I hope we can have 2 packages, one with the standalone app, one with all the plugins. The second one is gonna be a bit more tricky to figure out.

timothyschoen avatar Dec 16 '25 20:12 timothyschoen