mirror of
				https://gitee.com/gfdgd-xi/deep-wine-runner
				synced 2025-11-04 15:32:23 +08:00 
			
		
		
		
	修复安全问题
This commit is contained in:
		
							parent
							
								
									7138c6fbb9
								
							
						
					
					
						commit
						676d52c964
					
				@ -71,7 +71,7 @@ jobs:
 | 
			
		||||
          cd ..
 | 
			
		||||
          xz -T $cpu spark-deepin-wine-runner-off-line.tar
 | 
			
		||||
      - name: upload result
 | 
			
		||||
        uses: actions/upload-artifact@v1
 | 
			
		||||
        uses: actions/upload-artifact@v3
 | 
			
		||||
        with:
 | 
			
		||||
          name: spark-deepin-wine-runner-off-line.tar.xz
 | 
			
		||||
          path: /home/runner/spark-deepin-wine-runner-off-line.tar.xz
 | 
			
		||||
 | 
			
		||||
@ -13,8 +13,8 @@ programPath = os.path.split(os.path.realpath(__file__))[0]  # 返回 string
 | 
			
		||||
# 优先为深度终端
 | 
			
		||||
terminal = ""
 | 
			
		||||
terminalList = [
 | 
			
		||||
    "deepin-terminal",
 | 
			
		||||
    "gxde-terminal",
 | 
			
		||||
    "deepin-terminal",
 | 
			
		||||
    "mate-terminal",
 | 
			
		||||
    "gnome-terminal",
 | 
			
		||||
    "xfce4-terminal"
 | 
			
		||||
 | 
			
		||||
@ -19,12 +19,14 @@ python3 -m pip install --upgrade xpinyin --trusted-host https://repo.huaweicloud
 | 
			
		||||
python3 -m pip install --upgrade pynput --trusted-host https://repo.huaweicloud.com -i https://repo.huaweicloud.com/repository/pypi/simple > /dev/null 2>&1 | true
 | 
			
		||||
python3 -m pip install --upgrade xpinyin --trusted-host https://repo.huaweicloud.com -i https://repo.huaweicloud.com/repository/pypi/simple > /dev/null 2>&1 | true
 | 
			
		||||
# 修改 box86/64 国内源错误数据
 | 
			
		||||
if [ -f /etc/apt/sources.list.d/box64.list ]; then
 | 
			
		||||
	sed -i 's/http:\/\/seafile.jyx2048.com:2345/http:\/\/gfdgdxi.v5.idcfengye.com/g' /etc/apt/sources.list.d/box64.list
 | 
			
		||||
fi
 | 
			
		||||
if [ -f /etc/apt/sources.list.d/box86.list ]; then
 | 
			
		||||
	sed -i 's/http:\/\/seafile.jyx2048.com:2345/http:\/\/gfdgdxi.v5.idcfengye.com/g' /etc/apt/sources.list.d/box86.list
 | 
			
		||||
fi
 | 
			
		||||
sudo rm /etc/apt/sources.list.d/box64.list -rfv
 | 
			
		||||
sudo rm /etc/apt/sources.list.d/box86.list -rfv
 | 
			
		||||
#if [ -f /etc/apt/sources.list.d/box64.list ]; then
 | 
			
		||||
#	sed -i 's/http:\/\/seafile.jyx2048.com:2345/http:\/\/gfdgdxi.v5.idcfengye.com/g' /etc/apt/sources.list.d/box64.list
 | 
			
		||||
#fi
 | 
			
		||||
#if [ -f /etc/apt/sources.list.d/box86.list ]; then
 | 
			
		||||
#	sed -i 's/http:\/\/seafile.jyx2048.com:2345/http:\/\/gfdgdxi.v5.idcfengye.com/g' /etc/apt/sources.list.d/box86.list
 | 
			
		||||
#fi
 | 
			
		||||
echo 执行完成
 | 
			
		||||
echo 移除旧组件
 | 
			
		||||
if [ -d /opt/apps/deepin-wine-runner/arm-package ]; then
 | 
			
		||||
@ -60,6 +62,6 @@ if [[ `arch` != "x86_64" ]]; then
 | 
			
		||||
	rm -rf /opt/apps/deepin-wine-runner/InstallNewWineHQ.sh
 | 
			
		||||
fi
 | 
			
		||||
# 设置目录权限,让用户可读可写,方便后续删除组件
 | 
			
		||||
chmod 777 -R /opt/apps/deepin-wine-runner > /dev/null 2>&1 | true
 | 
			
		||||
#chmod 777 -R /opt/apps/deepin-wine-runner > /dev/null 2>&1 | true
 | 
			
		||||
# 向服务器返回安装数加1(不显示内容且忽略错误)
 | 
			
		||||
python3 /opt/apps/deepin-wine-runner/Download.py $version > /dev/null 2>&1 | true
 | 
			
		||||
 | 
			
		||||
@ -1356,6 +1356,15 @@ try:
 | 
			
		||||
            wine[f"{programPath}/wine/{i}"] = f"{programPath}/wine/{i}"
 | 
			
		||||
except:
 | 
			
		||||
    pass
 | 
			
		||||
try:
 | 
			
		||||
    for i in json.loads(readtxt(f"{get_home()}/.deepwinerunner/wine/winelist.json")):
 | 
			
		||||
        if os.path.exists(f"{get_home()}/.deepwinerunner/wine/{i}.7z"):
 | 
			
		||||
            wine[f"{get_home()}/.deepwinerunner/wine/{i}.7z"] = f"{get_home()}/.deepwinerunner/wine/{i}.7z"
 | 
			
		||||
            continue
 | 
			
		||||
        if os.path.exists(f"{get_home()}/.deepwinerunner/wine/{i}"):
 | 
			
		||||
            wine[f"{get_home()}/.deepwinerunner/wine/{i}"] = f"{get_home()}/.deepwinerunner/wine/{i}"
 | 
			
		||||
except:
 | 
			
		||||
    pass
 | 
			
		||||
os.chdir("/")
 | 
			
		||||
iconUiList = []
 | 
			
		||||
helperConfigPath = None
 | 
			
		||||
 | 
			
		||||
@ -2162,6 +2162,20 @@ def TransLog():
 | 
			
		||||
# 加载配置
 | 
			
		||||
###########################
 | 
			
		||||
 | 
			
		||||
if not os.path.exists(get_home() + "/.deepwinerunner/wine/"):  # 如果没有配置文件夹
 | 
			
		||||
    os.makedirs(get_home() + "/.deepwinerunner/wine/")  # 创建配置文件夹
 | 
			
		||||
try:
 | 
			
		||||
    shutil.copy(f"{programPath}/wine/installwine.py", get_home() + "/.deepwinerunner/wine/installwine.py")
 | 
			
		||||
    shutil.copy(f"{programPath}/globalenv.py", get_home() + "/.deepwinerunner/globalenv.py")
 | 
			
		||||
    shutil.copy(f"{programPath}/launch.sh", get_home() + "/.deepwinerunner/launch.sh")
 | 
			
		||||
    if os.path.exists(get_home() + "/.deepwinerunner/Model"):
 | 
			
		||||
        shutil.rmtree(get_home() + "/.deepwinerunner/Model")
 | 
			
		||||
    shutil.copytree(f"{programPath}/Model", get_home() + "/.deepwinerunner/Model")
 | 
			
		||||
    os.system(f"chmod 777 -Rv '{get_home()}/.deepwinerunner/launch.sh'")
 | 
			
		||||
except:
 | 
			
		||||
    traceback.print_exc()
 | 
			
		||||
    exit()
 | 
			
		||||
 | 
			
		||||
if not os.path.exists(get_home() + "/.config/"):  # 如果没有配置文件夹
 | 
			
		||||
    os.mkdir(get_home() + "/.config/")  # 创建配置文件夹
 | 
			
		||||
if not os.path.exists(get_home() + "/.config/deepin-wine-runner"):  # 如果没有配置文件夹
 | 
			
		||||
@ -2304,9 +2318,10 @@ def CheckWine():
 | 
			
		||||
                traceback.print_exc()    
 | 
			
		||||
 | 
			
		||||
            # 不再从列表读取,直接读目录
 | 
			
		||||
            for i in os.listdir(f"{programPath}/wine/"):
 | 
			
		||||
            for i in os.listdir(f"{programPath}/wine/") + os.listdir(f"{get_home()}/.deepwinerunner/wine/"):
 | 
			
		||||
            #for i in json.loads(readtxt(f"{programPath}/wine/winelist.json")):
 | 
			
		||||
                if os.path.exists(f"{programPath}/wine/{i}") and os.path.isdir(f"{programPath}/wine/{i}"):
 | 
			
		||||
                if ((os.path.exists(f"{programPath}/wine/{i}") and os.path.isdir(f"{programPath}/wine/{i}")) or
 | 
			
		||||
                    (os.path.exists(f"{get_home()}/.deepwinerunner/wine/{i}") and os.path.isdir(f"{get_home()}/.deepwinerunner/wine/{i}"))):
 | 
			
		||||
                    name = ""
 | 
			
		||||
                    qemuInstall = False
 | 
			
		||||
                    nameValue = [["", ""]]
 | 
			
		||||
@ -2394,6 +2409,10 @@ def CheckWine():
 | 
			
		||||
                                wine[f"{k[0]}{chrootProgramPath}/wine/{i}/bin/{j}"] = f"{k[1]}{chrootProgramPath}/wine/{i}/bin/{j}"
 | 
			
		||||
                                canUseWine.append(f"{k[0]}{chrootProgramPath}/wine/{i}/bin/{j}")
 | 
			
		||||
                                untipsWine.append(f"{k[0]}{chrootProgramPath}/wine/{i}/bin/{j}")
 | 
			
		||||
                            if os.path.exists(f"{get_home()}/.deepwinerunner/wine/{i}/bin/{j}"):        
 | 
			
		||||
                                wine[f"{k[0]}{get_home()}/.deepwinerunner/wine/{i}/bin/{j}"] = f"{k[1]}{get_home()}/.deepwinerunner/wine/{i}/bin/{j}"
 | 
			
		||||
                                canUseWine.append(f"{k[0]}{get_home()}/.deepwinerunner/wine/{i}/bin/{j}")
 | 
			
		||||
                                untipsWine.append(f"{k[0]}{get_home()}/.deepwinerunner/wine/{i}/bin/{j}")
 | 
			
		||||
            
 | 
			
		||||
        except:
 | 
			
		||||
            traceback.print_exc()
 | 
			
		||||
@ -2836,7 +2855,7 @@ installWineHQ.triggered.connect(InstallWineHQ)
 | 
			
		||||
installWineHQOrg.triggered.connect(lambda: threading.Thread(target=OpenTerminal, args=[f"{programPath}/InstallNewWineHQOrg.sh"]).start())
 | 
			
		||||
installLat.triggered.connect(lambda: threading.Thread(target=OpenTerminal, args=[f"{programPath}/InstallLat.sh"]).start())
 | 
			
		||||
def InstallMoreWine():
 | 
			
		||||
    os.system(f"'{programPath}/wine/installwine'")
 | 
			
		||||
    os.system(get_home() + "/.deepwinerunner/wine/installwine.py")
 | 
			
		||||
    # 更新 Wine 列表
 | 
			
		||||
    CheckWine()
 | 
			
		||||
    o1.clear()
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user