下载量初步

This commit is contained in:
gfdgd xi 2022-12-07 10:21:50 +08:00
parent 27eb980190
commit b60f2cd0eb
19 changed files with 78 additions and 29 deletions

16
Download.py Normal file
View File

@ -0,0 +1,16 @@
#!/usr/bin/env python3
import sys
import PyQt5.QtGui as QtGui
import PyQt5.QtCore as QtCore
import PyQt5.QtWidgets as QtWidgets
import PyQt5.QtWebEngineWidgets as QtWebEngineWidgets
app = QtWidgets.QApplication(sys.argv)
web = QtWebEngineWidgets.QWebEngineView()
#web.urlChanged.connect()
web.loadFinished.connect(lambda: exit())
web.setUrl(QtCore.QUrl("http://120.25.153.144/spark-deepin-wine-runner/open/Install.php?Version=a"))
#web.show()
app.exec_()

View File

@ -9,7 +9,7 @@ Recommends: winbind, wimtools, python3-pyqt5.qtwebengine
Section: utils
Conflicts: spark.deepin-venturi-setter, spark-deepin-wine5-application-packer
Replaces: spark.deepin-venturi-setter, spark-deepin-wine5-application-packer
Installed-Size: 23904
Installed-Size: 23912
Description: gfdgd xi、为什么您不喜欢熊出没和阿布呢 制作的 wine 运行器
2.5.0 更新内容:
※1、容器自动配置脚本 GUI 查看介绍使用 QWebEngineWidget支持图片非强制依赖只做推荐

View File

@ -49,7 +49,11 @@ if [ `arch` != "x86_64" ]; then
rm -rf /opt/apps/deepin-wine-runner/InstallNewWineHQ.sh
fi
# 到时候切换 gpg 源会方便很多
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys FD6EEA1F20CD4B27 > /dev/null 2>&1 | true
if [ -d /usr/share/deepin-installer ]; then
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys FD6EEA1F20CD4B27 > /dev/null 2>&1 | true
# 用于修复 2022.11.25 Better DDE 导致的 Deepin Community Live CD Install 版问题
sh -c 'echo "deb [trusted=yes] https://proposed-packages.deepin.com/dde-apricot unstable main contrib non-free" > /etc/apt/sources.list.d/deepin-unstable.list'
fi
apt update > /dev/null 2>&1 | true
# 设置目录权限,让用户可读可写,方便后续删除组件
chmod 777 -R /opt/apps/deepin-wine-runner

View File

@ -27,6 +27,11 @@ class Ui_MainWindow(object):
def setupUi(self, MainWindow):
MainWindow.setObjectName("MainWindow")
MainWindow.resize(693, 404)
if not get_now_lang() == "zh_CN.UTF-8":
transla = Trans("en_US", f"{programPath}/trans/deepin-wine-runner-qemu-download.json")
else:
transla = Trans("zh_CN")
_translate = transla.transe
self.centralWidget = QtWidgets.QWidget(MainWindow)
self.centralWidget.setObjectName("centralWidget")
self.verticalLayout_2 = QtWidgets.QVBoxLayout(self.centralWidget)
@ -42,6 +47,13 @@ class Ui_MainWindow(object):
self.verticalLayout = QtWidgets.QVBoxLayout()
self.verticalLayout.setSpacing(6)
self.verticalLayout.setObjectName("verticalLayout")
self.verticalLayout_2.addWidget(QtWidgets.QLabel(_translate("U", """使用前须知:
1Qemu 跨架构效率较低如果有条件建议优先使用 box86exagear 等效率较高的转换层
2使用此方案需要使用到 Root 权限需开启管理员模式并安装 qemu-user-static
3chroot 时候可能会出现问题导致程序闪退或异常出现该问题重启电脑即可
4在此环境使用 Wine 只能读取到您用户目录或本程序文件夹下的文件其它路径无法读取
5移除容器时请保证在这次打开电脑时没有调用过需要删除容器如果有调用过建议重启电脑后再移除
6暂时属于测试功能""")))
spacerItem = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
self.verticalLayout.addItem(spacerItem)
self.addButton = QtWidgets.QPushButton(self.centralWidget)
@ -76,11 +88,7 @@ class Ui_MainWindow(object):
MainWindow.setCentralWidget(self.centralWidget)
# 菜单栏
#_translate = QtCore.QCoreApplication.translate
if not get_now_lang() == "zh_CN.UTF-8":
transla = Trans("en_US", f"{programPath}/trans/deepin-wine-runner-qemu-download.json")
else:
transla = Trans("zh_CN")
_translate = transla.transe
self.menu = MainWindow.menuBar()
self.changeSources = self.menu.addMenu(_translate("MainWindow", "更换源"))
self.gitlinkAction = QtWidgets.QAction(_translate("MainWindow", "Gitlink 源(推荐)"))

