mirror of
https://gitee.com/gfdgd-xi/deep-wine-runner
synced 2025-01-12 17:48:27 +08:00
下载量初步
This commit is contained in:
parent
27eb980190
commit
b60f2cd0eb
16
Download.py
Normal file
16
Download.py
Normal 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_()
|
@ -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,支持图片(非强制依赖,只做推荐);
|
||||
|
@ -49,7 +49,11 @@ if [ `arch` != "x86_64" ]; then
|
||||
rm -rf /opt/apps/deepin-wine-runner/InstallNewWineHQ.sh
|
||||
fi
|
||||
# 到时候切换 gpg 源会方便很多
|
||||
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
|
||||
|
@ -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", """使用前须知:
|
||||
1、Qemu 跨架构效率较低,如果有条件建议优先使用 box86、exagear 等效率较高的转换层;
|
||||
2、使用此方案需要使用到 Root 权限(需开启管理员模式)并安装 qemu-user-static;
|
||||
3、chroot 时候可能会出现问题导致程序闪退或异常,出现该问题重启电脑即可;
|
||||
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 源(推荐)"))
|
||||
|
@ -8,7 +8,7 @@
|
||||
# 基于 Python3 的 tkinter 构建
|
||||
###########################################################################################
|
||||
cd `dirname $0`
|
||||
which VBoxManage1
|
||||
which VBoxManage
|
||||
if test $? == 0 ; then
|
||||
VM/VirtualMachine
|
||||
exit
|
||||
|
@ -348,7 +348,8 @@ def UnUseUpperCharPath(path: str):
|
||||
def ReadMe():
|
||||
QtWidgets.QMessageBox.information(window, "提示", """1、目前只支持打包 X86 架构的 deb 包,暂未支持 arm;
|
||||
2、需要区分要打包的程序是绿色软件还是单文件安装包,两个对应的打包方式不相同;
|
||||
3、打包详情:
|
||||
3、打包绿色软件时为尽可能减小程序体积,请将绿化后的程序(或程序文件夹)单独拷贝到干净的目录后再浏览选择主程序打包;
|
||||
4、打包详情:
|
||||
①调用 Wine:Deepin Wine6 Stable
|
||||
②调用 Helper:Spark Wine Helper
|
||||
③有卸载自动移除容器脚本""")
|
||||
|
@ -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)
|
||||
# 控件配置
|
||||
|
@ -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"))
|
||||
|
Binary file not shown.
@ -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))
|
||||
|
Binary file not shown.
@ -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
@ -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)
|
||||
# 控件配置
|
||||
|
@ -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.
@ -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))
|
||||
|
Binary file not shown.
File diff suppressed because one or more lines are too long
Loading…
Reference in New Issue
Block a user