Forums

Discuss all things Remember The Milk.

menu

Installing the desktop client on OpenSUSE

bentb says:
My workstation uses OpenSUSE Leap 15.6. The only available packages for desktop is either Debian or Fedora.

When I try Fedora, which uses RPM like OpenSUSE does, I get a bunch of failing dependencies:
error: Failed dependencies:
at-spi2-core is needed by rememberthemilk-1.3.11-1.x86_64
libXtst is needed by rememberthemilk-1.3.11-1.x86_64
libnotify is needed by rememberthemilk-1.3.11-1.x86_64
libuuid is needed by rememberthemilk-1.3.11-1.x86_64

When I go the Debian way and manually extract the binaries to /opt, I get:
/opt/RememberTheMilk/rememberthemilk
libva error: vaGetDriverNames() failed with unknown libva error
libva error: vaGetDriverNames() failed with unknown libva error
libva error: vaGetDriverNames() failed with unknown libva error
[6348:0806/164838.541779:FATAL:gpu_data_manager_impl_private.cc(415)] GPU process isn't usable. Goodbye.
Trace/breakpoint trap (core dumped)

What is your best advice on how to proceed from here?
Posted at 2:51pm on August 6, 2024
kev1n says:
I am not familiar with OpenSUSE, but my Fedora 40 system has these packages installed, satisfying the RTM dependencies:

at-spi2-core-2.52.0-1.fc40.x86_64
libXtst-1.2.5-1.fc40.x86_64
libnotify-0.8.3-3.fc40.x86_64
libuuid-2.40.1-1.fc40.x86_64

I checked the OpenSUSE repo and the packages are available. You need to install them. If I remember correctly the software installer on OpenSUSE is YaST.
https://en.opensuse.org/YaST_Software_Management
Posted 4 months ago
andrewski (Remember The Milk) says:
Hi bentb,
I think kev1n has covered what I would suggest: it should be possible to satisfy those dependencies manually and then the Remember The Milk app should work. Please let us know if you need any further help matching up the dependencies with what is available!

And sorry we don't currently have an OpenSUSE RPM available. I'll pass your scenario on to the development team! 💙
Posted 4 months ago
bentb says:
First, I apologize for the belated reply. Second tanks for the answers.
I have followed your suggestions and installed at-spi2-core for the Suse repository. The three other packages were already present but under slightly different names. E.g. libXtst is present as libXtst6. So I risked an eye and and installed using --nodeps.
When I run the installed package I get the same error messages as I got above going the Debian way:
libva error: vaGetDriverNames() failed with unknown libva error
libva error: vaGetDriverNames() failed with unknown libva error
libva error: vaGetDriverNames() failed with unknown libva error
[8106:0810/204919.833443:FATAL:gpu_data_manager_impl_private.cc(415)] GPU process isn't usable. Goodbye.
Trace/breakpoint trap (core dumped)

