From f77be6fdd77a9c996791940a65e37fc207c1ea90 Mon Sep 17 00:00:00 2001 From: Abestanis Date: Wed, 9 Oct 2024 01:09:00 +0200 Subject: [PATCH 1/8] Fix building the translations --- CMakeLists.txt | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 0a5fa136..f16d6c57 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -117,7 +117,7 @@ source_group("Resources" FILES ${RESOURCES}) qt6_add_resources(RESOURCES_SOURCES ${RESOURCES}) set_source_files_properties(${RESOURCES_SOURCES} PROPERTIES GENERATED ON) -if(Qt5LinguistTools_FOUND) +if(Qt6LinguistTools_FOUND) set(MAIN_TRANSLATION_FILES src/translations/main_en.ts src/translations/main_fr.ts @@ -156,13 +156,13 @@ if(Qt5LinguistTools_FOUND) set_source_files_properties(${DYN_TRANSLATION_FILES} PROPERTIES OUTPUT_LOCATION ${CMAKE_CURRENT_BINARY_DIR}/translations) - qt5_create_translation(GEN_TRANSLATION_FILES + qt6_create_translation(GEN_TRANSLATION_FILES ${MAIN_TRANSLATION_FILES} ${SOURCES} ${PLATFORM_SOURCES} ${HEADERS} ${PLATFORM_HEADERS} OPTIONS -locations none) - qt5_add_translation(GEN_DYN_TRANSLATION_FILES ${DYN_TRANSLATION_FILES}) + qt6_add_translation(GEN_DYN_TRANSLATION_FILES ${DYN_TRANSLATION_FILES}) list(APPEND GEN_TRANSLATION_FILES ${GEN_DYN_TRANSLATION_FILES}) -endif(Qt5LinguistTools_FOUND) +endif(Qt6LinguistTools_FOUND) add_library(birdtray_lib STATIC ${SOURCES} ${PLATFORM_SOURCES} ${RESOURCES_SOURCES} ${GEN_TRANSLATION_FILES} @@ -247,13 +247,13 @@ else() install(FILES src/res/birdtray.svg DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/scalable/apps RENAME com.ulduzsoft.Birdtray.svg) - if(Qt5LinguistTools_FOUND) + if(Qt6LinguistTools_FOUND) install(DIRECTORY ${CMAKE_BINARY_DIR}/translations DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/ulduzsoft/birdtray) endif() endif() -if(Qt5LinguistTools_FOUND) +if(Qt6LinguistTools_FOUND) add_custom_target(clean_translations COMMENT "Remove obsolete translation entries") foreach(TRANSLATION_FILE ${MAIN_TRANSLATION_FILES}) get_filename_component(TRANSLATION_NAME ${TRANSLATION_FILE} NAME) @@ -265,7 +265,7 @@ if(Qt5LinguistTools_FOUND) "${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/${TRANSLATION_NAME}_lst_file") endif() add_custom_command(TARGET clean_translations - COMMAND ${Qt5_LUPDATE_EXECUTABLE} + COMMAND ${Qt6_LUPDATE_EXECUTABLE} ARGS -locations none -no-obsolete "@${TRANSLATION_LST_FILE}" -ts ${CMAKE_CURRENT_SOURCE_DIR}/${TRANSLATION_FILE} DEPENDS ${TRANSLATION_LST_FILE}) From 428a28e444baafb6e9874fab20d7ddde47f1ed6c Mon Sep 17 00:00:00 2001 From: Abestanis Date: Wed, 9 Oct 2024 01:09:32 +0200 Subject: [PATCH 2/8] Switch to QLibraryInfo::path --- src/birdtrayapp.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/birdtrayapp.cpp b/src/birdtrayapp.cpp index f942eee0..2ab73647 100644 --- a/src/birdtrayapp.cpp +++ b/src/birdtrayapp.cpp @@ -130,7 +130,7 @@ bool BirdtrayApp::loadTranslations() { [](QString path) { return path.append("/translations"); }); QLocale locale = QLocale::system(); bool success = loadTranslation( - qtTranslator, locale, "qt", {QLibraryInfo::location(QLibraryInfo::TranslationsPath)}); + qtTranslator, locale, "qt", {QLibraryInfo::path(QLibraryInfo::TranslationsPath)}); success &= loadTranslation(dynamicTranslator, locale, "dynamic", locations); success &= loadTranslation(mainTranslator, locale, "main", locations); return success; From 12561dd9830f47f8e9b51434a434eade935c89e6 Mon Sep 17 00:00:00 2001 From: Abestanis Date: Wed, 9 Oct 2024 01:48:35 +0200 Subject: [PATCH 3/8] Fix CMakeLists.txt for Windows --- CMakeLists.txt | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index f16d6c57..c778f683 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -45,10 +45,8 @@ if(WIN32) src/processhandle.cpp) set(PLATFORM_EXE_SOURCES src/res/birdtray.rc) set(PLATFORM_HEADERS src/windowtools_win.h src/birdtrayeventfilter.h src/processhandle.h) - find_package(Qt5WinExtras CONFIG REQUIRED) - list(APPEND REQUIRED_MODULES Qt6::WinExtras) else() - find_library(X11 X11) + list(APPEND REQUIRED_MODULES X11) set(PLATFORM_SOURCES src/windowtools_x11.cpp) set(PLATFORM_HEADERS src/windowtools_x11.h) endif(WIN32) @@ -173,7 +171,7 @@ target_link_libraries(birdtray_lib PUBLIC ${REQUIRED_MODULES}) add_executable(birdtray ${EXECUTABLE_OPTIONS} src/main.cpp ${PLATFORM_EXE_SOURCES} ${RESOURCES_SOURCES} ${HEADERS} ${PLATFORM_HEADERS}) -target_link_libraries(birdtray birdtray_lib X11) +target_link_libraries(birdtray birdtray_lib) if(MSVC) target_compile_options(birdtray_lib PUBLIC /utf-8) From b46d5b1de2b30de7c1ec075a81bf2ea60be77601 Mon Sep 17 00:00:00 2001 From: Abestanis Date: Wed, 9 Oct 2024 01:50:00 +0200 Subject: [PATCH 4/8] Fix argument type for QAbstractNativeEventFilter::nativeEventFilter --- src/birdtrayeventfilter.cpp | 2 +- src/birdtrayeventfilter.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/birdtrayeventfilter.cpp b/src/birdtrayeventfilter.cpp index 9fa39b6d..7db9da83 100644 --- a/src/birdtrayeventfilter.cpp +++ b/src/birdtrayeventfilter.cpp @@ -4,7 +4,7 @@ bool BirdtrayEventFilter::nativeEventFilter( - const QByteArray &eventType, void *message, long *result) { + const QByteArray &eventType, void *message, qintptr *result) { if (eventType == "windows_generic_MSG") { MSG* messageEvent = static_cast(message); if (messageEvent->message == WM_CLOSE && QApplication::activeWindow() == nullptr) { diff --git a/src/birdtrayeventfilter.h b/src/birdtrayeventfilter.h index 3c40f699..2f6a0b2d 100644 --- a/src/birdtrayeventfilter.h +++ b/src/birdtrayeventfilter.h @@ -10,7 +10,7 @@ */ class BirdtrayEventFilter: public QAbstractNativeEventFilter { public: - bool nativeEventFilter(const QByteArray &eventType, void *message, long *result) override; + bool nativeEventFilter(const QByteArray &eventType, void *message, qintptr *result) override; }; From 457a97bf8ef79355d61c52f4adecbc4ca01f0b81 Mon Sep 17 00:00:00 2001 From: Abestanis Date: Wed, 9 Oct 2024 01:50:30 +0200 Subject: [PATCH 5/8] Comment out Win task bar code for now --- src/updatedownloaddialog.cpp | 22 +++++++++++----------- src/updatedownloaddialog.h | 4 ++-- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/src/updatedownloaddialog.cpp b/src/updatedownloaddialog.cpp index db8feba8..40475204 100644 --- a/src/updatedownloaddialog.cpp +++ b/src/updatedownloaddialog.cpp @@ -2,14 +2,14 @@ #include "ui_updatedownloaddialog.h" #ifdef Q_OS_WIN -# include +//# include #endif UpdateDownloadDialog::UpdateDownloadDialog(QWidget* parent) : QDialog(parent), ui(new Ui::UpdateDownloadDialog) { #ifdef Q_OS_WIN - taskBarButton = new QWinTaskbarButton(this); +// taskBarButton = new QWinTaskbarButton(this); #endif ui->setupUi(this); actionButton = new QPushButton(tr("Background"), this); @@ -21,7 +21,7 @@ UpdateDownloadDialog::UpdateDownloadDialog(QWidget* parent) : UpdateDownloadDialog::~UpdateDownloadDialog() { #ifdef Q_OS_WIN - delete taskBarButton; +// delete taskBarButton; #endif delete ui; actionButton->deleteLater(); @@ -34,8 +34,8 @@ void UpdateDownloadDialog::reset() { ui->progressBar->setValue(0); ui->progressBar->show(); #ifdef Q_OS_WIN - taskBarButton->progress()->reset(); - taskBarButton->progress()->show(); +// taskBarButton->progress()->reset(); +// taskBarButton->progress()->show(); #endif } @@ -43,8 +43,8 @@ void UpdateDownloadDialog::onDownloadComplete() { downloadCompleted = true; ui->progressBar->hide(); #ifdef Q_OS_WIN - taskBarButton->progress()->setRange(0, 100); - taskBarButton->progress()->setValue(100); +// taskBarButton->progress()->setRange(0, 100); +// taskBarButton->progress()->setValue(100); #endif actionButton->setText( QCoreApplication::translate("UpdateDialog", "Update and restart")); ui->label->setText(tr("Download finished. Restart and update Birdtray?")); @@ -58,7 +58,7 @@ void UpdateDownloadDialog::onDownloadProgress(qint64 bytesReceived, qint64 bytes ui->label->setText(tr("Downloading Birdtray installer...")); ui->progressBar->setRange(0, 0); #ifdef Q_OS_WIN - taskBarButton->progress()->setRange(0, 0); +// taskBarButton->progress()->setRange(0, 0); #endif return; } @@ -70,8 +70,8 @@ void UpdateDownloadDialog::onDownloadProgress(qint64 bytesReceived, qint64 bytes ui->progressBar->setRange(0, 100); ui->progressBar->setValue(percent); #ifdef Q_OS_WIN - taskBarButton->progress()->setRange(0, 100); - taskBarButton->progress()->setValue(percent); +// taskBarButton->progress()->setRange(0, 100); +// taskBarButton->progress()->setValue(percent); #endif } @@ -90,6 +90,6 @@ void UpdateDownloadDialog::onActionPressed() { void UpdateDownloadDialog::showEvent(QShowEvent* event) { QDialog::showEvent(event); #ifdef Q_OS_WIN - taskBarButton->setWindow(windowHandle()); +// taskBarButton->setWindow(windowHandle()); #endif } diff --git a/src/updatedownloaddialog.h b/src/updatedownloaddialog.h index ea841b02..298ef2e6 100644 --- a/src/updatedownloaddialog.h +++ b/src/updatedownloaddialog.h @@ -5,7 +5,7 @@ #include #ifdef Q_OS_WIN -# include +//# include #endif namespace Ui { @@ -76,7 +76,7 @@ private Q_SLOTS: /** * The windows task-bar button. */ - QWinTaskbarButton* taskBarButton = nullptr; +// QWinTaskbarButton* taskBarButton = nullptr; #endif }; From 2985bf302753b88118f99be91d2afa6211d68b36 Mon Sep 17 00:00:00 2001 From: Abestanis Date: Wed, 9 Oct 2024 23:52:26 +0200 Subject: [PATCH 6/8] Remove taskbar progres indicator during download --- src/updatedownloaddialog.cpp | 30 +----------------------------- src/updatedownloaddialog.h | 10 ---------- 2 files changed, 1 insertion(+), 39 deletions(-) diff --git a/src/updatedownloaddialog.cpp b/src/updatedownloaddialog.cpp index 40475204..417055d2 100644 --- a/src/updatedownloaddialog.cpp +++ b/src/updatedownloaddialog.cpp @@ -1,16 +1,9 @@ #include "updatedownloaddialog.h" #include "ui_updatedownloaddialog.h" -#ifdef Q_OS_WIN -//# include -#endif - UpdateDownloadDialog::UpdateDownloadDialog(QWidget* parent) : QDialog(parent), ui(new Ui::UpdateDownloadDialog) { -#ifdef Q_OS_WIN -// taskBarButton = new QWinTaskbarButton(this); -#endif ui->setupUi(this); actionButton = new QPushButton(tr("Background"), this); ui->buttonBox->addButton(actionButton, QDialogButtonBox::ButtonRole::ActionRole); @@ -20,9 +13,6 @@ UpdateDownloadDialog::UpdateDownloadDialog(QWidget* parent) : } UpdateDownloadDialog::~UpdateDownloadDialog() { -#ifdef Q_OS_WIN -// delete taskBarButton; -#endif delete ui; actionButton->deleteLater(); } @@ -33,20 +23,12 @@ void UpdateDownloadDialog::reset() { ui->label->setText(tr("Downloading Birdtray installer...")); ui->progressBar->setValue(0); ui->progressBar->show(); -#ifdef Q_OS_WIN -// taskBarButton->progress()->reset(); -// taskBarButton->progress()->show(); -#endif } void UpdateDownloadDialog::onDownloadComplete() { downloadCompleted = true; ui->progressBar->hide(); -#ifdef Q_OS_WIN -// taskBarButton->progress()->setRange(0, 100); -// taskBarButton->progress()->setValue(100); -#endif - actionButton->setText( QCoreApplication::translate("UpdateDialog", "Update and restart")); + actionButton->setText(QCoreApplication::translate("UpdateDialog", "Update and restart")); ui->label->setText(tr("Download finished. Restart and update Birdtray?")); show(); raise(); @@ -57,9 +39,6 @@ void UpdateDownloadDialog::onDownloadProgress(qint64 bytesReceived, qint64 bytes if (bytesTotal <= 0) { ui->label->setText(tr("Downloading Birdtray installer...")); ui->progressBar->setRange(0, 0); -#ifdef Q_OS_WIN -// taskBarButton->progress()->setRange(0, 0); -#endif return; } ui->label->setText( @@ -69,10 +48,6 @@ void UpdateDownloadDialog::onDownloadProgress(qint64 bytesReceived, qint64 bytes int percent = qRound((bytesReceived / (double) bytesTotal) * 100.0); ui->progressBar->setRange(0, 100); ui->progressBar->setValue(percent); -#ifdef Q_OS_WIN -// taskBarButton->progress()->setRange(0, 100); -// taskBarButton->progress()->setValue(percent); -#endif } bool UpdateDownloadDialog::wasCanceled() const { @@ -89,7 +64,4 @@ void UpdateDownloadDialog::onActionPressed() { void UpdateDownloadDialog::showEvent(QShowEvent* event) { QDialog::showEvent(event); -#ifdef Q_OS_WIN -// taskBarButton->setWindow(windowHandle()); -#endif } diff --git a/src/updatedownloaddialog.h b/src/updatedownloaddialog.h index 298ef2e6..b1ce6148 100644 --- a/src/updatedownloaddialog.h +++ b/src/updatedownloaddialog.h @@ -4,9 +4,6 @@ #include #include -#ifdef Q_OS_WIN -//# include -#endif namespace Ui { class UpdateDownloadDialog; @@ -71,13 +68,6 @@ private Q_SLOTS: * The first action button. */ QPushButton* actionButton; - -#ifdef Q_OS_WIN - /** - * The windows task-bar button. - */ -// QWinTaskbarButton* taskBarButton = nullptr; -#endif }; #endif // UPDATE_DOWNLOAD_DIALOG_H From 86b39264fc2ec1b172a4ac6a3142656e5e5832af Mon Sep 17 00:00:00 2001 From: Abestanis Date: Wed, 9 Oct 2024 01:52:06 +0200 Subject: [PATCH 7/8] Update and try to fix CI --- .github/workflows/codeql-analysis.yml | 10 +++--- .github/workflows/main.yml | 45 +++++++-------------------- .github/workflows/translations.yml | 4 +-- 3 files changed, 19 insertions(+), 40 deletions(-) diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml index f9e1c8fa..9d1f73f8 100644 --- a/.github/workflows/codeql-analysis.yml +++ b/.github/workflows/codeql-analysis.yml @@ -17,22 +17,22 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Initialize CodeQL uses: github/codeql-action/init@v2 with: languages: cpp, python - - name: Install Qt ${{ matrix.qt_version }} - uses: jurplel/install-qt-action@v3 + - name: Install Qt + uses: jurplel/install-qt-action@v4 with: - version: 5.14.1 + version: 6.8.0 cache: true dir: ${{ runner.temp }}/Qt - name: Install additional dependencies shell: bash run: | sudo apt-get update -qq; - sudo apt install -qq libx11-dev libqt5svg5-dev libx11-xcb-dev + sudo apt install -qq libx11-dev qt6-qtsvg-dev - name: Create build environment run: cmake -E make_directory ${{ runner.workspace }}/build - name: Configure CMake diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index b612db97..ec5de576 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -9,27 +9,19 @@ jobs: strategy: matrix: os: [windows-latest, ubuntu-latest] - arch: [x86, x64] - qt_version: [5.9.9, 5.15.2] + qt_version: [6.0.4, 6.8.0] include: - os: windows-latest - arch: x86 - qt_compile_suite: win32_msvc2019 - - os: windows-latest - arch: x64 - qt_compile_suite: win64_msvc2019_64 + qt_compile_suite: msvc2022_64 exclude: # We only want to test for the latest version of Qt on Windows - os: windows-latest - qt_version: 5.9.9 - # We only compile for the current architecture of the runner for Linux - - os: ubuntu-latest - arch: x86 + qt_version: 6.8.0 steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Install Qt ${{ matrix.qt_version }} - uses: jurplel/install-qt-action@v3 + uses: jurplel/install-qt-action@v4 with: version: ${{ matrix.qt_version }} arch: ${{ matrix.qt_compile_suite }} @@ -37,20 +29,12 @@ jobs: dir: ${{ runner.temp }}/Qt - name: Install additional dependencies shell: bash - env: - ARCH: ${{ matrix.arch }} run: | if [ "$RUNNER_OS" == "Linux" ]; then sudo apt-get update -qq; sudo apt install -qq libx11-dev libqt5svg5-dev libx11-xcb-dev desktop-file-utils elif [ "$RUNNER_OS" == "Windows" ]; then - if [ "$ARCH" == "x86" ]; then - echo "CMAKE_PLATFORM_ARG=-A Win32" >> $GITHUB_ENV - export archParam="--forcex86" - else - echo "CMAKE_PLATFORM_ARG=-A x64" >> $GITHUB_ENV - fi - choco install -y --force $archParam openssl.light --version=1.1.1 + choco install -y --force openssl.light --version=1.1.1 echo "C:\\Program Files\\OpenSSL" >> $GITHUB_PATH else echo "$RUNNER_OS not supported" @@ -61,7 +45,7 @@ jobs: - name: Configure CMake shell: bash working-directory: ${{ runner.workspace }}/build - run: cmake $GITHUB_WORKSPACE $CMAKE_PLATFORM_ARG -DCMAKE_BUILD_TYPE=Release -DCOMPILER_WARNINGS_AS_ERRORS=ON -DBUILD_WITH_TESTS=ON -DDONT_EXECUTE_INSTALLER=ON + run: cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=Release -DCOMPILER_WARNINGS_AS_ERRORS=ON -DBUILD_WITH_TESTS=ON -DDONT_EXECUTE_INSTALLER=ON - name: Register build problem matchers run: | echo "::add-matcher::.github/problem-matchers/linguist.json" @@ -116,10 +100,10 @@ jobs: mkdir installer/cache mv installer/$installerFile installer/cache - name: Cache installer - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 if: steps.check-deploy.outputs.is_deploy == 'true' with: - name: installer-${{ runner.os }}-${{ matrix.arch }}-${{ github.sha }} + name: installer-${{ runner.os }}-${{ github.sha }} path: installer/cache/${{ steps.find_installer_file.outputs.installer_file }} release: @@ -129,7 +113,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Check if this is a deployment build id: deploy_check shell: bash @@ -141,16 +125,11 @@ jobs: echo "Tag does not match: ${{ github.event.ref }}" exit 1 fi - - name: Download installer (x86) - uses: actions/download-artifact@v4.1.7 - with: - name: installer-Windows-x86-${{ github.sha }} - path: installer-x86 - name: Download installer (x64) - uses: actions/download-artifact@v4.1.7 + uses: actions/download-artifact@v4 with: name: installer-Windows-x64-${{ github.sha }} - path: installer-x64 + path: installer - name: Create Release uses: ncipollo/release-action@v1 with: diff --git a/.github/workflows/translations.yml b/.github/workflows/translations.yml index 4d397b74..e52b4fee 100644 --- a/.github/workflows/translations.yml +++ b/.github/workflows/translations.yml @@ -12,9 +12,9 @@ jobs: check: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Set up Python 3.x - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 with: python-version: '3.x' - name: Check translation filenames From 79c783ad9c369312106f2a0dbc5e1f39bfd1a181 Mon Sep 17 00:00:00 2001 From: Abestanis Date: Wed, 9 Oct 2024 02:07:31 +0200 Subject: [PATCH 8/8] Try to fix CI --- .github/workflows/codeql-analysis.yml | 2 +- .github/workflows/main.yml | 8 ++++---- CMakeLists.txt | 1 + 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml index 9d1f73f8..c33e9270 100644 --- a/.github/workflows/codeql-analysis.yml +++ b/.github/workflows/codeql-analysis.yml @@ -32,7 +32,7 @@ jobs: shell: bash run: | sudo apt-get update -qq; - sudo apt install -qq libx11-dev qt6-qtsvg-dev + sudo apt install -qq libx11-dev libx11-xcb-dev - name: Create build environment run: cmake -E make_directory ${{ runner.workspace }}/build - name: Configure CMake diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index ec5de576..1da8dfef 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -9,14 +9,14 @@ jobs: strategy: matrix: os: [windows-latest, ubuntu-latest] - qt_version: [6.0.4, 6.8.0] + qt_version: [6.2.4, 6.8.0] include: - os: windows-latest - qt_compile_suite: msvc2022_64 + qt_compile_suite: win64_msvc2022_64 exclude: # We only want to test for the latest version of Qt on Windows - os: windows-latest - qt_version: 6.8.0 + qt_version: 6.2.4 steps: - name: Checkout repository uses: actions/checkout@v4 @@ -32,7 +32,7 @@ jobs: run: | if [ "$RUNNER_OS" == "Linux" ]; then sudo apt-get update -qq; - sudo apt install -qq libx11-dev libqt5svg5-dev libx11-xcb-dev desktop-file-utils + sudo apt install -qq libx11-dev libx11-xcb-dev desktop-file-utils elif [ "$RUNNER_OS" == "Windows" ]; then choco install -y --force openssl.light --version=1.1.1 echo "C:\\Program Files\\OpenSSL" >> $GITHUB_PATH diff --git a/CMakeLists.txt b/CMakeLists.txt index c778f683..49470d10 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -46,6 +46,7 @@ if(WIN32) set(PLATFORM_EXE_SOURCES src/res/birdtray.rc) set(PLATFORM_HEADERS src/windowtools_win.h src/birdtrayeventfilter.h src/processhandle.h) else() + find_library(X11 X11) list(APPEND REQUIRED_MODULES X11) set(PLATFORM_SOURCES src/windowtools_x11.cpp) set(PLATFORM_HEADERS src/windowtools_x11.h)