惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

宝玉的分享
宝玉的分享
L
LINUX DO - 最新话题
Stack Overflow Blog
Stack Overflow Blog
月光博客
月光博客
雷峰网
雷峰网
Apple Machine Learning Research
Apple Machine Learning Research
V
Visual Studio Blog
Attack and Defense Labs
Attack and Defense Labs
O
OpenAI News
The GitHub Blog
The GitHub Blog
A
About on SuperTechFans
B
Blog RSS Feed
H
Help Net Security
量子位
小众软件
小众软件
SecWiki News
SecWiki News
N
Netflix TechBlog - Medium
TaoSecurity Blog
TaoSecurity Blog
美团技术团队
博客园 - 司徒正美
Hacker News - Newest:
Hacker News - Newest: "LLM"
Recent Commits to openclaw:main
Recent Commits to openclaw:main
The Cloudflare Blog
N
News and Events Feed by Topic
C
Cybersecurity and Infrastructure Security Agency CISA
The Last Watchdog
The Last Watchdog
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
Scott Helme
Scott Helme
T
The Exploit Database - CXSecurity.com
K
Kaspersky official blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
T
Threat Research - Cisco Blogs
C
CERT Recently Published Vulnerability Notes
Application and Cybersecurity Blog
Application and Cybersecurity Blog
U
Unit 42
Google DeepMind News
Google DeepMind News
J
Java Code Geeks
Schneier on Security
Schneier on Security
G
Google Developers Blog
Forbes - Security
Forbes - Security
C
CXSECURITY Database RSS Feed - CXSecurity.com
Y
Y Combinator Blog
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
P
Palo Alto Networks Blog
A
Arctic Wolf
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
The Hacker News
The Hacker News
B
Blog
D
DataBreaches.Net
Simon Willison's Weblog
Simon Willison's Weblog

陈陈菌博客

如何在 podman 容器内使用 systemd 在 podman 运行 GUI 应用的经验总结 管理 podman 容器与镜像的导入或导出 用 xdg-dbus-proxy 解决容器的文件选择器的问题 解决 VSCodium 或 Code-Server 无法安装 GitHub Copilot 问题 不可变发行版 Fedora Silverblue 的体验记录 解决 apt 或 dnf 无法 tab 补全的问题 对 (MPA) 多页面切换实现丝滑动画的探索 让服务在非 Root 权限下使用 80 或 443 端口 AppImage 应用打包快速上手 Flatpak 使用和应用打包快速上手 如何用 webSocket 实现一个实时聊天应用 Linux 内核编译 | 快速上手 | deb 使用 debootstrap 构建 Debian 系根文件系统 高度可定制的 KDE 窗口装饰器 klassy 有关 docker、podman、nspawn、bwrap 的 Linux 容器图形性能测试 创建任意 Linux 容器并支持 GUI 程序 (Docker) 创建任意 Linux 容器并支持 GUI 程序 (nspawn) 文件同步工具 rsync 的使用 玲珑 (Linyaps) 应用打包 RPM 打包指南 | 精简版 PBR 材质的各种贴图类型入门 APU | Stable-Diffusion 使用记录 如何在 Electron 上启用 WebGPU Grub 主题安装与配置 Fcitx5 主题安装与自定义 不使用 Nginx 的网站开发指南 如何自制一个简易的资源监控程序 SQL 常用 CRUD 语法记录 Debian 打包入门,与需要注意的问题 在 fedora 建立一个 Arch 容器 (bwrap) 在 fedora 上建立一个 debian 容器 (bwrap) i3wm | 自制一个极简的屏幕亮度调节器 在 Linux 下启用内存压缩技术 zram 搭建一个本地轻量级聊天 Ai 我又又又重新上线了博客 Btrfs 文件系统创建 swap 文件的方法 如何创建适用于 Linux 桌面的程序启动文件 在 Linux 控制 intel CPU 调度的方法 Arch Linux 的基本安装
如何通过命令行管理 wine 容器 (包括 proton)
GlumiStudio@ · 2023-05-16 · via 陈陈菌博客

在使用 wine 时的一些技巧。

2023-05-16 07:13:08

分类: Linux 标签: wine


在我们通过 wine [程序.exe] 都会建立一个单独的数据容器,默认情况下会自动创建一个 ~/.wine 目录。

可以通过以下命令行管理该容器:

WINEPREFIX=/home/user/.wine/ winetricks

而如果直接执行 winetricks 也会默认从这个路径上找。只要不自己修改或添加新容器,一般情况下 wine 都会使用这同一个容器。

什么是 proton

如果你在 Linux 上玩游戏,你一定对于 Steam 的 SteamPlay 技术有了解,它的核心技术 proton 是基于 wine 开发的(wine 的 fork 版本),因为预装了很多环境,开箱即用能更好的兼容游戏场景。如果你想使用它则需要从库中点击 "添加游戏"-> 选择 "添加非Steam游戏" 即可。

不过它会为每一个添加的应用/游戏新建一个单独新的容器。此时如果你遇到一个这样的场景,应用A需要应用B的数据,此时就比较头疼。

所以,话说为什么我们不直接调用 proton 选固定的数据容器呢?

关于 proton 的启动

一般情况下,是直接使用 Steam 来启动,但除此之外,还有几种方式。

一种是安装了 protontricks 然后通过终端使用 protontricks-launch [**.exe] 来启动 (一般会附带) 或者通过 protontricks 打开 文件管理 软件,然后再点开 .exe 程序也是可以的。

另一种是不借助这些第三方软件,直接在终端使用命令行:

STEAM_COMPAT_CLIENT_INSTALL_PATH=[steam安装位置] \
STEAM_COMPAT_DATA_PATH=[容器路径]  \
[proton程序路径]  run [要执行的exe路径]

其中的 [内容] 为:

说明路径
steam安装路径~/.steam/steam/
容器路径~/.steam/steam/steamapps/compatdata/BoxId
proton程序路径~/.steam/steam/steamapps/common/Proton\ -\ Experimental/proton

如果觉得每次手动指定变量来启动比较麻烦,动手能力强的话你也可以写个快捷脚本。

如何启动 CMD

如果需要用到 wine 的命令行

STEAM_COMPAT_CLIENT_INSTALL_PATH=[steam安装位置] \
STEAM_COMPAT_DATA_PATH=[容器路径]  \
[proton程序路径]  cmd

关于显示窗口太小问题

可以这样去调用 winecfg 去调整 DPi:

STEAM_COMPAT_CLIENT_INSTALL_PATH=[steam安装位置] \
STEAM_COMPAT_DATA_PATH=[容器路径]  \
[proton程序路径]  winecfg

找到 显示 -> 屏幕分辨率 调大即可: