bitwig / bitwig-studio-flatpak

This is an attempt at packaging Bitwig Studio using Flatpak for Linux.
https://bitwig.com
35 stars 5 forks source link

Missing libraries for Vital #17

Open lzap opened 3 years ago

lzap commented 3 years ago

Hello, I am trying the new monster synth Vital (VST2, VST3) on my Fedora with Bitwig 3.3.1 running via Flatpack but getting:

com.bitwig.flt.library.metadata.reader.exception.CouldNotReadMetadataException: could not read metadata: Failed to load VST 2 plug-in /home/lzap/.vst/Vital.so: libsecret-1.so.0: cannot open shared object file: No such file or directory

I have that library on my system, I wonder if this should be installed within the Flatpak environment. Here is what the synth needs:

./Vital.so: /lib64/libcurl-gnutls.so.4: no version information available (required by ./Vital.so)
    linux-vdso.so.1 (0x00007fff5a53f000)
    libsecret-1.so.0 => /lib64/libsecret-1.so.0 (0x00007f29d6b58000)
    libglib-2.0.so.0 => /lib64/libglib-2.0.so.0 (0x00007f29d6a26000)
    libstdc++.so.6 => /lib64/libstdc++.so.6 (0x00007f29d683e000)
    libm.so.6 => /lib64/libm.so.6 (0x00007f29d66f8000)
    libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f29d66dd000)
    libc.so.6 => /lib64/libc.so.6 (0x00007f29d6512000)
    libasound.so.2 => /lib64/libasound.so.2 (0x00007f29d6413000)
    libfreetype.so.6 => /lib64/libfreetype.so.6 (0x00007f29d6350000)
    libcurl-gnutls.so.4 => /lib64/libcurl-gnutls.so.4 (0x00007f29d62ba000)
    libdl.so.2 => /lib64/libdl.so.2 (0x00007f29d62b3000)
    libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f29d6291000)
    libGL.so.1 => /lib64/libGL.so.1 (0x00007f29d620a000)
    /lib64/ld-linux-x86-64.so.2 (0x00007f29d7d4f000)
    libgcrypt.so.20 => /lib64/libgcrypt.so.20 (0x00007f29d60e3000)
    libgpg-error.so.0 => /lib64/libgpg-error.so.0 (0x00007f29d60be000)
    libgio-2.0.so.0 => /lib64/libgio-2.0.so.0 (0x00007f29d5ef1000)
    libgobject-2.0.so.0 => /lib64/libgobject-2.0.so.0 (0x00007f29d5e97000)
    libpcre.so.1 => /lib64/libpcre.so.1 (0x00007f29d5e1e000)
    librt.so.1 => /lib64/librt.so.1 (0x00007f29d5e13000)
    libbz2.so.1 => /lib64/libbz2.so.1 (0x00007f29d5dfe000)
    libpng16.so.16 => /lib64/libpng16.so.16 (0x00007f29d5dc5000)
    libz.so.1 => /lib64/libz.so.1 (0x00007f29d5dab000)
    libbrotlidec.so.1 => /lib64/libbrotlidec.so.1 (0x00007f29d5d9d000)
    libnghttp2.so.14 => /lib64/libnghttp2.so.14 (0x00007f29d5d76000)
    libidn2.so.0 => /lib64/libidn2.so.0 (0x00007f29d5d55000)
    libssh.so.4 => /lib64/libssh.so.4 (0x00007f29d5ce6000)
    libpsl.so.5 => /lib64/libpsl.so.5 (0x00007f29d5cd3000)
    libssl.so.1.1 => /lib64/libssl.so.1.1 (0x00007f29d5c37000)
    libcrypto.so.1.1 => /lib64/libcrypto.so.1.1 (0x00007f29d594a000)
    libgssapi_krb5.so.2 => /lib64/libgssapi_krb5.so.2 (0x00007f29d58f6000)
    libkrb5.so.3 => /lib64/libkrb5.so.3 (0x00007f29d5820000)
    libk5crypto.so.3 => /lib64/libk5crypto.so.3 (0x00007f29d5806000)
    libcom_err.so.2 => /lib64/libcom_err.so.2 (0x00007f29d5800000)
    libldap-2.4.so.2 => /lib64/libldap-2.4.so.2 (0x00007f29d57b0000)
    liblber-2.4.so.2 => /lib64/liblber-2.4.so.2 (0x00007f29d579f000)
    libGLX.so.0 => /lib64/libGLX.so.0 (0x00007f29d576d000)
    libX11.so.6 => /lib64/libX11.so.6 (0x00007f29d5626000)
    libXext.so.6 => /lib64/libXext.so.6 (0x00007f29d560f000)
    libGLdispatch.so.0 => /lib64/libGLdispatch.so.0 (0x00007f29d5557000)
    libgmodule-2.0.so.0 => /lib64/libgmodule-2.0.so.0 (0x00007f29d5551000)
    libmount.so.1 => /lib64/libmount.so.1 (0x00007f29d550e000)
    libselinux.so.1 => /lib64/libselinux.so.1 (0x00007f29d54e1000)
    libresolv.so.2 => /lib64/libresolv.so.2 (0x00007f29d54c7000)
    libffi.so.6 => /lib64/libffi.so.6 (0x00007f29d54ba000)
    libbrotlicommon.so.1 => /lib64/libbrotlicommon.so.1 (0x00007f29d5497000)
    libunistring.so.2 => /lib64/libunistring.so.2 (0x00007f29d5314000)
    libkrb5support.so.0 => /lib64/libkrb5support.so.0 (0x00007f29d5303000)
    libkeyutils.so.1 => /lib64/libkeyutils.so.1 (0x00007f29d52fc000)
    libsasl2.so.3 => /lib64/libsasl2.so.3 (0x00007f29d52db000)
    libxcb.so.1 => /lib64/libxcb.so.1 (0x00007f29d52b1000)
    libblkid.so.1 => /lib64/libblkid.so.1 (0x00007f29d527c000)
    libpcre2-8.so.0 => /lib64/libpcre2-8.so.0 (0x00007f29d51e5000)
    libcrypt.so.2 => /lib64/libcrypt.so.2 (0x00007f29d51ab000)
    libXau.so.6 => /lib64/libXau.so.6 (0x00007f29d51a4000)
renich commented 3 years ago

I wonder what needs to be done here.

From the package's description:

Description  : libsecret is a library for storing and retrieving passwords and other secrets.
             : It communicates with the "Secret Service" using DBus. gnome-keyring and
             : KSecretService are both implementations of a Secret Service.

Apparently, libsecret communicates using dbus. Maybe we just need to allow it to? Or, maybe, the library isn't available on the freedesktop SDK.

Will try to reproduce the issue. Lemme find this plugin.

renich commented 3 years ago

It seems to me that Vital wants libsecret and, it seems, the SDK we use doesn't have it.

abique commented 3 years ago

Yes, you could create a ticket for the freedesktop sdk to include libsecret.

t3m8ch commented 3 years ago

This is not a Flatpak problem, since the same problem occurs if you install bitwig on Fedora following this instruction: https://tekbyte.net/2020/how-to-install-bitwig-studio-on-fedora/

renich commented 3 years ago

@t3m8ch I've tried using Bitwig Studio v3.3.3 installed directly on Fedora 33.

~~I've discovered that if you install libsecret-0.20.4-1.fc33.i686 (32-bit version), the error goes away, yet, the plugin doesn't show.

This is a different problem at least. ~~

I had to ln -s /usr/lib64/libcurl.so.4 /usr/lib64/libcurl-gnutls.so.4 in order for the vital binary to start working.

I've tried it in Ardour. The only .so I could make work was the one VST2 one (not lv2 nor VST3).

Then, I tried the latest version (v1.0,8 I think) on Bitwig Studio installed in the system:

image

I can see it and it runs.

So, no; it works fine on the system installation.

renich commented 3 years ago

And, in the Flatpak version, I get the libsecret error (but the plugin actually shows up). In any case, this leads me to believe that the missing libsecret in our SDK is to blame.

image

brianfay commented 2 years ago

Just wanted to mention that there finally seems to be a solution for using Vital on Fedora with the flatpak distribution of Bitwig.

There's a new version of Vital, 1.5.1 currently in Early Access (I think you need a pro license or subscription). You can access this in the Accounts/All Downloads section of the website.

This new download comes with an .rpm package.

I installed this with

sudo rpm -i VitalInstaller.rpm

The standalone Vital executable now works fine for me (used to have an "internal error" message on login attempt).

Furthermore, the rpm comes with a clap distribution of the plugin (in addition to vst3). The default install location /usr/lib/clap/Vital.clap wasn't working for me, so I copied to my home directory, then updated Bitwig's plugin locations to see it. I did the same thing for the vst3 version.

It's working!