desktop / dugite-native

A toolchain for building a portable, cross-platform Git for applications
GNU General Public License v2.0
198 stars 108 forks source link

ls-remote fails inside docker container with "undefined symbol: curl_global_sslset" #351

Open mattwynne opened 3 years ago

mattwynne commented 3 years ago

I've got some code that runs fine on my local (OS X) dev machine, but when I run it inside a docker container (based off of the node:14.14.0 image), it fails with this error:

/app/node_modules/dugite/git/libexec/git-core/git-remote-https: symbol lookup error: /app/node_modules/dugite/git/libexec/git-core/git-remote-https: undefined symbol: curl_global_sslset

This is coming from a line that's trying to run ls-remote on an https:// remote URL.

Any ideas why this is happening and what we can do?

mattwynne commented 3 years ago

Seems to have started happening since we upgraded from 1.93 if that helps.

Let me know if there's anything else we can do to help diagnose it.

sergiou87 commented 3 years ago

Ouch! Sorry about that @mattwynne! I think 1.94 was the first version of dugite-native we built with GitHub Actions instead of whatever was used before, and we already found some issues related to libcurl on macOS (see https://github.com/desktop/desktop/issues/11516).

I think the problem is related to whatever libcurl is installed in the GitHub Action runner. We'd need to take a look.

Also I think this issue should be in the https://github.com/desktop/dugite-native repo (affecting https://github.com/desktop/dugite-native/tree/v2.26.2-4 and newer), so I'll move it there 😄

Thanks for reporting this! ❤️

mattwynne commented 3 years ago

No worries @sergiou87 it's a great solid library most of the time and we get a lot of value from it, thanks to you and the other maintainers.

edwinrodrigo commented 1 year ago

Try this https://softwaresup.net/icerik/ubuntu-github-desktop-kurulumu/

zawata commented 7 months ago

I encounter this error trying to run against CentOS-7(which we are maintaining support for until June 30, 2024). To fix it, I ended up building git against a lower version of libcurl(specifically the one that ships with CentOS-7): https://github.com/gitkraken/dugite-native/pull/2

I made modifications for all linux arch's but I didn't confirm it works on any of them except x64-linux because that's the only one we support currently.