Merge pull request #812 from Nheko-Reborn/jdenticon-packaging
Jdenticon packaging
4 files changed, 27 insertions, 13 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 2f0ec910..5a917b03 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -69,6 +69,7 @@ build-macos:
-DUSE_BUNDLED_BOOST=ON
-DCI_BUILD=ON
- cmake --build build
+ - (cd build && git clone https://github.com/Nheko-Reborn/qt-jdenticon.git && cd qt-jdenticon && qmake && make -j 4 && cp libqtjdenticon.dylib ../nheko.app/Contents/MacOS)
after_script:
- mv ../.hunter .hunter
artifacts:
diff --git a/appveyor.yml b/appveyor.yml
index d54fffba..51bf949d 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -54,12 +54,19 @@ build_script:
- cmake --build build --config Release
+ - git clone https://github.com/Nheko-Reborn/qt-jdenticon.git
+ - cd qt-jdenticon
+ - qmake
+ - nmake
+ - cd ..
+
after_build:
# Variables
- set BUILD=%APPVEYOR_BUILD_FOLDER%
- echo %BUILD%
- mkdir NhekoRelease
- copy build\Release\nheko.exe NhekoRelease\nheko.exe
+ - copy qt-jdenticon\release\qtjdenticon0.dll NhekoRelease\qtjdenticon0.dll
- copy build\_deps\cmark-build\src\Release\cmark.dll NhekoRelease\cmark.dll
- windeployqt --qmldir resources\qml\ NhekoRelease\nheko.exe
diff --git a/io.github.NhekoReborn.Nheko.yaml b/io.github.NhekoReborn.Nheko.yaml
index af010422..5f2c6ddc 100644
--- a/io.github.NhekoReborn.Nheko.yaml
+++ b/io.github.NhekoReborn.Nheko.yaml
@@ -147,6 +147,16 @@ modules:
tag: 1.18.3
type: git
url: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad.git
+ - buildsystem: qmake
+ name: qt-jdenticon
+ no-make-install: true
+ build-commands:
+ - mkdir -p /app/bin/
+ - cp libqtjdenticon.so /app/bin/
+ sources:
+ - commit: 77eb0d62441e03bbbfc2b1d2057c4045ac87fb85
+ type: git
+ url: https://github.com/Nheko-Reborn/qt-jdenticon.git
- buildsystem: meson
config-opts:
- -Ddefault_library=static
diff --git a/src/JdenticonProvider.cpp b/src/JdenticonProvider.cpp
index e2828286..e421c932 100644
--- a/src/JdenticonProvider.cpp
+++ b/src/JdenticonProvider.cpp
@@ -88,20 +88,16 @@ getJdenticonInterface()
if (interface == nullptr && interfaceExists) {
QDir pluginsDir(qApp->applicationDirPath());
- bool plugins = pluginsDir.cd("plugins");
- if (plugins) {
- for (const QString &fileName : pluginsDir.entryList(QDir::Files)) {
- QPluginLoader pluginLoader(pluginsDir.absoluteFilePath(fileName));
- QObject *plugin = pluginLoader.instance();
- if (plugin) {
- interface = qobject_cast<JdenticonInterface *>(plugin);
- if (interface) {
- nhlog::ui()->info("Loaded jdenticon plugin.");
- break;
- }
- }
+ QPluginLoader pluginLoader("qtjdenticon");
+ QObject *plugin = pluginLoader.instance();
+ if (plugin) {
+ interface = qobject_cast<JdenticonInterface *>(plugin);
+ if (interface) {
+ nhlog::ui()->info("Loaded jdenticon plugin.");
}
- } else {
+ }
+
+ if (!interface) {
nhlog::ui()->info("jdenticon plugin not found.");
interfaceExists = false;
}
|