1.8.0初步

This commit is contained in:
gfdgd xi 2022-08-01 16:11:46 +08:00
parent 7a4086732f
commit 24916bf63b
136 changed files with 549 additions and 109 deletions

0
.idea/.gitignore vendored Normal file → Executable file
View File

0
.idea/deepin-wine-run.iml Normal file → Executable file
View File

0
.idea/inspectionProfiles/profiles_settings.xml Normal file → Executable file
View File

0
.idea/misc.xml Normal file → Executable file
View File

0
.idea/modules.xml Normal file → Executable file
View File

0
.idea/vcs.xml Normal file → Executable file
View File

95
AppStore.py Executable file
View File

@ -0,0 +1,95 @@
#!/usr/bin/env python3
# 使用系统默认的 python3 运行
###########################################################################################
# 作者gfdgd xi、为什么您不喜欢熊出没和阿布呢
# 版本1.8.0
# 更新时间2022年08月01日
# 感谢:感谢 wine 以及 deepin-wine 团队,提供了 wine 和 deepin-wine 给大家使用,让我能做这个程序
# 基于 Python3 构建
###########################################################################################
#################
# 引入所需的库
#################
import os
import sys
import json
import pyquery
import requests
import urllib.parse as parse
def CleanTerminal():
os.system("clear")
print("本软件源来自腾讯软件管家,只会下载文件后缀为“.exe”的文件")
print("请输入要搜索的内容如果要结束请输入“exit”或点击右上角“×”关闭")
print("无法保证从这里下载的安装包能正常安装/运行")
if __name__ == "__main__":
if "--help" in sys.argv:
print("作者gfdgd xi、为什么您不喜欢熊出没和阿布呢")
print("版本1.0.0")
print("本程序可以更方便的在 wine 容器中安装指定应用")
sys.exit()
if len(sys.argv) <= 2 or sys.argv[1] == "" or sys.argv[2] == "":
print("您未指定需要安装的容器和使用的 wine无法继续")
print("参数:")
print("XXX 参数一 参数二")
print("参数一为需要安装的容器参数二为需要使用的wine两个参数位置不能颠倒")
sys.exit()
CleanTerminal()
while True:
search = input(">")
if search.replace(" ", "").replace("\n", "") == "":
continue
if search.lower() == "exit": # 输入“exit”
break # 结束程序
# 获取初步 API
apiReturn = json.loads(requests.get(f"https://s.pcmgr.qq.com/tapi/web/searchcgi.php?type=search&callback=searchCallback&keyword={parse.quote(search)}&page=1&pernum=30").text[:-2][15:])
option = 0
downloadUrl = []
if not "list" in apiReturn:
print("没有搜到结果,尝试换一个关键词试试")
input("按回车键继续")
CleanTerminal()
continue
for i in apiReturn["list"]: # 遍历选项
htmlShow = i["xmlInfo"]
url = pyquery.PyQuery(htmlShow)("url").text()
if url[-3:] != "exe": # 格式非 exe忽略
continue
print(option, i["SoftName"], url)
downloadUrl.append(url)
option += 1
if option == 0:
print("没有搜到结果,尝试换一个关键词试试")
input("按回车键继续")
CleanTerminal()
continue
while True:
try:
choose = input("请输入选项编号输入“exit”取消 >")
if choose.lower() == "exit":
choose = choose.lower()
break
choose = int(choose)
except:
print("输入有误,请正确输入编号")
continue
if not 0 <= choose or not choose < len(downloadUrl):
print("输入的值超出范围,请正确输入编号")
continue
break
if choose == "exit":
CleanTerminal()
continue
print("开始下载……")
os.system("rm -rf /tmp/wineappstore")
os.system("mkdir -p /tmp/wineappstore")
os.system(f"aria2c -x 16 -s 16 -d /tmp/wineappstore -o install.exe \"{downloadUrl[choose]}\"")
print("开始安装……")
os.system(f"WINEPREFIX={sys.argv[1]} {sys.argv[2]} /tmp/wineappstore/install.exe")
print("安装结束……")
input("按回车键继续……")
CleanTerminal()

0
DisabledOpengl.reg Normal file → Executable file
View File

0
EnabledOpengl.reg Normal file → Executable file
View File

View File

@ -2,10 +2,10 @@
# 使用系统默认的 python3 运行
###########################################################################################
# 作者gfdgd xi、为什么您不喜欢熊出没和阿布呢
# 版本1.5.1
# 更新时间2022年07月04
# 版本1.8.0
# 更新时间2022年08月01
# 感谢:感谢 wine 以及 deepin-wine 团队,提供了 wine 和 deepin-wine 给大家使用,让我能做这个程序
# 基于 Python3 的 tkinter 构建
# 基于 Python3 构建
###########################################################################################
#################
# 引入所需的库
@ -48,4 +48,4 @@ os.system("mkdir -p /tmp/winegeckomonoinstall")
os.system(f"aria2c -x 16 -s 16 -d /tmp/winegeckomonoinstall -o install.msi \"{programDownloadUrl}\"")
print("开始安装")
os.system(f"WINEPREFIX={sys.argv[1]} {sys.argv[2]} msiexec /i /tmp/winegeckomonoinstall/install.msi")
print("安装结束")
input("安装结束,按回车键退出")

View File

