Sunshine
Sunshine copied to clipboard
sunshine looking for `libssl.so.1.1` on debian distros that use `libssl3`
Describe the Bug
In Ubuntu 22.04 CUDA version has been bumped to 11.5. This version is not compatible with latest NVIDIA legacy driver (470.x). Sunshine still compiles using 22.04 docker scripts, but Sunshine cannot start CUDA (and thus nvenc) due to version incompatibility.
Expected Behavior
Same issue will happen when building directly (without docker) on 22.04 for all NVIDIA driver versions below 495.x.
Additional Context
Fix is rather simple:
- copy Dockerfile-ubuntu_22_04 to Dockerfile-ubuntu_22_04_legacy:
- remove 2 lines
nvidia-cuda-dev
nvidia-cuda-toolkit \ - add: RUN wget https://developer.download.nvidia.com/compute/cuda/11.4.2/local_installers/cuda_11.4.2_470.57.02_linux.run --progress=bar:force:noscroll -q --show-progress -O /root/cuda.run && chmod a+x /root/cuda.run RUN /root/cuda.run --silent --toolkit --toolkitpath=/usr --no-opengl-libs --no-man-page --no-drm && rm /root/cuda.run
before line with build.sh
Downloaded CUDA version could be changed to latest 11.4.4 (I just copied above from 20.04 docker script) but 11.4.2 still works.
Sunshine Host Operating System and Version
Ubuntu 22.04
Architecture
x64
Sunshine Version
0.13.0 (git pull)
GPU Type
NVidia
GPU Model
GTX 970
GPU Driver/Mesa Version
470.129.06
Capture Method (Linux Only)
No response
We're moving away from the Dockerfiles. Do you mind testing the latest CI build from the add-cpack
PR? There's a single deb.
@ReenigneArcher No problems - but I have no idea where it is - my knowledge of git is rather limited. Can you point me to correct location where I can grab this package?
@rcz01 See here: https://github.com/SunshineStream/Sunshine/actions/runs/2483978090
You need to be logged in, artifacts are at the bottom.
@ReenigneArcher It worked fine - it also had lower CPU load - single core at about 20%, compared to the one I compiled which used around 60% + GPU.
Cool, I'll close this then. We're close to a new release that will include these changes. Thanks.
@ReenigneArcher I tried it in VM. It seems there is an issue on vanilla Ubuntu 22.04: sunshine cannot load libssl.so.1.1 - based on quick search 22.04 uses libssl3 and this file is missing. It probably worked before as my home server is donkey's years old (bunch of upgrades since 12.04) and may have it installed as some dependency.
I also tested AppImage - it required sudo to start (complains about file system access for no apparent reason) but works fine. I haven't tested sound yet - I nuked pulseaudio from this VM. I will install it and let you know, later.
@ReenigneArcher I tried it in VM. It seems there is an issue on vanilla Ubuntu 22.04: sunshine cannot load libssl.so.1.1 - based on quick search 22.04 uses libssl3 and this file is missing. It probably worked before as my home server is donkey's years old (bunch of upgrades since 12.04) and may have it installed as some dependency.
I also tested AppImage - it required sudo to start (complains about file system access for no apparent reason) but works fine. I haven't tested sound yet - I nuked pulseaudio from this VM. I will install it and let you know, later.
It should be looking for libssl1.1 first, then libssl3... Let me look into this further
AppImage is fine - I had issues with /dev/uinput being only accessible by root (there is an existing ticket for it) but that is not related to Sunshine itself. Otherwise it works fine in software mode.
question... can you do sudo apt install libssl3
on your Ubuntu 22.04?
If so please provide more of the output when you run sunshine
from terminal.
libssl3 is installed by default on Ubuntu 22.04.
There is only one line (even on log level 0):
sunshine: error while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory
I even copied libssl.so.1.1 from server to VM - then it complained about lack of libcrypto.so.1.1 (same message)
okay, thanks
I'm thinking we should just define openssl
instead of libssl1.1
or libssl3
@rcz01 can you try the deb from this build?
https://github.com/SunshineStream/Sunshine/actions/runs/2504831788
Still the same: sunshine: error while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory :(
http://nz2.archive.ubuntu.com/ubuntu/pool/main/o/openssl/?C=M;O=D
Download the latest libssl1.1_1.1 for amd64, assuming your architecture is amd64 dpkg -i packagename.deb
I'm thinking we should just define
openssl
instead oflibssl1.1
orlibssl3
Yeah, I almost though openssl wasn't even installed on my system, I'm reproduce this exact error now after updating to 0.15.0.
This error is due to the system we build the deb on... it has nothing to do with the dependencies we specify that are needed.
Im not even sure you can modularly dropin in ssl3 for ssl1 without some code updating
ssl1 is going the way of the dodo, or python2
I'm reproducing this error on Arch though, not Debian like the post says. Mb.
Im not even sure you can modularly dropin in ssl3 for ssl1 without some code updating
ssl1 is going the way of the dodo, or python2
Wasn't needed prior to 0.15.0 either though
I'm reproducing this error on Arch though, not Debian like the post says. Mb.
Im not even sure you can modularly dropin in ssl3 for ssl1 without some code updating
ssl1 is going the way of the dodo, or python2
Wasn't needed prior to 0.15.0 either though
I don't think you're reproducing the issue. On arch you build the package yourself assuming you're using the AUR. So install whatever dependency it's looking for.
I can confirm that I: a) use arch b) don't have libssl.so.1 installed c) run sunshine (built from AUR) without any problems.
$ ldd $(which sunshine) | grep ssl libssl.so.3 => /usr/lib/libssl.so.3 (0x00007fab27760000) $ sunshine --version [nv_rc] -- [auto] [nv_preset] -- [p3] [nv_coder] -- [auto] [file_apps] -- [apps.json] [encoder] -- [nvenc] [file_state] -- [sunshine_state.json] [origin_pin_allowed] -- [lan] [origin_web_ui_allowed] -- [lan] [min_log_level] -- [2] [sunshine_name] -- [Linux] Sunshine version: v0.15.0 $ grep NAME /etc/os-release NAME="Arch Linux" PRETTY_NAME="Arch Linux"
Okay, I just made symlinks redirecting libssl.so.1.1
to libssl.so
in /usr/lib
, which then complained about libcrypto.so.1.1
after attemppting to run sunshine again. So i created a symlink for that too leading to libcrypto.so. Didn't work, so i tried making symlinks for libcrypto.so.3
and libssl.so.3
too, but both times I get this same error;
I have a feeling this has to do with the new openssl update that was pushed out recently.. Though users here on Arch aren't having any trouble, so I guess i'll just try to resolve the dependency itself like suggested.
I just thought I would share this nonetheless,
As I already mentioned, this has to do with the OS that we build the deb package on, 20.04.
Yeah, also I just got the dependency via a pacman system update, though it took awhile for it to get there in my repos. Works now though, it shouldnt be an issue at all since Arch has it now
This all sounds very strange to me, as though you have downloaded the sunshine binary pre-built from somewhere. In the AUR the package is built based on the libraries you have installed. It can't build and then find them missing later because if they were missing it would not link in the first place. You shouldn't have to go installing legacy versions of libraries and creating symbolic links. Something more fundimental is wrong with the way you are trying to install sunshine.
I installed sunshine via yay -S sunshine
And when i created the symlinks it instead asked for OPENSSL_1_1_0
which i got that exact package yesterday via pacman -Syu
, fixing sunshine
If you had installed sunshine any other way you probably didnt have this issue, because I installed sunshine through the aur package
I have been unable to install it on Pop_OS! It's a shame your software is one of my favorites.
l
Does anyone have any suggestions on how I might be able to get it working? I am having the same issues on Ubuntu 22.04. Thanks for your help in advance.
Does anyone have any suggestions on how I might be able to get it working? I am having the same issues on Ubuntu 22.04. Thanks for your help in advance.
Compile manually
This issue has been fixed and will be available in the next release.