The 'funny' thing is, though, that when I run an ldd on the installed program, none of the three libs occur in the listing:
~> ldd $(which rememberthemilk)
linux-vdso.so.1 (0x00007ffcca946000)
libffmpeg.so => not found
libdl.so.2 => /lib64/libdl.so.2 (0x00007fc9291eb000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fc9291e8000)
libgobject-2.0.so.0 => /usr/lib64/libgobject-2.0.so.0 (0x00007fc920b82000)
libglib-2.0.so.0 => /usr/lib64/libglib-2.0.so.0 (0x00007fc920a3c000)
libxshmfence.so.1 => /usr/lib64/libxshmfence.so.1 (0x00007fc920800000)
libgio-2.0.so.0 => /usr/lib64/libgio-2.0.so.0 (0x00007fc920616000)
libnss3.so => /usr/lib64/libnss3.so (0x00007fc9204d9000)
libnssutil3.so => /usr/lib64/libnssutil3.so (0x00007fc920a09000)
libsmime3.so => /usr/lib64/libsmime3.so (0x00007fc9204ad000)
libnspr4.so => /usr/lib64/libnspr4.so (0x00007fc920200000)
libatk-1.0.so.0 => /usr/lib64/libatk-1.0.so.0 (0x00007fc920485000)
libatk-bridge-2.0.so.0 => /usr/lib64/libatk-bridge-2.0.so.0 (0x00007fc92044a000)
libdbus-1.so.3 => /usr/lib64/libdbus-1.so.3 (0x00007fc9201ad000)
libdrm.so.2 => /usr/lib64/libdrm.so.2 (0x00007fc920197000)
libgdk_pixbuf-2.0.so.0 => /usr/lib64/libgdk_pixbuf-2.0.so.0 (0x00007fc92016a000)
libgtk-3.so.0 => /usr/lib64/libgtk-3.so.0 (0x00007fc91f800000)
libgdk-3.so.0 => /usr/lib64/libgdk-3.so.0 (0x00007fc920070000)
libpango-1.0.so.0 => /usr/lib64/libpango-1.0.so.0 (0x00007fc920008000)
libcairo.so.2 => /usr/lib64/libcairo.so.2 (0x00007fc91f6cf000)
libm.so.6 => /lib64/libm.so.6 (0x00007fc91f5e5000)
libX11.so.6 => /usr/lib64/libX11.so.6 (0x00007fc91f4a2000)
libXcomposite.so.1 => /usr/lib64/libXcomposite.so.1 (0x00007fc91f200000)
libXdamage.so.1 => /usr/lib64/libXdamage.so.1 (0x00007fc91ee00000)
libXext.so.6 => /usr/lib64/libXext.so.6 (0x00007fc91ea00000)
libXfixes.so.3 => /usr/lib64/libXfixes.so.3 (0x00007fc91e600000)
libXrandr.so.2 => /usr/lib64/libXrandr.so.2 (0x00007fc91e200000)
libexpat.so.1 => /usr/lib64/libexpat.so.1 (0x00007fc91ffc9000)
libxcb.so.1 => /usr/lib64/libxcb.so.1 (0x00007fc91f478000)
libxkbcommon.so.0 => /usr/lib64/libxkbcommon.so.0 (0x00007fc91f433000)
libgbm.so.1 => /usr/lib64/libgbm.so.1 (0x00007fc91f412000)
libasound.so.2 => /usr/lib64/libasound.so.2 (0x00007fc91f0f7000)
libatspi.so.0 => /usr/lib64/libatspi.so.0 (0x00007fc91f0bd000)
libcups.so.2 => /usr/lib64/libcups.so.2 (0x00007fc91f02d000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007fc91f009000)
libc.so.6 => /lib64/libc.so.6 (0x00007fc91de00000)
/lib64/ld-linux-x86-64.so.2 (0x00007fc9291f0000)
libffi.so.7 => /usr/lib64/libffi.so.7 (0x00007fc91da00000)
libpcre2-8.so.0 => /usr/lib64/libpcre2-8.so.0 (0x00007fc91ed44000)
libgmodule-2.0.so.0 => /usr/lib64/libgmodule-2.0.so.0 (0x00007fc920443000)
libz.so.1 => /usr/lib64/libz.so.1 (0x00007fc91ed2b000)
libmount.so.1 => /usr/lib64/libmount.so.1 (0x00007fc91ecbe000)
libselinux.so.1 => /usr/lib64/libselinux.so.1 (0x00007fc91ec91000)
libplc4.so => /usr/lib64/libplc4.so (0x00007fc91d600000)
libplds4.so => /usr/lib64/libplds4.so (0x00007fc91d200000)
librt.so.1 => /lib64/librt.so.1 (0x00007fc91f40f000)
libsystemd.so.0 => /usr/lib64/libsystemd.so.0 (0x00007fc91e8ff000)
libpng16.so.16 => /usr/lib64/libpng16.so.16 (0x00007fc91ec4d000)
libjpeg.so.8 => /usr/lib64/libjpeg.so.8 (0x00007fc91e852000)
libpangocairo-1.0.so.0 => /usr/lib64/libpangocairo-1.0.so.0 (0x00007fc91ec3e000)
libharfbuzz.so.0 => /usr/lib64/libharfbuzz.so.0 (0x00007fc91e49c000)
libpangoft2-1.0.so.0 => /usr/lib64/libpangoft2-1.0.so.0 (0x00007fc91ec26000)
libfontconfig.so.1 => /usr/lib64/libfontconfig.so.1 (0x00007fc91e809000)
libfribidi.so.0 => /usr/lib64/libfribidi.so.0 (0x00007fc91ce00000)
libcairo-gobject.so.2 => /usr/lib64/libcairo-gobject.so.2 (0x00007fc91f403000)
libepoxy.so.0 => /usr/lib64/libepoxy.so.0 (0x00007fc91e0cc000)
libXi.so.6 => /usr/lib64/libXi.so.6 (0x00007fc91ca00000)
libwayland-client.so.0 => /usr/lib64/libwayland-client.so.0 (0x00007fc91ec15000)
libwayland-cursor.so.0 => /usr/lib64/libwayland-cursor.so.0 (0x00007fc91e493000)
libwayland-egl.so.1 => /usr/lib64/libwayland-egl.so.1 (0x00007fc91f004000)
libXcursor.so.1 => /usr/lib64/libXcursor.so.1 (0x00007fc91c600000)
libXinerama.so.1 => /usr/lib64/libXinerama.so.1 (0x00007fc91c200000)
libthai.so.0 => /usr/lib64/libthai.so.0 (0x00007fc91be00000)
libfreetype.so.6 => /usr/lib64/libfreetype.so.6 (0x00007fc91ba00000)
libXrender.so.1 => /usr/lib64/libXrender.so.1 (0x00007fc91b600000)
libxcb-render.so.0 => /usr/lib64/libxcb-render.so.0 (0x00007fc91e485000)
libxcb-shm.so.0 => /usr/lib64/libxcb-shm.so.0 (0x00007fc91e481000)
libpixman-1.so.0 => /usr/lib64/libpixman-1.so.0 (0x00007fc91e40d000)
libXau.so.6 => /usr/lib64/libXau.so.6 (0x00007fc91b200000)
libwayland-server.so.0 => /usr/lib64/libwayland-server.so.0 (0x00007fc91e0b6000)
libxcb-randr.so.0 => /usr/lib64/libxcb-randr.so.0 (0x00007fc91e0a5000)
libgssapi_krb5.so.2 => /usr/lib64/libgssapi_krb5.so.2 (0x00007fc91e053000)
libgnutls.so.30 => /usr/lib64/libgnutls.so.30 (0x00007fc91ae00000)
libavahi-common.so.3 => /usr/lib64/libavahi-common.so.3 (0x00007fc91e045000)
libavahi-client.so.3 => /usr/lib64/libavahi-client.so.3 (0x00007fc91e033000)
libblkid.so.1 => /usr/lib64/libblkid.so.1 (0x00007fc91dda4000)
libcap.so.2 => /usr/lib64/libcap.so.2 (0x00007fc91e026000)
libgcrypt.so.20 => /usr/lib64/libgcrypt.so.20 (0x00007fc91dc5f000)
liblz4.so.1 => /usr/lib64/liblz4.so.1 (0x00007fc91dc3b000)
liblzma.so.5 => /usr/lib64/liblzma.so.5 (0x00007fc91d9b9000)
libzstd.so.1 => /usr/lib64/libzstd.so.1 (0x00007fc91d8fa000)
libgraphite2.so.3 => /usr/lib64/libgraphite2.so.3 (0x00007fc91dc17000)
libdatrie.so.1 => /usr/lib64/libdatrie.so.1 (0x00007fc91aa00000)
libbz2.so.1 => /usr/lib64/libbz2.so.1 (0x00007fc91a600000)
libkrb5.so.3 => /usr/lib64/libkrb5.so.3 (0x00007fc91d81f000)
libk5crypto.so.3 => /usr/lib64/libk5crypto.so.3 (0x00007fc91d808000)
libcom_err.so.2 => /lib64/libcom_err.so.2 (0x00007fc91e01f000)
libkrb5support.so.0 => /usr/lib64/libkrb5support.so.0 (0x00007fc91d5f1000)
libjitterentropy.so.3 => /usr/lib64/libjitterentropy.so.3 (0x00007fc91e015000)
libp11-kit.so.0 => /usr/lib64/libp11-kit.so.0 (0x00007fc91d4be000)
libidn2.so.0 => /usr/lib64/libidn2.so.0 (0x00007fc91a200000)
libunistring.so.2 => /usr/lib64/libunistring.so.2 (0x00007fc919e00000)
libtasn1.so.6 => /usr/lib64/libtasn1.so.6 (0x00007fc919a00000)
libnettle.so.8 => /usr/lib64/libnettle.so.8 (0x00007fc91d46c000)
libhogweed.so.6 => /usr/lib64/libhogweed.so.6 (0x00007fc91d422000)
libgmp.so.10 => /usr/lib64/libgmp.so.10 (0x00007fc919600000)
libgpg-error.so.0 => /usr/lib64/libgpg-error.so.0 (0x00007fc91d1da000)
libkeyutils.so.1 => /usr/lib64/libkeyutils.so.1 (0x00007fc919200000)
libresolv.so.2 => /lib64/libresolv.so.2 (0x00007fc91d410000)
libcrypto.so.3 => /usr/lib64/libcrypto.so.3 (0x00007fc918c00000)

