rancher-sandbox / rancher-desktop

Container Management and Kubernetes on the Desktop
https://rancherdesktop.io
Apache License 2.0
6.01k stars 283 forks source link

Running AppImage fails on Fedora 35 due to dynamic linking issue #1269

Closed adamkpickering closed 2 years ago

adamkpickering commented 2 years ago

Rancher Desktop Version

0.7.1

Rancher Desktop K8s Version

1.21.8

What operating system are you using?

Other Linux

Operating System / Build Version

Fedora 35

What CPU architecture are you using?

x64

Linux only: what package format did you use to install Rancher Desktop?

AppImage

Windows User Only

No response

Actual Behavior

When I run the AppImage it errors out with the message:

rancher-desktop: symbol lookup error: /lib64/libgio-2.0.so.0: undefined symbol: g_module_open_full

After some sleuthing I found this: https://github.com/project-slippi/Ishiiruka/issues/323. It seems that the problem is that the AppImage contains a version of libgmodule that is incompatible with the version of libgio that is on the system (libgio is excluded from the AppImage due to an earlier issue with it on ubuntu; see https://github.com/AppImage/pkg2appimage/blob/master/excludelist). The solution appears to be to exclude libgmodule from the AppImage.

Steps to Reproduce

Run the AppImage on Fedora 35. Note the behaviour.

Result

Running the AppImage errors out with the message:

rancher-desktop: symbol lookup error: /lib64/libgio-2.0.so.0: undefined symbol: g_module_open_full

Expected Behavior

I expected Rancher Desktop to start up without issues.

Additional Information

No response

adamkpickering commented 2 years ago

I should mention that I tested the AppImage without libgmodule. I did this by taking the AppImage built by OBS, unpacking it, removing libgmodule, and re-creating it using appimagetool. It appears to have gotten past the linking error, but does not run successfully.