@ -1,4 +1,15 @@
#!/usr/bin/env python3
# 使用系统默认的 python3 运行
###########################################################################################
# 作者gfdgd xi、为什么您不喜欢熊出没和阿布呢
# 版本1.8.0
# 更新时间2022年08月01日
# 感谢:感谢 wine 以及 deepin-wine 团队,提供了 wine 和 deepin-wine 给大家使用,让我能做这个程序
# 基于 Python3 构建
###########################################################################################
#################
# 引入所需的库
#################
import os
import sys
@ -37,5 +48,5 @@ os.system("mkdir -p /tmp/wineinstallmsxml")
os.system(f"aria2c -x 16 -s 16 -d /tmp/wineinstallmsxml -o install.msi \"{msxmlList[choose][1]}\"")
print("开始安装")
os.system(f"WINEPREFIX={sys.argv[1]} {sys.argv[2]} msiexec /i /tmp/wineinstallmsxml/install.msi")
print("安装结束")
input("安装结束,按回车键退出")
sys.exit()

View File

@ -2,10 +2,10 @@
# 使用系统默认的 python3 运行
###########################################################################################
# 作者gfdgd xi、为什么您不喜欢熊出没和阿布呢
# 版本1.5.1
# 更新时间2022年07月04
# 版本1.8.0
# 更新时间2022年08月01
# 感谢:感谢 wine 以及 deepin-wine 团队,提供了 wine 和 deepin-wine 给大家使用,让我能做这个程序
# 基于 Python3 的 tkinter 构建
# 基于 Python3 构建
###########################################################################################
#################
# 引入所需的库
@ -58,4 +58,4 @@ os.system("rm -rf /tmp/wineinstallnetframework")
os.system("mkdir -p /tmp/wineinstallnetframework")
os.system(f"aria2c -x 16 -s 16 -d /tmp/wineinstallnetframework -o install.exe \"{netList[choose][1]}\"")
os.system(f"WINEPREFIX={sys.argv[1]} {sys.argv[2]} /tmp/wineinstallnetframework/install.exe")
print("安装结束")
input("安装结束,按回车键退出")

View File

@ -1,4 +1,15 @@
#!/usr/bin/env python3
# 使用系统默认的 python3 运行
###########################################################################################
# 作者gfdgd xi、为什么您不喜欢熊出没和阿布呢
# 版本1.8.0
# 更新时间2022年08月01日
# 感谢:感谢 wine 以及 deepin-wine 团队,提供了 wine 和 deepin-wine 给大家使用,让我能做这个程序
# 基于 Python3 构建
###########################################################################################
#################
# 引入所需的库
#################
import os
import sys
@ -43,6 +54,5 @@ if msxmlList[choose][2] == "exe":
os.system(f"aria2c -x 16 -s 16 -d /tmp/wineinstall -o install.exe \"{msxmlList[choose][1]}\"")
print("开始安装")
os.system(f"WINEPREFIX={sys.argv[1]} {sys.argv[2]} /tmp/wineinstall/install.exe")
print("安装结束")
sys.exit()
pass
input("安装结束,按回车键退出")
sys.exit()

View File

@ -2,10 +2,10 @@
# 使用系统默认的 python3 运行
###########################################################################################
# 作者gfdgd xi、为什么您不喜欢熊出没和阿布呢
# 版本1.5.2
# 更新时间2022年07月06
# 版本1.8.0
# 更新时间2022年08月01
# 感谢:感谢 wine 以及 deepin-wine 团队,提供了 wine 和 deepin-wine 给大家使用,让我能做这个程序
# 基于 Python3 的 tkinter 构建
# 基于 Python3 构建
###########################################################################################
#################
# 引入所需的库
@ -49,4 +49,4 @@ os.system("rm -rf /tmp/wineinstallvisualstudiocplusplus")
os.system("mkdir -p /tmp/wineinstallvisualstudiocplusplus")
os.system(f"aria2c -x 16 -s 16 -d /tmp/wineinstallvisualstudiocplusplus -o install.exe \"{netList[choose][1]}\"")
os.system(f"WINEPREFIX={sys.argv[1]} {sys.argv[2]} /tmp/wineinstallvisualstudiocplusplus/install.exe")
print("安装结束")
input("安装结束,按回车键退出")

0
LICENSE Normal file → Executable file
View File

1
Makefile Normal file → Executable file
View File

@ -35,6 +35,7 @@ build:
cp -rv 窗体透明度设置工具.exe deb/opt/apps/deepin-wine-runner
cp -rv dlls deb/opt/apps/deepin-wine-runner
cp -rv UpdateGeek.sh deb/opt/apps/deepin-wine-runner
cp -rv AppStore.py deb/opt/apps/deepin-wine-runner
dpkg -b deb spark-deepin-wine-runner.deb
install:

0
README.md Normal file → Executable file
View File

0
Run.bat Normal file → Executable file
View File

0
VM-source/.qmake.stash Normal file → Executable file
View File

0
VM-source/ISO/autorun.inf Normal file → Executable file
View File

0
VM-source/Makefile Normal file → Executable file
View File

0
VM-source/VirtualMachine.pro Normal file → Executable file
View File

0
VM-source/VirtualMachine.pro.user Normal file → Executable file
View File

0
VM-source/Windows7X64Auto.iso Normal file → Executable file
View File

0
VM-source/Windows7X64Auto.iso.uibak Normal file → Executable file
View File

0
VM-source/Windows7X86Auto.iso Normal file → Executable file
View File

0
VM-source/Windows7X86Auto.iso.uibak Normal file → Executable file
View File

0
VM-source/api/__init__.py Normal file → Executable file
View File

0
VM-source/api/__pycache__/__init__.cpython-37.pyc Normal file → Executable file
View File

0
VM-source/deepin-wine-runner.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 16 KiB

