VASTDynamics/Vaporizer2

Create a tar.gz installer archive for Linux

Closed this issue ยท 9 comments

Create a tar.gz installer archive for Linux
To be placed on download page of https://www.vast-dynamics.com

KottV commented

Let me give a few words here.
There a numerous ways to distribute software in Linux. I think we should care just of two - the packages and the archive.
Packages are installed (basically it's an archive with some additional stuff, like scripts and dependencies list) system-wide and uses pre-defined paths, which may differ on different distributions, that's why DATA_INSTALL_PATH for the factory presets is needed. But for now we may assume that standard (in most of cases) is /usr/share

Archive is an archive with all required files and user unpacks it's content wherever he wants. For example: VST3 binary goes to ~/.vst3/, LV2 to ~/.lv2/ standalone to ~/bin/ or /usr/local/bin, and presets may be placed anywhere.

So, I suggest to split this stuff to platform depend archives, like Vaporizer2-x86_64.tar.gz with all binaries and arch-independent Vaporizer2_factory_data.tar.gz with presets, tables, noises.

If factory files won't be placed in the standard folder, then we should check that and don't make symlink here

File(getVSTPath()).getChildFile("Presets").createSymbolicLink(File(m_UserPresetRootFolder).getChildFile("Factory"), true); //add symlink to Factory

KottV commented

I forgot to add that packages are made by Linux distributive maintainers and then placed in their repositories. So it hasn't to be build and distributed here (though it's possible to build distro specific packages in GiHub).

@KottV I made some major changes and fixes and will go in a testing phase now for some days. Then I would like to release 3.4.0. Could you check as well if the current version is stable or if something remaisn to be done? Thanks.

KottV commented

@VASTDynamics
it builds and runs, I checked at 85c38d7

It might also be a good idea to generate distribution specific packages that can be installed using the native package manager (apt-get for debian dereviatives for example). From a user perspective, installing a deb is probably most foreward. Some other Plugins, like Odin2 do this already.

KottV commented

@PlexSheep I'm working on native packaging also. We already have the rpm in OBS, and the deb is ongoing https://build.opensuse.org/package/show/multimedia:proaudio/VASTvaporizer2

KottV commented

Generic tar.gz made with GitHub Actions in my repo https://github.com/KottV/Vaporizer2/releases/tag/3.4.0 (under the Assets arrow)

And there are native packages for various distros, x86_64 and few aarch64 builds.
I think it would be helpful to add these line somewhere:

Standalone version (alsa, jack):
vaporizer2

Factory data (presets, noises, wavetables):
vaporizer2-data

For rpm-based (openSUSE, Fedora, Mageia):
lv2-vaporizer2
vst3-vaporizer2

For deb-based (Debian, Ubuntu):
vaporizer2-lv2
vaporizer2-vst3

Meta-package that pulls all flavors and factory data:
vaporizer2-full

The repos mentioned above should really be mentioned in this project's main README.md