Wine 是一款广受欢迎的开源兼容性层,可以轻松地 在 Linux 上运行 Windows 应用,而这在几年前还非常困难。
即使 Vaas 也认可,Wine 的出现,以一种深具影响力的方式推动了 Linux 的发展。
去年,我们关注到 Wine 8.0 版,它的目标是沿袭所有 7.x 系列的改变。但现在是 2024 年了,我们又迎来了 Wine 的一次新版本发布。
🆕 Wine 9.0:有哪些新鲜出炉的内容?
这次 Wine 的新版本带来了一个试验性的 Wayland 图形驱动,引入了高 DPI 缩放、多显示器支持,基本的窗口管理等功能。
然而,这并不是完整的实施,也因此默认是禁用的。你可以通过运行以下命令来启用它:
wine reg.exe add HKCU\\Software\\Wine\\Drivers /v Graphics /d x11,wayland
这并不让人感到惊讶,因为 我们已经看到 Wayland 的应用在稳步增长,而 Wine 只是加入这个行列的众多软件之一。接下来的几年对 Wayland 将至关重要,我期待它能够实现其所做的承诺。
从图形方面来看,Wine 现在已经支持到 Vulkan 规范的 1.3.272 版本,而 PostScript 驱动已被重构,可以使用 Windows 格式的打印文件,并且避免了直接从 Unix 进行调用。
在将模块转换为 PE 格式的工作基础上,现在,在 WoW64 上,所有从 Windows 到 Unix 代码的转换现都通过 NT 系统调用接口完成。
新版本还提供了 对 macOS 上 32 位应用程序的支持,这要归功于 新的 WoW64 模式,它通过从 32 位 PE 代码调用 64 位 Unix 库来实现。
最后,我们在 Wine 9.0 中有了 对输入设备支持的改进,现在实现了 DirectInput 动作映射,提升了很多老游戏的兼容性。
关于 Wine 9.0 发布的详细信息,你可以阅读 更新日志。
📥 如何获取 Wine 9.0
可以在 官方网站 上找到 Wine 的二进制包,那里提供了包括 Ubuntu、Debian、Fedora 和 macOS 在内的多个版本。
另外还有一些由 SUSE、Slackware 和 FreeBSD等提供的其他二进制包。如果你对它们不感兴趣,你也可以访问其 GitLab 仓库 来从源码中构建。
⚙️ 从旧版本升级
如果你正在使用旧版本的 Wine,那么按照以下步骤获取 Ubuntu 的最新发行版,或者是装备有基于 Ubuntu 派生系统的硬件。
首先运行以下命令启用 32 位架构的支持(如果尚未启用):
sudo dpkg --add-architecture i386
下载 Wine 的官方仓库密钥并添加它:
sudo mkdir -pm755 /etc/apt/keyrings
sudo wget -O /etc/apt/keyrings/winehq-archive.key https://dl.winehq.org/wine-builds/winehq.key
然后运行以下命令之一获取适合你的 Ubuntu 版本的 WineHQ 源文件:
sudo wget -NP /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/ubuntu/dists/mantic/winehq-mantic.sources #Ubuntu 23.10
sudo wget -NP /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/ubuntu/dists/lunar/winehq-lunar.sources #Ubuntu 23.04
sudo wget -NP /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/ubuntu/dists/jammy/winehq-jammy.sources #Ubuntu 22.04
sudo wget -NP /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/ubuntu/dists/focal/winehq-focal.sources #Ubuntu 20.04
最后,执行以下命令(分开运行)来安装 Wine 9.0:
sudo apt update
sudo apt install --install-recommends winehq-stable
在我撰写这篇文章时,我正在运行 Ubuntu 22.04 LTS 的系统中的 Wine 稳定分支还停留在旧版本 Wine 8.x。开发分支已经有了更新的 Wine 9.0 版本,我建议你可以稍微等待一会再进行升级。
💬 你对 Wine 9.0版本的看法是什么?欢迎分享你的观点。