I have considered manually adding appropriate links to the libraries, but that doesn't appear to be necessary. So I feel a little more in the dark. Help, please.

Posted 4 months ago
bentb says:
BTW: Why is ffmpeg a dependency?
Posted 4 months ago
andrewski (Remember The Milk) says:
Hi bentb,
Sorry that didn't help! I am not very familiar with OpenSUSE but it may be worth looking at the steps for enabling Smart Add for Desktop from our FAQ, particularly the command in step 2:

/opt/RememberTheMilk/rememberthemilk --disable-gpu --enable-transparent-visuals --force-enable-global-smart-add %U

Working with those flags the app provides may help with any driver/GPU errors like you are encountering.

Our Linux app (desktop app generally) uses Electron, a standalone "browser app" that packages the whole thing together, and I expect that it uses a lot of these dependencies for hardware accelerated graphics or other things more generally. It also is a fairly "generic"/all-purpose app so it may be that ffmpeg and other dependencies provide video playback within an Electron app even if our Electron app doesn't use them. 😅

Keep us posted on what you find!
Posted 4 months ago
bentb says:
When I run your command above, the complaints about the libva errors disappear, but not the one about the GPU:

~> /opt/RememberTheMilk/rememberthemilk --disable-gpu --enable-transparent-visuals --force-enable-global-smart-add %U
[4567:0816/163952.250892:FATAL:gpu_data_manager_impl_private.cc(415)] GPU process isn't usable. Goodbye.
Trace/breakpoint trap (core dumped)
~>

