Compare commits

...

72 Commits

Author SHA1 Message Date
5d29af4dc8 adjust: Now we do not want to enforce weak source to serve. 2024-06-21 12:57:24 +08:00
zty199
bf8eaf5680 fix: 修复安装失败判断条件错误问题
原始判断条件将 QString 和 bool 类型函数返回值进行比较,可能存在问题
Qt5 中比较结果始终为 false,不会认为安装失败

Log: 判断输出包含 "OMG-IT-GOES-WRONG" 关键词则认为安装失败
2024-06-21 09:07:16 +08:00
d6bc2a96a7 update readme
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-06-20 04:05:50 +00:00
facbaa0f40 update changelog
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-06-20 04:02:48 +00:00
30cd9c0181 update tool/ssinstall.
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-06-20 03:59:51 +00:00
b4386d35bd update-readme
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-06-20 03:58:05 +00:00
94c0ca9f6d adjust: increase timeout limit to adjust worse network environment
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-06-13 04:18:00 +00:00
fcba7d93c9 update bbs link
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-06-12 15:20:11 +00:00
486d9912b8 fix: Can not activate update when interrupted 2024-06-02 12:41:02 +08:00
ecc6da2533 update tool/ssinstall.
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-06-01 04:54:03 +00:00
e04f770aa6 update tool/ssinstall.
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-05-31 15:53:10 +00:00
1b97df0071 add depends dpkg-dev
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-05-20 08:35:17 +00:00
91977c8892 * 修改:文案修改--不兼容提示 2024-05-16 22:19:31 +08:00
c160dc6300 borderless svg
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-05-06 04:02:03 +00:00
a05c01b382 update debian/changelog.
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-04-29 09:34:07 +00:00
d103225d92 adjust: loong64 auto no sandbox 2024-04-29 17:27:21 +08:00
35b4cdabd0 update README.md.
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-04-28 15:25:18 +00:00
b38c040029 update README.md.
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-04-28 15:24:57 +00:00
dceb796ce9 update README.zh.md.
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-04-28 15:24:27 +00:00
07cdeb1e40 update README.zh.md.
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-04-28 15:24:03 +00:00
96f22384e2 update LICENSE.
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-04-28 15:09:01 +00:00
1447e9eb16 update LICENSE.
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-04-28 15:06:06 +00:00
1c6302d01c update src/application.cpp.
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-04-28 14:29:44 +00:00
91d64dc9ed !264 adjust: remove easter egg
Merge pull request !264 from shenmo/N/A
2024-04-28 03:41:57 +00:00
bc11d6a514 adjust: remove easter egg 2024-04-28 03:40:55 +00:00
zty199
463b8a7c0d fix: missing semicolon after setting --max-tries
add missing semicolon after setting --max-tries in downloadworker.cpp

Log: add missing semicolon after setting --max-tries in downloadworker.cpp
2024-04-28 10:42:26 +08:00
61b56346b8 update src/backend/downloadworker.cpp.
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-04-27 16:19:21 +00:00
6426a3c12a update debian/changelog.
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-04-27 10:37:11 +00:00
42fa1b5340 !258 修复 aria2c 下载永不超时
Merge pull request !258 from 麻本法/fix-aria2c-download-never-timeout
2024-04-27 10:34:59 +00:00
10320e99eb !2 update src/backend/downloadworker.cpp.
Merge pull request !2 from shenmo/N/A

"--connect-timeout=5" 实际应该是 25s 切线
2024-04-27 10:34:22 +00:00
b2120411e5 update src/backend/downloadworker.cpp.
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-04-27 10:30:57 +00:00
9c219e5e89 !259 fix: hide error
Merge pull request !259 from shenmo/N/A
2024-04-27 05:57:08 +00:00
021283e240 fix: hide error
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-04-27 05:56:57 +00:00
74513723e9 aria2c: Fixed aria2c download never timed out 2024-04-26 13:53:59 +08:00
3664a80c55 De-Magic Operation: Delete arm64 magic
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-04-25 17:45:57 +00:00
0bd8bab7eb sync: retryfix: Phytium can not use gles makes white screen
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-04-25 17:35:03 +00:00
4c565cda6c update debian/changelog.
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-04-25 17:26:28 +00:00
7484ee8438 sync: fix: Phytium can not use gles makes white screen
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-04-25 17:23:22 +00:00
c22f13a271 update debian/spark-store.postinst.
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-04-18 07:29:40 +00:00
e0a62a88d9 adjust: modify dstore patch 2024-04-17 16:47:30 +08:00
804db2e623 fix: icon break on v23 2024-04-17 16:36:48 +08:00
zty199
89f7696704 build: 获取编译打包实际时间
https://www.debian.org/doc/manuals/debmake-doc/ch05.en.html#reproducible
修改 debian/rules,覆盖环境变量 SOURCE_DATE_EPOCH 为 $(date +%s),使关于窗口中版本号显示编译时间为实际编译时间,而不是 changelog 最新时间(将导致相同版本代码每次编译结果不同,不推荐)

Log: 修改 debian/rules:覆盖环境变量 SOURCE_DATE_EPOCH 为 $(date +%s);修改 qmake 参数为 CONFIG+=force_debug_info 以生成 dbgsym 包;编译生成临时文件夹名称添加架构后缀
2024-04-10 23:31:43 +08:00
zty199
18e13e4525 fix: 修复应用信息页面安装再卸载应用后,重新进入页面,应用仍然为已安装状态问题
下载管理中存在已卸载应用的下载记录,判断应用状态时认为应用安装完成

Log: 根据下载记录判断应用状态时,若下载管理显示安装完成,额外判断应用是否已安装
2024-04-10 21:58:48 +08:00
230b208fcb update debian/changelog.
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-04-10 08:22:49 +00:00
c9354e6d27 update tool/aptss.
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-04-10 03:33:39 +00:00
bad522e40a 哦我的上帝啊这东西是什么时候加的我都不记得了这个坑啊
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-04-10 03:01:40 +00:00
ffac75eab7 update src/mainwindow-dtk.cpp.
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-04-09 15:03:27 +00:00
e2497116bf update tool/aptss.
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-04-09 04:14:38 +00:00
99fae1bb3f update tool/aptss.
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-04-09 04:09:53 +00:00
59e4da7b40 update tool/ssinstall.
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-04-09 04:04:11 +00:00
609a301ecc update 2024-04-09 11:39:22 +08:00
f0a8b141b4 fix: no usr bin 2024-04-09 11:33:27 +08:00
4d35438bf0 update debian/spark-store.postinst.
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-04-07 11:57:34 +00:00
4863850195 !255 更新readme文件。
Merge pull request !255 from 花雨落逝/dev
2024-04-01 10:35:24 +00:00
花雨落逝
d379f2ad63 update README.zh.md.
Signed-off-by: 花雨落逝 <12135927+hylshi@user.noreply.gitee.com>
2024-03-31 07:14:01 +00:00
0ac0f97688 修改: debian/changelog 2024-03-29 23:07:01 +08:00
zty199
6c606806a1 fix: 修复软件包安装状态判断异常问题
check-is-installed 脚本判断软件包是否安装,仅根据执行结果返回;原始逻辑根据返回错误输出进行判断,错误输出为空会造成误判

Log: 修改 QProcess 执行结果判断逻辑,根据 QProcess::exitCode 和 QProcess::exitStatus 判断
2024-03-29 22:13:35 +08:00
363c38cb8f update tool/aptss.
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-03-26 09:16:02 +00:00
c039fd52a7 fix:卸载后仍显示可重新安装 2024-03-25 11:29:13 +08:00
83540e1c55 update src/pages/appintopage.cpp.
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-03-25 03:27:13 +00:00
b54c797ce5 update README.md.
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-03-24 05:30:25 +00:00
f60d125920 update README.zh.md.
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-03-24 05:29:25 +00:00
fa00f9aaf7 update tool/aptss.
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-03-22 03:55:22 +00:00
76808cc2f5 update tool/ssinstall.
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-03-22 03:53:24 +00:00
eaa335cc04 修改: src/pages/applistpage.cpp
修改:     tool/ss-feedback/sender-d
2024-03-22 02:11:32 +08:00
6768058358 fix: loongarch bad applist 2024-03-22 00:34:42 +08:00
09c2d41118 Merge remote-tracking branch 'refs/remotes/origin/dev' into dev 2024-03-21 17:34:33 +08:00
c9e7ef20ec 修改: src/backend/sparkapi.cpp 2024-03-21 17:34:22 +08:00
6e55244776 update tool/aptss.
Signed-off-by: shenmo <jifengshenmo@outlook.com>
2024-03-21 08:40:09 +00:00
b7e2571789 准备修改aptss以支持loongarch 2024-03-21 15:56:55 +08:00
zty199
e9a52da098 fix: 修改 treeland 环境判断条件
修改读取的环境变量名称为 DDE_CURRENT_COMPOSITOR,避免后续修改造成的不兼容问题

Log: 修改 treeland 环境判断条件;去除 dwayland 平台插件调用
2024-02-03 20:25:51 +08:00
37057306bb !254 cmake-patch: 更新补丁用于处理 v4.2.10 时期的变动构建与全量更新
Merge pull request !254 from 麻本法/auto-2067698-dev-59460c87
2024-02-03 01:51:54 +00:00
36 changed files with 3280 additions and 670 deletions

View File

@@ -12,7 +12,9 @@
6. 仓库版权条款:为了更好的提供持续性服务,星火仅对个人用户免费开放服务仓库,如您或您的组织需要提供商业服务或者您的组织为盈利性组织,请联系星火社区获取商业授权。 6. 仓库版权条款:为了更好的提供持续性服务,星火仅对个人用户免费开放服务仓库,如您或您的组织需要提供商业服务或者您的组织为盈利性组织,请联系星火社区获取商业授权。
7. 禁止恶意行为和批量爬取: 用户或组织在使用本软件时,严禁进行任何形式的恶意行为,包括但不限于恶意攻击、滥用、破坏、批量爬取软件仓库等。恶意行为的定义由星火社区自行判断,违反者将被追究法律责任。 7. 禁止恶意行为和批量爬取: 用户或组织在使用本软件时,严禁进行任何形式的恶意行为,包括但不限于恶意攻击、滥用、破坏、批量爬取软件仓库等。恶意行为的定义由星火社区自行判断,违反者将被追究法律责任。
8. 分发与再分发权利: 星火社区保留对其制作的软件包的分发权利。未经明确授权,禁止任何个人或组织将星火社区软件包用于商业目的或在未获得星火社区许可的情况下进行再分发。此条款旨在确保开源精神的同时,维护星火社区的知识产权。 8. 分发与再分发权利: 星火社区保留对其制作的软件包的分发权利。未经明确授权,禁止任何个人或组织将星火社区软件包用于商业目的或在未获得星火社区许可的情况下进行再分发。此条款旨在确保开源精神的同时,维护星火社区的知识产权。
9. 其他条款:除上述约定外,若您使用了星火商店的主程序或其部分代码,您应遵守 GPL v3 的所有其他条款和要求 9. 商业应用限制:您不得使用本软件的代码开发商业应用,也不得在商业应用中使用本软件的代码,除非获得星火社区和火穗(沈阳)计算机软件开发有限公司的书面许可
10. 其他条款:除上述约定外,若您使用了星火商店的主程序或其部分代码,您应遵守 GPL v3 的所有其他条款和要求。若本协议条款的内容与GPL V3中的内容不同的以本协议条款为准
11. 其他约定:本许可以简体中文版本为最准确释义
GPLV3许可证的完整文本可以在以下链接找到https://www.gnu.org/licenses/gpl-3.0.html GPLV3许可证的完整文本可以在以下链接找到https://www.gnu.org/licenses/gpl-3.0.html
@@ -32,6 +34,8 @@ This software is free software; you can modify and redistribute it under the ter
6. Warehouse copyright terms: In order to better provide continuous services, Spark is only free for individual users to open the service warehouse, if you or your organization needs to provide commercial services or your organization is a for-profit organization, please contact Spark community to obtain commercial authorization. 6. Warehouse copyright terms: In order to better provide continuous services, Spark is only free for individual users to open the service warehouse, if you or your organization needs to provide commercial services or your organization is a for-profit organization, please contact Spark community to obtain commercial authorization.
7. Prohibited malicious behavior and mass crawling: Users or organizations are strictly prohibited to engage in any form of malicious behavior when using the software, including but not limited to malicious attacks, abuse, destruction, and mass crawling of software warehouses. The definition of malicious behavior is judged by the Spark community, and violators will be held legally responsible. 7. Prohibited malicious behavior and mass crawling: Users or organizations are strictly prohibited to engage in any form of malicious behavior when using the software, including but not limited to malicious attacks, abuse, destruction, and mass crawling of software warehouses. The definition of malicious behavior is judged by the Spark community, and violators will be held legally responsible.
8. Distribution and redistribution rights: Spark Community reserves the right to distribute the software packages it produces. Any person or organization is prohibited from using the Spark Community software package for commercial purposes or redistributing it without the express authorization of the Spark Community. This clause is intended to ensure the spirit of open source while safeguarding the intellectual property rights of the Spark community. 8. Distribution and redistribution rights: Spark Community reserves the right to distribute the software packages it produces. Any person or organization is prohibited from using the Spark Community software package for commercial purposes or redistributing it without the express authorization of the Spark Community. This clause is intended to ensure the spirit of open source while safeguarding the intellectual property rights of the Spark community.
9. Other Terms: In addition to the above, if you use the Spark Store main program or part of its code, you are subject to all other terms and requirements of GPL v3. 9. Business Application Restriction: You are not permitted to utilize the code of this software for developing commercial applications, nor are you allowed to integrate the code of this software into commercial applications without obtaining written consent from both the Spark Community and Flamescion (Shenyang) Computer Software Development Co., Ltd.
10. Other Terms: In addition to the above provisions, if you use the main program or any part of the code of Spark Store, you must comply with all other terms and requirements of GPL v3. In case of any inconsistency between the terms of this agreement and those of GPL v3, the terms of this agreement shall prevail.
11. Additional Agreements: This license shall be interpreted most accurately in its Simplified Chinese version.
You can find the full text of GPLV3 license at: https://www.gnu.org/licenses/gpl-3.0.html You can find the full text of GPLV3 license at: https://www.gnu.org/licenses/gpl-3.0.html

View File