0
VM-source/deepin-wine-runner.svg Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 11 KiB

0
VM-source/main.cpp Normal file → Executable file
View File

0
VM-source/main.o Normal file → Executable file
View File

0
VM-source/mainwindow.cpp Normal file → Executable file
View File

0
VM-source/mainwindow.h Normal file → Executable file
View File

0
VM-source/mainwindow.o Normal file → Executable file
View File

0
VM-source/mainwindow.ui Normal file → Executable file
View File

0
VM-source/moc_mainwindow.cpp Normal file → Executable file
View File

0
VM-source/moc_mainwindow.o Normal file → Executable file
View File

0
VM-source/moc_predefs.h Normal file → Executable file
View File

0
VM-source/qrc_图标.cpp Normal file → Executable file
View File

0
VM-source/qrc_图标.o Normal file → Executable file
View File

0
VM-source/ui_mainwindow.h Normal file → Executable file
View File

0
VM-source/图标.qrc Normal file → Executable file
View File

View File

Before

Width:  |  Height:  |  Size: 198 KiB

After

Width:  |  Height:  |  Size: 198 KiB

View File

Before

Width:  |  Height:  |  Size: 157 KiB

After

Width:  |  Height:  |  Size: 157 KiB

View File

Before

Width:  |  Height:  |  Size: 246 KiB

After

Width:  |  Height:  |  Size: 246 KiB

View File

Before

Width:  |  Height:  |  Size: 189 KiB

After

Width:  |  Height:  |  Size: 189 KiB

View File

Before

Width:  |  Height:  |  Size: 190 KiB

After

Width:  |  Height:  |  Size: 190 KiB

View File

Before

Width:  |  Height:  |  Size: 235 KiB

After

Width:  |  Height:  |  Size: 235 KiB

View File

Before

Width:  |  Height:  |  Size: 190 KiB

After

Width:  |  Height:  |  Size: 190 KiB

View File

Before

Width:  |  Height:  |  Size: 122 KiB

After

Width:  |  Height:  |  Size: 122 KiB

View File

Before

Width:  |  Height:  |  Size: 219 KiB

After

Width:  |  Height:  |  Size: 219 KiB

View File

Before

Width:  |  Height:  |  Size: 107 KiB

After

Width:  |  Height:  |  Size: 107 KiB

0
VM-source/截图/截图_VirtualBox_20220712223705.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 47 KiB

After

Width:  |  Height:  |  Size: 47 KiB

View File

Before

Width:  |  Height:  |  Size: 1006 KiB

After

Width:  |  Height:  |  Size: 1006 KiB

0
VM-source/截图_VirtualBox Machine_20220712142929.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 428 KiB

After

Width:  |  Height:  |  Size: 428 KiB

0
VM/.qmake.stash Normal file → Executable file
View File

0
VM/Windows7X64Auto.iso Normal file → Executable file
View File

0
VM/Windows7X86Auto.iso Normal file → Executable file
View File

0
VM/api/__init__.py Normal file → Executable file
View File

0
VM/api/__pycache__/__init__.cpython-37.pyc Normal file → Executable file
View File

0
VM/deepin-wine-runner.svg Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 11 KiB

2
deb/DEBIAN/control Normal file → Executable file
View File

@ -1,5 +1,5 @@
Package: spark-deepin-wine-runner
Version: 1.7.1
Version: 1.8.0
Maintainer: gfdgd xi <3025613752@qq.com>, 为什么您不喜欢熊出没和阿布呢
Homepage: https://gitee.com/gfdgd-xi/deep-wine-runner
Architecture: all

View File

@ -1,3 +1,3 @@
# !/bin/sh
# 向服务器返回安装数加1不显示内容且忽略错误
curl http://120.25.153.144/spark-deepin-wine-runner/Install.php?Version=1.7.1 -s > /dev/null | true
curl http://120.25.153.144/spark-deepin-wine-runner/Install.php?Version=1.8.0 -s > /dev/null | true

View File

