diff --git a/.github/workflows/build_and_release.yml b/.github/workflows/build_and_release.yml index d82a965db09c..87454ef34392 100644 --- a/.github/workflows/build_and_release.yml +++ b/.github/workflows/build_and_release.yml @@ -17,8 +17,8 @@ jobs: container: "ubuntu:16.04" steps: - name: Checkout - uses: actions/checkout@v2 - - uses: actions/cache@v2 + uses: actions/checkout@v3 + - uses: actions/cache@v3 with: path: | /usr/src/ @@ -28,7 +28,7 @@ jobs: appimage-build-dependencies-cache- - name: Build AppImage run: .github/workflows/build_appimage.sh - - uses: actions/upload-artifact@v2 + - uses: actions/upload-artifact@v3 with: name: qBittorrent-Enhanced-Edition-x86_64.AppImage path: ".github/workflows/qBittorrent-Enhanced-Edition*.AppImage*" @@ -63,8 +63,8 @@ jobs: - x86_64-linux-musl steps: - name: Checkout - uses: actions/checkout@v2 - - uses: actions/cache@v2 + uses: actions/checkout@v3 + - uses: actions/cache@v3 with: path: | /usr/src/ @@ -76,7 +76,7 @@ jobs: env: CROSS_HOST: "${{ matrix.cross_host }}" run: .github/workflows/cross_build.sh - - uses: actions/upload-artifact@v2 + - uses: actions/upload-artifact@v3 with: name: qbittorrent-enhanced-nox_${{ matrix.cross_host }}_static path: | diff --git a/.github/workflows/build_appimage.sh b/.github/workflows/build_appimage.sh index e3b304355cc1..1a21ba0124ec 100755 --- a/.github/workflows/build_appimage.sh +++ b/.github/workflows/build_appimage.sh @@ -322,6 +322,27 @@ export XDG_DATA_DIRS="\${this_dir}/usr/share:\${XDG_DATA_DIRS}:/usr/share:/usr/l export QT_QPA_PLATFORMTHEMES=gtk2 export QT_STYLE_OVERRIDE=qt6gtk2 +# Find the system certificates location +# https://gitlab.com/probono/platformissues/blob/master/README.md#certificates +possible_locations=( + "/etc/ssl/certs/ca-certificates.crt" # Debian/Ubuntu/Gentoo etc. + "/etc/pki/tls/certs/ca-bundle.crt" # Fedora/RHEL + "/etc/ssl/ca-bundle.pem" # OpenSUSE + "/etc/pki/tls/cacert.pem" # OpenELEC + "/etc/ssl/certs" # SLES10/SLES11, https://golang.org/issue/12139 + "/usr/share/ca-certs/.prebuilt-store/" # Clear Linux OS; https://github.com/knapsu/plex-media-player-appimage/issues/17#issuecomment-437710032 + "/system/etc/security/cacerts" # Android + "/etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem" # CentOS/RHEL 7 + "/etc/ssl/cert.pem" # Alpine Linux +) + +for location in "\${possible_locations[@]}"; do + if [ -r "\${location}" ]; then + export SSL_CERT_FILE="\${location}" + break + fi +done + exec "\${this_dir}/usr/bin/qbittorrent" "\$@" EOF chmod 755 -v /tmp/qbee/AppDir/AppRun diff --git a/.github/workflows/cross_build.sh b/.github/workflows/cross_build.sh index 6ab0259ff926..c8f2940fe339 100755 --- a/.github/workflows/cross_build.sh +++ b/.github/workflows/cross_build.sh @@ -252,7 +252,7 @@ prepare_ssl() { touch "/usr/src/openssl-${openssl_ver}/.unpack_ok" fi cd "/usr/src/openssl-${openssl_ver}/" - ./Configure -static --cross-compile-prefix="${CROSS_HOST}-" --prefix="${CROSS_PREFIX}" "${OPENSSL_COMPILER}" + ./Configure -static --openssldir=/etc/ssl --cross-compile-prefix="${CROSS_HOST}-" --prefix="${CROSS_PREFIX}" "${OPENSSL_COMPILER}" make -j$(nproc) make install_sw if [ -f "${CROSS_PREFIX}/lib64/libssl.a" ]; then