优化更新逻辑

This commit is contained in:
gfdgd xi 2024-07-21 18:12:30 +08:00
parent 7a175c957a
commit 8f37bfd3b8
2 changed files with 29 additions and 5 deletions

@ -1,5 +1,5 @@
{
"Version": "3.9.2",
"Version": "4.0.0",
"Time": "未知",
"Thank": [
"感谢 @り哥拽的冇气质° 和 @杨 提供了 3a5000新世界的测试机器",

@ -1283,6 +1283,11 @@ class UpdateWindow():
unPackageNew = False
isArch = False
isFedora = False
isTermux = False
if os.path.exists("/data/data/com.termux"):
isTermux = True
if UpdateWindow.data["Url-termux"][0] == None:
unPackageNew = True
if os.path.exists("/etc/arch-release"):
isArch = True
if UpdateWindow.data["Url-pkg"][0] == None:
@ -1340,6 +1345,20 @@ echo 安装安装包
yum reinstall $TMPDIR/tmp/spark-deepin-wine-runner/update/spark-deepin-wine-runner.rpm -y
notify-send -i "{iconPath}" "更新完毕!"
zenity --info --text=\"更新完毕!\" --ellipsize
""")
elif isTermux:
# 使用 pkg 安装更新
write_txt(TMPDIR + "/tmp/spark-deepin-wine-runner/update.sh", f"""#!/data/data/com.termux/files/usr/bin/bash
echo 删除多余的安装包
rm -rfv $TMPDIR/tmp/spark-deepin-wine-runner/update/*
echo 关闭Wine 运行器
python3 "{programPath}/updatekiller.py"
echo 下载安装包
wget -O $TMPDIR/tmp/spark-deepin-wine-runner/update/spark-deepin-wine-runner-termux.deb {UpdateWindow.data["Url-termux"][0]}
echo 安装安装包
pkg reinstall $TMPDIR/tmp/spark-deepin-wine-runner/update/spark-deepin-wine-runner.rpm -y
notify-send -i "{iconPath}" "更新完毕!"
zenity --info --text=\"更新完毕!\" --ellipsize
""")
else:
# 使用 deb 安装更新
@ -1357,7 +1376,10 @@ apt install -f -y
notify-send -i "{iconPath}" "更新完毕!"
zenity --info --text=\"更新完毕!\" --ellipsize
""")
OpenTerminal("pkexec bash $TMPDIR/tmp/spark-deepin-wine-runner/update.sh")
if isTermux:
OpenTerminal("bash $TMPDIR/tmp/spark-deepin-wine-runner/update.sh")
else:
OpenTerminal("pkexec bash $TMPDIR/tmp/spark-deepin-wine-runner/update.sh")
except:
traceback.print_exc()
QtWidgets.QMessageBox.critical(None, "出现错误,无法继续更新", traceback.format_exc())
@ -2484,12 +2506,14 @@ updateThingsString = QtCore.QCoreApplication.translate("U", '''※1、优化运
5跟进 dxvk 2.4
6修复 deepin 23 无法使用 Mono/Gecko 安装器的问题
7修复 debian testing 打包时会把 / 打入 .7z 包内导致系统死机的问题
8修复虚拟机启动器入口不会调用安装的 Qemu Extra 的问题
9优化高级打包器容器名称生成机制
8支持 AOSC安同小小电脑proot 容器
9支持在 Termux 直接运行
10修复虚拟机启动器入口不会调用安装的 Qemu Extra 的问题
11优化高级打包器容器名称生成机制
''')
for i in information["Thank"]:
thankText += f"{i}\n"
updateTime = "2024年06月29"
updateTime = "2024年07月21"
aboutProgram = QtCore.QCoreApplication.translate("U", """<p>Wine运行器是一个能让Linux用户更加方便地运行Windows应用的程序。原版的 Wine 只能使用命令操作且安装过程较为繁琐对小白不友好。于是该运行器为了解决该痛点内置了对Wine图形化的支持、Wine 安装器、微型应用商店、各种Wine工具、自制的Wine程序打包器、运行库安装工具等。</p>
<p>它同时还内置了基于Qemu/VirtualBox制作的专供小白使用的Windows虚拟机安装工具可以做到只需下载系统镜像并点击安装即可无需考虑虚拟机的安装创建分区等操作也能在非 X86 架构安装 X86 架构的 Windows 操作系统但是效率较低可以运行些老系统</p>
<p>而且对于部分 Wine 应用适配者来说提供了图形化的打包工具以及提供了一些常用工具以及运行库的安装方式以及能安装多种不同的 Wine 以测试效果能极大提升适配效率</p>