@ -0,0 +1,95 @@
#!/usr/bin/env python3
# 使用系统默认的 python3 运行
###########################################################################################
# 作者gfdgd xi、为什么您不喜欢熊出没和阿布呢
# 版本1.8.0
# 更新时间2022年08月01日
# 感谢:感谢 wine 以及 deepin-wine 团队,提供了 wine 和 deepin-wine 给大家使用,让我能做这个程序
# 基于 Python3 构建
###########################################################################################
#################
# 引入所需的库
#################
import os
import sys
import json
import pyquery
import requests
import urllib.parse as parse
def CleanTerminal():
os.system("clear")
print("本软件源来自腾讯软件管家,只会下载文件后缀为“.exe”的文件")
print("请输入要搜索的内容如果要结束请输入“exit”或点击右上角“×”关闭")
print("无法保证从这里下载的安装包能正常安装/运行")
if __name__ == "__main__":
if "--help" in sys.argv:
print("作者gfdgd xi、为什么您不喜欢熊出没和阿布呢")
print("版本1.0.0")
print("本程序可以更方便的在 wine 容器中安装指定应用")
sys.exit()
if len(sys.argv) <= 2 or sys.argv[1] == "" or sys.argv[2] == "":
print("您未指定需要安装的容器和使用的 wine无法继续")
print("参数:")
print("XXX 参数一 参数二")
print("参数一为需要安装的容器参数二为需要使用的wine两个参数位置不能颠倒")
sys.exit()
CleanTerminal()
while True:
search = input(">")
if search.replace(" ", "").replace("\n", "") == "":
continue
if search.lower() == "exit": # 输入“exit”
break # 结束程序
# 获取初步 API
apiReturn = json.loads(requests.get(f"https://s.pcmgr.qq.com/tapi/web/searchcgi.php?type=search&callback=searchCallback&keyword={parse.quote(search)}&page=1&pernum=30").text[:-2][15:])
option = 0
downloadUrl = []
if not "list" in apiReturn:
print("没有搜到结果,尝试换一个关键词试试")
input("按回车键继续")
CleanTerminal()
continue
for i in apiReturn["list"]: # 遍历选项
htmlShow = i["xmlInfo"]
url = pyquery.PyQuery(htmlShow)("url").text()
if url[-3:] != "exe": # 格式非 exe忽略
continue
print(option, i["SoftName"], url)
downloadUrl.append(url)
option += 1
if option == 0:
print("没有搜到结果,尝试换一个关键词试试")
input("按回车键继续")
CleanTerminal()
continue
while True:
try:
choose = input("请输入选项编号输入“exit”取消 >")
if choose.lower() == "exit":
choose = choose.lower()
break
choose = int(choose)
except:
print("输入有误,请正确输入编号")
continue
if not 0 <= choose or not choose < len(downloadUrl):
print("输入的值超出范围,请正确输入编号")
continue
break
if choose == "exit":
CleanTerminal()
continue
print("开始下载……")
os.system("rm -rf /tmp/wineappstore")
os.system("mkdir -p /tmp/wineappstore")
os.system(f"aria2c -x 16 -s 16 -d /tmp/wineappstore -o install.exe \"{downloadUrl[choose]}\"")
print("开始安装……")
os.system(f"WINEPREFIX={sys.argv[1]} {sys.argv[2]} /tmp/wineappstore/install.exe")
print("安装结束……")
input("按回车键继续……")
CleanTerminal()

0
deb/opt/apps/deepin-wine-runner/DisabledOpengl.reg Normal file → Executable file
View File

0
deb/opt/apps/deepin-wine-runner/EnabledOpengl.reg Normal file → Executable file
View File

View File

@ -2,10 +2,10 @@
# 使用系统默认的 python3 运行
###########################################################################################
# 作者gfdgd xi、为什么您不喜欢熊出没和阿布呢
# 版本1.5.1
# 更新时间2022年07月04
# 版本1.8.0
# 更新时间2022年08月01
# 感谢:感谢 wine 以及 deepin-wine 团队,提供了 wine 和 deepin-wine 给大家使用,让我能做这个程序
# 基于 Python3 的 tkinter 构建
# 基于 Python3 构建
###########################################################################################
#################
# 引入所需的库
@ -48,4 +48,4 @@ os.system("mkdir -p /tmp/winegeckomonoinstall")
os.system(f"aria2c -x 16 -s 16 -d /tmp/winegeckomonoinstall -o install.msi \"{programDownloadUrl}\"")
print("开始安装")
os.system(f"WINEPREFIX={sys.argv[1]} {sys.argv[2]} msiexec /i /tmp/winegeckomonoinstall/install.msi")
print("安装结束")
input("安装结束,按回车键退出")

View File

@ -1,4 +1,15 @@
#!/usr/bin/env python3
# 使用系统默认的 python3 运行
###########################################################################################
# 作者gfdgd xi、为什么您不喜欢熊出没和阿布呢
# 版本1.8.0
# 更新时间2022年08月01日
# 感谢:感谢 wine 以及 deepin-wine 团队,提供了 wine 和 deepin-wine 给大家使用,让我能做这个程序
# 基于 Python3 构建
###########################################################################################
#################
# 引入所需的库
#################
import os
import sys
@ -37,5 +48,5 @@ os.system("mkdir -p /tmp/wineinstallmsxml")
os.system(f"aria2c -x 16 -s 16 -d /tmp/wineinstallmsxml -o install.msi \"{msxmlList[choose][1]}\"")
print("开始安装")
os.system(f"WINEPREFIX={sys.argv[1]} {sys.argv[2]} msiexec /i /tmp/wineinstallmsxml/install.msi")
print("安装结束")
input("安装结束,按回车键退出")
sys.exit()

View File

@ -2,10 +2,10 @@
# 使用系统默认的 python3 运行
###########################################################################################
# 作者gfdgd xi、为什么您不喜欢熊出没和阿布呢
# 版本1.5.1
# 更新时间2022年07月04
# 版本1.8.0
# 更新时间2022年08月01
# 感谢:感谢 wine 以及 deepin-wine 团队,提供了 wine 和 deepin-wine 给大家使用,让我能做这个程序
# 基于 Python3 的 tkinter 构建
# 基于 Python3 构建
###########################################################################################
#################
# 引入所需的库
@ -58,4 +58,4 @@ os.system("rm -rf /tmp/wineinstallnetframework")
os.system("mkdir -p /tmp/wineinstallnetframework")
os.system(f"aria2c -x 16 -s 16 -d /tmp/wineinstallnetframework -o install.exe \"{netList[choose][1]}\"")
os.system(f"WINEPREFIX={sys.argv[1]} {sys.argv[2]} /tmp/wineinstallnetframework/install.exe")
print("安装结束")
input("安装结束,按回车键退出")

View File

