From 064bd3eaf2fe8813cf15636932efed0deae560f7 Mon Sep 17 00:00:00 2001 From: arm64v8a <48624112+arm64v8a@users.noreply.github.com> Date: Tue, 31 Jan 2023 17:24:15 +0900 Subject: [PATCH] update build --- .github/workflows/build-qv2ray-cmake.yml | 62 +++++++----------------- README.md | 6 +++ libs/deploy_linux64.sh | 3 +- ui/mainwindow_grpc.cpp | 6 +-- 4 files changed, 28 insertions(+), 49 deletions(-) diff --git a/.github/workflows/build-qv2ray-cmake.yml b/.github/workflows/build-qv2ray-cmake.yml index bef7ecd7a..0b349aa12 100644 --- a/.github/workflows/build-qv2ray-cmake.yml +++ b/.github/workflows/build-qv2ray-cmake.yml @@ -16,7 +16,7 @@ jobs: build-go: strategy: matrix: - cross_os: [ windows, linux, darwin ] + cross_os: [ windows, linux ] cross_arch: [ amd64 ] include: - cross_os: public_res @@ -58,15 +58,13 @@ jobs: build-cpp: strategy: matrix: - platform: [ windows-2022, ubuntu-20.04, macos-10.15 ] + platform: [ windows-2022, ubuntu-20.04 ] arch: [ x64 ] fail-fast: false runs-on: ${{ matrix.platform }} env: ACTIONS_ALLOW_UNSECURE_COMMANDS: true - needs: - - build-go steps: - name: Checking out sources uses: actions/checkout@v3 @@ -79,22 +77,7 @@ jobs: # 14.1 is for vs2017, 14.2 is vs2019, following the upstream vcpkg build from Qv2ray-deps repo toolset: 14.2 arch: ${{ matrix.arch }} - - name: Download Artifacts for macOS - if: matrix.platform == 'macos-10.15' - uses: actions/download-artifact@v3 - with: - path: download-artifact # ========================================================================================================= Qt Install - - name: macOS - Install Qt 5.15 - if: matrix.platform == 'macos-10.15' - uses: jurplel/install-qt-action@v3 - with: - version: 5.15.2 - py7zrversion: ' ' - aqtversion: ' ' - setup-python: false - cache: true - cache-key-prefix: QtCache-${{ matrix.platform }}-${{ matrix.arch }} - name: Windows - Download Custom Qt 5.15 SDK shell: bash if: matrix.platform == 'windows-2022' @@ -104,12 +87,6 @@ jobs: 7z x *.7z rm *.7z mv Qt* Qt - - name: Linux - Install Qt 5.12 via apt - shell: bash - if: matrix.platform == 'ubuntu-20.04' - run: | - sudo apt-get update - sudo apt-get install -y zlib1g-dev fcitx-frontend-qt5 qtbase5-dev qttools5-dev libqt5svg5-dev libqt5x11extras5-dev # ========================================================================================================= 编译与 Qt 无关的依赖 - name: Install ninja-build tool uses: seanmiddleditch/gha-setup-ninja@v3 @@ -121,9 +98,18 @@ jobs: key: DepsCache-${{ matrix.platform }}-${{ matrix.arch }}-${{ hashFiles('libs/build_deps_*.sh') }} - name: Build Dependencies shell: bash - if: steps.cache-deps.outputs.cache-hit != 'true' + if: steps.cache-deps.outputs.cache-hit != 'true' && matrix.platform != 'ubuntu-20.04' run: | ./libs/build_deps_all.sh + - name: Build Dependencies (Docker) + shell: bash + if: steps.cache-deps.outputs.cache-hit != 'true' && matrix.platform == 'ubuntu-20.04' + run: | + docker run --rm \ + -v $PWD:/nekoray \ + -w /nekoray \ + ghcr.io/matsuridayo/debian10-qt5:20230131 \ + bash -c "./libs/build_deps_all.sh" # ========================================================================================================= Generate MakeFile and Build - name: Windows - Generate MakeFile and Build shell: bash @@ -143,22 +129,11 @@ jobs: shell: bash if: matrix.platform == 'ubuntu-20.04' run: | - mkdir build - cd build - cmake -GNinja -DCMAKE_BUILD_TYPE=Release .. - ninja - cd .. - ./libs/deploy_linux64.sh - - name: macOS - Generate MakeFile and Build - shell: bash - if: matrix.platform == 'macos-10.15' - run: | - mkdir build - cd build - cmake -GNinja -DCMAKE_BUILD_TYPE=Release -DNKR_PACKAGE_MACOS=1 .. - ninja - cd .. - ./libs/deploy_macos.sh + docker run --rm \ + -v $PWD:/nekoray \ + -w /nekoray \ + ghcr.io/matsuridayo/debian10-qt5:20230131 \ + bash -c "mkdir build && pushd build && cmake -GNinja -DCMAKE_BUILD_TYPE=Release .. && ninja && popd &&./libs/deploy_linux64.sh" # ========================================================================================================= Deployments - name: Tar files shell: bash @@ -200,9 +175,6 @@ jobs: mv windows64 nekoray zip -r $version_standalone-windows64.zip nekoray rm -rf nekoray - #### - mv macos-amd64/nekoray.dmg $version_standalone-macos-amd64.dmg - rm -rf macos-amd64 - name: Uploading Artifact uses: actions/upload-artifact@master with: diff --git a/README.md b/README.md index b5abe7d62..c7fe11165 100644 --- a/README.md +++ b/README.md @@ -66,6 +66,12 @@ https://matsuridayo.github.io [Linux 运行教程](docs/Run_Linux.md) +## macOS + +由于缺乏维护,不再提供 macOS 版本下载。最后包含 dmg 的版本是 2.12。 + +仍可以参照下方教程自行编译,常见问题请参考历史 Issue,欢迎 Pull Request 修复。 + ## 编译教程 / Compile Tutorial [Linux](docs/Build_Linux.md) diff --git a/libs/deploy_linux64.sh b/libs/deploy_linux64.sh index 0ccdb14d1..6220f60b1 100755 --- a/libs/deploy_linux64.sh +++ b/libs/deploy_linux64.sh @@ -23,7 +23,8 @@ cp $USR_LIB/libQt5Svg.so.5 . cp $USR_LIB/libQt5Widgets.so.5 . cp $USR_LIB/libQt5X11Extras.so.5 . cp $USR_LIB/libQt5XcbQpa.so.5 . -cp $USR_LIB/libxcb-util.so.1 . +cp $USR_LIB/libdouble-conversion.so.? . +cp $USR_LIB/libxcb-util.so.? . cp $USR_LIB/libicuuc.so.?? . cp $USR_LIB/libicui18n.so.?? . cp $USR_LIB/libicudata.so.?? . diff --git a/ui/mainwindow_grpc.cpp b/ui/mainwindow_grpc.cpp index fa187293d..fc35556db 100644 --- a/ui/mainwindow_grpc.cpp +++ b/ui/mainwindow_grpc.cpp @@ -41,12 +41,13 @@ void MainWindow::setup_grpc() { inline bool speedtesting = false; void MainWindow::speedtest_current_group(int mode) { - if (speedtesting) return; auto profiles = get_selected_or_group(); if (profiles.isEmpty()) return; auto group = NekoRay::profileManager->CurrentGroup(); if (group->archive) return; +#ifndef NKR_NO_GRPC + if (speedtesting) return; QStringList full_test_flags; if (mode == libcore::FullTest) { bool ok; @@ -60,9 +61,8 @@ void MainWindow::speedtest_current_group(int mode) { full_test_flags = s.trimmed().split(","); if (!ok) return; } - speedtesting = true; -#ifndef NKR_NO_GRPC + runOnNewThread([this, profiles, mode, full_test_flags]() { QMutex lock_write; QMutex lock_return;