From a291247f1aff78d26cb43a35a8f06bbb4fc49aea Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 1 Nov 2022 00:34:14 +0800 Subject: [PATCH] Init package --- Build-add-qmltypes-file-to-repository.patch | 241 ++++++++++++++++++++ Fix-compilation-with-Qt-5.13.patch | 72 ++++++ README.en.md | 36 --- README.md | 37 --- accounts-qml-module-VERSION_0.7.tar.bz2 | Bin 0 -> 50487 bytes accounts-qml-module-Werror.patch | 12 + accounts-qml-module.spec | 67 ++++++ accounts-qml-module.yaml | 4 + 8 files changed, 396 insertions(+), 73 deletions(-) create mode 100644 Build-add-qmltypes-file-to-repository.patch create mode 100644 Fix-compilation-with-Qt-5.13.patch delete mode 100644 README.en.md delete mode 100644 README.md create mode 100644 accounts-qml-module-VERSION_0.7.tar.bz2 create mode 100644 accounts-qml-module-Werror.patch create mode 100644 accounts-qml-module.spec create mode 100644 accounts-qml-module.yaml diff --git a/Build-add-qmltypes-file-to-repository.patch b/Build-add-qmltypes-file-to-repository.patch new file mode 100644 index 0000000..d9f3784 --- /dev/null +++ b/Build-add-qmltypes-file-to-repository.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 +-- +2.22.2 + diff --git a/Fix-compilation-with-Qt-5.13.patch b/Fix-compilation-with-Qt-5.13.patch new file mode 100644 index 0000000..0adae29 --- /dev/null +++ b/Fix-compilation-with-Qt-5.13.patch @@ -0,0 +1,72 @@ +From 69e17dec5add40655cd9334ec7ad4eef13fed8a4 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Jonah=20Br=C3=BCchert?= +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()); ++ std::sort(removedIndexes.begin(), removedIndexes.end(), std::greater()); + 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 + diff --git a/README.en.md b/README.en.md deleted file mode 100644 index 023ea3f..0000000 --- a/README.en.md +++ /dev/null @@ -1,36 +0,0 @@ -# accounts-qml-module - -#### Description -QML bindings for libaccounts-qt + libsignon-qt - -#### Software Architecture -Software architecture description - -#### Installation - -1. xxxx -2. xxxx -3. xxxx - -#### Instructions - -1. xxxx -2. xxxx -3. xxxx - -#### Contribution - -1. Fork the repository -2. Create Feat_xxx branch -3. Commit your code -4. Create Pull Request - - -#### Gitee Feature - -1. You can use Readme\_XXX.md to support different languages, such as Readme\_en.md, Readme\_zh.md -2. Gitee blog [blog.gitee.com](https://blog.gitee.com) -3. Explore open source project [https://gitee.com/explore](https://gitee.com/explore) -4. The most valuable open source project [GVP](https://gitee.com/gvp) -5. The manual of Gitee [https://gitee.com/help](https://gitee.com/help) -6. The most popular members [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/) diff --git a/README.md b/README.md deleted file mode 100644 index 70c0940..0000000 --- a/README.md +++ /dev/null @@ -1,37 +0,0 @@ -# accounts-qml-module - -#### 介绍 -QML bindings for libaccounts-qt + libsignon-qt - -#### 软件架构 -软件架构说明 - - -#### 安装教程 - -1. xxxx -2. xxxx -3. xxxx - -#### 使用说明 - -1. xxxx -2. xxxx -3. xxxx - -#### 参与贡献 - -1. Fork 本仓库 -2. 新建 Feat_xxx 分支 -3. 提交代码 -4. 新建 Pull Request - - -#### 特技 - -1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md -2. Gitee 官方博客 [blog.gitee.com](https://blog.gitee.com) -3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解 Gitee 上的优秀开源项目 -4. [GVP](https://gitee.com/gvp) 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目 -5. Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) -6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/) diff --git a/accounts-qml-module-VERSION_0.7.tar.bz2 b/accounts-qml-module-VERSION_0.7.tar.bz2 new file mode 100644 index 0000000000000000000000000000000000000000..10575533d2d3ac27e2866f28e859fe9a285d6e34 GIT binary patch literal 50487 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 AB>(^b literal 0 HcmV?d00001 diff --git a/accounts-qml-module-Werror.patch b/accounts-qml-module-Werror.patch new file mode 100644 index 0000000..1dcef94 --- /dev/null +++ b/accounts-qml-module-Werror.patch @@ -0,0 +1,12 @@ +diff -up accounts-qml-module-VERSION_0.7/common-project-config.pri.Werror accounts-qml-module-VERSION_0.7/common-project-config.pri +--- accounts-qml-module-VERSION_0.7/common-project-config.pri.Werror 2016-06-08 02:26:26.000000000 -0500 ++++ accounts-qml-module-VERSION_0.7/common-project-config.pri 2021-02-04 08:59:43.179085414 -0600 +@@ -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/accounts-qml-module.spec b/accounts-qml-module.spec new file mode 100644 index 0000000..bd12475 --- /dev/null +++ b/accounts-qml-module.spec @@ -0,0 +1,67 @@ +Name: accounts-qml-module +Summary: QML bindings for libaccounts-qt + libsignon-qt +Version: 0.7 +Release: 1 + +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 +Patch1: Fix-compilation-with-Qt-5.13.patch +Patch2: Build-add-qmltypes-file-to-repository.patch +Patch100: accounts-qml-module-Werror.patch + +BuildRequires: qt5-doctools +BuildRequires: libaccounts-qt5-devel +BuildRequires: qt5-qtdeclarative-devel +BuildRequires: signon-devel +BuildRequires: make + +%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} + +rm %{buildroot}%{_bindir}/tst_plugin +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 Nov 01 2022 misaka00251 - 0.7-1 +- Init package (Derived from federa project, thanks to fedora team) diff --git a/accounts-qml-module.yaml b/accounts-qml-module.yaml new file mode 100644 index 0000000..8beca03 --- /dev/null +++ b/accounts-qml-module.yaml @@ -0,0 +1,4 @@ +version_control: git +src_repo: https://gitlab.com/accounts-sso/accounts-qml-module.git +tag_prefix: "VERSION_" +separator: "."