@ -1,4 +1,15 @@
#!/usr/bin/env python3
# 使用系统默认的 python3 运行
###########################################################################################
# 作者gfdgd xi、为什么您不喜欢熊出没和阿布呢
# 版本1.8.0
# 更新时间2022年08月01日
# 感谢:感谢 wine 以及 deepin-wine 团队,提供了 wine 和 deepin-wine 给大家使用,让我能做这个程序
# 基于 Python3 构建
###########################################################################################
#################
# 引入所需的库
#################
import os
import sys
@ -43,6 +54,5 @@ if msxmlList[choose][2] == "exe":
os.system(f"aria2c -x 16 -s 16 -d /tmp/wineinstall -o install.exe \"{msxmlList[choose][1]}\"")
print("开始安装")
os.system(f"WINEPREFIX={sys.argv[1]} {sys.argv[2]} /tmp/wineinstall/install.exe")
print("安装结束")
sys.exit()
pass
input("安装结束,按回车键退出")
sys.exit()

View File

@ -2,10 +2,10 @@
# 使用系统默认的 python3 运行
###########################################################################################
# 作者gfdgd xi、为什么您不喜欢熊出没和阿布呢
# 版本1.5.2
# 更新时间2022年07月06
# 版本1.8.0
# 更新时间2022年08月01
# 感谢:感谢 wine 以及 deepin-wine 团队,提供了 wine 和 deepin-wine 给大家使用,让我能做这个程序
# 基于 Python3 的 tkinter 构建
# 基于 Python3 构建
###########################################################################################
#################
# 引入所需的库
@ -49,4 +49,4 @@ os.system("rm -rf /tmp/wineinstallvisualstudiocplusplus")
os.system("mkdir -p /tmp/wineinstallvisualstudiocplusplus")
os.system(f"aria2c -x 16 -s 16 -d /tmp/wineinstallvisualstudiocplusplus -o install.exe \"{netList[choose][1]}\"")
os.system(f"WINEPREFIX={sys.argv[1]} {sys.argv[2]} /tmp/wineinstallvisualstudiocplusplus/install.exe")
print("安装结束")
input("安装结束,按回车键退出")

0
deb/opt/apps/deepin-wine-runner/LICENSE Normal file → Executable file
View File

0
deb/opt/apps/deepin-wine-runner/Run.bat Normal file → Executable file
View File

0
deb/opt/apps/deepin-wine-runner/VM/.qmake.stash Normal file → Executable file
View File

0
deb/opt/apps/deepin-wine-runner/VM/Windows7X64Auto.iso Normal file → Executable file
View File

0
deb/opt/apps/deepin-wine-runner/VM/Windows7X86Auto.iso Normal file → Executable file
View File

0
deb/opt/apps/deepin-wine-runner/VM/api/__init__.py Normal file → Executable file
View File

View File

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 11 KiB

View File

@ -3,7 +3,7 @@
# 作者gfdgd xi、为什么您不喜欢熊出没和阿布
# 版本1.8.0
# 感谢:感谢 deepin-wine 团队,提供了 deepin-wine 给大家使用,让我能做这个程序
# 基于 Python3 的 tkinter 构建
# 基于 Python3 的 PyQt5 构建
#########################################################################
#################
# 引入所需的库
@ -155,7 +155,7 @@ class make_deb_threading(QtCore.QThread):
if not os.path.exists(e6_text.text()):
QtWidgets.QMessageBox.critical(widget, "错误", "路径填写错误,无法继续构建 deb 包")
disabled_or_NORMAL_all(True)
self.label.emit("图标的路径填写错误,无法进行构建 deb 包")
self.label.emit("容器路径填写错误,无法进行构建 deb 包")
return
#############
# 删除文件
@ -221,7 +221,7 @@ Multi-Arch: foreign
Description: {}
'''.format(e1_text.text(), e2_text.text(), e4_text.text(), wineVersion.currentText(), e3_text.text()))
else:
write_txt("{}/DEBIAN/postrm".format(debPackagePath), '''Package: {}
write_txt("{}/DEBIAN/control".format(debPackagePath), '''Package: {}
Version: {}
Architecture: i386
Maintainer: {}
@ -232,7 +232,7 @@ Multi-Arch: foreign
Description: {}
'''.format(e1_text.text(), e2_text.text(), e4_text.text(), wineVersion.currentText(), e3_text.text()))
if rmBash.isChecked():
write_txt("{}/opt/apps/{}/files/run.sh".format(debPackagePath, e1_text.text()), f'''#!/bin/bash
write_txt("{}/DEBIAN/postrm".format(debPackagePath, e1_text.text()), f'''#!/bin/bash
if [ "$1" = "remove" ] || [ "$1" = "purge" ];then
@ -303,6 +303,15 @@ fi
#
# Author: Li LongYu <lilongyu@linuxdeepin.com>
# Peng Hao <penghao@linuxdeepin.com>
#
#
# Copyright (C) 2022 The Spark Project
#
#
# Modifier shenmo <shenmo@spark-app.store>
#
#
#
#######################函数段。下文调用的额外功能会在此处声明
@ -317,17 +326,24 @@ Get_Dist_Name()
fi
}}
####获得发行版名称
version_gt() {{ test "$(echo "$@" | tr " " "\n" | sort -V | head -n 1)" != "$1"; }}
#########################预设值段
version_gt() {{ test "$(echo "$@" | tr " " "\n" | sort -V | head -n 1)" != "$1"; }}
####用于比较版本?未实装
BOTTLENAME="{}"
APPVER="{}"
EXEC_PATH="{}"
##### 软件在wine中的启动路径
START_SHELL_PATH="/opt/deepinwine/tools/spark_run_v4.sh"
export MIME_TYPE=""
#####没什么用
export DEB_PACKAGE_NAME="{}"
####这里写包名才能在启动的时候正确找到files.7z,似乎也和杀残留进程有关
export APPRUN_CMD="{}"
#####wine启动指令建议
EXPORT_ENVS=""
export SPECIFY_SHELL_DIR=`dirname $START_SHELL_PATH`
@ -339,9 +355,14 @@ export WINEDLLPATH=/opt/$APPRUN_CMD/lib:/opt/$APPRUN_CMD/lib64
export WINEPREDLL="$ARCHIVE_FILE_DIR/dlls"
DISABLE_ATTACH_FILE_DIALOG=""
##默认为空。若为1则不使用系统自带的文件选择而是使用wine的
##对于deepin/UOS大部分的应用都不需要使用wine的如果有需求比如wine应用选择的限定种类文件系统的文管不支持
##请填1。
##注意因为非DDE的环境不确定所以默认会在非Deepin/UOS发行版上禁用这个功能。如果你确认在适配的发行版上可以正常启动请注释或者删除下面这段
##############<<<<<<<<<禁用文件选择工具开始
Get_Dist_Name
#此功能实现参见结尾函数段
if [ "$DISTRO" != "Deepin" ] && [ "$DISTRO" != "UniontechOS" ];then
DISABLE_ATTACH_FILE_DIALOG="1"
echo "非deepin/UOS默认关闭系统自带的文件选择工具使用Wine的"
@ -349,6 +370,22 @@ echo "如果你想改变这个行为,请到/opt/apps/$DEB_PACKAGE_NAME/files/$
echo "To打包者如果你要打开自带请注意在适配的发行版上进行测试"
echo "To用户打包者没有打开这个功能这证明启用这个功能可能造成运行问题。如果你要修改这个行为请确保你有一定的动手能力"
fi
##############>>>>>>>>>禁用文件选择工具结束
##############<<<<<<<<<屏蔽mono和gecko安装器开始
##默认屏蔽mono和gecko安装器
if [ "$APPRUN_CMD" = "spark-wine7-devel" ];then
export WINEDLLOVERRIDES="mscoree,mshtml="
echo "为了降低打包体积默认关闭gecko和momo如有需要注释此行仅对spark-wine7-devel有效"
fi
##############>>>>>>>>>屏蔽mono和gecko安装器结束
#########################执行段
if [ -z "$DISABLE_ATTACH_FILE_DIALOG" ];then
export ATTACH_FILE_DIALOG=1

