Date: Saturday, October 17, 2020 @ 18:20:21 Author: arojas Revision: 725560
archrelease: copy trunk to community-x86_64 Added: kjots/repos/community-x86_64/PKGBUILD (from rev 725559, kjots/trunk/PKGBUILD) kjots/repos/community-x86_64/kjots-kontactinterface-20.08.patch (from rev 725559, kjots/trunk/kjots-kontactinterface-20.08.patch) Deleted: kjots/repos/community-x86_64/PKGBUILD ------------------------------------+ PKGBUILD | 67 +++++++-------- kjots-kontactinterface-20.08.patch | 148 +++++++++++++++++++++++++++++++++++ 2 files changed, 180 insertions(+), 35 deletions(-) Deleted: PKGBUILD =================================================================== --- PKGBUILD 2020-10-17 18:20:14 UTC (rev 725559) +++ PKGBUILD 2020-10-17 18:20:21 UTC (rev 725560) @@ -1,35 +0,0 @@ -# Maintainer: Antonio Rojas <aro...@archlinux.org> - -pkgname=kjots -pkgver=5.0.2 -pkgrel=6 -pkgdesc="A note taking application for KDE" -url="https://www.kde.org/applications/utilities/kjots/" -arch=(x86_64) -license=(GPL) -depends=(kontactinterface akonadi akonadi-notes kpimtextedit) -makedepends=(extra-cmake-modules kdoctools boost kdelibs4support) -source=("https://download.kde.org/stable/$pkgname/$pkgver/$pkgname-$pkgver.tar.xz" - kjots-kbookmarks-5.69.patch::"https://cgit.kde.org/kjots.git/patch/?id=ca6f4b96") -sha256sums=('5359aefb7b44027d7abbdafb0d501a7b30695119d5d5c8a75cfcee98e428fae3' - '269986ad104cf6b99d37a88340f60a84284d9400afcd2c18c7e9ad5457d34cc1') - -prepare() { - mkdir -p build - - cd $pkgname-$pkgver - patch -p1 -i ../kjots-kbookmarks-5.69.patch # Fix crash with kbookmarks 5.69 -} - -build() { - cd build - cmake ../$pkgname-$pkgver \ - -DBUILD_TESTING=OFF - make -} - -package() { - cd build - make DESTDIR="$pkgdir" install -} - Copied: kjots/repos/community-x86_64/PKGBUILD (from rev 725559, kjots/trunk/PKGBUILD) =================================================================== --- PKGBUILD (rev 0) +++ PKGBUILD 2020-10-17 18:20:21 UTC (rev 725560) @@ -0,0 +1,32 @@ +# Maintainer: Antonio Rojas <aro...@archlinux.org> + +pkgname=kjots +pkgver=5.0.2 +pkgrel=7 +pkgdesc="A note taking application for KDE" +url="https://www.kde.org/applications/utilities/kjots/" +arch=(x86_64) +license=(GPL) +depends=(kontactinterface akonadi akonadi-notes kpimtextedit grantlee) +makedepends=(extra-cmake-modules kdoctools boost kdelibs4support) +source=("https://download.kde.org/stable/$pkgname/$pkgver/$pkgname-$pkgver.tar.xz" + kjots-kbookmarks-5.69.patch::"https://invent.kde.org/pim/kjots/-/commit/ca6f4b96.patch" + kjots-kontactinterface-20.08.patch) +sha256sums=('5359aefb7b44027d7abbdafb0d501a7b30695119d5d5c8a75cfcee98e428fae3' + '2afdf86836cda549445b8ce16957c252f7edee43569f9f695c3e430564a54a08' + '362deabee18c9f001b14912e93bfd7b6f49423ca35a10ef8b193d6a8af7ffa11') + +prepare() { + patch -d $pkgname-$pkgver -p1 -i ../kjots-kbookmarks-5.69.patch # Fix crash with kbookmarks 5.69 + patch -d $pkgname-$pkgver -p1 -i ../kjots-kontactinterface-20.08.patch # Fix build with kontactinterface 20.08 +} + +build() { + cmake -B build -S $pkgname-$pkgver \ + -DBUILD_TESTING=OFF + cmake --build build +} + +package() { + DESTDIR="$pkgdir" cmake --install build +} Copied: kjots/repos/community-x86_64/kjots-kontactinterface-20.08.patch (from rev 725559, kjots/trunk/kjots-kontactinterface-20.08.patch) =================================================================== --- kjots-kontactinterface-20.08.patch (rev 0) +++ kjots-kontactinterface-20.08.patch 2020-10-17 18:20:21 UTC (rev 725560) @@ -0,0 +1,148 @@ +From bcf49fb95bee12bbc4bef0578285ad296deafcae Mon Sep 17 00:00:00 2001 +From: David Faure <fa...@kde.org> +Date: Fri, 24 Apr 2020 01:25:43 +0200 +Subject: [PATCH] Install the kontact plugin into kontact5, with JSON metadata. + +Summary: This will allow kontact to use KPluginLoader one day. + +It also fixes compilation with current kontactinterface API. + +Test Plan: +rm $prefix/lib64/plugins/kontact_zanshinplugin.so ; make install +kontact still finds the zanshin plugin + +The same steps (other than old-kontact-interface compatibility) were already +pushed to all other kontact plugins. + +This commit is very similar to https://phabricator.kde.org/D28847 +and its predecessor commit, in zanshin. +--- + src/kontact_plugin/CMakeLists.txt | 11 ++++++++- + src/kontact_plugin/kjots_plugin.cpp | 34 ++++++++++++++++++++------ + src/kontact_plugin/kjots_plugin.h | 5 ++++ + src/kontact_plugin/kjotsplugin.desktop | 2 +- + 4 files changed, 43 insertions(+), 9 deletions(-) + +diff --git a/src/kontact_plugin/CMakeLists.txt b/src/kontact_plugin/CMakeLists.txt +index 8a6b5e1..dec4b8b 100644 +--- a/src/kontact_plugin/CMakeLists.txt ++++ b/src/kontact_plugin/CMakeLists.txt +@@ -1,13 +1,22 @@ + include_directories(${kjots_SOURCE_DIR}/src) + ++# TODO: remove once kontactinterface 5.14.42 is required ++if(NOT CMAKE_VERSION VERSION_LESS "3.10.0") ++ # CMake 3.9+ warns about automoc on files without Q_OBJECT, and doesn't know about other macros. ++ # 3.10+ lets us provide more macro names that require automoc. ++ # KF5 >= 5.42 takes care itself of adding its macros in its cmake config files ++ list(APPEND CMAKE_AUTOMOC_MACRO_NAMES "EXPORT_KONTACT_PLUGIN_WITH_JSON") ++endif() ++ + set(kontact_kjots_PART_SRCS + kjots_plugin.cpp + ) + + add_library(kontact_kjotsplugin MODULE ${kontact_kjots_PART_SRCS}) + target_link_libraries(kontact_kjotsplugin KF5::KontactInterface) ++kcoreaddons_desktop_to_json(kontact_kjotsplugin kjotsplugin.desktop) + +-install(TARGETS kontact_kjotsplugin DESTINATION ${KDE_INSTALL_PLUGINDIR}) ++install(TARGETS kontact_kjotsplugin DESTINATION ${KDE_INSTALL_PLUGINDIR}/kontact5) + install(FILES kjotsplugin.desktop DESTINATION ${KDE_INSTALL_KSERVICES5DIR}/kontact) + install(FILES kjots.setdlg DESTINATION ${KDE_INSTALL_DATADIR}/kontact/ksettingsdialog) + +diff --git a/src/kontact_plugin/kjots_plugin.cpp b/src/kontact_plugin/kjots_plugin.cpp +index 66e7ed5..b74d601 100644 +--- a/src/kontact_plugin/kjots_plugin.cpp ++++ b/src/kontact_plugin/kjots_plugin.cpp +@@ -33,7 +33,25 @@ + #include <QIcon> + #include <QStandardPaths> + +-EXPORT_KONTACT_PLUGIN(KJotsPlugin, kjots) ++#if KONTACTINTERFACE_VERSION < QT_VERSION_CHECK(5, 14, 42) ++/** ++ Exports Kontact plugin. ++ @param pluginclass the class to instanciate (must derive from KontactInterface::Plugin ++ @param jsonFile filename of the JSON file, generated from a .desktop file ++ */ ++#define EXPORT_KONTACT_PLUGIN_WITH_JSON( pluginclass, jsonFile ) \ ++ class Instance \ ++ { \ ++ public: \ ++ static QObject *createInstance( QWidget *, QObject *parent, const QVariantList &list ) \ ++ { return new pluginclass( static_cast<KontactInterface::Core*>( parent ), list ); } \ ++ }; \ ++ K_PLUGIN_FACTORY_WITH_JSON( KontactPluginFactory, jsonFile, registerPlugin< pluginclass > \ ++ ( QString(), Instance::createInstance ); ) \ ++ K_EXPORT_PLUGIN_VERSION(KONTACT_PLUGIN_VERSION) ++#endif ++ ++EXPORT_KONTACT_PLUGIN_WITH_JSON(KJotsPlugin, "kjotsplugin.json") + + KJotsPlugin::KJotsPlugin(KontactInterface::Core *core, const QVariantList &) + : KontactInterface::Plugin(core, core, "kjots") +@@ -67,15 +85,17 @@ QStringList KJotsPlugin::invisibleToolbarActions() const + return { QStringLiteral("new_page"), QStringLiteral("new_book") }; + } + ++#if KONTACTINTERFACE_VERSION >= QT_VERSION_CHECK(5, 14, 42) ++KParts::Part *KJotsPlugin::createPart() ++{ ++ return loadPart(); ++} ++#else + KParts::ReadOnlyPart *KJotsPlugin::createPart() + { +- KParts::ReadOnlyPart *part = loadPart(); +- if (!part) { +- return Q_NULLPTR; +- } +- +- return part; ++ return loadPart(); + } ++#endif + + QStringList KJotsPlugin::configModules() const + { +diff --git a/src/kontact_plugin/kjots_plugin.h b/src/kontact_plugin/kjots_plugin.h +index cd62373..4945d25 100644 +--- a/src/kontact_plugin/kjots_plugin.h ++++ b/src/kontact_plugin/kjots_plugin.h +@@ -24,6 +24,7 @@ + #define KJOTS_PLUGIN_H + + #include <KontactInterface/UniqueAppHandler> ++#include <kontactinterface_version.h> + + namespace KontactInterface + { +@@ -63,7 +64,11 @@ public: + QStringList invisibleToolbarActions() const Q_DECL_OVERRIDE; + + protected: ++#if KONTACTINTERFACE_VERSION >= QT_VERSION_CHECK(5, 14, 42) ++ KParts::Part *createPart() override; ++#else + KParts::ReadOnlyPart *createPart() Q_DECL_OVERRIDE; ++#endif + KontactInterface::UniqueAppWatcher *mUniqueAppWatcher; + + private: +diff --git a/src/kontact_plugin/kjotsplugin.desktop b/src/kontact_plugin/kjotsplugin.desktop +index 1339753..d5a198f 100644 +--- a/src/kontact_plugin/kjotsplugin.desktop ++++ b/src/kontact_plugin/kjotsplugin.desktop +@@ -3,7 +3,7 @@ Type=Service + Icon=kjots + X-KDE-ServiceTypes=Kontact/Plugin,KPluginInfo + +-X-KDE-Library=kontact_kjotsplugin ++X-KDE-Library=kontact5/kontact_kjotsplugin + X-KDE-KontactPluginVersion=10 + X-KDE-KontactPartLibraryName=kjotspart + X-KDE-KontactPartExecutableName=kjots +-- +GitLab +