Openssl artifact carries old openssl version

I’ve encountered a strange issue, which I suspect might be system specific, but I am not well versed enough in these matters to understand how.

My Plots.jl stopped precompiling the other day, together with a handful of related packages. It turns out that it was GR.jl (a backend to Plots.jl), which stopped precompiling, throwing an error of the form
LoadError: InitError: could not load library "libcurl.so.4" /artifacts/[id-string]/lib/libssl.so: version OPENSSL_3.2.0’ not found (required by /usr/bin/…/lib/julia/…/libcurl.so.4)`.

I could tell by readelf inspection that the openssl artifact library in question indeed only carried openssl version 3.0. After fiddling around for a bit too much time, eventually I simply replaced the .so (symlink) files of the artifact with symlinks to my system openssl .so libraries (in /usr/lib/), and this appears to have completely solved my problem.

My impression was that such artifacts are just copies/symlinks of the system libraries anyways, how come it managed to pull an old version of the library only? Is this a package specific error, and ought I to rather write on the GR.jl github or similar? To manually replace .so files feels like an awkward, and perhaps bad practice solution in either case, so it would be good to perhaps find a better workaround.

Seems related to this issue Linux julia 1.8.2/1.8.3 GMT package /lib/julia/libcurl.so: version `CURL_OPENSSL_4' not found error - #16 by gustaphe ?

How did you install Julia? It doesn’t look like you’re using the official binaries, the only ones supported.

This hits the nail on the head.
Indeed I had even read the comment on https://wiki.archlinux.org/title/Julia regarding the arch repo binaries being compiled against the system libraries and therefore causing issues like this.

I installed my binaries through the native package manager for my Manjaro installation, which pulls from the arch repo and of course has the same troubles. I’m not sure why I decided that my binaries were different, I feel silly now.

Getting the official binaries through juliaup lets Plots.jll precompile as it should, without modifying artifacts. It surprises me that I haven’t encountered any siimlar issue until now.