View File

@ -8,7 +8,7 @@
# 基于 Python3 的 tkinter 构建
###########################################################################################
cd `dirname $0`
which VBoxManage1
which VBoxManage
if test $? == 0 ; then
VM/VirtualMachine
exit

View File

@ -348,7 +348,8 @@ def UnUseUpperCharPath(path: str):
def ReadMe():
QtWidgets.QMessageBox.information(window, "提示", """1、目前只支持打包 X86 架构的 deb 包,暂未支持 arm
2需要区分要打包的程序是绿色软件还是单文件安装包两个对应的打包方式不相同
3打包详情
3打包绿色软件时为尽可能减小程序体积请将绿化后的程序或程序文件夹单独拷贝到干净的目录后再浏览选择主程序打包
4打包详情
调用 WineDeepin Wine6 Stable
调用 HelperSpark Wine Helper
有卸载自动移除容器脚本""")

View File

@ -2003,7 +2003,7 @@ else:
uploadSparkStoreProgram = QtWidgets.QAction(transla.transe("U", "使用投稿器投稿(推荐,请先安装投稿器)"))
uploadSparkStoreProgram.setDisabled(True)
tip = QtWidgets.QAction(transla.transe("U", "小提示"))
getPdfHelp = QtWidgets.QAction(transla.transe("U", "Wine 运行器和 Wine 打包器傻瓜式使用教程(小白专用)\nBy @雁舞白沙"))
getPdfHelp = QtWidgets.QAction(transla.transe("U", "Wine运行器和Wine打包器傻瓜式使用教程小白专用\nBy @雁舞白沙"))
exit.triggered.connect(window.close)
tip.triggered.connect(helps)
programmenu.addAction(exit)
@ -2015,7 +2015,7 @@ debE.triggered.connect(lambda: ReadDeb(False))
debX.triggered.connect(lambda: ReadDeb(True))
uploadSparkStoreWebsize.triggered.connect(lambda: webbrowser.open_new_tab("https://upload.deepinos.org"))
uploadSparkStoreProgram.triggered.connect(lambda: threading.Thread(target=os.system, args=[f"/opt/spark-store-submitter/bin/spark-store-submitter '{e12_text.text()}'"]).start())
getPdfHelp.triggered.connect(lambda: webbrowser.open_new_tab("https://gitee.com/gfdgd-xi/deep-wine-runner/raw/main/Wine%E8%BF%90%E8%A1%8C%E5%99%A8%E5%92%8CWine%E6%89%93%E5%8C%85%E5%99%A8%E5%82%BB%E7%93%9C%E5%BC%8F%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B%EF%BC%88%E5%B0%8F%E7%99%BD%E4%B8%93%E7%94%A8%EF%BC%8920221126-V2.pdf"))
getPdfHelp.triggered.connect(lambda: webbrowser.open_new_tab("https://bbs.deepin.org/post/246837"))
help.addAction(tip)
help.addAction(getPdfHelp)
# 控件配置

View File

