优化文案和简易打包器

This commit is contained in:
2022-12-04 16:13:08 +08:00
parent 01a3307626
commit 08dbe1cb80
4 changed files with 25 additions and 20 deletions

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env python3
import os import os
import sys import sys
import json import json
@@ -399,7 +400,15 @@ class RunThread(QtCore.QThread):
############# 后面将全部调用 deepin wine6 stable 进行操作 ############# 后面将全部调用 deepin wine6 stable 进行操作
exeName = os.path.basename(exePath.text()) exeName = os.path.basename(exePath.text())
# 暂定 # 暂定
debPackageName = "spark-" + xpinyin.Pinyin().get_pinyin(os.path.splitext(exeName)[0].replace(" ", "")).lower().replace("--", "-").replace(" ", "").replace("_", "-") packageName = xpinyin.Pinyin().get_pinyin(os.path.splitext(exeName)[0].replace(" ", ""), "").lower().replace(" ", "").replace("_", ".").replace("-", ".").replace("..", ".")
if " " in packageName:
packageName = ""
for i in os.path.splitext(exeName)[0].split(" "):
packageName += xpinyin.Pinyin().get_pinyin(i).lower().replace(" ", "").replace("_", ".").replace("-", ".").replace("..", ".") + "."
print(packageName)
packageName = packageName[:-1]
debPackageName = "com." + packageName + ".spark"
debPackageVersion = "1.0.0" debPackageVersion = "1.0.0"
programIconPath = f"/opt/apps/{debPackageName}/entries/icons/hicolor/scalable/apps/{debPackageName}.png" programIconPath = f"/opt/apps/{debPackageName}/entries/icons/hicolor/scalable/apps/{debPackageName}.png"
debMaintainer = os.getlogin() debMaintainer = os.getlogin()
@@ -430,6 +439,8 @@ class RunThread(QtCore.QThread):
lnkList = GetLnkDesktop(lnkPath) lnkList = GetLnkDesktop(lnkPath)
if len(lnkList) <= 0: if len(lnkList) <= 0:
self.error.emit("无法识别到任何 lnk 快捷方式") self.error.emit("无法识别到任何 lnk 快捷方式")
self.RunCommand(f"rm -rfv '{debBuildPath}' > /dev/null")
self.RunCommand(f"rm -rfv '{bottlePath}' > /dev/null")
self.disbledAll.emit(False) self.disbledAll.emit(False)
return return
# 选择最优 lnk # 选择最优 lnk
@@ -457,7 +468,7 @@ class RunThread(QtCore.QThread):
exePathInBottle = rightLnk[1] exePathInBottle = rightLnk[1]
exeName = os.path.splitext(os.path.basename(folderExePath))[0] exeName = os.path.splitext(os.path.basename(folderExePath))[0]
exePathInSystem = rightLnk[1].replace("\\", "/").replace("c:", f"{bottlePath}/drive_c") exePathInSystem = rightLnk[1].replace("\\", "/").replace("c:", f"{bottlePath}/drive_c")
debPackageVersion = self.GetEXEVersion(exePathInBottle) debPackageVersion = self.GetEXEVersion(exePathInSystem)
cpNow = False cpNow = False
for i in iconList: for i in iconList:
path = i[1].replace("wineBottonPath", bottlePath).lower() path = i[1].replace("wineBottonPath", bottlePath).lower()
@@ -478,11 +489,11 @@ class RunThread(QtCore.QThread):
exePathInBottle = f"c:/Program Files/{os.path.basename(folderExePath)}/{exeName}" exePathInBottle = f"c:/Program Files/{os.path.basename(folderExePath)}/{exeName}"
exeName = os.path.splitext(os.path.basename(os.path.basename(exePath.text())))[0] exeName = os.path.splitext(os.path.basename(os.path.basename(exePath.text())))[0]
self.RunCommand(f"mkdir -pv '{debBuildPath}/opt/apps/{debPackageName}/entries/icons/hicolor/scalable/apps/'") self.RunCommand(f"mkdir -pv '{debBuildPath}/opt/apps/{debPackageName}/entries/icons/hicolor/scalable/apps/'")
self.RunCommand(f"'{programPath}/wrestool' '{exePathInBottle}' -x -t 14 > '{debBuildPath}/{programIconPath}'") self.RunCommand(f"'{programPath}/wrestool' '{exePath.text()}' -x -t 14 > '{debBuildPath}/{programIconPath}'")
debPackageVersion = self.GetEXEVersion(exePathInBottle)
# 拷贝文件到容器 # 拷贝文件到容器
self.RunCommand(f"cp -rv '{folderExePath}' '{bottlePath}/drive_c/Program Files'") self.RunCommand(f"cp -rv '{folderExePath}' '{bottlePath}/drive_c/Program Files'")
debDescription = f"{exeName} By Deepin Wine 6 Stable And Build By Wine Runner" debPackageVersion = self.GetEXEVersion(exePath.text())
debDescription = f"{exeName} By Deepin Wine 6 Stable And Build By Wine Runner Easy Packager"
debDepends = "deepin-wine6-stable, spark-dwine-helper | store.spark-app.spark-dwine-helper, fonts-wqy-microhei, fonts-wqy-zenhei" debDepends = "deepin-wine6-stable, spark-dwine-helper | store.spark-app.spark-dwine-helper, fonts-wqy-microhei, fonts-wqy-zenhei"
self.RunCommand(f"mkdir -pv '{debBuildPath}/DEBIAN'") self.RunCommand(f"mkdir -pv '{debBuildPath}/DEBIAN'")
self.RunCommand(f"mkdir -pv '{debBuildPath}/opt/apps/{debPackageName}/files'") self.RunCommand(f"mkdir -pv '{debBuildPath}/opt/apps/{debPackageName}/files'")
@@ -508,7 +519,7 @@ class RunThread(QtCore.QThread):
########### 打包容器 ########### 打包容器
self.RunCommand(f"7z a '{bottlePackagePath}' '{bottlePath}/'*") self.RunCommand(f"7z a '{bottlePackagePath}' '{bottlePath}/'*")
########### 生成文件内容 ########### 生成文件内容
buildProgramSize = getFileFolderSize(debBuildPath) buildProgramSize = getFileFolderSize(debBuildPath) / 1000
replaceMap = [ replaceMap = [
["@@@Package@@@", debPackageName], ["@@@Package@@@", debPackageName],
["@@@Version@@@", debPackageVersion], ["@@@Version@@@", debPackageVersion],

View File

@@ -1231,7 +1231,7 @@ fi
# 获取文件大小 # 获取文件大小
################ ################
self.label.emit("正在计算文件大小……") self.label.emit("正在计算文件大小……")
size = int(getFileFolderSize(debPackagePath) / 1024) size = int(getFileFolderSize(debPackagePath) / 1000)
################ ################
# 写入文本文档 # 写入文本文档
################ ################

View File

@@ -1,6 +1,7 @@
{ {
"Version": "2.5.0", "Version": "2.5.0",
"Thank": [ "Thank": [
"感谢 @鹤舞白沙 对程序文案进行优化以及编写《Wine运行器和Wine打包器傻瓜式使用教程小白专用 》",
"感谢 @璀璨星空 提供的彩蛋图标", "感谢 @璀璨星空 提供的彩蛋图标",
"感谢 @鹤舞白沙 专门为小白用户编写的使用 Wine 运行器非基于生态适配脚本的程序打包教程", "感谢 @鹤舞白沙 专门为小白用户编写的使用 Wine 运行器非基于生态适配脚本的程序打包教程",
"感谢 @牦牛儿苗 进行了龙芯 3a5000 平台的测试与移植", "感谢 @牦牛儿苗 进行了龙芯 3a5000 平台的测试与移植",

View File

@@ -2190,19 +2190,9 @@ exe路径\' 参数 \'
<b>千万不要中断后不删除源的情况下 apt upgrade </b>中断后只需重新打开脚本输入 repair 或者随意安装一个 Wine会自动执行恢复操作即可 <b>千万不要中断后不删除源的情况下 apt upgrade </b>中断后只需重新打开脚本输入 repair 或者随意安装一个 Wine会自动执行恢复操作即可
以及此脚本安装的 Wine 无法保证 100% 能使用,以及副作用是会提示; 以及此脚本安装的 Wine 无法保证 100% 能使用,以及副作用是会提示;
<code>N: 鉴于仓库 'https://community-packages.deepin.com/beige beige InRelease' 不支持 'i386' 体系结构,跳过配置文件 'main/binary-i386/Packages' 的获取。</code>''' <code>N: 鉴于仓库 'https://community-packages.deepin.com/beige beige InRelease' 不支持 'i386' 体系结构,跳过配置文件 'main/binary-i386/Packages' 的获取。</code>'''
updateThingsString = '''※1、容器自动配置脚本 GUI 查看介绍使用 QWebEngineWidget支持图片非强制依赖只做推荐 updateThingsString = '''※1、支持使用 Qemu + Chroot 跨运行 Wine 以及指定程序的功能
※2、不基于生态适配活动脚本打包器跟进 arm 架构 2022年11月11日的 Wine 微信打包方式 ※2、提供了简易打包器以用于打包简易 deb
※3、支持多图标的程序打包 ※3、支持下载配置过的 Qemu + Chroot 容器
※4、修复了安装更多 Wine 换源换了个寂寞的问题;
※5、修复安装更多 Wine 重新安装后列表丢失的问题;
※6、新增了对 Deepin 23 Alpha 优化的 Wine 安装器;
※7、新增 Dll 名称查询功能,可以查询对应 Dll 的作用;
※8、支持静态获取可执行文件可以调用的 Dll 并提供解决方案;
※9、支持移除指定的 .desktop 快捷方式;
※10、新增日志分析功能以及导出、上传日志功能
11、修复了不基于生态适配活动脚本打包器在选择 arm 打包架构下容器自动删除脚本取消勾选无用的问题;
12、优化文案、新增友链
13、提供了部分组件的测试功能。
''' '''
for i in information["Thank"]: for i in information["Thank"]:
thankText += f"{i}\n" thankText += f"{i}\n"
@@ -2691,6 +2681,7 @@ help = menu.addMenu(QtCore.QCoreApplication.translate("U", "帮助(&H)"))
runStatusWebSize = QtWidgets.QAction(QtCore.QCoreApplication.translate("U", "查询程序在 Wine 的运行情况")) runStatusWebSize = QtWidgets.QAction(QtCore.QCoreApplication.translate("U", "查询程序在 Wine 的运行情况"))
h1 = help.addMenu(QtCore.QCoreApplication.translate("U", "程序官网")) h1 = help.addMenu(QtCore.QCoreApplication.translate("U", "程序官网"))
h2 = QtWidgets.QAction(QtCore.QCoreApplication.translate("U", "小提示")) h2 = QtWidgets.QAction(QtCore.QCoreApplication.translate("U", "小提示"))
wineRunnerHelp = QtWidgets.QAction(QtCore.QCoreApplication.translate("U", "Wine运行器和Wine打包器傻瓜式使用教程小白专用 By 鹤舞白沙"))
h3 = QtWidgets.QAction(QtCore.QCoreApplication.translate("U", "更新内容")) h3 = QtWidgets.QAction(QtCore.QCoreApplication.translate("U", "更新内容"))
h4 = QtWidgets.QAction(QtCore.QCoreApplication.translate("U", "谢明名单")) h4 = QtWidgets.QAction(QtCore.QCoreApplication.translate("U", "谢明名单"))
h5 = QtWidgets.QAction(QtCore.QCoreApplication.translate("U", "更新这个程序")) h5 = QtWidgets.QAction(QtCore.QCoreApplication.translate("U", "更新这个程序"))
@@ -2712,6 +2703,7 @@ h1.addAction(gitlab)
h1.addAction(jihu) h1.addAction(jihu)
help.addSeparator() help.addSeparator()
help.addAction(forumWebsize) help.addAction(forumWebsize)
help.addAction(wineRunnerHelp)
help.addAction(runStatusWebSize) help.addAction(runStatusWebSize)
help.addSeparator() help.addSeparator()
help.addAction(h2) help.addAction(h2)
@@ -2744,6 +2736,7 @@ runStatusWebSize.triggered.connect(lambda: webbrowser.open_new_tab("https://gfdg
forumWebsize.triggered.connect(lambda: webbrowser.open_new_tab("https://gfdgdxi.flarum.cloud/")) forumWebsize.triggered.connect(lambda: webbrowser.open_new_tab("https://gfdgdxi.flarum.cloud/"))
h2.triggered.connect(helps) h2.triggered.connect(helps)
h3.triggered.connect(UpdateThings) h3.triggered.connect(UpdateThings)
wineRunnerHelp.triggered.connect(lambda: webbrowser.open_new_tab("https://bbs.deepin.org/post/246837"))
h4.triggered.connect(ThankWindow) h4.triggered.connect(ThankWindow)
wikiHelp.triggered.connect(lambda: webbrowser.open_new_tab("https://gfdgd-xi.github.io/wine-runner-wiki")) wikiHelp.triggered.connect(lambda: webbrowser.open_new_tab("https://gfdgd-xi.github.io/wine-runner-wiki"))
easyHelp.triggered.connect(lambda: webbrowser.open_new_tab("https://www.bilibili.com/video/BV1ma411972Y")) easyHelp.triggered.connect(lambda: webbrowser.open_new_tab("https://www.bilibili.com/video/BV1ma411972Y"))