Compare commits

...

4 Commits

Author SHA1 Message Date
30d4986214 调整系统判断机制
Some checks are pending
Auto Building Wine Runner(rpm) / Explore-GitHub-Actions (push) Waiting to run
Auto Building Wine Runner(deb) / Explore-GitHub-Actions (push) Waiting to run
2024-07-19 22:59:46 +08:00
11ad6f3766 新增Wine tag 取反逻辑(!) 2024-07-19 22:54:12 +08:00
046fe2c103 修复AOSC loong64 因为 pyperclip 问题导致无法正常打开运行器的问题 2024-07-19 22:16:55 +08:00
b672fd93e6 修复打包器选择Wine封装入deb模式时helper只能使用spark dwine helper的问题 2024-07-19 21:59:46 +08:00
3 changed files with 52 additions and 15 deletions

View File

@ -1419,6 +1419,13 @@ export WINEDLLPATH=/opt/$APPRUN_CMD/lib:/opt/$APPRUN_CMD/lib64
export WINEPREDLL="$ARCHIVE_FILE_DIR/dlls"
##### 软件在wine中的启动路径
if [ -e "/opt/deepinwine/tools/spark_run_v4.sh"] ;then
START_SHELL_PATH="/opt/deepinwine/tools/spark_run_v4.sh"
else
START_SHELL_PATH="/opt/deepinwine/tools/run_v4.sh"
fi
if [ -n "$PATCH_LOADER_ENV" ] && [ -n "$EXEC_PATH" ];then
export $PATCH_LOADER_ENV
fi

View File

@ -19,7 +19,11 @@ import base64
import shutil
import hashlib
import platform
import pyperclip
try:
import pyperclip
except:
os.system("python3 -m pip install --upgrade pyperclip --trusted-host https://repo.huaweicloud.com -i https://repo.huaweicloud.com/repository/pypi/simple --break-system-packages")
import pyperclip
import threading
import traceback
import webbrowser
@ -3303,7 +3307,7 @@ for i in [
for x in i[0]:
x.setDisabled(True)
# 有些功能是 Arch Linux 不适用的,需要屏蔽
if os.path.exists("/etc/arch-release") or os.path.exists("/etc/fedora-release"):
if not os.path.exists("/etc/debian_version"):
if os.path.exists(f"{programPath}/off-line.lock"):
for i in [p1]:
i.setDisabled(True)

View File

@ -201,6 +201,13 @@ class GetInfo():
isQemuUseri386Runtime = os.path.exists("/usr/lib/i386-linux-gnu/ld-linux.so.2")
isQemuUseramd64Runtime = os.path.exists("/usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2")
isQemuUser = not os.system("which qemu-i386-static > /dev/null") >> 8 and (not "amd64" in arch) and (not "i386" in arch)
pageSize = subprocess.getoutput("getconf PAGESIZE").replace(" ", "").replace("\n", "")
is4kPageSize = (pageSize == "4096")
is8kPageSize = (pageSize == "8096")
is16kPageSize = (pageSize == "16192")
is32kPageSize = (pageSize == "32384")
is64kPageSize = (pageSize == "64768")
isLoongarch = (arch == "loong64") or (arch == "loongarch64")
glibcVersion = "2.28"
def __init__(self):
@ -271,31 +278,50 @@ class GetInfo():
return 0
def checkTag(self, data: str):
result = False
no = False
if (len(data) > 0 and data[0] == "!"):
no = True
data = data[1:]
if (data == self.arch):
return True
result = True
if (data == "binfmt" and self.isBinfmt):
return True
result = True
if (data == "box86" and self.isBox86):
return True
result = True
if (data == "box64" and self.isBox64):
return True
result = True
if (data == "lat" and self.isLat):
return True
result = True
if (data == "lat-i386" and self.isLati386Runtime):
return True
result = True
if (data == "lat-x86_64" and self.isLatamd64Runtime):
return True
result = True
if (data == "qemu-user" and self.isQemuUser):
return True
result = True
if (data == "qemu-user-i386" and self.isQemuUseri386Runtime):
return True
result = True
if (data == "qemu-user-amd64" and self.isQemuUseramd64Runtime):
return True
result = True
if (data == "kernel-4k-pagesize" and self.is4kPageSize):
result = True
if (data == "loong64-kernel-4k-pagesize" and self.isLoongarch and self.is4kPageSize):
result = True
if (data == "loong64-kernel-8k-pagesize" and self.isLoongarch and self.is8kPageSize):
result = True
if (data == "loong64-kernel-16k-pagesize" and self.isLoongarch and self.is16kPageSize):
result = True
if (data == "loong64-kernel-32k-pagesize" and self.isLoongarch and self.is32kPageSize):
result = True
if (data == "loong64-kernel-64k-pagesize" and self.isLoongarch and self.is64kPageSize):
result = True
if (self.compareVersion(self.glibcVersion, data) == 1):
return True
result = True
if (os.path.exists(data)):
return True
return False
result = True
if (no):
result = not result
return result
def checkList(self, data:list):
succeed = 0