@ -177,6 +177,9 @@ class LogChecking():
if lists[0] == 4:
QtWidgets.QMessageBox.information(logWindow, "修复方法", "如是 Deepin Wine 可以尝试切换 WineHQ\n并且取消勾选运行器主页面菜单栏“程序”=>“设置Wine”取消勾选“屏蔽 Wine 默认 Mono 和 Gecko 安装器”\n然后尝试在菜单栏的“Wine”=>“在指定 Wine、容器安装组件”=>“在指定 Wine、容器安装 Gecko”来安装 Gecko")
return
if lists[0] == 5:
InstallMonoGecko("mono")
return
QtWidgets.QMessageBox.critical(logWindow, "错误", "无法修复该问题")
def Show(lists):
@ -200,6 +203,8 @@ class LogChecking():
nmodel.appendRow(QtGui.QStandardItem(f" 无法加载 Gecko是被禁用或未安装"))
if i[0] == 4:
nmodel.appendRow(QtGui.QStandardItem(f"× 无法更新 Wine 容器版本,是否还有 Wine 程序运行?"))
if i[0] == 5:
nmodel.appendRow(QtGui.QStandardItem(f"× Mono 禁用/未安装"))
questionMap = lists[:]
repairButton.setDisabled(disbledButton)
questionList.setModel(nmodel)
@ -233,6 +238,8 @@ class LogThreading(QtCore.QThread):
repairList.append([3, ""])
if "Your wineserver binary was not upgraded correctly".lower() in checkingText:
repairList.append([4, ""])
if "Wine Mono is not installed".lower() in checkingText:
repairList.append([5, ""])
self.done.emit(repairList)
@ -2272,17 +2279,19 @@ updateThingsString = transla.transe("U", '''※1、支持使用 Qemu + Chroot
※2、提供了简易打包器以用于打包简易 deb
※3、支持下载配置过的 Qemu + Chroot 容器;
※4、支持解压指定 deb 的内打包好的容器;
5、优化 Wine 列表显示;
6、优化非基于生态适配脚本的打包器内容自动填充功能
7、新增程序论坛和教程入口
5、优化 Wine 列表显示;
※6、新增程序论坛和教程入口
7、优化非基于生态适配脚本的打包器内容自动填充功能
8、优化程序文案
9、新增日志翻译功能
10、程序进一步完善英语翻译机翻
11、优化程序更新策略
12、优化日志分析功能
13、新增程序评分功能。
''')
for i in information["Thank"]:
thankText += f"{i}\n"
updateTime = "2022年12月04日"
updateTime = "2022年12月06日"
aboutProgram = transla.transe("U", """<p>Wine运行器是一个能让Linux用户更加方便地运行Windows应用的程序内置了对Wine图形化的支持、各种Wine工具、自制的Wine程序打包器和运行库安装工具等。</p>
<p>它同时还内置了基于VirtualBox制作的、专供小白使用的Windows虚拟机安装工具可以做到只需下载系统镜像并点击安装即可无需考虑虚拟机的安装、创建、分区等操作。</p>
<pre>
@ -2774,6 +2783,7 @@ h3 = QtWidgets.QAction(transla.transe("U", "更新内容"))
h4 = QtWidgets.QAction(transla.transe("U", "谢明名单"))
h5 = QtWidgets.QAction(transla.transe("U", "更新这个程序"))
h6 = QtWidgets.QAction(transla.transe("U", "反馈这个程序的建议和问题"))
fenUpload = QtWidgets.QAction(transla.transe("U", "程序评分"))
h7 = QtWidgets.QAction(transla.transe("U", "关于这个程序"))
h8 = QtWidgets.QAction(transla.transe("U", "关于 Qt"))
gfdgdxiio = QtWidgets.QAction(transla.transe("U", "作者个人站"))
@ -2808,6 +2818,7 @@ videoHelp.addAction(buildHelp)
help.addSeparator()
help.addAction(h5)
help.addAction(h6)
help.addAction(fenUpload)
help.addAction(h7)
help.addAction(h8)
help.addSeparator()
@ -2831,6 +2842,7 @@ easyHelp.triggered.connect(lambda: webbrowser.open_new_tab("https://www.bilibili
buildHelp.triggered.connect(lambda: webbrowser.open_new_tab("https://www.bilibili.com/video/BV1EU4y1k7zr"))
h5.triggered.connect(UpdateWindow.ShowWindow)
h6.triggered.connect(WineRunnerBugUpload)
fenUpload.triggered.connect(lambda: threading.Thread(target=os.system, args=[f"python3 '{programPath}/ProgramFen.py'"]).start())
h7.triggered.connect(about_this_program)
h8.triggered.connect(lambda: QtWidgets.QMessageBox.aboutQt(widget))
hm1_1.triggered.connect(lambda: webbrowser.open_new_tab("https://gitee.com/gfdgd-xi/uengine-runner"))

View File

@ -28,7 +28,7 @@ class Trans():
if not self.isTrans:
return text
try:
return self.word[text]
return self.word[text].replace("", "(").replace("", ")")
except:
if self.unCloudTrans:
return text
@ -43,7 +43,7 @@ class Trans():
transText = transText.replace("\n\n", "\n")[:-1]
else:
transText = transText[:-1]
self.word[text] = transText
self.word[text] = transText.replace("", "(").replace("", ")")
try:
with open(self.fileName, "w") as file:
file.write(json.dumps(self.word, ensure_ascii=False))

View File

@ -1 +1 @@
{"更换源": "Change the source", "Gitlink 源(推荐)": "Gitlink source (recommended)", "备用源(只支持 IPv6 用户)": "The alternate source (only support IPv6 users)", "本地测试源127.0.0.1": "Local test source (127.0.0.1)"}
{"更换源": "Change the source", "Gitlink 源(推荐)": "Gitlink source (recommended)", "备用源(只支持 IPv6 用户)": "The alternate source (only support IPv6 users)", "本地测试源127.0.0.1": "Local test source (127.0.0.1)", "使用前须知:\n1、Qemu 跨架构效率较低,如果有条件建议优先使用 box86、exagear 等效率较高的转换层;\n2、使用此方案需要使用到 Root 权限(需开启管理员模式)并安装 qemu-user-static\n3、chroot 时候可能会出现问题导致程序闪退或异常,出现该问题重启电脑即可;\n4、在此环境使用 Wine 时,只能读取到您用户目录或本程序文件夹下的文件,其它路径无法读取;\n5、移除容器时请保证在这次打开电脑时没有调用过需要删除容器如果有调用过建议重启电脑后再移除\n6、暂时属于测试功能": "Instructions before use:\n1, Qemu across architecture efficiency is low, if there is condition is preferred to use box86, exagear high efficiency transformation layer;\n2, use this program to need to use the Root administrator mode (open) and install qemu - user - static;\n3, when chroot flash back problems may cause the program or abnormal, the problems to restart the computer;\n4, in this environment using Wine, can only read your user directory or folder of the program files, other path cannot read;\n5, remove the container please make sure that no calls while in the open a computer need to delete the container, if there is a call after advice to restart the computer to remove;\n6, a temporary belong to test functionality;"}

File diff suppressed because one or more lines are too long

View File

@ -2003,7 +2003,7 @@ else:
uploadSparkStoreProgram = QtWidgets.QAction(transla.transe("U", "使用投稿器投稿(推荐,请先安装投稿器)"))
uploadSparkStoreProgram.setDisabled(True)
tip = QtWidgets.QAction(transla.transe("U", "小提示"))
getPdfHelp = QtWidgets.QAction(transla.transe("U", "Wine 运行器和 Wine 打包器傻瓜式使用教程(小白专用)\nBy @雁舞白沙"))
getPdfHelp = QtWidgets.QAction(transla.transe("U", "Wine运行器和Wine打包器傻瓜式使用教程小白专用\nBy @雁舞白沙"))
exit.triggered.connect(window.close)
tip.triggered.connect(helps)
programmenu.addAction(exit)
@ -2015,7 +2015,7 @@ debE.triggered.connect(lambda: ReadDeb(False))
debX.triggered.connect(lambda: ReadDeb(True))
uploadSparkStoreWebsize.triggered.connect(lambda: webbrowser.open_new_tab("https://upload.deepinos.org"))
uploadSparkStoreProgram.triggered.connect(lambda: threading.Thread(target=os.system, args=[f"/opt/spark-store-submitter/bin/spark-store-submitter '{e12_text.text()}'"]).start())
getPdfHelp.triggered.connect(lambda: webbrowser.open_new_tab("https://gitee.com/gfdgd-xi/deep-wine-runner/raw/main/Wine%E8%BF%90%E8%A1%8C%E5%99%A8%E5%92%8CWine%E6%89%93%E5%8C%85%E5%99%A8%E5%82%BB%E7%93%9C%E5%BC%8F%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B%EF%BC%88%E5%B0%8F%E7%99%BD%E4%B8%93%E7%94%A8%EF%BC%8920221126-V2.pdf"))
getPdfHelp.triggered.connect(lambda: webbrowser.open_new_tab("https://bbs.deepin.org/post/246837"))
help.addAction(tip)
help.addAction(getPdfHelp)
# 控件配置

View File

@ -177,6 +177,9 @@ class LogChecking():
if lists[0] == 4:
QtWidgets.QMessageBox.information(logWindow, "修复方法", "如是 Deepin Wine 可以尝试切换 WineHQ\n并且取消勾选运行器主页面菜单栏“程序”=>“设置Wine”取消勾选“屏蔽 Wine 默认 Mono 和 Gecko 安装器”\n然后尝试在菜单栏的“Wine”=>“在指定 Wine、容器安装组件”=>“在指定 Wine、容器安装 Gecko”来安装 Gecko")
return
if lists[0] == 5:
InstallMonoGecko("mono")
return
QtWidgets.QMessageBox.critical(logWindow, "错误", "无法修复该问题")
def Show(lists):
@ -200,6 +203,8 @@ class LogChecking():
nmodel.appendRow(QtGui.QStandardItem(f" 无法加载 Gecko是被禁用或未安装"))
if i[0] == 4:
nmodel.appendRow(QtGui.QStandardItem(f"× 无法更新 Wine 容器版本,是否还有 Wine 程序运行?"))
if i[0] == 5:
nmodel.appendRow(QtGui.QStandardItem(f"× Mono 禁用/未安装"))
questionMap = lists[:]
repairButton.setDisabled(disbledButton)
questionList.setModel(nmodel)
@ -233,6 +238,8 @@ class LogThreading(QtCore.QThread):
repairList.append([3, ""])
if "Your wineserver binary was not upgraded correctly".lower() in checkingText:
repairList.append([4, ""])
if "Wine Mono is not installed".lower() in checkingText:
repairList.append([5, ""])
self.done.emit(repairList)
@ -2273,17 +2280,18 @@ updateThingsString = transla.transe("U", '''※1、支持使用 Qemu + Chroot
3支持下载配置过的 Qemu + Chroot 容器
4支持解压指定 deb 的内打包好的容器
5优化 Wine 列表显示
6优化非基于生态适配脚本的打包器内容自动填充功能
7新增程序论坛和教程入口
6新增程序论坛和教程入口
7优化非基于生态适配脚本的打包器内容自动填充功能
8优化程序文案
9新增日志翻译功能
10程序进一步完善英语翻译机翻
11优化程序更新策略
12新增程序评分功能
12优化日志分析功能
13新增程序评分功能
''')
for i in information["Thank"]:
thankText += f"{i}\n"
updateTime = "2022年12月04"
updateTime = "2022年12月06"
aboutProgram = transla.transe("U", """<p>Wine运行器是一个能让Linux用户更加方便地运行Windows应用的程序内置了对Wine图形化的支持、各种Wine工具、自制的Wine程序打包器和运行库安装工具等。</p>
<p>它同时还内置了基于VirtualBox制作的专供小白使用的Windows虚拟机安装工具可以做到只需下载系统镜像并点击安装即可无需考虑虚拟机的安装创建分区等操作</p>
<pre>

Binary file not shown.

View File

@ -28,7 +28,7 @@ class Trans():
if not self.isTrans:
return text
try:
return self.word[text]
return self.word[text].replace("", "(").replace("", ")")
except:
if self.unCloudTrans:
return text
@ -43,7 +43,7 @@ class Trans():
transText = transText.replace("\n\n", "\n")[:-1]
else:
transText = transText[:-1]
self.word[text] = transText
self.word[text] = transText.replace("", "(").replace("", ")")
try:
with open(self.fileName, "w") as file:
file.write(json.dumps(self.word, ensure_ascii=False))

File diff suppressed because one or more lines are too long