@@ -15,18 +15,19 @@ To improve this situation, we have launched this app store. We have broadly incl
- **amd64 architecture:** deepin 20 / deepin 23 / Ubuntu 20.04 / Ubuntu 22.04 / UOS Home Edition 20 - **amd64 architecture:** deepin 20 / deepin 23 / Ubuntu 20.04 / Ubuntu 22.04 / UOS Home Edition 20
- **arm64 architecture:** UOS Professional Edition 1060 / Ubuntu 22.04 / deepin 23 - **arm64 architecture:** UOS Professional Edition 1060 / Ubuntu 22.04 / deepin 23
- **loong64 architecture:** deepin 23
> Special Note: We also support all versions of Ubuntu operating systems higher than Ubuntu 22.04, such as Ubuntu 22.10, 23.04, 23.10, etc. > Special Note: We also support all versions of Ubuntu operating systems higher than Ubuntu 22.04, such as Ubuntu 22.10, 23.04, 23.10, etc.
**Important Notice:** This software does not provide any form of warranty. If you plan to use it on UOS Professional Edition, please make sure to understand and enable Developer Mode. Make sure you have basic troubleshooting capabilities. It should be clear that we have not conducted extensive testing on the UOS operating system. Therefore, using the Spark client may lead to a series of issues like failed system updates, data loss, etc., all risks to be borne by the user. **Important Notice:** This software does not provide any form of warranty. If you plan to use it on UOS Professional Edition, please make sure to understand and enable Developer Mode. Make sure you have basic troubleshooting capabilities. It should be clear that we have not conducted extensive testing on the UOS operating system. Therefore, using the Spark client may lead to a series of issues like failed system updates, data loss, etc., all risks to be borne by the user.
## Team Collaboration: For detailed documentation related to branch management, please see [this link](https://spark-store-project.gitee.io/spark-wiki/#/Dev/Spark-Store-Git-Repo). ## Team Collaboration: For detailed documentation related to branch management, please see [this link](https://wiki.spark-app.store/#/Dev/Spark-Store-Git-Repo).
We warmly welcome you to join our development team. Whether you want to participate in development or submit applications, you can find your place here to jointly promote the development of the Linux application ecosystem. We warmly welcome you to join our development team. Whether you want to participate in development or submit applications, you can find your place here to jointly promote the development of the Linux application ecosystem.
You can track our Issue handling status in real-time through the following link: [Gitee Issue Board](https://gitee.com/spark-store-project/spark-store/board). You can track our Issue handling status in real-time through the following link: [Gitee Issue Board](https://gitee.com/spark-store-project/spark-store/board).
If you have a software package you'd like to submit, please [click here to submit](https://upload.deepinos.org/index). If you have a software package you'd like to submit, please [click here to submit](https://upload.deepinos.org.cn/index).
## Contents ## Contents
@@ -41,25 +42,9 @@ If you have a software package you'd like to submit, please [click here to submi
--- ---
## Read the copyright ## Read [the copyright](LICENSE)
Spark Opensource LICENSE
Copyright (C) 2023 The Spark Community
This software is free software; you can modify and redistribute it under the terms of the GNU General Public License version 3 (GPL v3). However, to protect the rights of the original authors and the interests of the community users, please adhere to the following terms:
1. Applicability to all files in this repository: This license applies to all files in this repository (or project). Any individuals or organizations that use, modify, or redistribute this software must comply with this license.
2. Copyright notice and license files: You must not remove, hide, or modify the copyright notice and license files of the original authors included in this software. Preserving the rights information of the original authors is essential for maintaining the open-source software ecosystem.
3. Version annotation: If you modify and redistribute this software, you must mark in a prominent position that this version is not officially provided by the Spark community. This avoids misleading users into thinking that the software is an official version provided by the Spark community. This software is licensed for personal, non-profit use only, and any use of it for commercial purposes or in for-profit organizations requires the prior written permission of the Spark Community.
4. Trademark usage: You are not allowed to use terms such as "Spark App Store," "Spark Store," or the logo of Spark App Store in redistributed versions, as they may mislead users into believing that the software is provided by the official Spark community.
5. Terms of Service: Your use of the software of Spark Store will be deemed as your consent to collect version, log and other information on the premise of not violating your privacy, so as to facilitate the Spark community to provide you with better services.
6. Warehouse copyright terms: In order to better provide continuous services, Spark is only free for individual users to open the service warehouse, if you or your organization needs to provide commercial services or your organization is a for-profit organization, please contact Spark community to obtain commercial authorization.
7. Prohibited malicious behavior and mass crawling: Users or organizations are strictly prohibited to engage in any form of malicious behavior when using the software, including but not limited to malicious attacks, abuse, destruction, and mass crawling of software warehouses. The definition of malicious behavior is judged by the Spark community, and violators will be held legally responsible.
8. Distribution and redistribution rights: Spark Community reserves the right to distribute the software packages it produces. Any person or organization is prohibited from using the Spark Community software package for commercial purposes or redistributing it without the express authorization of the Spark Community. This clause is intended to ensure the spirit of open source while safeguarding the intellectual property rights of the Spark community.
9. Other Terms: In addition to the above, if you use the Spark Store main program or part of its code, you are subject to all other terms and requirements of GPL v3.
You can find the full text of GPLV3 license at: https://www.gnu.org/licenses/gpl-3.0.html
## Determine your system architecture ## Determine your system architecture
@@ -103,7 +88,7 @@ You will see an output, and that's your system architecture.
#### For Ubuntu 20.04 Users #### For Ubuntu 20.04 Users
1. **Download Dependencies** 1. **Download Dependencies**
* Please visit the [Spark App Store Dependency Download page](https://spark-app.store/download_dependencies_latest) and download the latest dependency package. * Please visit the [Spark App Store Dependency Download page](https://gitee.com/spark-store-project/spark-store-dependencies/releases) and download the latest dependency package.
* Unzip the dependency package multiple times until you see multiple installation packages ending with `.deb`. * Unzip the dependency package multiple times until you see multiple installation packages ending with `.deb`.
* Follow the instructions in the dependency package to install all the dependencies at once. * Follow the instructions in the dependency package to install all the dependencies at once.
@@ -138,7 +123,7 @@ You will see an output, and that's your system architecture.
#### For Debian 11 Users #### For Debian 11 Users
1. **Download Dependencies** 1. **Download Dependencies**
* Please visit the [Spark App Store Dependency Download page](https://spark-app.store/download_dependencies_latest) and download the latest dependency package. * Please visit the [Spark App Store Dependency Download page](https://gitee.com/spark-store-project/spark-store-dependencies/releases) and download the latest dependency package.
* Unzip the dependency package multiple times until you see multiple installation packages ending with `.deb`. * Unzip the dependency package multiple times until you see multiple installation packages ending with `.deb`.
* Follow the instructions in the dependency package to install all the dependencies at once. * Follow the instructions in the dependency package to install all the dependencies at once.
@@ -175,8 +160,8 @@ You can also check the [Chinese version](https://gitee.com/spark-store-project/s
- If you have any questions or suggestions, please submit them via email or on our [Gitee page](https://gitee.com/spark-store-project/spark-store/issues). - If you have any questions or suggestions, please submit them via email or on our [Gitee page](https://gitee.com/spark-store-project/spark-store/issues).
- If you want to follow our development progress, you can go to the [Spark App Store Board](https://gitee.com/spark-store-project/spark-store/board) for more information. - If you want to follow our development progress, you can go to the [Spark App Store Board](https://gitee.com/spark-store-project/spark-store/board) for more information.
- Our [Forum](https://www.deepinos.org/) - Our [Forum](https://bbs.spark-app.store/)
- Our [QQ Group](https://blog.shenmo.tech/post/%E6%95%85%E9%9A%9C%E5%85%AC%E5%91%8A/) - Our [QQ Group](https://blog.shenmo.tech/post/%E6%95%85%E9%9A%9C%E5%85%AC%E5%91%8A/)
- For commercial support, please visit [Flamescion Inc.](http://flamescion.cn/) - For commercial support, please leave your issue~
--- ---

View File

@@ -1,6 +1,11 @@
# 星火应用商店 # 星火应用商店
[![star](https://gitee.com/spark-store-project/spark-store/badge/star.svg?theme=gvp)](https://gitee.com/spark-store-project/spark-store/stargazers) [![fork](https://gitee.com/spark-store-project/spark-store/badge/fork.svg?theme=gvp)](https://gitee.com/spark-store-project/spark-store/members) [![star](https://gitee.com/spark-store-project/spark-store/badge/star.svg?theme=gvp)](https://gitee.com/spark-store-project/spark-store/stargazers) [![fork](https://gitee.com/spark-store-project/spark-store/badge/fork.svg?theme=gvp)](https://gitee.com/spark-store-project/spark-store/members)
https://gitee.com/spark-store-project/spark-store/
https://gitcode.com/spark-store-project/spark-store/
https://github.com/spark-store-project/spark-store/
## 简介 ## 简介
@@ -11,12 +16,13 @@ Linux 应用的数量相对有限Wine 软件的可获得性也颇为困难。
生态系统的构建并非依赖个体的孤立努力,而需要全社区共同参与。只有当大家的“星火”聚集一处,方可引发“燎原之势”。 生态系统的构建并非依赖个体的孤立努力,而需要全社区共同参与。只有当大家的“星火”聚集一处,方可引发“燎原之势”。
为了改善这一现状,我们推出了这个应用商店。我们广泛地收录了各种用户需求的软件包,汇集了高质量的小工具,并主动对 Wine 应用进行了适配,一切都储存在我们的软件库中,以便用户方便地获取。 为了改善这一现状,我们推出了这个应用商店。我们广泛地收录了各种用户需求的软件包,汇集了高质量的小工具,并主动对 Wine 应用进行了适配,一切都储存在我们的软件库中,使得用户可以方便地获取这些应用
**当前支持的Linux发行版包括** **当前支持的Linux发行版包括**
- **amd64架构** deepin 20 / deepin 23 / Ubuntu 20.04 / Ubuntu 22.04 / UOS家庭版20 - **amd64架构** deepin 20 / deepin 23 / Ubuntu 20.04 / Ubuntu 22.04 / UOS家庭版20
- **arm64架构** UOS专业版1060 / Ubuntu 22.04 / deepin 23 - **arm64架构** UOS专业版1060 / Ubuntu 22.04 / deepin 23
- **loong64架构** deepin 23
> 特别说明我们还支持所有版本高于Ubuntu 22.04的Ubuntu操作系统例如Ubuntu 22.10、23.04、23.10等。 > 特别说明我们还支持所有版本高于Ubuntu 22.04的Ubuntu操作系统例如Ubuntu 22.10、23.04、23.10等。
@@ -24,7 +30,7 @@ Linux 应用的数量相对有限Wine 软件的可获得性也颇为困难。
## 关于团队协作:分支管理相关的详细文档可参见 [此链接](https://spark-store-project.gitee.io/spark-wiki/#/Dev/Spark-Store-Git-Repo)。 ## 关于团队协作:分支管理相关的详细文档可参见 [此链接](https://wiki.spark-app.store/#/Dev/Spark-Store-Git-Repo)。
我们热忱欢迎您加入我们的开发团队。无论您是想参与开发还是想提交应用都能在这里找到属于您的一席之地共同推动Linux应用生态的发展。 我们热忱欢迎您加入我们的开发团队。无论您是想参与开发还是想提交应用都能在这里找到属于您的一席之地共同推动Linux应用生态的发展。
@@ -48,24 +54,8 @@ Linux 应用的数量相对有限Wine 软件的可获得性也颇为困难。
--- ---
## 阅读版权声明 ## 阅读[版权声明](LICENSE)
星火开源软件协议Spark Opensource LICENSE
版权所有 (C) 2023 星火社区
根据 GNU 通用公共许可证第三版GPL v3本软件是自由软件您可以修改和再发布它。但是为了维护原作者的权益并保护社区用户的权益您还需要遵守以下条款
1. 对本仓库下的所有文件生效:本许可证适用于本仓库(或项目)下的所有文件。任何使用、修改或再发布本软件的个人或组织都必须遵守本许可证。
2. 版权声明和许可证文件:您不得移除、隐藏或更改本软件中包含的原作者的版权声明和许可证文件。保留原作者的权益信息对于维护开源软件生态系统至关重要。
3. 版本标注: 如果您对本软件做出修改并再发布,您必须在醒目位置标注此版本并非星火社区官方提供。这样可以避免误导使用者认为该软件为星火社区官方提供的版本。此软件仅授权用于个人非盈利用途,任何将其用于商业目的或在盈利性组织中使用的行为均需事先获得星火社区的书面许可。
4. 商标使用您不得在再发布版本中使用“星火应用商店”、“Spark Store”或星火应用商店的Logo等可能误导使用者此软件由星火社区官方提供的信息。
5. 服务条款:您使用星火商店软件的行为将被视为您同意星火在不侵犯您隐私的前提下搜集版本、日志等信息,以便于星火社区更好地为您提供服务。
6. 仓库版权条款:为了更好的提供持续性服务,星火仅对个人用户免费开放服务仓库,如您或您的组织需要提供商业服务或者您的组织为盈利性组织,请联系星火社区获取商业授权。
7. 禁止恶意行为和批量爬取: 用户或组织在使用本软件时,严禁进行任何形式的恶意行为,包括但不限于恶意攻击、滥用、破坏、批量爬取软件仓库等。恶意行为的定义由星火社区自行判断,违反者将被追究法律责任。
8. 分发与再分发权利: 星火社区保留对其制作的软件包的分发权利。未经明确授权,禁止任何个人或组织将星火社区软件包用于商业目的或在未获得星火社区许可的情况下进行再分发。此条款旨在确保开源精神的同时,维护星火社区的知识产权。
9. 其他条款:除上述约定外,若您使用了星火商店的主程序或其部分代码,您应遵守 GPL v3 的所有其他条款和要求。
GPLV3许可证的完整文本可以在以下链接找到https://www.gnu.org/licenses/gpl-3.0.html
## 确定你的系统架构 ## 确定你的系统架构
@@ -98,7 +88,7 @@ GPLV3许可证的完整文本可以在以下链接找到https://www.gnu.org/l
> appstore://deepin-home-appstore-client?app_detail_info/spark-store > appstore://deepin-home-appstore-client?app_detail_info/spark-store
若要使用最新版本,请访问[星火应用商店的Release页面](https://gitee.com/spark-store-project/spark-store/releases)并下载适用于Deepin的最新版本。安装后即可使用。 若要使用最新版本,请访问[星火应用商店的Release页面](https://gitee.com/spark-store-project/spark-store/releases)或[从Gitcode下载](https://gitcode.com/spark-store-project/spark-store/releases)并下载适用于Deepin的最新版本。安装后即可使用。
假设您下载到用户目录下的 Downloads 文件夹, 我们推荐您使用 APT 工具安装: 假设您下载到用户目录下的 Downloads 文件夹, 我们推荐您使用 APT 工具安装:
@@ -112,14 +102,14 @@ GPLV3许可证的完整文本可以在以下链接找到https://www.gnu.org/l
#### 对于 Ubuntu 20.04 用户 #### 对于 Ubuntu 20.04 用户
1. **下载依赖包** 1. **下载依赖包**
* 请访问[星火应用商店依赖包下载页面](https://spark-app.store/download_dependencies_latest) 下载最新的依赖包。 * 请访问[星火应用商店依赖包下载页面](https://gitee.com/spark-store-project/spark-store-dependencies/releases) 下载最新的依赖包。
* 请多次解压依赖包,直到你可以看到诸多以 deb 结尾的安装包。 * 请多次解压依赖包,直到你可以看到诸多以 deb 结尾的安装包。
* 依据依赖包内的说明,一次性安装所有的依赖包。 * 依据依赖包内的说明,一次性安装所有的依赖包。
2. **下载并安装** 2. **下载并安装**
请访问[星火应用商店的Release页面](https://gitee.com/spark-store-project/spark-store/releases),下载和您电脑相同架构的安装包并安装。 请访问[星火应用商店的Release页面](https://gitee.com/spark-store-project/spark-store/releases)或[从Gitcode下载](https://gitcode.com/spark-store-project/spark-store/releases),下载和您电脑相同架构的安装包并安装。
假设您下载到用户目录下的 Downloads 文件夹, 我们推荐您使用 APT 工具安装: 假设您下载到用户目录下的 Downloads 文件夹, 我们推荐您使用 APT 工具安装:
@@ -134,7 +124,7 @@ GPLV3许可证的完整文本可以在以下链接找到https://www.gnu.org/l
2. **下载并安装** 2. **下载并安装**
请访问[星火应用商店的Release页面](https://gitee.com/spark-store-project/spark-store/releases),下载和您电脑相同架构的安装包并安装。 请访问[星火应用商店的Release页面](https://gitee.com/spark-store-project/spark-store/releases)或[从Gitcode下载](https://gitcode.com/spark-store-project/spark-store/releases),下载和您电脑相同架构的安装包并安装。
假设您下载到用户目录下的 Downloads 文件夹, 我们推荐您使用 APT 工具安装: 假设您下载到用户目录下的 Downloads 文件夹, 我们推荐您使用 APT 工具安装:
@@ -148,13 +138,13 @@ GPLV3许可证的完整文本可以在以下链接找到https://www.gnu.org/l
#### 对于 Debian 11 用户 #### 对于 Debian 11 用户
1. **下载依赖包** 1. **下载依赖包**
* 请访问[星火应用商店依赖包下载页面](https://spark-app.store/download_dependencies_latest) 下载最新的依赖包。 * 请访问[星火应用商店依赖包下载页面](https://gitee.com/spark-store-project/spark-store-dependencies/releases) 下载最新的依赖包。
* 请多次解压依赖包,直到你可以看到诸多以 deb 结尾的安装包。 * 请多次解压依赖包,直到你可以看到诸多以 deb 结尾的安装包。
* 依据依赖包内的说明,一次性安装所有的依赖包。 * 依据依赖包内的说明,一次性安装所有的依赖包。
2. **下载并安装** 2. **下载并安装**
请访问[星火应用商店的Release页面](https://gitee.com/spark-store-project/spark-store/releases)并下载,安装后即可使用。 请访问[星火应用商店的Release页面](https://gitee.com/spark-store-project/spark-store/releases)或[从Gitcode下载](https://gitcode.com/spark-store-project/spark-store/releases)并下载,安装后即可使用。
#### 对于 Debian 12+ 用户 #### 对于 Debian 12+ 用户
@@ -186,9 +176,8 @@ GPLV3许可证的完整文本可以在以下链接找到https://www.gnu.org/l
- 如果您有任何问题或建议,请通过邮件或在[Gitee页面](https://gitee.com/spark-store-project/spark-store/issues)上提交问题。 - 如果您有任何问题或建议,请通过邮件或在[Gitee页面](https://gitee.com/spark-store-project/spark-store/issues)上提交问题。
- 如果你想关注我们的开发进度,可以跳转[星火应用商店Board](https://gitee.com/spark-store-project/spark-store/board)获取更多信息。 - 如果你想关注我们的开发进度,可以跳转[星火应用商店Board](https://gitee.com/spark-store-project/spark-store/board)获取更多信息。
- 我们的[论坛](https://www.deepinos.org/) - 我们的[论坛](https://bbs.spark-app.store/)
- 我们的[QQ群](https://blog.shenmo.tech/post/%E6%95%85%E9%9A%9C%E5%85%AC%E5%91%8A/) - 我们的QQ群 872690351
- 商业支持请访问[火穗科技 Flamescion Inc.](http://flamescion.cn/) - 商业支持请留言咨询~
--- ---

32
debian/changelog vendored
View File

@@ -1,3 +1,35 @@
spark-store (4.2.13) stable; urgency=medium
* 未经测试文案修改
* 龙芯平台并入主线
* 修复:更新过程中中断无法再次启动更新检查
* 调整:提高超时时长,适应较差的网络环境
-- shenmo <shenmo@spark-app.store> Sun, 5 Mar 2022 11:45:14 +0800
spark-store (4.2.12.1) stable; urgency=medium
* 修复:龙芯自动--no-sandbox
-- shenmo <shenmo@spark-app.store> Sun, 5 Mar 2022 11:45:14 +0800
spark-store (4.2.12) stable; urgency=medium
* 修复:飞腾部分设备上白屏的问题
* 修复:下载开始时长时等待(降低链接超时时长)
-- shenmo <shenmo@spark-app.store> Sun, 5 Mar 2022 11:45:14 +0800
spark-store (4.2.11) stable; urgency=medium
* 修复:判断是否安装状态错误
* 修改:部分组件重构提升清晰度
* 修复v23下部分应用图标失效
-- shenmo <shenmo@spark-app.store> Sun, 5 Mar 2022 11:45:14 +0800
spark-store (4.2.10) stable; urgency=medium spark-store (4.2.10) stable; urgency=medium
* 修复:部分发行版上无法启动自动创建的桌面图标 * 修复:部分发行版上无法启动自动创建的桌面图标

3
debian/control vendored
View File

@@ -46,6 +46,7 @@ Depends:${shlibs:Depends}, ${misc:Depends},
zenity, zenity,
policykit-1, policykit-1,
libnotify-bin, libnotify-bin,
desktop-file-utils desktop-file-utils,
dpkg-dev
Description: Spark Store Description: Spark Store
A community powered app store, based on DTK. A community powered app store, based on DTK.

19
debian/rules vendored
View File

@@ -3,10 +3,13 @@
export QT_SELECT = qt5 export QT_SELECT = qt5
export DEB_BUILD_MAINT_OPTIONS = hardening=+all export DEB_BUILD_MAINT_OPTIONS = hardening=+all
include /usr/share/dpkg/default.mk include /usr/share/dpkg/default.mk
export DEB_VERSION = $(shell dpkg-parsechangelog -S Version)
DEB_BUILD_ARCH ?= $(shell dpkg-architecture -qDEB_BUILD_ARCH) DEB_BUILD_ARCH ?= $(shell dpkg-architecture -qDEB_BUILD_ARCH)
DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH) DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
# Use realtime timestamp instead of the latest entry in debian/changelog
SOURCE_DATE_EPOCH := $(shell date +%s)
# Uncomment this to turn on verbose mode. # Uncomment this to turn on verbose mode.
#export DH_VERBOSE = 1 #export DH_VERBOSE = 1
@@ -14,25 +17,23 @@ DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
dh $@ --parallel dh $@ --parallel
override_dh_auto_clean: override_dh_auto_clean:
rm -rf $(CURDIR)/build rm -rf $(CURDIR)/build-$(DEB_HOST_MULTIARCH)
override_dh_auto_configure: override_dh_auto_configure:
mkdir -p $(CURDIR)/build mkdir -p $(CURDIR)/build-$(DEB_HOST_MULTIARCH)
qmake BUILD_VERSION=$(DEB_VERSION_UPSTREAM) spark-store-project.pro \ qmake BUILD_VERSION=$(DEB_VERSION_UPSTREAM) spark-store-project.pro \
-spec linux-g++ CONFIG+=qtquickcompiler \ -spec linux-g++ CONFIG+=force_debug_info \
-o $(CURDIR)/build/ -o $(CURDIR)/build-$(DEB_HOST_MULTIARCH)/
override_dh_auto_build: override_dh_auto_build:
make MAKEFLAGS="$(MAKEFLAGS)" -C $(CURDIR)/build make -C $(CURDIR)/build-$(DEB_HOST_MULTIARCH) -j$(JOBS)
override_dh_auto_install: override_dh_auto_install:
make -C $(CURDIR)/build install \ make -C $(CURDIR)/build-$(DEB_HOST_MULTIARCH) install \
INSTALL_ROOT=$(CURDIR)/debian/spark-store INSTALL_ROOT=$(CURDIR)/debian/spark-store
# Ignore the dpkg-shlibdeps: warning (it uses none of the library's symbols) # Ignore the dpkg-shlibdeps: warning (it uses none of the library's symbols)
# Qt Mutidedia lib will ref to network libraray. # Qt Mutidedia lib will ref to network libraray.
override_dh_shlibdeps: override_dh_shlibdeps:
dh_shlibdeps --dpkg-shlibdeps-params=--warnings=0 dh_shlibdeps --dpkg-shlibdeps-params=--warnings=0

View File

@@ -12,6 +12,10 @@ case "$1" in
aarch64) aarch64)
echo "Will not enable armhf since 4271" echo "Will not enable armhf since 4271"
;; ;;
loongarch64)
echo "Nope we DO NOT WANT ABI1 now"
dpkg --remove-architecture loongarch64
;;
*) *)
echo "Unknown architecture, skip enable 32-bit arch" echo "Unknown architecture, skip enable 32-bit arch"
@@ -25,12 +29,15 @@ case "$1" in
# Check if /usr/local/bin existed # Check if /usr/local/bin existed
mkdir -p /usr/local/bin mkdir -p /usr/local/bin
## I hate /usr/local/bin. We will abandon them later
# Create symbol links for binary files # Create symbol links for binary files
ln -s -f /opt/durapps/spark-store/bin/spark-store /usr/local/bin/spark-store ln -s -f /opt/durapps/spark-store/bin/spark-store /usr/local/bin/spark-store
ln -s -f /opt/durapps/spark-store/bin/ssinstall /usr/local/bin/ssinstall ln -s -f /opt/durapps/spark-store/bin/ssinstall /usr/local/bin/ssinstall
ln -s -f /opt/durapps/spark-store/bin/ssaudit /usr/local/bin/ssaudit ln -s -f /opt/durapps/spark-store/bin/ssaudit /usr/local/bin/ssaudit
ln -s -f /opt/durapps/spark-store/bin/ssinstall /usr/bin/ssinstall
ln -s -f /opt/durapps/spark-store/bin/ssaudit /usr/bin/ssaudit
ln -s -f /opt/durapps/spark-store/bin/spark-dstore-patch /usr/local/bin/spark-dstore-patch ln -s -f /opt/durapps/spark-store/bin/spark-dstore-patch /usr/local/bin/spark-dstore-patch
ln -s -f /opt/durapps/spark-store/bin/spark-dstore-patch /usr/bin/spark-dstore-patch
ln -s -f /opt/durapps/spark-store/bin/aptss /usr/local/bin/ss-apt-fast ln -s -f /opt/durapps/spark-store/bin/aptss /usr/local/bin/ss-apt-fast
ln -s -f /opt/durapps/spark-store/bin/aptss /usr/bin/aptss ln -s -f /opt/durapps/spark-store/bin/aptss /usr/bin/aptss
@@ -66,18 +73,7 @@ case "$1" in
;; ;;
triggered) triggered)
# Quit if deepin-app-store-tool existed spark-dstore-patch
if [ -x "/usr/bin/deepin-app-store-tool" ] ; then
exit 0
fi
# Trigger for UOS debs installation
echo '--------检测到Uniontech标准软件包运行补丁以修正安装--------'
if [ -x "/usr/local/bin/spark-dstore-patch" ] ; then
/usr/local/bin/spark-dstore-patch
echo '-----------spark-dstore-patch补丁工具已运行完毕-----------'
else
echo '------------spark-dstore-patch补丁工具运行失败------------'
fi
;; ;;
esac esac

0
debian/spark-store.postrm vendored Normal file → Executable file
View File

View File

@@ -16,12 +16,15 @@ if [ "$1" = "remove" -o "$1" = "purge" ] ; then
echo "卸载操作,进行配置清理" echo "卸载操作,进行配置清理"
# Remove residual symbol links # Remove residual symbol links
rm -f /usr/local/bin/spark-store unlink /usr/local/bin/spark-store
rm -f /usr/local/bin/ssinstall unlink /usr/local/bin/ssinstall
rm -f /usr/local/bin/ssaudit unlink /usr/local/bin/ssaudit
rm -f /usr/local/bin/spark-dstore-patch unlink /usr/bin/ssinstall
rm -f /usr/local/bin/ss-apt-fast unlink /usr/bin/ssaudit
rm -f /usr/bin/aptss unlink /usr/local/bin/spark-dstore-patch
unlink /usr/bin/spark-dstore-patch
unlink /usr/local/bin/ss-apt-fast
unlink /usr/bin/aptss
rm -rf /etc/aptss/ rm -rf /etc/aptss/
rm -rf /var/lib/aptss/ rm -rf /var/lib/aptss/

View File

@@ -1 +1,2 @@
interest-noawait /opt/apps interest-noawait /opt/apps
interest-noawait /usr/share/icons

File diff suppressed because it is too large Load Diff

View File

@@ -36,13 +36,13 @@ Application::Application(int &argc, char **argv)
setApplicationDisplayName(QObject::tr("Spark Store")); // 设置窗口显示标题 (Wayland 下会显示 Qt 原生标题栏) setApplicationDisplayName(QObject::tr("Spark Store")); // 设置窗口显示标题 (Wayland 下会显示 Qt 原生标题栏)
setProductName(QObject::tr("Spark Store")); setProductName(QObject::tr("Spark Store"));
setProductIcon(QIcon::fromTheme("spark-store")); setProductIcon(QIcon::fromTheme("spark-store"));
setApplicationHomePage("https://gitee.com/deepin-community-store"); setApplicationHomePage("https://gitee.com/spark-store-project");
setApplicationDescription( setApplicationDescription(
QObject::tr( QObject::tr(
"<span style=' font-size:10pt;font-weight:60;'>An appstore powered by community</span><br/>" "<span style=' font-size:10pt;font-weight:60;'>An appstore powered by community</span><br/>"
"<a href='https://www.spark-app.store/'>https://www.spark-app.store</a><br/>" "<a href='https://www.spark-app.store/'>https://www.spark-app.store</a><br/>"
"<span style=' font-size:12pt;'>Spark developers</span>")); "<span style=' font-size:12pt;'>Spark developers</span>"));
setApplicationLicense(" <a href='https://gitee.com/deepin-community-store/spark-store/blob/Flamescion/LICENSE'>GPLv3</a> "); setApplicationLicense(" <a href='https://gitee.com/spark-store-project/spark-store/blob/Flamescion/LICENSE'>Spark Opensource License</a> ");
// 检查 ~/.config/spark-union/spark-store 文件夹是否存在 // 检查 ~/.config/spark-union/spark-store 文件夹是否存在
checkAppConfigLocation(); checkAppConfigLocation();

View File

@@ -0,0 +1,249 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
inkscape:export-ydpi="127"
inkscape:export-xdpi="127"
inkscape:export-filename="/home/zhangtianyi/Desktop/deepin-community-store.png"
width="200mm"
height="200mm"
viewBox="0 0 200 200"
version="1.1"
id="svg8"
inkscape:version="1.3 (0e150ed, 2023-07-21)"
sodipodi:docname="logo-no-border.svg"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/">
<defs
id="defs2">
<linearGradient
inkscape:collect="always"
id="linearGradient1200">
<stop
style="stop-color:#000000;stop-opacity:0.1299435"
offset="0"
id="stop1196" />
<stop
style="stop-color:#dadada;stop-opacity:0.81960785"
offset="1"
id="stop1198" />
</linearGradient>
<linearGradient
id="linearGradient1138"
inkscape:collect="always">
<stop
id="stop1134"
offset="0"
style="stop-color:#99e7ea;stop-opacity:1" />
<stop
id="stop1136"
offset="1"
style="stop-color:#007ffc;stop-opacity:1" />
</linearGradient>
<linearGradient
inkscape:collect="always"
id="linearGradient1128">
<stop
style="stop-color:#99e7ea;stop-opacity:1"
offset="0"
id="stop1124" />
<stop
style="stop-color:#007ffc;stop-opacity:1"
offset="1"
id="stop1126" />
</linearGradient>
<inkscape:path-effect
effect="bspline"
id="path-effect960"
is_visible="true"
weight="33.333333"
steps="2"
helper_size="0"
apply_no_weight="true"
apply_with_weight="true"
only_selected="false" />
<radialGradient
inkscape:collect="always"
xlink:href="#linearGradient1128"
id="radialGradient1130"
cx="100.35268"
cy="199.86011"
fx="100.35268"
fy="199.86011"
r="90.135414"
gradientTransform="matrix(1,0,0,0.98112945,0,3.7714702)"
gradientUnits="userSpaceOnUse" />
<radialGradient
inkscape:collect="always"
xlink:href="#linearGradient1138"
id="radialGradient1132"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1,0,0,0.98112945,0,3.7714702)"
cx="100.35268"
cy="199.86011"
fx="100.35268"
fy="199.86011"
r="90.135414" />
<radialGradient
inkscape:collect="always"
xlink:href="#linearGradient1200"
id="radialGradient1202"
cx="100.35268"
cy="199.86011"
fx="100.35268"
fy="199.86011"
r="90.135414"
gradientTransform="matrix(1,0,0,0.98112945,0,3.7714702)"
gradientUnits="userSpaceOnUse" />
<filter
style="color-interpolation-filters:sRGB;"
inkscape:label="Drop Shadow"
id="filter1448">
<feFlood
flood-opacity="0.372549"
flood-color="rgb(145,145,145)"
result="flood"
id="feFlood1438" />
<feComposite
in="flood"
in2="SourceGraphic"
operator="in"
result="composite1"
id="feComposite1440" />
<feGaussianBlur
in="composite1"
stdDeviation="5.2918"
result="blur"
id="feGaussianBlur1442" />
<feOffset
dx="0"
dy="0"
result="offset"
id="feOffset1444" />
<feComposite
in="SourceGraphic"
in2="offset"
operator="over"
result="composite2"
id="feComposite1446" />
</filter>
<filter
style="color-interpolation-filters:sRGB;"
inkscape:label="Drop Shadow"
id="filter2201"
x="-0.06449152"
y="-0.061604632"
width="1.128983"
height="1.1232093">
<feFlood
flood-opacity="0.372549"
flood-color="rgb(145,145,145)"
result="flood"
id="feFlood2191" />
<feComposite
in="flood"
in2="SourceGraphic"
operator="in"
result="composite1"
id="feComposite2193" />
<feGaussianBlur
in="composite1"
stdDeviation="3.76995"
result="blur"
id="feGaussianBlur2195" />
<feOffset
dx="0"
dy="0"
result="offset"
id="feOffset2197" />
<feComposite
in="SourceGraphic"
in2="offset"
operator="over"
result="composite2"
id="feComposite2199" />
</filter>
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="0.98994949"
inkscape:cx="476.28692"
inkscape:cy="375.77675"
inkscape:document-units="mm"
inkscape:current-layer="layer1"
showgrid="false"
inkscape:window-width="1920"
inkscape:window-height="974"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:document-rotation="0"
inkscape:showpageshadow="2"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1" />
<metadata
id="metadata5">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(0,-97)" />
<g
inkscape:groupmode="layer"
id="layer2"
inkscape:label="Layer 2">
<path
style="fill:#ffc344;fill-opacity:1;stroke:none;stroke-width:0.309114px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 94.205599,38.155907 c 0,0 11.145081,-0.157476 22.599701,6.928753 11.45465,7.086223 18.11074,13.857508 20.27783,18.266716 2.16708,4.409209 9.28755,12.125332 9.13277,26.297795 -0.15488,14.172409 -3.40543,23.620739 -8.97797,31.494299 -5.57254,7.87359 -15.63405,13.85751 -27.70786,14.17247 -12.073829,0.31494 -19.813453,-7.55863 -22.444927,-11.96786 -2.631469,-4.4092 -3.715019,-13.85751 -0.464377,-20.62877 3.250645,-6.771296 8.358796,-6.771296 10.061513,-6.141389 1.702724,0.629897 2.167092,1.574691 3.095852,3.306872 0.928749,1.732187 1.547929,1.417257 2.941089,0.472427 1.39311,-0.944834 1.85748,-2.047138 1.54792,-3.464372 -0.30958,-1.417247 -2.16711,-3.149427 -3.71505,-3.621847 -1.547909,-0.47241 -3.715016,-1.88966 -6.810869,-1.41721 -3.095848,0.47238 -9.132757,2.04711 -14.240906,8.975819 -5.108153,6.92875 -4.488988,17.63684 -1.393134,22.67593 3.095849,5.0391 8.977962,14.48739 21.980539,17.79431 13.00259,3.30693 34.05435,-6.45633 41.32959,-21.57361 7.27524,-15.1173 7.43004,-22.203505 7.12048,-34.64374 C 148.22821,72.642208 137.23793,54.060548 125.00933,47.289265 112.78073,40.517979 103.64797,36.581186 94.205599,38.155907 Z"
id="path1002"
inkscape:connector-curvature="0" />
<path
style="fill:#f06767;fill-opacity:1;stroke:none;stroke-width:0.309114px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 100.67541,101.06311 c 0,0 -3.06474,-2.895088 -5.801108,2.22698 -2.736373,5.12205 -4.049827,9.68737 -1.313459,15.25486 2.736367,5.56745 8.428007,8.90792 17.184447,8.79659 8.75636,-0.11148 15.21419,-2.22699 19.0451,-8.5739 3.83094,-6.34692 6.7862,-11.02357 7.11457,-13.36191 0.32839,-2.33835 2.07965,0.33404 1.53239,2.33834 -0.54728,2.00426 -0.43783,5.9015 1.09454,5.12204 1.53237,-0.77942 2.73637,-2.00427 2.95526,-1.44753 0.21893,0.55673 -1.75127,4.00859 -2.68162,5.73449 -0.93039,1.7259 -3.83094,5.90153 -5.5275,7.51607 -1.69652,1.61458 -4.04981,3.89724 -6.84092,5.56747 -2.79109,1.67024 -7.11454,3.61887 -9.52255,4.06427 -2.40801,0.44539 -7.22403,1.39184 -9.96042,1.2805 -2.73635,-0.11137 -6.23892,-0.61243 -10.124558,-2.56104 -3.885645,-1.94859 -8.099657,-4.95505 -9.741479,-7.96148 -1.641825,-3.00643 -4.159283,-5.73449 -3.61201,-13.30623 0.547277,-7.57175 3.010008,-11.46899 4.870741,-13.250551 1.860731,-1.781588 4.597103,-2.561035 6.403105,-2.171298 1.806004,0.38971 2.955282,1.447544 3.393102,2.226958 0.43781,0.779437 1.149279,2.226981 1.532369,2.505371 z"
id="path1012"
inkscape:connector-curvature="0" />
<path
style="fill:#3f62eb;fill-opacity:1;stroke:none;stroke-width:0.309114px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 132.18114,140.09049 c 0,0 13.13457,-7.6831 19.26404,-19.82016 6.12948,-12.13707 8.7564,-19.93152 7.99021,-31.84589 -0.76619,-11.914358 -2.62692,-6.012854 -0.54728,-11.134928 2.07964,-5.122074 -1.31345,-15.254857 0.10943,-15.922949 1.42292,-0.668097 4.48765,4.453971 5.3633,8.573903 0.87562,4.119922 4.70654,16.813721 1.64181,32.959364 -3.06472,16.14564 -10.28872,22.60391 -15.10475,26.94655 -4.81603,4.34261 -15.7615,11.91437 -17.40332,11.80302 -1.64183,-0.11148 -1.86073,-0.11148 -1.31348,-1.55891 z"
id="path1014"
inkscape:connector-curvature="0" />
<path
style="fill:#fce102;fill-opacity:1;stroke:none;stroke-width:0.309114px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 104.83471,117.2363 c 0,0 7.00512,1.5589 12.36838,-1.78156 5.3633,-3.3405 9.5226,-8.79661 10.17931,-10.91225 0.65672,-2.11564 0.76619,1.89294 1.53236,-0.11125 0.76618,-2.00432 3.83093,-6.012871 2.29855,-15.366212 -1.53237,-9.35333 -1.64182,-9.798747 -4.48762,-14.809463 -2.84586,-5.010719 -9.63207,-11.91437 -13.79134,-14.141359 -4.15927,-2.226986 -9.96037,-5.567464 -17.950594,-5.344766 -7.990202,0.222699 -5.363286,-0.334048 -13.025124,1.002146 -7.661836,1.336187 -14.557491,5.010717 -16.856041,7.015006 -2.298552,2.004286 -8.428023,7.460405 -10.61712,10.46684 -2.189098,3.00643 -8.209113,9.798741 -11.383303,19.263442 -3.174189,9.464656 -4.487646,10.466796 -4.706555,16.702366 -0.21891,6.23557 0.547274,7.90578 -0.766185,8.46256 -1.31346,0.55673 -1.094547,-4.67668 -0.985094,-8.35123 0.109463,-3.6745 0.109463,-13.250536 4.925468,-23.940057 4.816015,-10.689538 13.353489,-19.597489 18.169503,-22.826622 4.816009,-3.229128 10.398208,-7.571752 19.045135,-9.687392 8.646933,-2.115635 17.293863,-1.781586 22.65716,-0.779443 5.3633,1.002145 13.68187,4.453974 18.1695,7.905802 4.48766,3.45183 9.41314,7.683099 13.13459,14.586765 3.72146,6.903648 4.70654,15.700251 4.59709,19.374771 -0.10943,3.674531 -1.97019,12.137076 -4.81601,16.256986 -2.84583,4.11993 -6.67674,9.0193 -10.61711,10.80089 -3.94039,1.78157 -8.75642,2.33833 -12.69675,0.55674 -3.94039,-1.78161 -3.72147,-2.44969 -4.3782,-4.34263 z"
id="path1016"
inkscape:connector-curvature="0" />
<path
style="fill:#5ed938;fill-opacity:1;stroke:none;stroke-width:0.309114px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 104.83471,117.2363 c 0,0 5.54674,1.56707 10.22918,-0.55878 4.68248,-2.12587 6.4239,-4.17301 7.54615,-5.3934 1.12223,-1.22042 3.25064,-3.50376 3.83112,-4.56669 0.58046,-1.06292 1.19962,-1.69282 1.19962,-2.08649 0,-0.39369 -1.08353,-1.33853 -0.0386,-3.62186 1.04482,-2.283321 1.97361,-7.519246 1.50922,-9.881306 -0.46438,-2.362073 -1.54792,-15.471616 -10.83547,-24.211303 -9.28753,-8.739678 -18.497709,-9.763242 -18.497709,-9.763242 0,0 14.705309,4.645415 21.593569,18.739134 6.88828,14.093741 4.64376,23.148323 0.23218,28.659827 -4.41158,5.51151 -10.68068,6.14141 -12.38342,4.72415 -1.70268,-1.41725 -5.2113,6.47164 -4.38574,7.95996 z"
id="path1018"
inkscape:connector-curvature="0" />
<path
style="fill:#8fdbe9;fill-opacity:1;stroke:none;stroke-width:0.309114px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 86.930353,66.680267 c 0,0 -9.906718,-0.07875 -17.414156,4.881616 -7.507436,4.960371 -11.14506,8.975903 -13.23476,12.125332 -2.089697,3.149446 -4.488981,7.479909 -4.179395,7.401179 0.309585,-0.0788 9.055364,-12.2828 15.866229,-15.432236 6.81087,-3.149436 13.621741,-7.558644 22.986687,-4.330482 9.364952,3.228184 13.776542,7.716118 15.788842,6.613829 2.0123,-1.1023 2.3993,-2.440824 1.23835,-3.936804 -1.16094,-1.495979 -9.364961,-8.818417 -21.051797,-7.322434 z"
id="path1020"
inkscape:connector-curvature="0" />
<path
style="fill:#fd7aff;fill-opacity:1;stroke:none;stroke-width:0.309114px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 72.107699,130.12526 c 0.65673,0.33404 5.58219,8.90795 9.522571,10.35548 3.940372,1.44755 6.567286,1.55888 7.005104,2.227 0.437821,0.66809 0.328367,4.00858 3.830921,5.45614 3.502555,1.44753 19.920785,6.01284 24.627325,6.45824 4.70658,0.4454 0.76621,3.22911 3.61202,4.23125 2.84584,1.00217 14.99532,1.5589 17.95061,0.33405 2.95527,-1.22483 2.95527,1.1135 -2.1891,3.1178 -5.14437,2.00427 -18.71677,6.79231 -27.58261,5.67882 -8.86586,-1.1135 -19.373526,-3.00644 -25.284086,-7.23772 -5.910565,-4.23126 -8.42802,-6.1242 -6.238924,-6.45824 2.189096,-0.33407 7.990199,5.9015 10.507662,6.56959 2.517463,0.66809 4.597103,0.66809 3.064735,-0.8908 -1.532366,-1.55888 -11.492755,-8.46253 -12.477849,-8.1285 -0.985092,0.33405 -3.064737,0.55674 -4.816012,-1.78159 -1.751278,-2.33832 -10.945484,-15.25485 -10.39821,-22.1585 0.547273,-6.90365 2.298552,-5.12208 4.378195,-2.56103 2.079641,2.56103 4.487648,4.78801 4.487648,4.78801 z"
id="path1022"
inkscape:connector-curvature="0" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 13 KiB

View File

@@ -120,6 +120,8 @@ void DownloadController::startDownload(const QString &url)
QString downloadDir = "/tmp/spark-store/"; //下载目录 QString downloadDir = "/tmp/spark-store/"; //下载目录
QString aria2ConnectionPerServer = "--max-connection-per-server=1"; //每个服务器最大连接数 QString aria2ConnectionPerServer = "--max-connection-per-server=1"; //每个服务器最大连接数
QString aria2ConnectionMax = "--max-concurrent-downloads=16"; //最大同时下载数 QString aria2ConnectionMax = "--max-concurrent-downloads=16"; //最大同时下载数
QString aria2ConnectionTimeout = "--connect-timeout=5"; // 5 秒服务器连接超时
QString aria2MaxRetry = "--max-tries=1"; //设置最大重试次数
if (useMetalink) //如果是metalink if (useMetalink) //如果是metalink
@@ -147,6 +149,8 @@ void DownloadController::startDownload(const QString &url)
command.append(aria2SizePerThreads.toUtf8()); command.append(aria2SizePerThreads.toUtf8());
command.append(aria2ConnectionPerServer.toUtf8()); command.append(aria2ConnectionPerServer.toUtf8());
command.append(aria2ConnectionMax.toUtf8()); command.append(aria2ConnectionMax.toUtf8());
command.append(aria2ConnectionTimeout.toUtf8());
command.append(aria2MaxRetry.toUtf8());
if (useMetalink) if (useMetalink)
{ {

View File

@@ -10,6 +10,8 @@ QString SparkAPI::serverUrl = "";
#elif __aarch64__ #elif __aarch64__
QString SparkAPI::serverUrlDir = "aarch64-store"; QString SparkAPI::serverUrlDir = "aarch64-store";
#elif __loongarch__
QString SparkAPI::serverUrlDir = "loong64-store";
#endif #endif
SparkAPI::SparkAPI(QObject *parent) : QObject(parent) SparkAPI::SparkAPI(QObject *parent) : QObject(parent)

View File

@@ -148,49 +148,11 @@ int main(int argc, char *argv[])
// qputenv("QTWEBENGINE_CHROMIUM_FLAGS", "--disable-web-security"); // qputenv("QTWEBENGINE_CHROMIUM_FLAGS", "--disable-web-security");
#ifdef __sw_64__ #ifdef __sw_64__
qputenv("QTWEBENGINE_CHROMIUM_FLAGS", "--no-sandbox"); qputenv("QTWEBENGINE_CHROMIUM_FLAGS", "--no-sandbox");
#elif __aarch64__
QString env = QString::fromUtf8(qgetenv("QTWEBENGINE_CHROMIUM_FLAGS"));
env = env.trimmed();
/**
* NOTE: 参考帮助手册代码,对于部分 ARM CPU 设备,
* --disable-gpu 保证网页正常显示
* --single-process 避免 QtWebEngine 崩溃(可选)
*/
env += " --disable-gpu";
if (Utils::isPhytium()) {
env += " --single-process";
}
qputenv("QTWEBENGINE_CHROMIUM_FLAGS", env.trimmed().toUtf8());
if (Utils::isWayland()) {
/**
* WARNING: DDM TreeLand 混合器下,设置
* QT_WAYLAND_SHELL_INTEGRATION 环境变量
* 会导致崩溃 By justforlxz
*/
if (!Utils::isTreeLand()) {
/**
* NOTE: 参考帮助手册代码,对于麒麟 CPU 设备,
* 避免 wayland 环境下 QtWebEngine 崩溃
*/
qputenv("QT_WAYLAND_SHELL_INTEGRATION", "kwayland-shell");
}
}
QSurfaceFormat format;
format.setRenderableType(QSurfaceFormat::OpenGLES);
QSurfaceFormat::setDefaultFormat(format);
/**
* NOTE: https://zhuanlan.zhihu.com/p/550285855
* 避免 X11 环境下从 QtWebEngine 后退回到 QWidget 时黑屏闪烁
*/
if (!Utils::isWayland()) {
qputenv("QMLSCENE_DEVICE", "softwarecontext");
DApplication::setAttribute(Qt::AA_UseSoftwareOpenGL);
}
#endif #endif
#ifdef __loongarch__
qputenv("QTWEBENGINE_CHROMIUM_FLAGS", "--no-sandbox");
#endif
/** /**
* NOTE: https://zhuanlan.zhihu.com/p/550285855 * NOTE: https://zhuanlan.zhihu.com/p/550285855
* 避免 wayland 环境下从 QtWebEngine 后退回到 QWidget 时黑屏闪烁 * 避免 wayland 环境下从 QtWebEngine 后退回到 QWidget 时黑屏闪烁

View File

@@ -25,7 +25,7 @@
#define WaylandSearchCenter 1 #define WaylandSearchCenter 1
#define OtherSearchCenter 2 #define OtherSearchCenter 2
#define RightSearchSpace 1 #define RightSearchSpace 1
#define UploadServerUrl "https://upload.deepinos.org/" #define UploadServerUrl "https://upload.deepinos.org.cn/"
MainWindow::MainWindow(QWidget *parent) MainWindow::MainWindow(QWidget *parent)
: BaseWidgetOpacity(parent) : BaseWidgetOpacity(parent)

View File

@@ -55,7 +55,7 @@ void AppIntoPage::openUrl(const QUrl &url)
ui->label_2->setText(info["More"].toString()); ui->label_2->setText(info["More"].toString());
// 显示 tags // 显示 tags
#if (DTK_VERSION >= DTK_VERSION_CHECK(5, 15, 0, 0)) #if QT_VERSION >= QT_VERSION_CHECK(5, 15, 0)
QStringList taglist = info["Tags"].toString().split(";", Qt::SkipEmptyParts); QStringList taglist = info["Tags"].toString().split(";", Qt::SkipEmptyParts);
#else #else
QStringList taglist = info["Tags"].toString().split(";", QString::SkipEmptyParts); QStringList taglist = info["Tags"].toString().split(";", QString::SkipEmptyParts);
@@ -133,11 +133,15 @@ void AppIntoPage::openUrl(const QUrl &url)
bool isInstalled; bool isInstalled;
bool isUpdated; bool isUpdated;
QString packagename = info["Pkgname"].toString(); QString packagename = info["Pkgname"].toString();
isInstall.start("dpkg", QStringList() << "-s" << info["Pkgname"].toString()); isInstall.start("/opt/durapps/spark-store/bin/store-helper/check-is-installed", QStringList() << info["Pkgname"].toString());
qDebug() << info["Pkgname"].toString(); qDebug() << info["Pkgname"].toString();
isInstall.waitForFinished(180 * 1000); // 默认超时 3 分钟 isInstall.waitForFinished(180 * 1000); // 默认超时 3 分钟
int error = QString::fromStdString(isInstall.readAllStandardError().toStdString()).length();
if (error == 0) int exitCode = isInstall.exitCode();
QProcess::ExitStatus exitStatus = isInstall.exitStatus();
isInstall.close();
if (exitCode == 0 && exitStatus == QProcess::NormalExit)
{ {
isInstalled = true; isInstalled = true;
@@ -150,7 +154,7 @@ void AppIntoPage::openUrl(const QUrl &url)
isUpdate.start("dpkg", QStringList() << "--compare-versions" << localVersion << "ge" << info["Version"].toString()); isUpdate.start("dpkg", QStringList() << "--compare-versions" << localVersion << "ge" << info["Version"].toString());
isUpdate.waitForFinished(180 * 1000); // 默认超时 3 分钟 isUpdate.waitForFinished(180 * 1000); // 默认超时 3 分钟
if (!isUpdate.exitCode()) if (isUpdate.exitCode() == 0 && isUpdate.exitStatus() == QProcess::NormalExit)
{ {
isUpdated = true; isUpdated = true;
} }
@@ -158,6 +162,7 @@ void AppIntoPage::openUrl(const QUrl &url)
{ {
isUpdated = false; isUpdated = false;
} }
isUpdate.close();
} }
else else
{ {
@@ -337,10 +342,27 @@ void AppIntoPage::isDownloading(const QUrl &url)
} }
if (item->download == 3) if (item->download == 3)
{ {
ui->downloadButton->setEnabled(true); QString packageName = info["Pkgname"].toString();
ui->downloadButton->setText(tr("Reinstall")); QProcess process;
ui->downloadButton->show(); process.start("/opt/durapps/spark-store/bin/store-helper/check-is-installed", {packageName});
ui->pushButton_3->show(); process.waitForFinished(-1);
int exitCode = process.exitCode();
QProcess::ExitStatus exitStatus = process.exitStatus();
process.close();
if (exitCode == 0 && exitStatus == QProcess::NormalExit)
{
ui->downloadButton->setEnabled(true);
ui->downloadButton->setText(tr("Reinstall"));
ui->downloadButton->show();
ui->pushButton_3->show();
}
else
{
ui->downloadButton->setEnabled(true);
ui->downloadButton->setText(tr("Download and Install"));
}
} }
} }
@@ -420,19 +442,19 @@ void AppIntoPage::notifyUserUnsupportedTags(bool ubuntuSupport, bool deepinSuppo
if (checkdeepin) if (checkdeepin)
{ {
Utils::sendNotification("spark-store", tr("Warning"), tr("The current application does not support deepin, there may be problems")); Utils::sendNotification("spark-store", tr("Warning"), tr("The current application does not support or tested on deepin, there may be problems"));
} }
else if (checkuos) else if (checkuos)
{ {
Utils::sendNotification("spark-store", tr("Warning"), tr("The current application does not support UOS, there may be problems")); Utils::sendNotification("spark-store", tr("Warning"), tr("The current application does not support or tested on UOS, there may be problems"));
} }
else if (checkubuntu) else if (checkubuntu)
{ {
Utils::sendNotification("spark-store", tr("Warning"), tr("The current application does not support Ubuntu, there may be problems")); Utils::sendNotification("spark-store", tr("Warning"), tr("The current application does not support or tested on Ubuntu, there may be problems"));
} }
else if (!isUbuntu && !isDeepin && !isUOS) else if (!isUbuntu && !isDeepin && !isUOS)
{ {
Utils::sendNotification("spark-store", tr("Warning"), tr("The current application does not support current platform, there may be problems")); Utils::sendNotification("spark-store", tr("Warning"), tr("The current application does not support or tested on current platform, there may be problems"));
} }
return; return;
@@ -485,22 +507,24 @@ void AppIntoPage::on_pushButton_3_clicked()
QProcess uninstall; QProcess uninstall;
uninstall.start("pkexec", QStringList() << "apt" << "autopurge" << "-y" << info["Pkgname"].toString().toLower()); uninstall.start("pkexec", QStringList() << "apt" << "autopurge" << "-y" << info["Pkgname"].toString().toLower());
uninstall.waitForFinished(-1); uninstall.waitForFinished(-1);
uninstall.close();
QProcess check; QProcess check;
check.start("dpkg", QStringList() << "-s" << info["Pkgname"].toString().toLower()); check.start("dpkg", QStringList() << "-s" << info["Pkgname"].toString().toLower());
check.waitForFinished(10*1000); check.waitForFinished(-1);
if (check.readAllStandardOutput().isEmpty()) if (check.exitCode() != 0 || check.exitStatus() != QProcess::NormalExit)
{ {
ui->downloadButton->setText(tr("Download and Install")); ui->downloadButton->setText(tr("Download and Install"));
ui->pushButton_3->hide(); ui->pushButton_3->hide();
updatesEnabled();
Utils::sendNotification("spark-store",tr("Spark Store"),tr("Uninstall succeeded")); Utils::sendNotification("spark-store",tr("Spark Store"),tr("Uninstall succeeded"));
} }
ui->downloadButton->setEnabled(true); ui->downloadButton->setEnabled(true);
ui->pushButton_3->setEnabled(true); ui->pushButton_3->setEnabled(true);
check.close();
}); });
} }

View File

@@ -1,7 +1,8 @@
#include "applistpage.h" #include "applistpage.h"
#include "ui_applistpage.h" #include "ui_applistpage.h"
#define BUILD_URL(theme, arch) \
api->getServerUrl() + SparkAPI::getArchDir() + "/#/flamescion/" + (type.isEmpty() ? "?" : "applist?type=" + type + "&") + theme + "&arch=" + arch
AppListPage::AppListPage(QWidget *parent) : QWidget(parent), AppListPage::AppListPage(QWidget *parent) : QWidget(parent),
ui(new Ui::AppListPage) ui(new Ui::AppListPage)
@@ -45,20 +46,14 @@ void AppListPage::getAppList(QString type)
{ {
theme = "theme=light"; theme = "theme=light";
} }
if (type == "")
{ #ifdef __aarch64__
url = api->getServerUrl() + SparkAPI::getArchDir() + "/#/flamescion/?" + theme + "&" + "arch=x86"; url = BUILD_URL(theme, "aarch64");
#ifdef __aarch64__ #elif __loongarch__
url = api->getServerUrl() + SparkAPI::getArchDir() + "/#/flamescion/?" + theme + "&" + "arch=aarch64"; url = BUILD_URL(theme, "loong64");
#endif #else
} url = BUILD_URL(theme, "x86");
else #endif
{
url = api->getServerUrl() + SparkAPI::getArchDir() + "/#/flamescion/applist?type=" + type + "&" + theme + "&" + "arch=x86";
#ifdef __aarch64__
url = api->getServerUrl() + SparkAPI::getArchDir() + "/#/flamescion/applist?type=" + type + "&" + theme + "&" + "arch=aarch64";
#endif
}
ui->webEngineView->setUrl(url); ui->webEngineView->setUrl(url);
delete api; delete api;
@@ -83,6 +78,8 @@ void AppListPage::getSearchList(const QString &keyword)
url = api->getServerUrl() + SparkAPI::getArchDir() + "/#/flamescion/search?keywords=" + QUrl::toPercentEncoding(keyword) + "&" + theme + "&" + "arch=x86"; url = api->getServerUrl() + SparkAPI::getArchDir() + "/#/flamescion/search?keywords=" + QUrl::toPercentEncoding(keyword) + "&" + theme + "&" + "arch=x86";
#ifdef __aarch64__ #ifdef __aarch64__
url = api->getServerUrl() + SparkAPI::getArchDir() + "/#/flamescion/search?keywords=" + QUrl::toPercentEncoding(keyword) + "&" + theme + "&" + "arch=aarch64"; url = api->getServerUrl() + SparkAPI::getArchDir() + "/#/flamescion/search?keywords=" + QUrl::toPercentEncoding(keyword) + "&" + theme + "&" + "arch=aarch64";
#elif __loongarch__
url = api->getServerUrl() + SparkAPI::getArchDir() + "/#/flamescion/search?keywords=" + QUrl::toPercentEncoding(keyword) + "&" + theme + "&" + "arch=loong64";
#endif #endif
ui->webEngineView->setUrl(url); ui->webEngineView->setUrl(url);
delete api; delete api;

View File

@@ -9,7 +9,7 @@
#define TMP_PATH "/tmp/spark-store" #define TMP_PATH "/tmp/spark-store"
#define DEFAULT_SERVER_URL "https://cdn.d.store.deepinos.org.cn/" #define DEFAULT_SERVER_URL "https://cdn.d.store.deepinos.org.cn/"
#define DEFAULT_CHECK_DOMAIN "deepinos"
bool SettingsPage::needUncompatibleNotification = true; bool SettingsPage::needUncompatibleNotification = true;
bool SettingsPage::isdownload = false; bool SettingsPage::isdownload = false;
@@ -57,10 +57,7 @@ void SettingsPage::readServerList()
// 创建 QTextStream 对象 // 创建 QTextStream 对象
QTextStream textStream(&file); QTextStream textStream(&file);
if (!textStream.readAll().contains(DEFAULT_CHECK_DOMAIN)) // 校验配置文件有效性
{
return;
}
textStream.seek(0); // 回到开头 textStream.seek(0); // 回到开头
QString lineData = textStream.readLine(); // 读取文件的第一行 QString lineData = textStream.readLine(); // 读取文件的第一行
ui->comboBox_server->addItem(lineData); ui->comboBox_server->addItem(lineData);

View File

@@ -80,8 +80,7 @@ bool Utils::isWayland()
bool Utils::isTreeLand() bool Utils::isTreeLand()
{ {
bool isTreeLand = false; bool isTreeLand = false;
if (qgetenv("DDE_CURRENT_COMPOSITER").toLower() == "treeland" if (qgetenv("DDE_CURRENT_COMPOSITOR").toLower() == "treeland") {
|| qgetenv("DESKTOP_SESSION").toLower() == "treeland") {
isTreeLand = true; isTreeLand = true;
} }
@@ -185,14 +184,18 @@ void Utils::setQPAPlatform()
qDebug() << "System Wayland enabled:" << isWayland << "Spark Wayland enabled:" << useWayland; qDebug() << "System Wayland enabled:" << isWayland << "Spark Wayland enabled:" << useWayland;
if (isWayland && useWayland && !(Dtk::Core::DSysInfo::isDeepin() || isDDE)) /**
* NOTE: https://github.com/linuxdeepin/developer-center/issues/7217#issuecomment-1922653903
* DDE Wayland has been deprecated, so using wayland plugin only
*/
if (isWayland && useWayland /*&& !(Dtk::Core::DSysInfo::isDeepin() || isDDE)*/)
{ {
qputenv("QT_QPA_PLATFORM", "wayland"); qputenv("QT_QPA_PLATFORM", "wayland");
} }
else if (isWayland && useWayland && (Dtk::Core::DSysInfo::isDeepin() && isDDE)) // else if (isWayland && useWayland && (Dtk::Core::DSysInfo::isDeepin() && isDDE))
{ // {
qputenv("QT_QPA_PLATFORM", "dwayland"); // qputenv("QT_QPA_PLATFORM", "dwayland");
} // }
else else
{ {
qputenv("QT_QPA_PLATFORM", "dxcb"); qputenv("QT_QPA_PLATFORM", "dxcb");

View File

@@ -198,7 +198,7 @@ void DownloadItem::slotAsyncInstall(int t)
for (int i = 0; i < everyOut.size(); i++) for (int i = 0; i < everyOut.size(); i++)
{ {
tempOutput = everyOut[i]; tempOutput = everyOut[i];
if (everyOut[i].left(2) == tempOutput.contains("OMG-IT-GOES-WRONG")) if (tempOutput.contains("OMG-IT-GOES-WRONG"))
{ {
haveError = true; haveError = true;
} }

View File

@@ -1,5 +1,7 @@
#!/bin/bash #!/bin/bash
SPARK_DOWNLOAD_SERVER_URL="https://d.store.deepinos.org.cn/"
SPARK_DOWNLOAD_SERVER_URL_NO_PROTOCOL="d.store.deepinos.org.cn"
source /opt/durapps/spark-store/bin/bashimport/transhell.amber source /opt/durapps/spark-store/bin/bashimport/transhell.amber
load_transhell load_transhell
@@ -12,6 +14,10 @@ case `arch` in
STORE_URL="aarch64-store" STORE_URL="aarch64-store"
STORE_LIST_URL="-aarch64" STORE_LIST_URL="-aarch64"
;; ;;
loongarch64)
STORE_URL="loong64-store"
STORE_LIST_URL="-loong64"
;;
esac esac
SS_APT_FAST="/opt/durapps/spark-store/bin/apt-fast/ss-apt-fast" SS_APT_FAST="/opt/durapps/spark-store/bin/apt-fast/ss-apt-fast"
@@ -40,22 +46,22 @@ if [ ! -e "/tmp/aptss-conf/apt-fast.conf" ];then
mkdir -p /tmp/aptss-conf/ mkdir -p /tmp/aptss-conf/
echo -e "\e[1;32m${TRANSHELL_CONTENT_GETTING_SERVER_CONFIG_AND_MIRROR_LIST}\e[0m" echo -e "\e[1;32m${TRANSHELL_CONTENT_GETTING_SERVER_CONFIG_AND_MIRROR_LIST}\e[0m"
echo echo
curl --progress-bar -o /tmp/aptss-conf/apt-fast.conf "https://d.store.deepinos.org.cn/apt-fast.conf" curl --progress-bar -o /tmp/aptss-conf/apt-fast.conf "${SPARK_DOWNLOAD_SERVER_URL}/apt-fast.conf"
chmod -R 755 /tmp/aptss-conf chmod -R 755 /tmp/aptss-conf
fi fi
if [ ! -e "/var/lib/aptss/lists/d.spark-app.store_${STORE_URL}_Packages" ] && [ ! -e "/var/lib/aptss/lists/d.store.deepinos.org.cn_${STORE_URL}_Packages" ] && [ ! -e "/var/lib/aptss/lists/mirrors.sdu.edu.cn_spark-store-repository_${STORE_URL}_Packages" ];then if [ ! -e "/var/lib/aptss/lists/${SPARK_DOWNLOAD_SERVER_URL_NO_PROTOCOL}_${STORE_URL}_Packages" ] && [ ! -e "/var/lib/aptss/lists/d.store.deepinos.org.cn_${STORE_URL}_Packages" ] && [ ! -e "/var/lib/aptss/lists/mirrors.sdu.edu.cn_spark-store-repository_${STORE_URL}_Packages" ];then
mkdir -p /tmp/aptss-conf/ mkdir -p /tmp/aptss-conf/
echo -e "\e[1;32m${TRANSHELL_CONTENT_GETTING_SERVER_CONFIG_AND_MIRROR_LIST}\e[0m" echo -e "\e[1;32m${TRANSHELL_CONTENT_GETTING_SERVER_CONFIG_AND_MIRROR_LIST}\e[0m"
echo echo
curl --silent -o /tmp/aptss-conf/apt-fast.conf "https://d.store.deepinos.org.cn/apt-fast.conf" curl --silent -o /tmp/aptss-conf/apt-fast.conf "${SPARK_DOWNLOAD_SERVER_URL}/apt-fast.conf"
chmod -R 755 /tmp/aptss-conf chmod -R 755 /tmp/aptss-conf
curl --silent -o /opt/durapps/spark-store/bin/apt-fast-conf/sources.list.d/sparkstore.list "https://d.store.deepinos.org.cn/sparkstore${STORE_LIST_URL}.list" curl --silent -o /opt/durapps/spark-store/bin/apt-fast-conf/sources.list.d/sparkstore.list "${SPARK_DOWNLOAD_SERVER_URL}/sparkstore${STORE_LIST_URL}.list"
apt update -c /opt/durapps/spark-store/bin/apt-fast-conf/aptss-apt.conf /usr/bin/apt update -c /opt/durapps/spark-store/bin/apt-fast-conf/aptss-apt.conf
#只更新星火源 #只更新星火源
@@ -92,35 +98,34 @@ elif [ "$1" = "policy" ] || [ "$1" = "search" ];then
###执行 ###执行
apt "$@" -c /opt/durapps/spark-store/bin/apt-fast-conf/aptss-apt.conf /usr/bin/apt "$@" -c /opt/durapps/spark-store/bin/apt-fast-conf/aptss-apt.conf
elif [ "$1" = "ssupdate" ];then elif [ "$1" = "ssupdate" ];then
mkdir -p /tmp/aptss-conf/ mkdir -p /tmp/aptss-conf/
echo -e "\e[1;32m${TRANSHELL_CONTENT_GETTING_SERVER_CONFIG_AND_MIRROR_LIST}\e[0m" echo -e "\e[1;32m${TRANSHELL_CONTENT_GETTING_SERVER_CONFIG_AND_MIRROR_LIST}\e[0m"
echo echo
curl --silent -o /tmp/aptss-conf/apt-fast.conf "https://d.store.deepinos.org.cn/apt-fast.conf" curl --silent -o /tmp/aptss-conf/apt-fast.conf "${SPARK_DOWNLOAD_SERVER_URL}/apt-fast.conf"
chmod -R 755 /tmp/aptss-conf chmod -R 755 /tmp/aptss-conf
curl --silent -o /opt/durapps/spark-store/bin/apt-fast-conf/sources.list.d/sparkstore.list "https://d.store.deepinos.org.cn/sparkstore${STORE_LIST_URL}.list" curl --silent -o /opt/durapps/spark-store/bin/apt-fast-conf/sources.list.d/sparkstore.list "${SPARK_DOWNLOAD_SERVER_URL}/sparkstore${STORE_LIST_URL}.list"
apt update -c /opt/durapps/spark-store/bin/apt-fast-conf/aptss-apt.conf -o Dir::Etc::sourceparts="-" -o APT::Get::List-Cleanup="0" -o Dir::Etc::sourcelist="/opt/durapps/spark-store/bin/apt-fast-conf/sources.list.d/sparkstore.list" /usr/bin/apt update -c /opt/durapps/spark-store/bin/apt-fast-conf/aptss-apt.conf -o Dir::Etc::sourceparts="-" -o APT::Get::List-Cleanup="0" -o Dir::Etc::sourcelist="/opt/durapps/spark-store/bin/apt-fast-conf/sources.list.d/sparkstore.list"
#只更新星火源 #只更新星火源
elif [ "$1" = "update" ];then elif [ "$1" = "update" ];then
echo -e "\e[1;32m${TRANSHELL_CONTENT_GETTING_SERVER_CONFIG_AND_MIRROR_LIST}\e[0m" echo -e "\e[1;32m${TRANSHELL_CONTENT_GETTING_SERVER_CONFIG_AND_MIRROR_LIST}\e[0m"
echo echo
curl --progress-bar -o /opt/durapps/spark-store/bin/apt-fast-conf/sources.list.d/sparkstore.list "https://d.store.deepinos.org.cn/sparkstore${STORE_LIST_URL}.list" curl --progress-bar -o /opt/durapps/spark-store/bin/apt-fast-conf/sources.list.d/sparkstore.list "${SPARK_DOWNLOAD_SERVER_URL}/sparkstore${STORE_LIST_URL}.list"
mkdir -p /tmp/aptss-conf/ mkdir -p /tmp/aptss-conf/
curl --progress-bar -o /tmp/aptss-conf/apt-fast.conf "https://d.store.deepinos.org.cn/apt-fast.conf" curl --progress-bar -o /tmp/aptss-conf/apt-fast.conf "${SPARK_DOWNLOAD_SERVER_URL}/apt-fast.conf"
chmod -R 755 /tmp/aptss-conf chmod -R 755 /tmp/aptss-conf
### 额外一份拿来给aptss自动补全用 ### 额外一份拿来给aptss自动补全用
apt "$@" -c /opt/durapps/spark-store/bin/apt-fast-conf/aptss-apt.conf /usr/bin/apt "$@" -c /opt/durapps/spark-store/bin/apt-fast-conf/aptss-apt.conf
else else
apt "$@" -c /opt/durapps/spark-store/bin/apt-fast-conf/aptss-apt.conf /usr/bin/apt "$@" -c /opt/durapps/spark-store/bin/apt-fast-conf/aptss-apt.conf
fi fi

View File

@@ -1,13 +1,13 @@
#!/bin/bash #!/bin/bash
echo "----------------Running Spark DStore Patch----------------"
enumAppInfoList() { enumAppInfoList() {
appInfoList=() appInfoList=()
apps="/opt/apps" apps="/opt/apps"
list=$(ls $apps) list=$(ls $apps 2>/dev/null)
for appID in $list; do for appID in $list; do
appInfoList+=("$appID") appInfoList+=("$appID")
done done
@@ -26,15 +26,13 @@ linkDir() {
targetDir=$(dirname "$target") targetDir=$(dirname "$target")
find "$source" -type f | while read sourceFile; do find "$source" -type f | while read sourceFile; do
targetFile="$targetDir/${sourceFile#$sourceDir/}" targetFile="$targetDir/${sourceFile#$sourceDir/}"
if [ -L "$targetFile" ] && [ "$(readlink "$targetFile")" = "$sourceFile" ]; then
continue
else
rm -f "$targetFile"
fi
ensureTargetDir "$targetFile" ensureTargetDir "$targetFile"
sourceFile=$(realpath --relative-to="$(dirname $targetFile)" "$sourceFile" ) sourceFile=$(realpath --relative-to="$(dirname $targetFile)" "$sourceFile" )
ln -s "$sourceFile" "$targetFile" if [ ! -e ${targetFile} ];then
ln -sv "$sourceFile" "$targetFile"
fi
done done
} }
@@ -65,61 +63,66 @@ linkApp() {
done done
} }
function exec_uos_package_link(){
# execute linkApp function for each app and print output
for app in $(enumAppInfoList); do for app in $(enumAppInfoList); do
linkApp "$app" & linkApp "$app" &
if [ "$1" = "--debug" ]; then
echo "Linking for $app"
fi
# remove broken links in /usr/share
done done
wait wait
}
if [ "$1" = "--debug" ]; then function exec_v23_icon_link(){
echo "Cleaning links and updating databases and caches..." # Fix v23 broken icon
if [ ! -d "/usr/share/icons/hicolor/scalable/apps" ];then
mkdir -p /usr/share/icons/hicolor/scalable/apps
fi fi
for icon_root_icon_path in $(ls /usr/share/icons/*.png /usr/share/icons/*.svg 2>/dev/null)
do
target_icon_path=/usr/share/icons/hicolor/scalable/apps/$(basename ${icon_root_icon_path})
if [ ! -e ${target_icon_path} ];then
ln -sv $(realpath --relative-to=/usr/share/icons/hicolor/scalable/apps ${icon_root_icon_path}) /usr/share/icons/hicolor/scalable/apps
fi
done
}
if [ "$1" = "--debug" ]; then function exec_link_clean(){
find /usr/share/applications -xtype l -delete & # remove broken links in /usr/share
find /usr/share/icons -xtype l -delete &
find /usr/share/mime/packages -xtype l -delete & find /usr/share/applications -xtype l -exec echo '{} is invalid now and going to be cleaned' \; -exec unlink {} \; 2>/dev/null &
find /usr/share/glib-2.0 -xtype l -delete & find /usr/share/icons -xtype l -exec echo '{} is invalid now and going to be cleaned' \; -exec unlink {} \; 2>/dev/null &
find /usr/share/dbus-1/services -xtype l -delete & find /usr/share/mime/packages -xtype l -exec echo '{} is invalid now and going to be cleaned' \; -exec unlink {} \; 2>/dev/null &
find /usr/share/fcitx -xtype l -delete & find /usr/share/glib-2.0 -xtype l -exec echo '{} is invalid now and going to be cleaned' \; -exec unlink {} \; 2>/dev/null &
find /usr/share/help -xtype l -delete & find /usr/share/dbus-1/services -xtype l -exec echo '{} is invalid now and going to be cleaned' \; -exec unlink {} \; 2>/dev/null &
find /usr/share/locale -xtype l -delete & find /usr/share/fcitx -xtype l -exec echo '{} is invalid now and going to be cleaned' \; -exec unlink {} \; 2>/dev/null &
find /usr/lib/`dpkg-architecture -qDEB_HOST_MULTIARCH`/fcitx -xtype l -delete & find /usr/share/help -xtype l -exec echo '{} is invalid now and going to be cleaned' \; -exec unlink {} \; 2>/dev/null &
find /usr/lib/mozilla/plugins -xtype l -delete & find /usr/share/locale -xtype l -exec echo '{} is invalid now and going to be cleaned' \; -exec unlink {} \; 2>/dev/null &
find /usr/share/polkit-1/actions -xtype l -delete & find /usr/lib/`dpkg-architecture -qDEB_HOST_MULTIARCH`/fcitx -xtype l -exec echo '{} is invalid now and going to be cleaned' \; -exec unlink {} \; 2>/dev/null &
find /usr/share/fonts -xtype l -delete & find /usr/lib/mozilla/plugins -xtype l -exec echo '{} is invalid now and going to be cleaned' \; -exec unlink {} \; 2>/dev/null &
find /etc/fonts/conf.d -xtype l -delete & find /usr/share/polkit-1/actions -xtype l -exec echo '{} is invalid now and going to be cleaned' \; -exec unlink {} \; 2>/dev/null &
update-icon-caches /usr/share/icons/* & find /usr/share/fonts -xtype l -exec echo '{} is invalid now and going to be cleaned' \; -exec unlink {} \; 2>/dev/null &
update-desktop-database -q & find /etc/fonts/conf.d -xtype l -exec echo '{} is invalid now and going to be cleaned' \; -exec unlink {} \; 2>/dev/null &
update-mime-database -V /usr/share/mime &
glib-compile-schemas /usr/share/glib-2.0/schemas/ &
wait }
else function exec_uos_package_update(){
find /usr/share/applications -xtype l -delete > /dev/null 2>&1 &
find /usr/share/icons -xtype l -delete > /dev/null 2>&1 &
find /usr/share/mime/packages -xtype l -delete > /dev/null 2>&1 &
find /usr/share/glib-2.0 -xtype l -delete > /dev/null 2>&1 &
find /usr/share/dbus-1/services -xtype l -delete > /dev/null 2>&1 &
find /usr/share/fcitx -xtype l -delete > /dev/null 2>&1 &
find /usr/share/help -xtype l -delete > /dev/null 2>&1 &
find /usr/share/locale -xtype l -delete > /dev/null 2>&1 &
find /usr/lib/`dpkg-architecture -qDEB_HOST_MULTIARCH`/fcitx -xtype l -delete > /dev/null 2>&1 &
find /usr/lib/mozilla/plugins -xtype l -delete > /dev/null 2>&1 &
find /usr/share/polkit-1/actions -xtype l -delete > /dev/null 2>&1 &
find /usr/share/fonts -xtype l -delete > /dev/null 2>&1 &
find /etc/fonts/conf.d -xtype l -delete > /dev/null 2>&1 &
update-icon-caches /usr/share/icons/* > /dev/null 2>&1 & update-icon-caches /usr/share/icons/* > /dev/null 2>&1 &
update-desktop-database -q > /dev/null 2>&1 & update-desktop-database -q > /dev/null 2>&1 &
update-mime-database -V /usr/share/mime > /dev/null 2>&1 & update-mime-database -V /usr/share/mime > /dev/null 2>&1 &
glib-compile-schemas /usr/share/glib-2.0/schemas/ > /dev/null 2>&1 & glib-compile-schemas /usr/share/glib-2.0/schemas/ > /dev/null 2>&1 &
}
#########################################################################################
echo "----------------Running Spark DStore Patch----------------"
if [ ! -e /usr/bin/deepin-app-store-tool ];then
# execute linkApp function for each app and print output
exec_uos_package_link
fi fi
exec_v23_icon_link
exec_link_clean
wait
exec_uos_package_update
echo "----------------Finished----------------" echo "----------------Finished----------------"

View File

@@ -9,6 +9,9 @@ case `arch` in
aarch64) aarch64)
STORE_URL="aarch64-store" STORE_URL="aarch64-store"
;; ;;
loongarch64)
STORE_URL="loong64-store"
;;
esac esac
if [ -z $1 ] || [ "$2" != "HD70642" ];then if [ -z $1 ] || [ "$2" != "HD70642" ];then

View File

@@ -10,6 +10,10 @@ case $(arch) in
aarch64) aarch64)
STORE_URL="aarch64-store" STORE_URL="aarch64-store"
;; ;;
loongarch64)
STORE_URL="loong64-store"
STORE_LIST_URL="-loong64"
;;
esac esac
echo "Spark Store Install script. 星火商店安装脚本" echo "Spark Store Install script. 星火商店安装脚本"
@@ -75,6 +79,7 @@ function hash_check() {
echo "Running Spark Package Verify..." echo "Running Spark Package Verify..."
DEB_SHA512SUM=$(sha512sum "$1" | cut -d ' ' -f 1) DEB_SHA512SUM=$(sha512sum "$1" | cut -d ' ' -f 1)
unset IS_SHA512SUM_CHECKED
IS_SHA512SUM_CHECKED=$(cat "$PACKAGES_DATA_PATH" | grep "$DEB_SHA512SUM") IS_SHA512SUM_CHECKED=$(cat "$PACKAGES_DATA_PATH" | grep "$DEB_SHA512SUM")
} }
@@ -162,4 +167,3 @@ if [ ! -z "$IS_SHA512SUM_CHECKED" ]; then
fi fi
fi fi
fi fi

View File

@@ -0,0 +1,2 @@
#!/bin/bash
dpkg -l | grep "^ii" | grep -w "$1" > /dev/null

View File

@@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
trap "rm -f /tmp/spark-store/upgradeStatus.txt" EXIT
source /opt/durapps/spark-store/bin/bashimport/transhell.amber source /opt/durapps/spark-store/bin/bashimport/transhell.amber
load_transhell_debug load_transhell_debug

View File

@@ -4,7 +4,7 @@ TRANSHELL_CONTENT_SPARK_STORE_UPGRADE_MODEL="Spark Store APP Upgrade module"
TRANSHELL_CONTENT_CHECK_UPDATE_PROCESS_ERROR_PRESS_CONFIRM_TO_CHECK="Error occured in checking for update! Press Confirm to get the error log (Can be useful when feedback)" TRANSHELL_CONTENT_CHECK_UPDATE_PROCESS_ERROR_PRESS_CONFIRM_TO_CHECK="Error occured in checking for update! Press Confirm to get the error log (Can be useful when feedback)"
TRANSHELL_CONTENT_I_ALREDY_COPIED_THE_LOG_HERE_AND_WILL_USE_IT_TO_FEEDBACK="I already copied the log in the text box and I will attach it when feeding back. You can find feedback entry in the settings which is located in the top right of the store." TRANSHELL_CONTENT_I_ALREDY_COPIED_THE_LOG_HERE_AND_WILL_USE_IT_TO_FEEDBACK="I already copied the log in the text box and I will attach it when feeding back. You can find feedback entry in the settings which is located in the top right of the store."
TRANSHELL_CONTENT_FEEDBACK_CAN_BE_FOUND_IN_THE_SETTINGS="Feedback entry in the settings which is located in the top right of the store" TRANSHELL_CONTENT_FEEDBACK_CAN_BE_FOUND_IN_THE_SETTINGS="Feedback entry in the settings which is located in the top right of the store"
TRANSHELL_CONTENT_NO_NEED_TO_UPGRADE="All APPs are up to date.\nBut you are not at the top of the world" TRANSHELL_CONTENT_NO_NEED_TO_UPGRADE="All APPs are up to date."
TRANSHELL_CONTENT_CAN_NOT_UPGRADE_FOR_BEING_HOLD="Unable to upgrade: Being marked as hold" TRANSHELL_CONTENT_CAN_NOT_UPGRADE_FOR_BEING_HOLD="Unable to upgrade: Being marked as hold"
TRANSHELL_CONTENT_CHOOSE_APP_TO_UPGRADE="Choose the app you want to upgrade" TRANSHELL_CONTENT_CHOOSE_APP_TO_UPGRADE="Choose the app you want to upgrade"
TRANSHELL_CONTENT_CHOOSE="Choose" TRANSHELL_CONTENT_CHOOSE="Choose"
@@ -12,7 +12,7 @@ TRANSHELL_CONTENT_APP_NAME="APP name"
TRANSHELL_CONTENT_PKG_NAME="Package Name" TRANSHELL_CONTENT_PKG_NAME="Package Name"
TRANSHELL_CONTENT_NEW_VERSION="New version" TRANSHELL_CONTENT_NEW_VERSION="New version"
TRANSHELL_CONTENT_UPGRADE_FROM="Upgrade from" TRANSHELL_CONTENT_UPGRADE_FROM="Upgrade from"
TRANSHELL_CONTENT_NO_APP_IS_CHOSEN="No app is chosen\nBut you are not at the top of the world" TRANSHELL_CONTENT_NO_APP_IS_CHOSEN="No app is chosen"
TRANSHELL_CONTENT_UPGRADING_PLEASE_WAIT="Upgrading $APP_UPGRADE , please wait..." TRANSHELL_CONTENT_UPGRADING_PLEASE_WAIT="Upgrading $APP_UPGRADE , please wait..."
TRANSHELL_CONTENT_CHOSEN_APP_UPGRADE_FINISHED="The chosen app is upgraded" TRANSHELL_CONTENT_CHOSEN_APP_UPGRADE_FINISHED="The chosen app is upgraded"
TRANSHELL_CONTENT_APP_UGRADE_PROCESS_ERROR_PRESS_CONFIRM_TO_CHECK="Error occured when upgrading! Press Confirm to get the error log (Can be useful when feedback)" TRANSHELL_CONTENT_APP_UGRADE_PROCESS_ERROR_PRESS_CONFIRM_TO_CHECK="Error occured when upgrading! Press Confirm to get the error log (Can be useful when feedback)"

View File

@@ -4,7 +4,7 @@ TRANSHELL_CONTENT_SPARK_STORE_UPGRADE_MODEL="星火商店更新模块"
TRANSHELL_CONTENT_CHECK_UPDATE_PROCESS_ERROR_PRESS_CONFIRM_TO_CHECK="检查更新进程出现错误!按确定查看报错,可用于反馈" TRANSHELL_CONTENT_CHECK_UPDATE_PROCESS_ERROR_PRESS_CONFIRM_TO_CHECK="检查更新进程出现错误!按确定查看报错,可用于反馈"
TRANSHELL_CONTENT_I_ALREDY_COPIED_THE_LOG_HERE_AND_WILL_USE_IT_TO_FEEDBACK="我已复制了此文本框中的日志,且将会在反馈时附上。反馈渠道可以在右上角菜单的设置中找到" TRANSHELL_CONTENT_I_ALREDY_COPIED_THE_LOG_HERE_AND_WILL_USE_IT_TO_FEEDBACK="我已复制了此文本框中的日志,且将会在反馈时附上。反馈渠道可以在右上角菜单的设置中找到"
TRANSHELL_CONTENT_FEEDBACK_CAN_BE_FOUND_IN_THE_SETTINGS="反馈渠道在商店右上角的设置里" TRANSHELL_CONTENT_FEEDBACK_CAN_BE_FOUND_IN_THE_SETTINGS="反馈渠道在商店右上角的设置里"
TRANSHELL_CONTENT_NO_NEED_TO_UPGRADE="没有软件需要更新\n但是你并没有站在世界之巅" TRANSHELL_CONTENT_NO_NEED_TO_UPGRADE="没有软件需要更新"
TRANSHELL_CONTENT_CAN_NOT_UPGRADE_FOR_BEING_HOLD="(无法更新:已被标记为保留)" TRANSHELL_CONTENT_CAN_NOT_UPGRADE_FOR_BEING_HOLD="(无法更新:已被标记为保留)"
TRANSHELL_CONTENT_CHOOSE_APP_TO_UPGRADE="选择你想更新的应用" TRANSHELL_CONTENT_CHOOSE_APP_TO_UPGRADE="选择你想更新的应用"
TRANSHELL_CONTENT_CHOOSE="选择" TRANSHELL_CONTENT_CHOOSE="选择"
@@ -12,7 +12,7 @@ TRANSHELL_CONTENT_APP_NAME="应用名"
TRANSHELL_CONTENT_PKG_NAME="包名" TRANSHELL_CONTENT_PKG_NAME="包名"
TRANSHELL_CONTENT_NEW_VERSION="新版本" TRANSHELL_CONTENT_NEW_VERSION="新版本"
TRANSHELL_CONTENT_UPGRADE_FROM="从该版本更新" TRANSHELL_CONTENT_UPGRADE_FROM="从该版本更新"
TRANSHELL_CONTENT_NO_APP_IS_CHOSEN="没有选中任何软件\n但是你并没有站在世界之巅" TRANSHELL_CONTENT_NO_APP_IS_CHOSEN="没有选中任何软件"
TRANSHELL_CONTENT_UPGRADING_PLEASE_WAIT="正在更新 $APP_UPGRADE ,请稍候..." TRANSHELL_CONTENT_UPGRADING_PLEASE_WAIT="正在更新 $APP_UPGRADE ,请稍候..."
TRANSHELL_CONTENT_CHOSEN_APP_UPGRADE_FINISHED="选中的软件已经更新完毕" TRANSHELL_CONTENT_CHOSEN_APP_UPGRADE_FINISHED="选中的软件已经更新完毕"
TRANSHELL_CONTENT_APP_UGRADE_PROCESS_ERROR_PRESS_CONFIRM_TO_CHECK="更新出现错误!按确定查看报错,可用于反馈" TRANSHELL_CONTENT_APP_UGRADE_PROCESS_ERROR_PRESS_CONFIRM_TO_CHECK="更新出现错误!按确定查看报错,可用于反馈"

View File

@@ -4,7 +4,7 @@ TRANSHELL_CONTENT_SPARK_STORE_UPGRADE_MODEL="星火商店更新模塊"
TRANSHELL_CONTENT_CHECK_UPDATE_PROCESS_ERROR_PRESS_CONFIRM_TO_CHECK="檢查更新行程出現錯誤! 按確定查看報錯,可用於回報" TRANSHELL_CONTENT_CHECK_UPDATE_PROCESS_ERROR_PRESS_CONFIRM_TO_CHECK="檢查更新行程出現錯誤! 按確定查看報錯,可用於回報"
TRANSHELL_CONTENT_I_ALREDY_COPIED_THE_LOG_HERE_AND_WILL_USE_IT_TO_FEEDBACK="我已複製了此文字方塊中的日誌,且將會在回報時附上。 迴響通路可以在右上角選單的設定中找到 " TRANSHELL_CONTENT_I_ALREDY_COPIED_THE_LOG_HERE_AND_WILL_USE_IT_TO_FEEDBACK="我已複製了此文字方塊中的日誌,且將會在回報時附上。 迴響通路可以在右上角選單的設定中找到 "
TRANSHELL_CONTENT_FEEDBACK_CAN_BE_FOUND_IN_THE_SETTINGS="回報入口在商店右上角的設定裏" TRANSHELL_CONTENT_FEEDBACK_CAN_BE_FOUND_IN_THE_SETTINGS="回報入口在商店右上角的設定裏"
TRANSHELL_CONTENT_NO_NEED_TO_UPGRADE="沒有軟體需要更新\n但是你並沒有站在世界之巔" TRANSHELL_CONTENT_NO_NEED_TO_UPGRADE="沒有軟體需要更新"
TRANSHELL_CONTENT_CAN_NOT_UPGRADE_FOR_BEING_HOLD="(无法更新:已被标记为保留)" TRANSHELL_CONTENT_CAN_NOT_UPGRADE_FOR_BEING_HOLD="(无法更新:已被标记为保留)"
TRANSHELL_CONTENT_CHOOSE_APP_TO_UPGRADE="选择你想更新的应用" TRANSHELL_CONTENT_CHOOSE_APP_TO_UPGRADE="选择你想更新的应用"
TRANSHELL_CONTENT_CHOOSE="选择" TRANSHELL_CONTENT_CHOOSE="选择"
@@ -12,7 +12,7 @@ TRANSHELL_CONTENT_APP_NAME="应用名"
TRANSHELL_CONTENT_PKG_NAME="包名" TRANSHELL_CONTENT_PKG_NAME="包名"
TRANSHELL_CONTENT_NEW_VERSION="新版本" TRANSHELL_CONTENT_NEW_VERSION="新版本"
TRANSHELL_CONTENT_UPGRADE_FROM="从该版本更新" TRANSHELL_CONTENT_UPGRADE_FROM="从该版本更新"
TRANSHELL_CONTENT_NO_APP_IS_CHOSEN="没有选中任何軟體\n但是你並沒有站在世界之巔" TRANSHELL_CONTENT_NO_APP_IS_CHOSEN="没有选中任何軟體"
TRANSHELL_CONTENT_UPGRADING_PLEASE_WAIT="正在更新 $APP_UPGRADE ,请稍候..." TRANSHELL_CONTENT_UPGRADING_PLEASE_WAIT="正在更新 $APP_UPGRADE ,请稍候..."
TRANSHELL_CONTENT_CHOSEN_APP_UPGRADE_FINISHED="选中的軟體已经更新完毕" TRANSHELL_CONTENT_CHOSEN_APP_UPGRADE_FINISHED="选中的軟體已经更新完毕"
TRANSHELL_CONTENT_APP_UGRADE_PROCESS_ERROR_PRESS_CONFIRM_TO_CHECK="更新出现错误!按确定查看报错,可用于反馈" TRANSHELL_CONTENT_APP_UGRADE_PROCESS_ERROR_PRESS_CONFIRM_TO_CHECK="更新出现错误!按确定查看报错,可用于反馈"

View File

@@ -126,9 +126,10 @@
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.ui" line="244"/> <location filename="../src/pages/appintopage.ui" line="244"/>
<location filename="../src/pages/appintopage.cpp" line="190"/> <location filename="../src/pages/appintopage.cpp" line="192"/>
<location filename="../src/pages/appintopage.cpp" line="328"/> <location filename="../src/pages/appintopage.cpp" line="330"/>
<location filename="../src/pages/appintopage.cpp" line="498"/> <location filename="../src/pages/appintopage.cpp" line="364"/>
<location filename="../src/pages/appintopage.cpp" line="518"/>
<source>Download and Install</source> <source>Download and Install</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@@ -175,79 +176,79 @@
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="56"/> <location filename="../src/pages/appintopage.cpp" line="53"/>
<source>Click Open</source> <source>Click Open</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="129"/> <location filename="../src/pages/appintopage.cpp" line="126"/>
<source>Developer Mode Disabled</source> <source>Developer Mode Disabled</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="175"/> <location filename="../src/pages/appintopage.cpp" line="177"/>
<location filename="../src/pages/appintopage.cpp" line="344"/> <location filename="../src/pages/appintopage.cpp" line="357"/>
<location filename="../src/pages/appintopage.cpp" line="471"/> <location filename="../src/pages/appintopage.cpp" line="490"/>
<source>Reinstall</source> <source>Reinstall</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="182"/> <location filename="../src/pages/appintopage.cpp" line="184"/>
<source>Upgrade</source> <source>Upgrade</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="333"/> <location filename="../src/pages/appintopage.cpp" line="335"/>
<location filename="../src/pages/appintopage.cpp" line="447"/> <location filename="../src/pages/appintopage.cpp" line="466"/>
<source>Install</source> <source>Install</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="338"/> <location filename="../src/pages/appintopage.cpp" line="340"/>
<source>Installing</source> <source>Installing</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="426"/> <location filename="../src/pages/appintopage.cpp" line="445"/>
<location filename="../src/pages/appintopage.cpp" line="430"/> <location filename="../src/pages/appintopage.cpp" line="449"/>
<location filename="../src/pages/appintopage.cpp" line="434"/> <location filename="../src/pages/appintopage.cpp" line="453"/>
<location filename="../src/pages/appintopage.cpp" line="438"/> <location filename="../src/pages/appintopage.cpp" line="457"/>
<source>Warning</source> <source>Warning</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="426"/> <location filename="../src/pages/appintopage.cpp" line="445"/>
<source>The current application does not support deepin, there may be problems</source> <source>The current application does not support or tested on deepin, there may be problems</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="430"/> <location filename="../src/pages/appintopage.cpp" line="449"/>
<source>The current application does not support UOS, there may be problems</source> <source>The current application does not support or tested on UOS, there may be problems</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="434"/> <location filename="../src/pages/appintopage.cpp" line="453"/>
<source>The current application does not support Ubuntu, there may be problems</source> <source>The current application does not support or tested on Ubuntu, there may be problems</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="438"/> <location filename="../src/pages/appintopage.cpp" line="457"/>
<source>The current application does not support current platform, there may be problems</source> <source>The current application does not support or tested on current platform, there may be problems</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="502"/> <location filename="../src/pages/appintopage.cpp" line="521"/>
<location filename="../src/pages/appintopage.cpp" line="515"/> <location filename="../src/pages/appintopage.cpp" line="536"/>
<source>Spark Store</source> <source>Spark Store</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="502"/> <location filename="../src/pages/appintopage.cpp" line="521"/>
<source>Uninstall succeeded</source> <source>Uninstall succeeded</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="515"/> <location filename="../src/pages/appintopage.cpp" line="536"/>
<source>The URL has been copied to the clipboard</source> <source>The URL has been copied to the clipboard</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@@ -281,7 +282,7 @@
<context> <context>
<name>DownloadController</name> <name>DownloadController</name>
<message> <message>
<location filename="../src/backend/downloadworker.cpp" line="176"/> <location filename="../src/backend/downloadworker.cpp" line="180"/>
<source>Download Failed, please retry :(</source> <source>Download Failed, please retry :(</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@@ -639,17 +640,17 @@
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/settingspage.cpp" line="217"/> <location filename="../src/pages/settingspage.cpp" line="214"/>
<source>Updating, please wait...</source> <source>Updating, please wait...</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/settingspage.cpp" line="239"/> <location filename="../src/pages/settingspage.cpp" line="236"/>
<source>Spark Store</source> <source>Spark Store</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/settingspage.cpp" line="239"/> <location filename="../src/pages/settingspage.cpp" line="236"/>
<source>Temporary cache was cleaned</source> <source>Temporary cache was cleaned</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>

View File

@@ -126,9 +126,10 @@
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.ui" line="244"/> <location filename="../src/pages/appintopage.ui" line="244"/>
<location filename="../src/pages/appintopage.cpp" line="190"/> <location filename="../src/pages/appintopage.cpp" line="192"/>
<location filename="../src/pages/appintopage.cpp" line="328"/> <location filename="../src/pages/appintopage.cpp" line="330"/>
<location filename="../src/pages/appintopage.cpp" line="498"/> <location filename="../src/pages/appintopage.cpp" line="364"/>
<location filename="../src/pages/appintopage.cpp" line="518"/>
<source>Download and Install</source> <source>Download and Install</source>
<translation>Descargar e instalar</translation> <translation>Descargar e instalar</translation>
</message> </message>
@@ -175,79 +176,95 @@
<translation>Sitio web</translation> <translation>Sitio web</translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="56"/> <location filename="../src/pages/appintopage.cpp" line="53"/>
<source>Click Open</source> <source>Click Open</source>
<translation>Haga clic en &quot;abrir&quot;</translation> <translation>Haga clic en &quot;abrir&quot;</translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="129"/> <location filename="../src/pages/appintopage.cpp" line="126"/>
<source>Developer Mode Disabled</source> <source>Developer Mode Disabled</source>
<translation>Se ha desactivado el modo desarrollador</translation> <translation>Se ha desactivado el modo desarrollador</translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="175"/> <location filename="../src/pages/appintopage.cpp" line="177"/>
<location filename="../src/pages/appintopage.cpp" line="344"/> <location filename="../src/pages/appintopage.cpp" line="357"/>
<location filename="../src/pages/appintopage.cpp" line="471"/> <location filename="../src/pages/appintopage.cpp" line="490"/>
<source>Reinstall</source> <source>Reinstall</source>
<translation>Reinstalación</translation> <translation>Reinstalación</translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="182"/> <location filename="../src/pages/appintopage.cpp" line="184"/>
<source>Upgrade</source> <source>Upgrade</source>
<translation>Actualización</translation> <translation>Actualización</translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="333"/> <location filename="../src/pages/appintopage.cpp" line="335"/>
<location filename="../src/pages/appintopage.cpp" line="447"/> <location filename="../src/pages/appintopage.cpp" line="466"/>
<source>Install</source> <source>Install</source>
<translation>Instalación</translation> <translation>Instalación</translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="338"/> <location filename="../src/pages/appintopage.cpp" line="340"/>
<source>Installing</source> <source>Installing</source>
<translation>Se está instalando</translation> <translation>Se está instalando</translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="426"/> <location filename="../src/pages/appintopage.cpp" line="445"/>
<location filename="../src/pages/appintopage.cpp" line="430"/> <location filename="../src/pages/appintopage.cpp" line="449"/>
<location filename="../src/pages/appintopage.cpp" line="434"/> <location filename="../src/pages/appintopage.cpp" line="453"/>
<location filename="../src/pages/appintopage.cpp" line="438"/> <location filename="../src/pages/appintopage.cpp" line="457"/>
<source>Warning</source> <source>Warning</source>
<translation>Aviso</translation> <translation>Aviso</translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="426"/> <location filename="../src/pages/appintopage.cpp" line="445"/>
<source>The current application does not support or tested on deepin, there may be problems</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/pages/appintopage.cpp" line="449"/>
<source>The current application does not support or tested on UOS, there may be problems</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/pages/appintopage.cpp" line="453"/>
<source>The current application does not support or tested on Ubuntu, there may be problems</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/pages/appintopage.cpp" line="457"/>
<source>The current application does not support or tested on current platform, there may be problems</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>The current application does not support deepin, there may be problems</source> <source>The current application does not support deepin, there may be problems</source>
<translation>La aplicación actual no admite deepin, puede haber problemas</translation> <translation type="vanished">La aplicación actual no admite deepin, puede haber problemas</translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="430"/>
<source>The current application does not support UOS, there may be problems</source> <source>The current application does not support UOS, there may be problems</source>
<translation>La aplicación actual no admite uos, puede haber problemas</translation> <translation type="vanished">La aplicación actual no admite uos, puede haber problemas</translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="434"/>
<source>The current application does not support Ubuntu, there may be problems</source> <source>The current application does not support Ubuntu, there may be problems</source>
<translation>La aplicación actual no admite ubuntu, puede haber problemas</translation> <translation type="vanished">La aplicación actual no admite ubuntu, puede haber problemas</translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="438"/>
<source>The current application does not support current platform, there may be problems</source> <source>The current application does not support current platform, there may be problems</source>
<translation>La aplicación actual no admite la Plataforma actual, puede haber problemas</translation> <translation type="vanished">La aplicación actual no admite la Plataforma actual, puede haber problemas</translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="502"/> <location filename="../src/pages/appintopage.cpp" line="521"/>
<location filename="../src/pages/appintopage.cpp" line="515"/> <location filename="../src/pages/appintopage.cpp" line="536"/>
<source>Spark Store</source> <source>Spark Store</source>
<translation>SPARK Store</translation> <translation>SPARK Store</translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="502"/> <location filename="../src/pages/appintopage.cpp" line="521"/>
<source>Uninstall succeeded</source> <source>Uninstall succeeded</source>
<translation>Desinstalación exitosa</translation> <translation>Desinstalación exitosa</translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="515"/> <location filename="../src/pages/appintopage.cpp" line="536"/>
<source>The URL has been copied to the clipboard</source> <source>The URL has been copied to the clipboard</source>
<translation>La URL ha sido copiada al portapapeles</translation> <translation>La URL ha sido copiada al portapapeles</translation>
</message> </message>
@@ -281,7 +298,7 @@
<context> <context>
<name>DownloadController</name> <name>DownloadController</name>
<message> <message>
<location filename="../src/backend/downloadworker.cpp" line="176"/> <location filename="../src/backend/downloadworker.cpp" line="180"/>
<source>Download Failed, please retry :(</source> <source>Download Failed, please retry :(</source>
<translation>Descarga fall, por favor vuelva a intentarlo</translation> <translation>Descarga fall, por favor vuelva a intentarlo</translation>
</message> </message>
@@ -639,17 +656,17 @@
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/settingspage.cpp" line="217"/> <location filename="../src/pages/settingspage.cpp" line="214"/>
<source>Updating, please wait...</source> <source>Updating, please wait...</source>
<translation>Se está actualizando, por favor Espere...</translation> <translation>Se está actualizando, por favor Espere...</translation>
</message> </message>
<message> <message>
<location filename="../src/pages/settingspage.cpp" line="239"/> <location filename="../src/pages/settingspage.cpp" line="236"/>
<source>Spark Store</source> <source>Spark Store</source>
<translation>SPARK Store</translation> <translation>SPARK Store</translation>
</message> </message>
<message> <message>
<location filename="../src/pages/settingspage.cpp" line="239"/> <location filename="../src/pages/settingspage.cpp" line="236"/>
<source>Temporary cache was cleaned</source> <source>Temporary cache was cleaned</source>
<translation>Se ha limpiado la caché temporal</translation> <translation>Se ha limpiado la caché temporal</translation>
</message> </message>

View File

@@ -126,9 +126,10 @@
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.ui" line="244"/> <location filename="../src/pages/appintopage.ui" line="244"/>
<location filename="../src/pages/appintopage.cpp" line="190"/> <location filename="../src/pages/appintopage.cpp" line="192"/>
<location filename="../src/pages/appintopage.cpp" line="328"/> <location filename="../src/pages/appintopage.cpp" line="330"/>
<location filename="../src/pages/appintopage.cpp" line="498"/> <location filename="../src/pages/appintopage.cpp" line="364"/>
<location filename="../src/pages/appintopage.cpp" line="518"/>
<source>Download and Install</source> <source>Download and Install</source>
<translation>Télécharger et installer</translation> <translation>Télécharger et installer</translation>
</message> </message>
@@ -175,79 +176,95 @@
<translation>Site Web</translation> <translation>Site Web</translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="56"/> <location filename="../src/pages/appintopage.cpp" line="53"/>
<source>Click Open</source> <source>Click Open</source>
<translation>Cliquez sur Ouvrir</translation> <translation>Cliquez sur Ouvrir</translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="129"/> <location filename="../src/pages/appintopage.cpp" line="126"/>
<source>Developer Mode Disabled</source> <source>Developer Mode Disabled</source>
<translation>Mode développeur désactivé</translation> <translation>Mode développeur désactivé</translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="175"/> <location filename="../src/pages/appintopage.cpp" line="177"/>
<location filename="../src/pages/appintopage.cpp" line="344"/> <location filename="../src/pages/appintopage.cpp" line="357"/>
<location filename="../src/pages/appintopage.cpp" line="471"/> <location filename="../src/pages/appintopage.cpp" line="490"/>
<source>Reinstall</source> <source>Reinstall</source>
<translation>Réinstaller</translation> <translation>Réinstaller</translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="182"/> <location filename="../src/pages/appintopage.cpp" line="184"/>
<source>Upgrade</source> <source>Upgrade</source>
<translation>Mise à niveau</translation> <translation>Mise à niveau</translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="333"/> <location filename="../src/pages/appintopage.cpp" line="335"/>
<location filename="../src/pages/appintopage.cpp" line="447"/> <location filename="../src/pages/appintopage.cpp" line="466"/>
<source>Install</source> <source>Install</source>
<translation>Installation</translation> <translation>Installation</translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="338"/> <location filename="../src/pages/appintopage.cpp" line="340"/>
<source>Installing</source> <source>Installing</source>
<translation>Installation en cours</translation> <translation>Installation en cours</translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="426"/> <location filename="../src/pages/appintopage.cpp" line="445"/>
<location filename="../src/pages/appintopage.cpp" line="430"/> <location filename="../src/pages/appintopage.cpp" line="449"/>
<location filename="../src/pages/appintopage.cpp" line="434"/> <location filename="../src/pages/appintopage.cpp" line="453"/>
<location filename="../src/pages/appintopage.cpp" line="438"/> <location filename="../src/pages/appintopage.cpp" line="457"/>
<source>Warning</source> <source>Warning</source>
<translation>Avertissement</translation> <translation>Avertissement</translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="426"/> <location filename="../src/pages/appintopage.cpp" line="445"/>
<source>The current application does not support or tested on deepin, there may be problems</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/pages/appintopage.cpp" line="449"/>
<source>The current application does not support or tested on UOS, there may be problems</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/pages/appintopage.cpp" line="453"/>
<source>The current application does not support or tested on Ubuntu, there may be problems</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/pages/appintopage.cpp" line="457"/>
<source>The current application does not support or tested on current platform, there may be problems</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>The current application does not support deepin, there may be problems</source> <source>The current application does not support deepin, there may be problems</source>
<translation>L&apos;application actuelle ne supporte pas deepin, il peut y avoir un problème</translation> <translation type="vanished">L&apos;application actuelle ne supporte pas deepin, il peut y avoir un problème</translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="430"/>
<source>The current application does not support UOS, there may be problems</source> <source>The current application does not support UOS, there may be problems</source>
<translation>L&apos;application actuelle ne prend pas en charge uos, il peut y avoir un problème</translation> <translation type="vanished">L&apos;application actuelle ne prend pas en charge uos, il peut y avoir un problème</translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="434"/>
<source>The current application does not support Ubuntu, there may be problems</source> <source>The current application does not support Ubuntu, there may be problems</source>
<translation>L&apos;application actuelle ne supporte pas Ubuntu, il peut y avoir un problème</translation> <translation type="vanished">L&apos;application actuelle ne supporte pas Ubuntu, il peut y avoir un problème</translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="438"/>
<source>The current application does not support current platform, there may be problems</source> <source>The current application does not support current platform, there may be problems</source>
<translation>L&apos;application actuelle ne prend pas en charge la plate - forme actuelle, il peut y avoir un problème</translation> <translation type="vanished">L&apos;application actuelle ne prend pas en charge la plate - forme actuelle, il peut y avoir un problème</translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="502"/> <location filename="../src/pages/appintopage.cpp" line="521"/>
<location filename="../src/pages/appintopage.cpp" line="515"/> <location filename="../src/pages/appintopage.cpp" line="536"/>
<source>Spark Store</source> <source>Spark Store</source>
<translation>Le Spark store</translation> <translation>Le Spark store</translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="502"/> <location filename="../src/pages/appintopage.cpp" line="521"/>
<source>Uninstall succeeded</source> <source>Uninstall succeeded</source>
<translation>Désinstallation réussie</translation> <translation>Désinstallation réussie</translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="515"/> <location filename="../src/pages/appintopage.cpp" line="536"/>
<source>The URL has been copied to the clipboard</source> <source>The URL has been copied to the clipboard</source>
<translation>L&apos;URL a é copiée dans le presse - papiers</translation> <translation>L&apos;URL a é copiée dans le presse - papiers</translation>
</message> </message>
@@ -281,7 +298,7 @@
<context> <context>
<name>DownloadController</name> <name>DownloadController</name>
<message> <message>
<location filename="../src/backend/downloadworker.cpp" line="176"/> <location filename="../src/backend/downloadworker.cpp" line="180"/>
<source>Download Failed, please retry :(</source> <source>Download Failed, please retry :(</source>
<translation>Le téléchargement a échoué, veuillez réessayer</translation> <translation>Le téléchargement a échoué, veuillez réessayer</translation>
</message> </message>
@@ -639,17 +656,17 @@
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/settingspage.cpp" line="217"/> <location filename="../src/pages/settingspage.cpp" line="214"/>
<source>Updating, please wait...</source> <source>Updating, please wait...</source>
<translation>Mise à jour en cours, veuillez patienter...</translation> <translation>Mise à jour en cours, veuillez patienter...</translation>
</message> </message>
<message> <message>
<location filename="../src/pages/settingspage.cpp" line="239"/> <location filename="../src/pages/settingspage.cpp" line="236"/>
<source>Spark Store</source> <source>Spark Store</source>
<translation>Le Spark store</translation> <translation>Le Spark store</translation>
</message> </message>
<message> <message>
<location filename="../src/pages/settingspage.cpp" line="239"/> <location filename="../src/pages/settingspage.cpp" line="236"/>
<source>Temporary cache was cleaned</source> <source>Temporary cache was cleaned</source>
<translation>Cache temporaire nettoyé</translation> <translation>Cache temporaire nettoyé</translation>
</message> </message>

View File

@@ -121,9 +121,10 @@
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.ui" line="244"/> <location filename="../src/pages/appintopage.ui" line="244"/>
<location filename="../src/pages/appintopage.cpp" line="190"/> <location filename="../src/pages/appintopage.cpp" line="192"/>
<location filename="../src/pages/appintopage.cpp" line="328"/> <location filename="../src/pages/appintopage.cpp" line="330"/>
<location filename="../src/pages/appintopage.cpp" line="498"/> <location filename="../src/pages/appintopage.cpp" line="364"/>
<location filename="../src/pages/appintopage.cpp" line="518"/>
<source>Download and Install</source> <source>Download and Install</source>
<translation></translation> <translation></translation>
</message> </message>
@@ -175,79 +176,95 @@
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="56"/> <location filename="../src/pages/appintopage.cpp" line="53"/>
<source>Click Open</source> <source>Click Open</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="129"/> <location filename="../src/pages/appintopage.cpp" line="126"/>
<source>Developer Mode Disabled</source> <source>Developer Mode Disabled</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="175"/> <location filename="../src/pages/appintopage.cpp" line="177"/>
<location filename="../src/pages/appintopage.cpp" line="344"/> <location filename="../src/pages/appintopage.cpp" line="357"/>
<location filename="../src/pages/appintopage.cpp" line="471"/> <location filename="../src/pages/appintopage.cpp" line="490"/>
<source>Reinstall</source> <source>Reinstall</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="182"/> <location filename="../src/pages/appintopage.cpp" line="184"/>
<source>Upgrade</source> <source>Upgrade</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="333"/> <location filename="../src/pages/appintopage.cpp" line="335"/>
<location filename="../src/pages/appintopage.cpp" line="447"/> <location filename="../src/pages/appintopage.cpp" line="466"/>
<source>Install</source> <source>Install</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="338"/> <location filename="../src/pages/appintopage.cpp" line="340"/>
<source>Installing</source> <source>Installing</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="426"/> <location filename="../src/pages/appintopage.cpp" line="445"/>
<location filename="../src/pages/appintopage.cpp" line="430"/> <location filename="../src/pages/appintopage.cpp" line="449"/>
<location filename="../src/pages/appintopage.cpp" line="434"/> <location filename="../src/pages/appintopage.cpp" line="453"/>
<location filename="../src/pages/appintopage.cpp" line="438"/> <location filename="../src/pages/appintopage.cpp" line="457"/>
<source>Warning</source> <source>Warning</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="426"/> <location filename="../src/pages/appintopage.cpp" line="445"/>
<source>The current application does not support or tested on deepin, there may be problems</source>
<translation>deepin上测试过</translation>
</message>
<message>
<location filename="../src/pages/appintopage.cpp" line="449"/>
<source>The current application does not support or tested on UOS, there may be problems</source>
<translation>UOS上测试过</translation>
</message>
<message>
<location filename="../src/pages/appintopage.cpp" line="453"/>
<source>The current application does not support or tested on Ubuntu, there may be problems</source>
<translation>Ubuntu上测试过</translation>
</message>
<message>
<location filename="../src/pages/appintopage.cpp" line="457"/>
<source>The current application does not support or tested on current platform, there may be problems</source>
<translation></translation>
</message>
<message>
<source>The current application does not support deepin, there may be problems</source> <source>The current application does not support deepin, there may be problems</source>
<translation>deepin</translation> <translation type="vanished">deepin</translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="430"/>
<source>The current application does not support UOS, there may be problems</source> <source>The current application does not support UOS, there may be problems</source>
<translation>UOS</translation> <translation type="vanished">UOS</translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="434"/>
<source>The current application does not support Ubuntu, there may be problems</source> <source>The current application does not support Ubuntu, there may be problems</source>
<translation>Ubuntu</translation> <translation type="vanished">Ubuntu</translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="438"/>
<source>The current application does not support current platform, there may be problems</source> <source>The current application does not support current platform, there may be problems</source>
<translation></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="502"/> <location filename="../src/pages/appintopage.cpp" line="521"/>
<location filename="../src/pages/appintopage.cpp" line="515"/> <location filename="../src/pages/appintopage.cpp" line="536"/>
<source>Spark Store</source> <source>Spark Store</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="502"/> <location filename="../src/pages/appintopage.cpp" line="521"/>
<source>Uninstall succeeded</source> <source>Uninstall succeeded</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="515"/> <location filename="../src/pages/appintopage.cpp" line="536"/>
<source>The URL has been copied to the clipboard</source> <source>The URL has been copied to the clipboard</source>
<translation></translation> <translation></translation>
</message> </message>
@@ -281,7 +298,7 @@
<context> <context>
<name>DownloadController</name> <name>DownloadController</name>
<message> <message>
<location filename="../src/backend/downloadworker.cpp" line="176"/> <location filename="../src/backend/downloadworker.cpp" line="180"/>
<source>Download Failed, please retry :(</source> <source>Download Failed, please retry :(</source>
<translation></translation> <translation></translation>
</message> </message>
@@ -639,17 +656,17 @@
<translation>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;使使&lt;/p&gt;&lt;p&gt;Spark&lt;/p&gt;&lt;p&gt;使SparkSpark Community&lt;/p&gt;&lt;p&gt;Spark CommunitySpark CommunitySpark使Spark StoreGPL v3&lt;span style=&quot; font - family:;&quot; &lt;span style=&quot; font - family:;color:#0082fa;&quot;&gt;jifengshenmo@outlook.com&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/span&gt;&lt;a href=&quot;https://blog.shenmo.tech/post/%E6%95%85%E9%9A%9C%E5%85%AC%E5%91%8A/&quot;&gt;&lt;span style=&quot; text-decoration: underline; color:#0082fa;&quot;&gt;&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation> <translation>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;使使&lt;/p&gt;&lt;p&gt;Spark&lt;/p&gt;&lt;p&gt;使SparkSpark Community&lt;/p&gt;&lt;p&gt;Spark CommunitySpark CommunitySpark使Spark StoreGPL v3&lt;span style=&quot; font - family:;&quot; &lt;span style=&quot; font - family:;color:#0082fa;&quot;&gt;jifengshenmo@outlook.com&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/span&gt;&lt;a href=&quot;https://blog.shenmo.tech/post/%E6%95%85%E9%9A%9C%E5%85%AC%E5%91%8A/&quot;&gt;&lt;span style=&quot; text-decoration: underline; color:#0082fa;&quot;&gt;&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation>
</message> </message>
<message> <message>
<location filename="../src/pages/settingspage.cpp" line="217"/> <location filename="../src/pages/settingspage.cpp" line="214"/>
<source>Updating, please wait...</source> <source>Updating, please wait...</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/settingspage.cpp" line="239"/> <location filename="../src/pages/settingspage.cpp" line="236"/>
<source>Spark Store</source> <source>Spark Store</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/settingspage.cpp" line="239"/> <location filename="../src/pages/settingspage.cpp" line="236"/>
<source>Temporary cache was cleaned</source> <source>Temporary cache was cleaned</source>
<translation></translation> <translation></translation>
</message> </message>

View File

@@ -121,9 +121,10 @@
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.ui" line="244"/> <location filename="../src/pages/appintopage.ui" line="244"/>
<location filename="../src/pages/appintopage.cpp" line="190"/> <location filename="../src/pages/appintopage.cpp" line="192"/>
<location filename="../src/pages/appintopage.cpp" line="328"/> <location filename="../src/pages/appintopage.cpp" line="330"/>
<location filename="../src/pages/appintopage.cpp" line="498"/> <location filename="../src/pages/appintopage.cpp" line="364"/>
<location filename="../src/pages/appintopage.cpp" line="518"/>
<source>Download and Install</source> <source>Download and Install</source>
<translation></translation> <translation></translation>
</message> </message>
@@ -175,79 +176,79 @@
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="56"/> <location filename="../src/pages/appintopage.cpp" line="53"/>
<source>Click Open</source> <source>Click Open</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="129"/> <location filename="../src/pages/appintopage.cpp" line="126"/>
<source>Developer Mode Disabled</source> <source>Developer Mode Disabled</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="175"/> <location filename="../src/pages/appintopage.cpp" line="177"/>
<location filename="../src/pages/appintopage.cpp" line="344"/> <location filename="../src/pages/appintopage.cpp" line="357"/>
<location filename="../src/pages/appintopage.cpp" line="471"/> <location filename="../src/pages/appintopage.cpp" line="490"/>
<source>Reinstall</source> <source>Reinstall</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="182"/> <location filename="../src/pages/appintopage.cpp" line="184"/>
<source>Upgrade</source> <source>Upgrade</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="333"/> <location filename="../src/pages/appintopage.cpp" line="335"/>
<location filename="../src/pages/appintopage.cpp" line="447"/> <location filename="../src/pages/appintopage.cpp" line="466"/>
<source>Install</source> <source>Install</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="338"/> <location filename="../src/pages/appintopage.cpp" line="340"/>
<source>Installing</source> <source>Installing</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="426"/> <location filename="../src/pages/appintopage.cpp" line="445"/>
<location filename="../src/pages/appintopage.cpp" line="430"/> <location filename="../src/pages/appintopage.cpp" line="449"/>
<location filename="../src/pages/appintopage.cpp" line="434"/> <location filename="../src/pages/appintopage.cpp" line="453"/>
<location filename="../src/pages/appintopage.cpp" line="438"/> <location filename="../src/pages/appintopage.cpp" line="457"/>
<source>Warning</source> <source>Warning</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="426"/> <location filename="../src/pages/appintopage.cpp" line="445"/>
<source>The current application does not support deepin, there may be problems</source> <source>The current application does not support or tested on deepin, there may be problems</source>
<translation></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="430"/> <location filename="../src/pages/appintopage.cpp" line="449"/>
<source>The current application does not support UOS, there may be problems</source> <source>The current application does not support or tested on UOS, there may be problems</source>
<translation></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="434"/> <location filename="../src/pages/appintopage.cpp" line="453"/>
<source>The current application does not support Ubuntu, there may be problems</source> <source>The current application does not support or tested on Ubuntu, there may be problems</source>
<translation></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="438"/> <location filename="../src/pages/appintopage.cpp" line="457"/>
<source>The current application does not support current platform, there may be problems</source> <source>The current application does not support or tested on current platform, there may be problems</source>
<translation></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="502"/> <location filename="../src/pages/appintopage.cpp" line="521"/>
<location filename="../src/pages/appintopage.cpp" line="515"/> <location filename="../src/pages/appintopage.cpp" line="536"/>
<source>Spark Store</source> <source>Spark Store</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="502"/> <location filename="../src/pages/appintopage.cpp" line="521"/>
<source>Uninstall succeeded</source> <source>Uninstall succeeded</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/appintopage.cpp" line="515"/> <location filename="../src/pages/appintopage.cpp" line="536"/>
<source>The URL has been copied to the clipboard</source> <source>The URL has been copied to the clipboard</source>
<translation></translation> <translation></translation>
</message> </message>
@@ -281,7 +282,7 @@
<context> <context>
<name>DownloadController</name> <name>DownloadController</name>
<message> <message>
<location filename="../src/backend/downloadworker.cpp" line="176"/> <location filename="../src/backend/downloadworker.cpp" line="180"/>
<source>Download Failed, please retry :(</source> <source>Download Failed, please retry :(</source>
<translation></translation> <translation></translation>
</message> </message>
@@ -639,17 +640,17 @@
<translation>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;使使&lt;/p&gt;&lt;p&gt;Spark&lt;/p&gt;&lt;p&gt;使SparkSpark Community&lt;/p&gt;&lt;p&gt;Spark CommunitySpark CommunitySpark使Spark StoreGPL v3&lt;span style=&quot; font - family:;&quot; &lt;span style=&quot; font - family:;color:#0082fa;&quot;&gt;jifengshenmo@outlook.com&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/span&gt;&lt;a href=&quot;https://blog.shenmo.tech/post/%E6%95%85%E9%9A%9C%E5%85%AC%E5%91%8A/&quot;&gt;&lt;span style=&quot; text-decoration: underline; color:#0082fa;&quot;&gt;&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation> <translation>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;使使&lt;/p&gt;&lt;p&gt;Spark&lt;/p&gt;&lt;p&gt;使SparkSpark Community&lt;/p&gt;&lt;p&gt;Spark CommunitySpark CommunitySpark使Spark StoreGPL v3&lt;span style=&quot; font - family:;&quot; &lt;span style=&quot; font - family:;color:#0082fa;&quot;&gt;jifengshenmo@outlook.com&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/span&gt;&lt;a href=&quot;https://blog.shenmo.tech/post/%E6%95%85%E9%9A%9C%E5%85%AC%E5%91%8A/&quot;&gt;&lt;span style=&quot; text-decoration: underline; color:#0082fa;&quot;&gt;&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation>
</message> </message>
<message> <message>
<location filename="../src/pages/settingspage.cpp" line="217"/> <location filename="../src/pages/settingspage.cpp" line="214"/>
<source>Updating, please wait...</source> <source>Updating, please wait...</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/settingspage.cpp" line="239"/> <location filename="../src/pages/settingspage.cpp" line="236"/>
<source>Spark Store</source> <source>Spark Store</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/pages/settingspage.cpp" line="239"/> <location filename="../src/pages/settingspage.cpp" line="236"/>
<source>Temporary cache was cleaned</source> <source>Temporary cache was cleaned</source>
<translation></translation> <translation></translation>
</message> </message>