hyprlanad下安装winapps
流程
- 安装依赖包,配置网络环境
- 安装virt-manager,创建虚拟机,虚拟机内执行脚本
- 关闭virt-manager,通过
virsh start RDPWindows启动虚拟机 - 安装 xfreerdp3,通过 rdp 连接虚拟机(用rdp+全屏(-f参数)的效果已经很不错了)
- 执行winapps脚本,在linux创建windows运行程序的快捷方式。
- end
效果图1:xfreerdp3 连接,指定宽高:
效果图2:winapps执行后,在linux打开windows应用(缺点:动态拖拽改变窗口大小时,响应不是特别及时,会有黑影): 
下载并创建虚拟机
参考:https://github.com/winapps-org/winapps/blob/main/docs/libvirt.md
设置执行winapps脚本
xfreerpd3测试连接成功后,配置~/.config/winapps/winapps.conf文件(用户、密码、rdp命令,ip等)
参考:https://github.com/winapps-org/winapps
常用命令
systemctl restart libvirtd
virsh start RDPWindows #启动虚拟机
virsh shutdown RDPWindows #关闭虚拟机
virsh net-dhcp-leases default #查看虚拟机的 IP 地址
# 仓库目录下执行脚本添加快捷方式
./setup.sh --user
winapps manual "C:\my\directory\executableNotInPath.exe"
winapps manual executableInPath.exe
./setup.sh --user --uninstall
问题
- xfreerdp3连接缓慢参考:
方法1:编辑 /etc/krb5.conf ,在指定节点加上对应条目原理是让 kerberos 迅速失败(推荐,一了百了)
[libdefaults]
rdns = false
dns_lookup_kdc = 0
方法2:使用 xfreerdp3 启动时添加启动参数/auth-pkg-list:\!kerberos(原理是直接取消 freerdp 使用 kerberos 验证
xfreerdp3 /u:用户名 /p:密码 /v:连接ip /cert:tofu /auth-pkg-list:\!kerberos
其它可选参数:
- -f: 全屏
- /scale-desktop:125 放大1.25倍
- +clipboard 启用复制粘贴
2,附录:图形优化
如果部分软件不能在 Microsoft 基本显示适配器中运行,可以使用 Mesa 3D 的 llvmpipe 渲染器进行渲染。
可以在 这里 下载 Mesa 3D For Windows。
如果只需要顶替 OpenGL 渲染器,在 exe 位置放入 opengl32.dll 即可。
如果还需要顶替 Direct3D 渲染器,则还需要下载 WineD3D For Windows,并按照压缩包 README 内的说法放置 dll(opengl32.dll 也要放进去)。

浙公网安备 33010602011771号