View File

@ -2,8 +2,8 @@
# 使用系统默认的 python3 运行
###########################################################################################
# 作者gfdgd xi、为什么您不喜欢熊出没和阿布呢
# 版本1.7.1
# 更新时间2022年07月29
# 版本1.8.0
# 更新时间2022年08月01
# 感谢:感谢 wine、deepin-wine 以及星火团队,提供了 wine、deepin-wine、spark-wine-devel 给大家使用,让我能做这个程序
# 基于 Python3 的 PyQt5 构建
###########################################################################################
@ -141,6 +141,8 @@ class Runexebutton_threading(QtCore.QThread):
option = ""
if setting["Architecture"] != "Auto":
option += f"WINEARCH={setting['Architecture']} "
if setting["MonoGeckoInstaller"]:
option += f"WINEDLLOVERRIDES=\"mscoree,mshtml=\" "
if not setting["Debug"]:
option += "WINEDEBUG=-all "
if setting["TerminalOpen"]:
@ -335,6 +337,8 @@ class RunWineProgramThread(QtCore.QThread):
else:
wineBottonPath = e1.currentText()
option = ""
if setting["MonoGeckoInstaller"]:
option += f"WINEDLLOVERRIDES=\"mscoree,mshtml=\" "
if setting["Architecture"] != "Auto":
option += f"WINEARCH={setting['Architecture']} "
if not setting["Debug"]:
@ -421,49 +425,46 @@ def RunWinetricks():
def InstallMonoGecko(program):
DisableButton(True)
if e1.currentText() == "":
wineBottonPath = setting["DefultBotton"]
else:
wineBottonPath = e1.currentText()
os.system(f"'{programPath}/launch.sh' deepin-terminal -C \"'{programPath}/InstallMono.py' '{wineBottonPath}' {wine[o1.currentText()]} {program}\" --keep-open")
DisableButton(False)
os.system(f"'{programPath}/launch.sh' deepin-terminal -e '{programPath}/InstallMono.py' '{wineBottonPath}' {wine[o1.currentText()]} {program}")
def InstallNetFramework():
DisableButton(True)
if e1.currentText() == "":
wineBottonPath = setting["DefultBotton"]
else:
wineBottonPath = e1.currentText()
os.system(f"'{programPath}/launch.sh' deepin-terminal -C \"'{programPath}/InstallNetFramework.py' '{wineBottonPath}' {wine[o1.currentText()]}\" --keep-open")
DisableButton(False)
os.system(f"'{programPath}/launch.sh' deepin-terminal -e '{programPath}/InstallNetFramework.py' '{wineBottonPath}' {wine[o1.currentText()]}")
def InstallVisualStudioCPlusPlus():
DisableButton(True)
if e1.currentText() == "":
wineBottonPath = setting["DefultBotton"]
else:
wineBottonPath = e1.currentText()
os.system(f"'{programPath}/launch.sh' deepin-terminal -C \"'{programPath}/InstallVisualCPlusPlus.py' '{wineBottonPath}' {wine[o1.currentText()]}\" --keep-open")
DisableButton(False)
os.system(f"'{programPath}/launch.sh' deepin-terminal -e '{programPath}/InstallVisualCPlusPlus.py' '{wineBottonPath}' {wine[o1.currentText()]}")
def InstallMSXML():
DisableButton(True)
if e1.currentText() == "":
wineBottonPath = setting["DefultBotton"]
else:
wineBottonPath = e1.currentText()
os.system(f"'{programPath}/launch.sh' deepin-terminal -C \"'{programPath}/InstallMsxml.py' '{wineBottonPath}' {wine[o1.currentText()]}\" --keep-open")
DisableButton(False)
os.system(f"'{programPath}/launch.sh' deepin-terminal -e '{programPath}/InstallMsxml.py' '{wineBottonPath}' {wine[o1.currentText()]}")
def InstallOther():
DisableButton(True)
def MiniAppStore():
if e1.currentText()== "":
wineBottonPath = setting["DefultBotton"]
else:
wineBottonPath = e1.currentText()
os.system(f"'{programPath}/launch.sh' deepin-terminal -C \"'{programPath}/InstallOther.py' '{wineBottonPath}' {wine[o1.currentText()]}\" --keep-open")
DisableButton(False)
os.system(f"'{programPath}/launch.sh' deepin-terminal -e '{programPath}/AppStore.py' '{wineBottonPath}' {wine[o1.currentText()]}")
def InstallOther():
if e1.currentText()== "":
wineBottonPath = setting["DefultBotton"]
else:
wineBottonPath = e1.currentText()
os.system(f"'{programPath}/launch.sh' deepin-terminal -e '{programPath}/InstallOther.py' '{wineBottonPath}' {wine[o1.currentText()]}")
def BuildExeDeb():
if e1.currentText() == "":
@ -810,6 +811,7 @@ class ProgramSetting():
centerWindow = None
message = None
theme = None
monogeckoInstaller = None
def ShowWindow():
ProgramSetting.message = QtWidgets.QMainWindow()
widget = QtWidgets.QWidget()
@ -821,6 +823,7 @@ class ProgramSetting():
widgetLayout.addWidget(QtWidgets.QLabel("使用终端打开:"), 4, 0, 1, 1)
widgetLayout.addWidget(QtWidgets.QLabel("自定义 wine 参数:"), 5, 0, 1, 1)
widgetLayout.addWidget(QtWidgets.QLabel("程序主题:"), 6, 0, 1, 1)
widgetLayout.addWidget(QtWidgets.QLabel("Wine 默认 Mono 和 Gecko 安装器:"), 7, 0, 1, 1)
ProgramSetting.wineBottonA = QtWidgets.QComboBox()
ProgramSetting.wineDebug = QtWidgets.QCheckBox("开启 DEBUG 输出")
ProgramSetting.defultWine = QtWidgets.QComboBox()
@ -836,6 +839,7 @@ class ProgramSetting():
themeTry.clicked.connect(ProgramSetting.Try)
ProgramSetting.terminalOpen = QtWidgets.QCheckBox("使用终端打开deepin 终端)")
ProgramSetting.wineOption = QtWidgets.QLineEdit()
ProgramSetting.monogeckoInstaller = QtWidgets.QCheckBox("屏蔽 Wine 默认 Mono 和 Gecko 安装器")
ProgramSetting.wineBottonA.addItems(["Auto", "win32", "win64"])
ProgramSetting.wineBottonA.setCurrentText(setting["Architecture"])
ProgramSetting.wineDebug.setChecked(setting["Debug"])
@ -844,6 +848,7 @@ class ProgramSetting():
ProgramSetting.defultBotton.setText(setting["DefultBotton"])
ProgramSetting.terminalOpen.setChecked(setting["TerminalOpen"])
ProgramSetting.wineOption.setText(setting["WineOption"])
ProgramSetting.monogeckoInstaller.setChecked(setting["MonoGeckoInstaller"])
widgetLayout.addWidget(ProgramSetting.wineBottonA, 0, 1, 1, 1)
widgetLayout.addWidget(ProgramSetting.wineDebug, 1, 1, 1, 1)
widgetLayout.addWidget(ProgramSetting.defultWine, 2, 1, 1, 1)
@ -853,7 +858,8 @@ class ProgramSetting():
widgetLayout.addWidget(ProgramSetting.wineOption, 5, 1, 1, 1)
widgetLayout.addWidget(ProgramSetting.theme, 6, 1, 1, 1)
widgetLayout.addWidget(themeTry, 6, 2, 1, 1)
widgetLayout.addWidget(save, 7, 2, 1, 1)
widgetLayout.addWidget(ProgramSetting.monogeckoInstaller, 7, 1, 1, 1)
widgetLayout.addWidget(save, 8, 2, 1, 1)
widget.setLayout(widgetLayout)
ProgramSetting.message.setCentralWidget(widget)
ProgramSetting.message.setWindowTitle(f"设置 wine 运行器 {version}")
@ -878,6 +884,7 @@ class ProgramSetting():
setting["TerminalOpen"] = ProgramSetting.terminalOpen.isChecked()
setting["WineOption"] = ProgramSetting.wineOption.text()
setting["Theme"] = ProgramSetting.theme.currentText()
setting["MonoGeckoInstaller"] = ProgramSetting.monogeckoInstaller.isChecked()
try:
write_txt(get_home() + "/.config/deepin-wine-runner/WineSetting.json", json.dumps(setting))
except:
@ -898,7 +905,8 @@ defultProgramList = {
"WineOption": "",
"WineBottonDifferent": False,
"CenterWindow": False,
"Theme": ""
"Theme": "",
"MonoGeckoInstaller": True
}
if not os.path.exists(get_home() + "/.config/deepin-wine-runner"): # 如果没有配置文件夹
os.mkdir(get_home() + "/.config/deepin-wine-runner") # 创建配置文件夹
@ -954,7 +962,7 @@ iconPath = "{}/deepin-wine-runner.svg".format(programPath)
programUrl = "https://gitee.com/gfdgd-xi/deep-wine-runner\nhttps://github.com/gfdgd-xi/deep-wine-runner\nhttps://www.gitlink.org.cn/gfdgd_xi/deep-wine-runner"
information = json.loads(readtxt(f"{programPath}/information.json"))
version = information["Version"]
goodRunSystem = "Linux"
goodRunSystem = "常见 Linux"
thankText = ""
tips = '''提示:
1、使用终端运行该程序可以看到 wine 以及程序本身的提示和报错;
@ -964,16 +972,15 @@ tips = '''提示:
exe路径\' 参数 \'
即可(单引号需要输入)
5、wine 容器如果没有指定,则会默认为 ~/.wine'''
updateThingsString = '''※1、更换为 @PossibleVing 提供的程序图标
※2、修改了统信 Wine 生态适配活动的脚本,支持在非 UOS 系统打包
※3、修复了打包器在打包应用未指定图标的情况下显示对话框后强制退出的问题
4、修改 .net framework 3.5 的安装包,从在线版改为本地版
5、支持设置主题
6、添加 Geek Uninstaller 手动升级脚本
updateThingsString = '''※1、修复了打包器非基于活动脚本 control、postrm 写入文件颠倒的问题
※2、内置一个微型的 Windows 应用商店(应用来源:腾讯软件管家)
3、更新了打包器非基于活动脚本调用星火 spark-wine-helper 的 run.sh 脚本格式
4、修复了打包器基于活动脚本在 dde-top-panel 和 dde-globalmenu-service 下无法打开帮助提示的问题
5、支持屏蔽 Wine 默认的 Mono、Gecko 安装器(屏蔽方法来自星火应用商店审核组和提供的新 run.sh 标准)
'''
for i in information["Thank"]:
thankText += f"{i}\n"
updateTime = "2022年07月29日"
updateTime = "2022年08月01日"
about = f'''<h1>关于</h1>
<pre>一个基于 Python3 的 PyQt5 制作的 Wine 运行器
@ -1089,7 +1096,11 @@ uninstallProgram = QtWidgets.QPushButton("卸载程序")
uninstallProgram.clicked.connect(lambda: RunWineProgram(f"{programPath}/geek.exe"))
programManager.addWidget(QtWidgets.QLabel(" "*5), 1, 3, 1, 1)
programManager.addWidget(uninstallProgram, 1, 4, 1, 1)
programManager.addItem(QtWidgets.QSpacerItem(20, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum), 1, 5, 1, 1)
miniAppStore = QtWidgets.QPushButton("微型应用商店")
miniAppStore.clicked.connect(lambda: threading.Thread(target=MiniAppStore).start())
programManager.addWidget(QtWidgets.QLabel(" "*5), 1, 5, 1, 1)
programManager.addWidget(miniAppStore, 1, 6, 1, 1)
programManager.addItem(QtWidgets.QSpacerItem(20, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum), 1, 7, 1, 1)
programManager.addWidget(QtWidgets.QLabel("WINE配置"), 2, 0, 1, 1)
wineConfig = QtWidgets.QPushButton("配置容器")
wineConfig.clicked.connect(lambda: RunWineProgram("winecfg"))

0
deb/opt/apps/deepin-wine-runner/deepin-wine-runner.svg Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 11 KiB

0
deb/opt/apps/deepin-wine-runner/dlls/gdi32.dll.so Normal file → Executable file
View File

0
deb/opt/apps/deepin-wine-runner/dlls/gdi32.so Normal file → Executable file
View File

0
deb/opt/apps/deepin-wine-runner/dlls/kernel32.dll.so Normal file → Executable file
View File

0
deb/opt/apps/deepin-wine-runner/dlls/kernelbase.dll.so Normal file → Executable file
View File

0
deb/opt/apps/deepin-wine-runner/dlls/sechost.dll.so Normal file → Executable file
View File

0
deb/opt/apps/deepin-wine-runner/dlls/shell32.dll.so Normal file → Executable file
View File

0
deb/opt/apps/deepin-wine-runner/dlls/user32.dll.so Normal file → Executable file
View File

0
deb/opt/apps/deepin-wine-runner/dlls/user32.so Normal file → Executable file
View File

View File

0
deb/opt/apps/deepin-wine-runner/dlls/winex11.drv.so Normal file → Executable file
View File

0
deb/opt/apps/deepin-wine-runner/dlls/ws2_32.dll.so Normal file → Executable file
View File

0
deb/opt/apps/deepin-wine-runner/geek.exe Normal file → Executable file
View File

2
deb/opt/apps/deepin-wine-runner/information.json Normal file → Executable file
View File

@ -1,5 +1,5 @@
{
"Version": "1.7.1",
"Version": "1.8.0",
"Thank": [
"感谢 @a2035274 @虚幻的早晨 https://bbs.deepin.org/post/238301",
"感谢 @zhangs https://bbs.deepin.org/post/227948",

BIN
deb/opt/apps/deepin-wine-runner/package-script.zip Normal file → Executable file

Binary file not shown.

View File

View File

@ -0,0 +1 @@
/opt/apps/deepin-wine-runner/AppStore.py

Some files were not shown because too many files have changed in this diff Show More