KDE桌面切换到deepin-wine后无法启动
HE7086 opened this issue · comments
system: Manjaro KDE
kernel: 5.2.11-1
wine --version: wine-4.15
deepin-wine --version: wine-2.18
全新安装后参照readme中的方法切换到deepin-wine后程序无法启动
在terminal下运行sh "/opt/deepinwine/apps/Deepin-WeChat/run.sh" -u %u
或env WINEPREFIX="$HOME/.deepinwine/Deepin-WeChat" sh "/opt/deepinwine/apps/Deepin-WeChat/run.sh" -u %u
输出为
X Error of failed request: BadWindow (invalid Window parameter)
Major opcode of failed request: 20 (X_GetProperty)
Resource id in failed request: 0x0
Serial number of failed request: 10
Current serial number in output stream: 10
删除~/.deepinwine
后运行env WINEPREFIX="$HOME/.deepinwine/Deepin-WeChat" sh "/opt/deepinwine/apps/Deepin-WeChat/run.sh" -u %u
7-Zip [64] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21
p7zip Version 16.02 (locale=en_US.UTF-8,Utf16=on,HugeFiles=on,64 bits,4 CPUs Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz (806E9),ASM)
Scanning the drive for archives:
1 file, 3827860 bytes (3739 KiB)
Extracting archive: /opt/deepinwine/apps/Deepin-WeChat/files.7z
--
Path = /opt/deepinwine/apps/Deepin-WeChat/files.7z
Type = 7z
Physical Size = 3827860
Headers Size = 8640
Method = LZMA2:24 BCJ
Solid = +
Blocks = 2
Everything is Ok
Folders: 111
Files: 919
Size: 27643420
Compressed: 3827860
X Error of failed request: BadWindow (invalid Window parameter)
Major opcode of failed request: 20 (X_GetProperty)
Resource id in failed request: 0x0
Serial number of failed request: 10
Current serial number in output stream: 10
运行ps aux | grep -i wechat
发现没有任何程序启动
用原本的wine运行是没有问题的,只是边框无法隐藏的问题没法解决
@countstarlight
直接运行脚本或应用菜单的启动项只会有在任务栏有一个图标一闪而过,检查后发现并没有相关进程启动
我的切换为deepin-wine也不能启动了
解决了
deepin-wine依赖了gnome-settings-daemon
直接从pacman安装即可
安装后需要再在run.sh内添加一行使其在运行微信时后台工作
切换到deepin-wine后不仅解决了边框的残留问题,截图功能也可以正常使用了
具体做法:
- 安装依赖
sudo pacman -S gnome-settings-daemon
- 修改
/opt/deepinwine/apps/Deepin-WeChat/run.sh
在开头插入一行/usr/lib/gsd-xsettings &
(不确定是否需要nohup) - 删除原先的微信目录
rm -rf ~/.deepinwine/Deepin-WeChat
- 运行run.sh或直接运行启动项
@HE7086
前天突然打开不了了,偶尔能打开,找到这个issue,安装了gnome-settings-daemon,但是运行提示错误
$ /usr/lib/gsd-xsettings
(gsd-xsettings:4877): xsettings-plugin-WARNING **: 10:13:05.550: You can only run one xsettings manager at a time; exiting
Failed to start: Could not initialize xsettings manager.
系统环境是manjaro+deepin
@feileb
刚刚在虚拟机下试了一下 deepin桌面环境不需要安装gsd就可以正常运行的
不论是原本的wine还是改用deepin-wine都没啥问题
看你的错误提示应该是重复运行了gsd-xsettings,这个依赖是kde,i3wm之类的非gnome系的de才需要的,别的环境装上可能会有问题
要避免其反复运行的话可以把启动的脚本改为
if [[ -z $(ps -e | grep -o gsd-xsettings) ]]
then
/usr/lib/gsd-xsettings &
fi
或者直接随系统启动
还不行的话最好还是卸载干净全部重新安装一遍,记得把~/.deepinwine
也删掉
更新:如果上面的启动命令不加 &
可能会导致run.sh在后台挂起等待gsd-xsettings进程结束。具体表现则是需要打开两遍才能显示微信窗口。同时这条指令也可能会影响到run.sh的其他功能,建议加到大概在75行位置的RunApp()
的函数内再运行。
@HE7086
之前删除.deepinwine/Deepin-WeChat试了好多次,每次都可以出现安装界面,但是不一定能出登录界面
今天回公司突然又正常了,试了几次都能正常启动,后面如果再出问题看看规律再来更新
- 用原本的wine运行是没有问题的,只是边框无法隐藏的问题没法解决。
- 修改为deepin-wine(已安装)后,直接运行应用菜单的启动项只会有在任务栏有一个图标一闪而过,检查后发现并没有相关进程启动
- 桌面环境:kde
- 已安装gnome-settings-daemon,并将/usr/lib/gsd-xsettings设为开机自启;
修改/opt/deepinwine/apps/Deepin-WeChat/run.sh 在开头插入一行/usr/lib/gsd-xsettings &
试过了也不行,每次操作前也都rm -rf ~/.deepinwine/Deepin-WeChat
了的
(PS:deepinwine.com.qq.im的run.sh里面也是使用的deepin-wine是正常的)
解决了
deepin-wine依赖了gnome-settings-daemon
直接从pacman安装即可
安装后需要再在run.sh内添加一行使其在运行微信时后台工作
切换到deepin-wine后不仅解决了边框的残留问题,截图功能也可以正常使用了具体做法:
- 安装依赖
sudo pacman -S gnome-settings-daemon
- 修改
/opt/deepinwine/apps/Deepin-WeChat/run.sh
在开头插入一行/usr/lib/gsd-xsettings &
(不确定是否需要nohup)- 删除原先的微信目录
rm -rf ~/.deepinwine/Deepin-WeChat
- 运行run.sh或直接运行启动项
@HE7086 可以问下是怎么解决的吗?:)
if [[ -z $(ps -e | grep -o gsd-xsettings) ]]
then
/usr/lib/gsd-xsettings &
fi
也试过了还是不行
run.sh内容如下
usr/lib/gsd-xsettings &
#!/bin/sh
# Copyright (C) 2016 Deepin, Inc.
#
# Author: Li LongYu <lilongyu@linuxdeepin.com>
# Peng Hao <penghao@linuxdeepin.com>
WINEPREFIX="$HOME/.deepinwine/Deepin-WeChat"
APPDIR="/opt/deepinwine/apps/Deepin-WeChat"
APPVER="2.6.2.31deepin0"
WECHAT_INSTALLER="WeChatSetup"
APPTAR="files.7z"
PACKAGENAME="com.wechat"
WINE_CMD="wine"
HelpApp()
...
第一次如下,后面两条单独执行usr/lib/gsd-xsettings也会有
➜ ./run.sh
➜ Deepin-WeChat wine: cannot find 'c:\Program Files\Tencent\WeChat\WeChat.exe'
(gsd-xsettings:20585): xsettings-plugin-WARNING **: 09:51:38.929: Failed to get current display configuration state: GDBus.Error:org.freedesktop.DBus.Error.NameHasNoOwner: Name "org.gnome.Mutter.DisplayConfig" does not exist
(gsd-xsettings:20585): xsettings-plugin-WARNING **: 09:51:38.934: Unable to register client: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.gnome.SessionManager was not provided by any .service files
第二次执行,如下,应该是gsd多开导致的
➜ Deepin-WeChat ./run.sh
➜ Deepin-WeChat wine: cannot find 'c:\Program Files\Tencent\WeChat\WeChat.exe'
(gsd-xsettings:20647): xsettings-plugin-WARNING **: 09:52:08.048: You can only run one xsettings manager at a time; exiting
Failed to start: Could not initialize xsettings manager.
目前我的配置如下
#!/bin/sh
...
WINE_CMD="deepin-wine"
...
RunApp()
{
if [[ -z "$(ps -e | grep -o gsd-xsettings)" ]]
then
/usr/lib/gsd-xsettings &
fi
...
按照你的配置一样尝试过后发现也是可以正常运行的
清除安装目录重新运行时会得到与你第一次执行同样的报错,但是可以运行
这应该是正常的,由于只安装了设置而没有DE导致,并不影响使用
同时收到:
wine: cannot find L"C:\\windows\\system32\\winemenubuilder.exe"
wine version: 2.18
Could not load wine-gecko. HTML rendering will be disabled.
wine: configuration in '/home/he/.deepinwine/Deepin-WeChat' has been updated.
Wine cannot find the ncurses library (libncurses.so.5).
wine: cannot find L"C:\\windows\\system32\\winemenubuilder.exe"
wine: cannot find L"C:\\windows\\system32\\winemenubuilder.exe"
wine: cannot find L"C:\\windows\\system32\\winemenubuilder.exe"
wine: cannot find L"C:\\windows\\system32\\winemenubuilder.exe"
感觉可能不是同一个问题 先改下脚本 或许重新安装试试
- @HE7086 谢谢,今天重装后已成功解决,只修改wine为deepin-wine即可
- 奇怪昨天也重装了n篇deepin-wine都还是不行
- 以及应该不是gsd的问题
➜ ~ ps -e | grep -o gsd-xsettings
发现没有gsd也能正常使用
@Kyle-Ye 我跟你遇到的问题一样,上面提到的办法都试过了,还没有解决,请问你说的重新安装是指的什么?是删掉.deepinwine重新走一边微信安装流程还是-Rsn掉,重新安装deep-wine-wechat配置run.sh?谢
@debugbb
我是昨天开始run中wine也打开不了微信,于是操作
- 使用yay deepin-wine-weChat重新安装
- 然后直接运行发现可以wine进入有bug的微信安装,于是退出安装
- 修改run.sh为deepin-wine, 然后删除缓存rm -rf ~/.deepinwine/Deepin-WeChat
- 然后运行wechat,安装界面还是有边框,安装成功后运行就一切正常了。
建议使用上述方法时,先确保安装sudo pacman -S gnome-settings-daemon
解决了,总算搞定了,因为我安装的时候,更换了安装路径
如果更换了安装路径,请复制一下安装界面中识别出来的路径,然后一定记着去run.sh中把以下更换成更换后的路径(大约在32行):
env WINEPREFIX="$WINEPREFIX" WINEDEBUG=-msvcrt $WINE_CMD "Z:\home\xxx\apps\wechat\WeChat.exe" &
切换到最新版本deepin-wine,无法打开,各位有碰到吗?
sh输出fixme:wlanapi:WlanGetAvailableNetworkList (0x1, {00000000-0000-0000-0000-000000000000}, 0x1, (nil), 0x8ede920) stub
就不动了。有遇到的么?
解决了,总算搞定了,因为我安装的时候,更换了安装路径
如果更换了安装路径,请复制一下安装界面中识别出来的路径,然后一定记着去run.sh中把以下更换成更换后的路径(大约在32行):
env WINEPREFIX="$WINEPREFIX" WINEDEBUG=-msvcrt $WINE_CMD "Z:\home\xxx\apps\wechat\WeChat.exe" &
对的,我也是这样解决的,具体位置对应 /opt/deepinwine/apps/Deepin-WeChat/run.sh 中的 CallApp() 函数内的地方