parent
2dffbfb416
commit
4fa01f1fb0
@ -0,0 +1 @@
|
|||||||
|
/accounts-qml-module-VERSION_0.7.tar.bz2
|
@ -0,0 +1,241 @@
|
|||||||
|
From 678c493a083a92d1fda2375f5d2e37c00c7b9a7e Mon Sep 17 00:00:00 2001
|
||||||
|
From: Alberto Mardegan <mardy@users.sourceforge.net>
|
||||||
|
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
|
||||||
|
--
|
||||||
|
2.22.2
|
||||||
|
|
@ -0,0 +1,72 @@
|
|||||||
|
From 69e17dec5add40655cd9334ec7ad4eef13fed8a4 Mon Sep 17 00:00:00 2001
|
||||||
|
From: =?UTF-8?q?Jonah=20Br=C3=BCchert?= <jbb.prv@gmx.de>
|
||||||
|
Date: Wed, 5 Jun 2019 13:28:44 +0200
|
||||||
|
Subject: [PATCH] Fix compilation with Qt 5.13
|
||||||
|
|
||||||
|
---
|
||||||
|
src/account-service-model.cpp | 14 ++++++++------
|
||||||
|
1 file changed, 8 insertions(+), 6 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/account-service-model.cpp b/src/account-service-model.cpp
|
||||||
|
index 45795c5..deb157e 100644
|
||||||
|
--- a/src/account-service-model.cpp
|
||||||
|
+++ b/src/account-service-model.cpp
|
||||||
|
@@ -183,7 +183,7 @@ AccountServiceModelPrivate::addServicesFromAccount(Accounts::Account *account)
|
||||||
|
newModelItems.append(accountService);
|
||||||
|
}
|
||||||
|
|
||||||
|
- qSort(newModelItems.begin(), newModelItems.end(), sortFunction);
|
||||||
|
+ std::sort(newModelItems.begin(), newModelItems.end(), sortFunction);
|
||||||
|
addItems(newModelItems);
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -211,7 +211,7 @@ void AccountServiceModelPrivate::addItems(const AccountServices &added)
|
||||||
|
foreach (Accounts::AccountService *accountService, added) {
|
||||||
|
// Find where the item should be inserted
|
||||||
|
AccountServices::iterator i =
|
||||||
|
- qLowerBound(modelItems.begin(), modelItems.end(),
|
||||||
|
+ std::lower_bound(modelItems.begin(), modelItems.end(),
|
||||||
|
accountService, sortFunction);
|
||||||
|
int index = i - modelItems.begin();
|
||||||
|
addedIndexes[index]++;
|
||||||
|
@@ -253,7 +253,7 @@ AccountServiceModelPrivate::removeItems(const AccountServices &removed)
|
||||||
|
removedIndexes.append(index);
|
||||||
|
}
|
||||||
|
// sort the indexes from highest to lower, and start updating the list
|
||||||
|
- qSort(removedIndexes.begin(), removedIndexes.end(), qGreater<int>());
|
||||||
|
+ std::sort(removedIndexes.begin(), removedIndexes.end(), std::greater<int>());
|
||||||
|
int first = -1;
|
||||||
|
int last = -1;
|
||||||
|
foreach (int index, removedIndexes) {
|
||||||
|
@@ -281,7 +281,7 @@ AccountServiceModelPrivate::removeItems(const AccountServices &removed)
|
||||||
|
|
||||||
|
void AccountServiceModelPrivate::sortItems()
|
||||||
|
{
|
||||||
|
- qSort(modelItems.begin(), modelItems.end(), sortFunction);
|
||||||
|
+ std::sort(modelItems.begin(), modelItems.end(), sortFunction);
|
||||||
|
}
|
||||||
|
|
||||||
|
void AccountServiceModelPrivate::update()
|
||||||
|
@@ -809,7 +809,8 @@ QVariant AccountServiceModel::data(const QModelIndex &index, int role) const
|
||||||
|
ret = accountService->enabled();
|
||||||
|
break;
|
||||||
|
case AccountServiceRole:
|
||||||
|
- qWarning("accountService role is deprecated, use accountServiceHandle");
|
||||||
|
+ qWarning() << "accountService role is deprecated, use accountServiceHandle";
|
||||||
|
+ /* FALLTHRU */
|
||||||
|
case AccountServiceHandleRole:
|
||||||
|
object = accountService;
|
||||||
|
break;
|
||||||
|
@@ -817,7 +818,8 @@ QVariant AccountServiceModel::data(const QModelIndex &index, int role) const
|
||||||
|
ret = accountService->account()->id();
|
||||||
|
break;
|
||||||
|
case AccountRole:
|
||||||
|
- qWarning("account role is deprecated, use accountHandle");
|
||||||
|
+ qWarning() << "account role is deprecated, use accountHandle";
|
||||||
|
+ /* FALLTHRU */
|
||||||
|
case AccountHandleRole:
|
||||||
|
object = accountService->account();
|
||||||
|
break;
|
||||||
|
--
|
||||||
|
2.22.2
|
||||||
|
|
@ -0,0 +1,73 @@
|
|||||||
|
|
||||||
|
Name: accounts-qml-module
|
||||||
|
Summary: QML bindings for libaccounts-qt + libsignon-qt
|
||||||
|
Version: 0.7
|
||||||
|
Release: 1%{?dist}
|
||||||
|
|
||||||
|
License: LGPLv2
|
||||||
|
URL: https://gitlab.com/accounts-sso/accounts-qml-module
|
||||||
|
Source: https://gitlab.com/accounts-sso/%{name}/-/archive/VERSION_%{version}/%{name}-VERSION_%{version}.tar.bz2
|
||||||
|
|
||||||
|
## upstream patches
|
||||||
|
# PATCH-FIX-UPSTREAM
|
||||||
|
Patch1: Fix-compilation-with-Qt-5.13.patch
|
||||||
|
# PATCH-FIX-UPSTREAM
|
||||||
|
Patch2: Build-add-qmltypes-file-to-repository.patch
|
||||||
|
|
||||||
|
BuildRequires: qt5-doctools
|
||||||
|
BuildRequires: cmake(AccountsQt5)
|
||||||
|
BuildRequires: cmake(Qt5Qml)
|
||||||
|
BuildRequires: cmake(SignOnQt5)
|
||||||
|
|
||||||
|
%description
|
||||||
|
This QML module provides an API to manage the user's online accounts and get
|
||||||
|
their authentication data. It's a tiny wrapper around the Qt-based APIs of
|
||||||
|
libaccounts-qt and libsignon-qt.
|
||||||
|
|
||||||
|
%package doc
|
||||||
|
Summary: Documentation for %{name}
|
||||||
|
BuildArch: noarch
|
||||||
|
%description doc
|
||||||
|
This package contains the developer documentation for accounts-qml-module.
|
||||||
|
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%autosetup -n %{name}-VERSION_%{version} -p1
|
||||||
|
|
||||||
|
|
||||||
|
%build
|
||||||
|
mkdir %{_target_platform}
|
||||||
|
pushd %{_target_platform}
|
||||||
|
%{qmake_qt5} \
|
||||||
|
CONFIG+=release \
|
||||||
|
PREFIX=%{_prefix} \
|
||||||
|
LIBDIR=%{_libdir} \
|
||||||
|
..
|
||||||
|
popd
|
||||||
|
|
||||||
|
%make_build -C %{_target_platform}
|
||||||
|
|
||||||
|
|
||||||
|
%install
|
||||||
|
make install INSTALL_ROOT=%{buildroot} -C %{_target_platform}
|
||||||
|
|
||||||
|
## unpackaged files
|
||||||
|
# remove tests
|
||||||
|
rm %{buildroot}%{_bindir}/tst_plugin
|
||||||
|
# avoid rpmlint warning
|
||||||
|
rm -fv %{buildroot}/%{_datadir}/%{name}/doc/html/.gitignore
|
||||||
|
|
||||||
|
|
||||||
|
%files
|
||||||
|
%license COPYING
|
||||||
|
%doc README.md
|
||||||
|
%{_qt5_archdatadir}/qml/Ubuntu/
|
||||||
|
|
||||||
|
%files doc
|
||||||
|
%doc %{_datadir}/%{name}/
|
||||||
|
|
||||||
|
|
||||||
|
%changelog
|
||||||
|
* Tue Feb 11 2020 Rex Dieter <rdieter@fedoraproject.org> - 0.7-1
|
||||||
|
- first try, inspiration from opensuse packaging
|
||||||
|
|
Loading…
Reference in new issue