A question: would it be possible to get the source code or can I persuade you to build a Flatpak or Appimage package?
Posted 4 months ago
bentb says:
The following may or may not be relevant in this connection, but I'll tell about it anyway.

I run a self-hosted Nextcloud solution here. I had problems getting the Nextcloud sync client installed on my workstation. The client is a Flatpak package and it also complained about the GPU.
The problem in this case turned out be incompatibility the versions of the Nvidia driver installed on the workstation and the version referred to by the Flatpak system. When I installed the right Flatpak version of the driver the problem went away and my Nextcloud client started working.
Just for your information - and inspiration?
Posted 4 months ago
andrewski (Remember The Milk) says:
Hi bentb,
Sorry that didn't help! We don't currently offer the source code for this, but I have passed your feedback on to the development team for that and/or a package.

In the meantime, may I offer another flag? I wonder if adding --no-sandbox may help:

/opt/RememberTheMilk/rememberthemilk --disable-gpu --enable-transparent-visuals --force-enable-global-smart-add --no-sandbox %U

I hope this helps, but keep me posted on what you find so we can see what else we may need to keep in mind for future versions/packages.
Posted 4 months ago
bentb says:
Hi Andrewski

Bingo! That did it. Now it works beautifully.

Thanks a lot for your patience and help
Posted 4 months ago
andrewski (Remember The Milk) says:
Hi bentb,
Likewise, thanks for testing and for your patience! I'll confirm that with the development team and keep that in mind for future updates to the app. 💙
Posted 17 weeks ago
This topic has now been closed automatically due to a lack of responses in the past 90 days.