Skip to content
This repository has been archived by the owner on Nov 11, 2021. It is now read-only.

Doc issue re: error R-1 on Fedora #80

Open
lotaris-xx opened this issue Dec 2, 2020 · 6 comments
Open

Doc issue re: error R-1 on Fedora #80

lotaris-xx opened this issue Dec 2, 2020 · 6 comments
Assignees
Labels
Application The community can't fix it, it is Blade's work bug Something isn't working

Comments

@lotaris-xx
Copy link

I have a laptop that has an nvidia card and the builtin intel HD 530. I kept getting this R-1 issue under both pure nvidia and intel.

Solution was:

./ShadowBeta.AppImage --appimage-extract
cd squashfs-root
./shadow-preprod

This works for both intel and nvidia.

Maybe could add as a known issue? Happy to troubleshoot further.

@NicolasGuilloux
Copy link
Owner

Hi! Do you mind giving more information about your OS? Could be really useful to find out what the issue was. Because extracting the AppImage is more a workaround than a real fix to me ^^

Thanks for the reporting though :)

@lotaris-xx
Copy link
Author

lotaris-xx commented Dec 19, 2020

Sure. It's a Fedora 33 box (although F32 was the same for me).

I tracked it down to the following:

[pid 368144] writev(2, [{iov_base="./Shadow", iov_len=8}, {iov_base=": ", iov_len=2}, {iov_base="/tmp/Shadow/resources/app.asar.unpacked/release/native/libcrypto.so.1.1", iov_len=71}, {iov_base=": ", iov_len=2}, {iov_base="version `OPENSSL_1_1_1b' not found (required by /lib64/libk5crypto.so.3)", iov_len=72}, {iov_base="\n", iov_len=1}], 6) = 156

If I remove the libcrypto.so.1.1 out of resources/app.asar.unpacked/release/native/ then I can run ./AppRun in the unpacked AppImage dir and it all works fine.

Root cause:

$ LD_LIBRARY_PATH=/tmp/Shadow/resources/app.asar.unpacked/release/native/ ldd -v /lib64/libk5crypto.so.3.1
/lib64/libk5crypto.so.3.1: /tmp/Shadow/resources/app.asar.unpacked/release/native/libcrypto.so.1.1: version `OPENSSL_1_1_1b' not found (required by /lib64/li
bk5crypto.so.3.1)
        linux-vdso.so.1 (0x00007ffec11f3000)
        libkrb5support.so.0 => /lib64/libkrb5support.so.0 (0x00007ff3b0e9b000)
        libkeyutils.so.1 => /lib64/libkeyutils.so.1 (0x00007ff3b0e94000)
        libcrypto.so.1.1 => /tmp/Shadow/resources/app.asar.unpacked/release/native/libcrypto.so.1.1 (0x00007ff3b0bc9000)
        libresolv.so.2 => /lib64/libresolv.so.2 (0x00007ff3b0baf000)
        libc.so.6 => /lib64/libc.so.6 (0x00007ff3b09e4000)
        libselinux.so.1 => /lib64/libselinux.so.1 (0x00007ff3b09b7000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00007ff3b09ae000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007ff3b098c000)
        /lib64/ld-linux-x86-64.so.2 (0x00007ff3b0ef0000)
        libpcre2-8.so.0 => /lib64/libpcre2-8.so.0 (0x00007ff3b08f6000)

        Version information:
        /lib64/libk5crypto.so.3.1:
                libkrb5support.so.0 (krb5support_0_MIT) => /lib64/libkrb5support.so.0
                libc.so.6 (GLIBC_2.14) => /lib64/libc.so.6
                libc.so.6 (GLIBC_2.4) => /lib64/libc.so.6
                libc.so.6 (GLIBC_2.25) => /lib64/libc.so.6
                libc.so.6 (GLIBC_2.2.5) => /lib64/libc.so.6
                **libcrypto.so.1.1 (OPENSSL_1_1_1b) => not found**
                libcrypto.so.1.1 (OPENSSL_1_1_0) => /tmp/Shadow/resources/app.asar.unpacked/release/native/libcrypto.so.1.1

With the native libcrypto I see:

        Version information:
        /lib64/libk5crypto.so.3.1:
                libkrb5support.so.0 (krb5support_0_MIT) => /lib64/libkrb5support.so.0
                libc.so.6 (GLIBC_2.14) => /lib64/libc.so.6
                libc.so.6 (GLIBC_2.4) => /lib64/libc.so.6
                libc.so.6 (GLIBC_2.25) => /lib64/libc.so.6
                libc.so.6 (GLIBC_2.2.5) => /lib64/libc.so.6
                libcrypto.so.1.1 (OPENSSL_1_1_1b) => /lib64/libcrypto.so.1.1
                libcrypto.so.1.1 (OPENSSL_1_1_0) => /lib64/libcrypto.so.1.1

So including a libk5crypto.so.3 (and libs that might have a similar version issue) that were linked against the older libcrypto/openssl in the release/native/ dir would likely solve this.

Let me know if you need any other info.

Thanks!

I personally am fine with running shadow.preprod from the unpacked AppImage as every needed lib (outside of the older ffmpeg shipped in the bundle) is provided natively by the fedora folks.

@CoolSilver
Copy link

I have confirmed removing the conflicting libcrypto.so.1.1 file on the stable version also corrects the R-1 error on Fedora 33

@NicolasGuilloux
Copy link
Owner

Maybe the AppImage ships too much library, and it starts to be outdated or is in conflict with the current libraries you have. I guess I'll give this issue to a dev to check why it bugs like that.

I don't like to mess with the libraries ^^

@NicolasGuilloux NicolasGuilloux added Application The community can't fix it, it is Blade's work bug Something isn't working labels Jan 22, 2021
@lerenn
Copy link

lerenn commented Jan 24, 2021

Thank you so much ! I extracted the AppImage, removed the faulty crypto library and add the other one, then repack it all as a AppImage. It works like a charm under Fedora 33 !

@lerenn
Copy link

lerenn commented Mar 18, 2021

When there is an update, it erases all changes so, I have made a script to automatically apply the fix :

#!/bin/bash

# Move modified and original
rm -f ./ShadowBeta.Original.AppImage
mv ShadowBeta.Modified.AppImage ShadowBeta.Original.AppImage

# Extract Image
chmod +x ShadowBeta.Original.AppImage
./ShadowBeta.Original.AppImage --appimage-extract
pushd squashfs-root/resources/app.asar.unpacked/release/native/
rm -f libcrypto.so.1.1 
cp -f /usr/lib64/libk5crypto.so.3 .
popd

# Rebuild image
./appimagetool-x86_64.AppImage squashfs-root ShadowBeta.Modified.AppImage

# Clean up
rm -rf squashfs-root

If it can help someone ;)

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Application The community can't fix it, it is Blade's work bug Something isn't working
Projects
None yet
Development

No branches or pull requests

5 participants