From 6972787d0515eb40c2489cf54ba415de8e8441c2 Mon Sep 17 00:00:00 2001 From: John Date: Sat, 19 Jun 2021 10:56:10 +0200 Subject: [PATCH] New package: accounts-qml-module-0.7 --- .../patches/678c493a.patch | 241 ++++++++++++++++++ .../accounts-qml-module/patches/werror.patch | 11 + srcpkgs/accounts-qml-module/template | 20 ++ 3 files changed, 272 insertions(+) create mode 100644 srcpkgs/accounts-qml-module/patches/678c493a.patch create mode 100644 srcpkgs/accounts-qml-module/patches/werror.patch create mode 100644 srcpkgs/accounts-qml-module/template diff --git a/srcpkgs/accounts-qml-module/patches/678c493a.patch b/srcpkgs/accounts-qml-module/patches/678c493a.patch new file mode 100644 index 0000000000..7c9956cfee --- /dev/null +++ b/srcpkgs/accounts-qml-module/patches/678c493a.patch @@ -0,0 +1,241 @@ +From 678c493a083a92d1fda2375f5d2e37c00c7b9a7e Mon Sep 17 00:00:00 2001 +From: Alberto Mardegan +Date: Tue, 9 Jan 2018 18:23:57 +0300 +Subject: [PATCH] Build: add qmltypes file to repository + +Generating the file at build time is troublesome when cross-compiling. +It's better to add the generated file to the repository and add a make +target to rebuild it. +--- + src/plugin.qmltypes | 187 ++++++++++++++++++++++++++++++++++++++++++++ + src/src.pro | 19 +---- + 2 files changed, 191 insertions(+), 15 deletions(-) + create mode 100644 src/plugin.qmltypes + +diff --git a/src/plugin.qmltypes b/src/plugin.qmltypes +new file mode 100644 +index 0000000..8481efe +--- /dev/null ++++ b/src/plugin.qmltypes +@@ -0,0 +1,187 @@ ++import QtQuick.tooling 1.2 ++ ++// This file describes the plugin-supplied types contained in the library. ++// It is used for QML tooling purposes only. ++// ++// This file was auto-generated by: ++// 'qmlplugindump -notrelocatable Ubuntu.OnlineAccounts 0.1 .' ++ ++Module { ++ dependencies: ["QtQuick 2.8"] ++ Component { ++ name: "OnlineAccounts::Account" ++ prototype: "QObject" ++ exports: ["Ubuntu.OnlineAccounts/Account 0.1"] ++ exportMetaObjectRevisions: [0] ++ Enum { ++ name: "RemovalOption" ++ values: { ++ "RemoveAccountOnly": 0, ++ "RemoveCredentials": 1 ++ } ++ } ++ Enum { ++ name: "RemovalOptions" ++ values: { ++ "RemoveAccountOnly": 0, ++ "RemoveCredentials": 1 ++ } ++ } ++ Property { name: "objectHandle"; type: "QObject"; isPointer: true } ++ Property { name: "enabled"; type: "bool"; isReadonly: true } ++ Property { name: "provider"; type: "QVariantMap"; isReadonly: true } ++ Property { name: "displayName"; type: "string"; isReadonly: true } ++ Property { name: "accountId"; type: "uint"; isReadonly: true } ++ Property { name: "accountServiceHandle"; type: "QObject"; isReadonly: true; isPointer: true } ++ Signal { name: "synced" } ++ Signal { name: "removed" } ++ Method { ++ name: "updateDisplayName" ++ Parameter { name: "displayName"; type: "string" } ++ } ++ Method { ++ name: "updateEnabled" ++ Parameter { name: "enabled"; type: "bool" } ++ } ++ Method { name: "sync" } ++ Method { ++ name: "remove" ++ Parameter { name: "options"; type: "RemovalOptions" } ++ } ++ Method { name: "remove" } ++ } ++ Component { ++ name: "OnlineAccounts::AccountService" ++ prototype: "QObject" ++ exports: ["Ubuntu.OnlineAccounts/AccountService 0.1"] ++ exportMetaObjectRevisions: [0] ++ Enum { ++ name: "ErrorCode" ++ values: { ++ "NoError": 0, ++ "NoAccountError": 1, ++ "UserCanceledError": 2, ++ "PermissionDeniedError": 3, ++ "NetworkError": 4, ++ "SslError": 5, ++ "InteractionRequiredError": 6 ++ } ++ } ++ Property { name: "objectHandle"; type: "QObject"; isPointer: true } ++ Property { name: "enabled"; type: "bool"; isReadonly: true } ++ Property { name: "serviceEnabled"; type: "bool"; isReadonly: true } ++ Property { name: "provider"; type: "QVariantMap"; isReadonly: true } ++ Property { name: "service"; type: "QVariantMap"; isReadonly: true } ++ Property { name: "displayName"; type: "string"; isReadonly: true } ++ Property { name: "accountId"; type: "uint"; isReadonly: true } ++ Property { name: "settings"; type: "QVariantMap"; isReadonly: true } ++ Property { name: "authData"; type: "QVariantMap"; isReadonly: true } ++ Property { name: "autoSync"; type: "bool" } ++ Property { name: "credentials"; type: "QObject"; isPointer: true } ++ Signal { ++ name: "authenticated" ++ Parameter { name: "reply"; type: "QVariantMap" } ++ } ++ Signal { ++ name: "authenticationError" ++ Parameter { name: "error"; type: "QVariantMap" } ++ } ++ Method { ++ name: "authenticate" ++ Parameter { name: "sessionData"; type: "QVariantMap" } ++ } ++ Method { name: "authenticate" } ++ Method { name: "cancelAuthentication" } ++ Method { ++ name: "updateServiceEnabled" ++ Parameter { name: "enabled"; type: "bool" } ++ } ++ Method { ++ name: "updateSettings" ++ Parameter { name: "settings"; type: "QVariantMap" } ++ } ++ } ++ Component { ++ name: "OnlineAccounts::AccountServiceModel" ++ prototype: "QAbstractListModel" ++ exports: ["Ubuntu.OnlineAccounts/AccountServiceModel 0.1"] ++ exportMetaObjectRevisions: [0] ++ Property { name: "count"; type: "int"; isReadonly: true } ++ Property { name: "includeDisabled"; type: "bool" } ++ Property { name: "accountId"; type: "uint" } ++ Property { name: "account"; type: "QObject"; isPointer: true } ++ Property { name: "applicationId"; type: "string" } ++ Property { name: "provider"; type: "string" } ++ Property { name: "serviceType"; type: "string" } ++ Property { name: "service"; type: "string" } ++ Method { ++ name: "get" ++ type: "QVariant" ++ Parameter { name: "row"; type: "int" } ++ Parameter { name: "roleName"; type: "string" } ++ } ++ } ++ Component { ++ name: "OnlineAccounts::ApplicationModel" ++ prototype: "QAbstractListModel" ++ exports: ["Ubuntu.OnlineAccounts/ApplicationModel 0.1"] ++ exportMetaObjectRevisions: [0] ++ Property { name: "count"; type: "int"; isReadonly: true } ++ Property { name: "service"; type: "string" } ++ Method { ++ name: "get" ++ type: "QVariant" ++ Parameter { name: "row"; type: "int" } ++ Parameter { name: "roleName"; type: "string" } ++ } ++ } ++ Component { ++ name: "OnlineAccounts::Credentials" ++ prototype: "QObject" ++ exports: ["Ubuntu.OnlineAccounts/Credentials 0.1"] ++ exportMetaObjectRevisions: [0] ++ Property { name: "credentialsId"; type: "uint" } ++ Property { name: "caption"; type: "string" } ++ Property { name: "userName"; type: "string" } ++ Property { name: "secret"; type: "string" } ++ Property { name: "storeSecret"; type: "bool" } ++ Property { name: "acl"; type: "QStringList" } ++ Property { name: "methods"; type: "QVariantMap" } ++ Signal { name: "synced" } ++ Signal { name: "removed" } ++ Method { name: "sync" } ++ Method { name: "remove" } ++ } ++ Component { ++ name: "OnlineAccounts::Manager" ++ prototype: "QObject" ++ exports: ["Ubuntu.OnlineAccounts/Manager 0.1"] ++ isCreatable: false ++ isSingleton: true ++ exportMetaObjectRevisions: [0] ++ Method { ++ name: "loadAccount" ++ type: "QObject*" ++ Parameter { name: "accountId"; type: "uint" } ++ } ++ Method { ++ name: "createAccount" ++ type: "QObject*" ++ Parameter { name: "providerName"; type: "string" } ++ } ++ } ++ Component { ++ name: "OnlineAccounts::ProviderModel" ++ prototype: "QAbstractListModel" ++ exports: ["Ubuntu.OnlineAccounts/ProviderModel 0.1"] ++ exportMetaObjectRevisions: [0] ++ Property { name: "applicationId"; type: "string" } ++ Property { name: "count"; type: "int"; isReadonly: true } ++ Method { ++ name: "get" ++ type: "QVariant" ++ Parameter { name: "row"; type: "int" } ++ Parameter { name: "roleName"; type: "string" } ++ } ++ } ++} +diff --git a/src/src.pro b/src/src.pro +index 8b26639..abfc851 100644 +--- a/src/src.pro ++++ b/src/src.pro +@@ -61,22 +61,11 @@ PLUGIN_INSTALL_BASE = $$[QT_INSTALL_QML]/$$replace(API_URI, \\., /) + target.path = $${PLUGIN_INSTALL_BASE} + INSTALLS += target + +-qmldir.files = $${DESTDIR}/qmldir ++qmldir.files = $${DESTDIR}/qmldir plugin.qmltypes + qmldir.path = $${PLUGIN_INSTALL_BASE} + INSTALLS += qmldir + +-generateQmlTypes.output = $${DESTDIR}/plugin.qmltypes +-generateQmlTypes.input = QML_PLUGINS +-generateQmlTypes.commands = export LD_PRELOAD=${QMAKE_FILE_IN}; $$[QT_INSTALL_BINS]/qmlplugindump -notrelocatable $${API_URI} 0.1 . > ${QMAKE_FILE_OUT} +-generateQmlTypes.name = Generate ${QMAKE_FILE_OUT} +-generateQmlTypes.CONFIG += no_link +-generateQmlTypes.variable_out = QML_TYPES +-QMAKE_EXTRA_COMPILERS += generateQmlTypes +- + QML_PLUGINS += $${DESTDIR}/lib$${TARGET}.so +- +-qmltypes.path = $${PLUGIN_INSTALL_BASE} +-qmltypes.files = $${DESTDIR}/plugin.qmltypes +-qmltypes.depends = $${DESTDIR}/plugin.qmltypes +-qmltypes.CONFIG += no_check_exist +-INSTALLS += qmltypes ++qmltypes.commands = export LD_PRELOAD=$${QML_PLUGINS}; $$[QT_INSTALL_BINS]/qmlplugindump -notrelocatable $${API_URI} 0.1 . > $$PWD/plugin.qmltypes ++qmltypes.depends = $${QML_PLUGINS} ++QMAKE_EXTRA_TARGETS += qmltypes +-- +GitLab + diff --git a/srcpkgs/accounts-qml-module/patches/werror.patch b/srcpkgs/accounts-qml-module/patches/werror.patch new file mode 100644 index 0000000000..130d37e374 --- /dev/null +++ b/srcpkgs/accounts-qml-module/patches/werror.patch @@ -0,0 +1,11 @@ +--- a/common-project-config.pri 2016-06-08 09:26:26.000000000 +0200 ++++ - 2021-06-19 10:48:56.476598499 +0200 +@@ -3,7 +3,7 @@ + #----------------------------------------------------------------------------- + + # we don't like warnings... +-QMAKE_CXXFLAGS += -Werror -Wno-write-strings ++QMAKE_CXXFLAGS += -Wno-write-strings + # Disable RTTI + QMAKE_CXXFLAGS += -fno-exceptions -fno-rtti + # Use C++11 diff --git a/srcpkgs/accounts-qml-module/template b/srcpkgs/accounts-qml-module/template new file mode 100644 index 0000000000..4e81e2ae57 --- /dev/null +++ b/srcpkgs/accounts-qml-module/template @@ -0,0 +1,20 @@ +# Template file for 'accounts-qml-module' +pkgname=accounts-qml-module +version=0.7 +revision=1 +wrksrc="accounts-qml-module-VERSION_${version}" +build_style=qmake +make_install_target="install_subtargets" +hostmakedepends="qt5-qmake pkg-config qt5-host-tools" +makedepends="signond-devel libaccounts-qt5-devel qt5-declarative-devel" +short_desc="Expose the Online Accounts API to QML applications" +maintainer="John " +license="LGPL-2.1-only" +homepage="https://gitlab.com/accounts-sso/accounts-qml-module" +distfiles="https://gitlab.com/accounts-sso/accounts-qml-module/-/archive/VERSION_$version/accounts-qml-module-VERSION_$version.tar.gz" +checksum=550a6c684bf4b4f6460a35bac0cf3afbb9090a5cf4038b880c6b86c2e9ea0195 +patch_args="-Np1" + +post_install() { + rm -rf $DESTDIR/usr/bin +}