Unix 桌面:在 Linux 问世之前

仅仅开源还不足以实现开放,还需开放标准和建立共识。

现在,由于有了安卓和 ChromeOS,Linux 已成为重要的终端用户操作系统。但在 Linux 之前,Unix 桌面起着重要的作用,尽管大多数并未留存至今。

追溯至 1993 年,我在 《PC Magazine》上做了一篇 Unix 桌面的特性评测。是的,在我成为 Linux 桌面用户之前,我是 Unix 的使用者。自从 1979 年 2BSD Unix 出现以来,我就是 Unix 的忠实拥趸。到了 1993 年,Unix 桌面繁多,我成功说服我们的杂志让我试用它们。

我和我的团队评测了来自 Consensys、Dell、Interactive Unix、SCO、Univel、 昇阳 Sun ,和 NeXT 的 Unix 版本。我们也注意到了来自 UHC、Microport 和其它公司的 Unix,但没有进行评测。我相信你们中的大多数人都未曾听说过这些。

那 Linux 呢?那时候,Linux 已经问世,而且我也使用过。但当时最先进的 Linux 发行版是 Softlanding Linux System(SLS),我无法说服编辑们 —— 或者说我自己,认为它是值得评测的。我本可以评测的第一个版本是 Slackware,它至今仍在我们身边,但在那时候,它的发布日期还有数月之遥。

现如今,只有 Dell 仍然存在,不过它之所以至今仍在业界,不完全是因为它的 System V Release 4(SVR4)Unix 发行版。然而,那些早期的 Unix 桌面中,仍有一个仍然活跃健康,且运行在大约 四分之一的桌面 上。

那个操作系统,当然,就是 macOS X,它是 NeXT 的 NeXTSTEP 的直接后裔。你可以说基于多线程、多进程微内核操作系统 MachBSD Unix,和开源的 Darwin 的 macOS,是所有 Unix 操作系统中最成功的。

但在当时看来,情况并非如此。并不是因为 Windows 比 Unix 更好。在 1993 年,可以称作 Unix 的竞争对手的只是 Windows 3.1 和 NT 3.1。

特别是 NT,在那时,它只能算是个笑料级别的服务器操作系统。直到 Windows NT 3.5 发布后,NT 才开始变得重要。

Windows 击败 Unix 的原因多种多样。其中最重要的一点就是微软确保所有硬件和软件供应商要么与它对齐,要么就无法 使用 Windows 或微软 Office

那个时候,这是个极其重要的问题。我们如今看待 Mac,通常将其视为等同于或者超过 Windows PC 的竞争对手。但那个时期的情况并非如此。史蒂夫·乔布斯当时已被解雇,并且在苹果公司 1993 年的年度报告中,该公司报告显示其 净收入 已下降了97%。

然而,尽管微软的成功在很大程度上得益于其历史上的 不正当商业行为,但它并非靠不正当手段得以胜出。Unix 公司正在自我毁灭。

尽管有许多为 Unix 创立软件开发标准的尝试,但它们或者过于宽泛而无法做出实质性贡献,例如 POSIX;或者它们在 开放系统基金会 Open Systems Foundation Unix 国际 Unix International 之间的商业联盟争端中陷入僵局,这就是著名的 Unix 战争

在 Unix 公司忙于内斗的同时,微软正乐得财源滚滚。关键问题在于 Unix 公司无法就软件标准达成一致。独立软件开发商(ISV)需要为每一个 Unix 平台编写应用。而这些应用在桌面市场的份额都微乎其微。对开发者来说,为 SCO OpenDesktop(也被称为 OpenDeathtrap)、NeXTStep,以及 SunOS 分别编写一个版本的应用程序,从商业的角度来看,这完全没有意义。

这种情况听起来似曾相识吗?这种问题如今依旧困扰着 Linux 桌面,这也是我对诸如红帽的 Flatpak 和 Canonical 的 Snap 这样的 Linux 容器化桌面应用 如此钟情的原因。

等到双方于 1996 年最终在 The Open Group 合力和解时,已经为时已晚。Unix 在传统桌面上的市场被挤压出局,工作站基本上都变成了 昇阳微系统 Sun Microsystems 的天下。

那么,Linux 是如何崭露头角的呢?实际上,相比 Unix 发行版,它有两个主要的优点。首先,它是开源的。在开源的优胜劣汰机制下,好的代码能够生存,差的代码将被淘汰。我认为 Linux 使用 GPL,这点非常关键。

毕竟,如果成功只需要开源代码,那么我们现在都应该在运行如 FreeBSDDragonflyBSD 以及 GhostBSD 这类纯 BSD 操作系统。但是实际情况却是,虽然 BSD Unix 系统至今仍然重要,却远远比不上 Linux 的市场份额。

Linux 基金会的开源供应链安全主任 David Wheeler 解释了这个原因:BSD 许可证存在的问题在于每隔几年就会有人说:“嘿,让我们基于这个 BSD 代码 开一家公司!”他们会利用这些 *BSD 代码,某些最优秀的 BSD 开发者,然后开发出一款专有的派生产品。但作为专有厂商,他们的分支成本高昂,维护不易,因此公司最终走向破产……如此反复。

“而与此同时,GPL 通过法律约束将大型商业公司聚集在一起……他们所有人都在作出贡献,并且感到安心,因为他们知道他人也被法律要求必须同样做。这就创造了一个安全的合作区。”

Linux 的另一大优势便是其领导,Linus Torvalds。有了 Torvalds 这唯一领导,Linux 规避了 Unix 陷入的内斗困境。

然而 Torvalds 的积极力量并不只在于他是一位天才开发者。尽管他的头衔可能笑称为“ 终生仁慈独裁者 Benevolent Dictator for Life ”,多年来,Torvalds 已经 学会 了如何与他人和谐合作。

有些人说,Torvalds 的人缘不够好,的确,他并不宽容对待愚蠢的行为。然而,我多次参加过 Linux Plumbers 会议,他和顶尖的 Linux 内核开发者们的合作过程中,我并未见到他们之间有过什么明显的矛盾。如今的 Linux 已是一个集体的功劳。

如果 Linux 的未来全都寄托在 Torvalds 一人身上,我也会担心 Linux 的未来。Torvalds 无疑是一位杰出的人才,一个伟大的程序员,但如果这就是 Linux 成功的全部,我们就会陷入一个痛苦的问题:一场 公交车事故,就会让我们失去整个 Linux。

幸运的是,Linux 的发行者和开发者们从 Unix 的历史中汲取了教训。

他们清楚,拥有一款成功的桌面操作系统,需要的不仅仅是开源,还需要开放的标准和共识。

我们可能永远都无法迎来那个传说中的 “Linux 桌面年”,但通过安卓和 Chrome OS,Linux 已然成为顶级的终端用户操作系统。经过漫长的等待,Unix 终于通过 Linux 成为了一款顶级的终端用户操作系统。

(题图:DA/c2e3142a-794b-4532-942e-1a3aea29acf6)


via: https://www.theregister.com/2024/01/27/opinion_column/

作者:Steven J. Vaughan-Nichols 译者:ChatGPT 校对:wxy

硬核观察 #1260 苹果公司的第三方应用商店招致广泛批评

#1 苹果公司的第三方应用商店招致广泛批评

为遵守欧盟的《数字市场法案》(DMA),苹果宣布将在欧洲地区允许第三方应用商店,然而与此同时苹果设置了很多限制,以至于对绝大部分应用开发商而言,在第三方商店提供应用得不偿失。根据苹果制定的 “核心技术使用费”,安装量超过 100 万次后,必须每年为每个首次安装支付 0.5 欧元。以 Meta 为例,其旗下应用大多有数亿用户,需要每年为第三方应用商店额外支付数亿美元的费用。

(插图:DA/e1eb9a27-047d-4a35-b025-1d7df4074687)

消息来源:Slashdot

老王点评:这显然违反了 DMA,我看这样苹果是过不了 3 月份欧盟的审查。

#2 苹果的大语言模型出现在新的 iOS 代码中

在 iOS 17.4 的第一个测试版中发现的代码显示,其中包含了一个新的 SiriSummarization 私有框架,可以调用 OpenAI 的 ChatGPT API。苹果公司不太可能在 iOS 中使用 OpenAI 模型来支持任何人工智能功能。相反,它在这里所做的是针对 ChatGPT 测试自己的人工智能模型。代码显示,苹果公司总共测试了四种不同的人工智能模型。

(插图:DA/dc5a42f6-65eb-4542-8767-ed691df9240b)

消息来源:9to5mac

老王点评:或许苹果正在偷偷打造自己的大模型?毕竟现在看起来随便什么阿猫阿狗都在做自己的大模型。

#3 Chrome 推出 Windows on Arm 版本

虽然还没有正式宣布,但有用户发现 Chrome Canary 页面现在悄悄托管了 “Windows 11 Arm” 的二进制文件。除了 x86 平台外,Chrome 还支持各种 Arm 操作系统,如安卓、Chrome OS 和 Mac OS。不过在此之前,官方的谷歌 Chrome 浏览器从未在 Windows on Arm 上获得过支持,在 Arm 平台上的 Windows 只能通过缓慢的翻译层将 Chrome 浏览器作为 x86 应用程序运行。今年高通将发布首款用于 Windows 的与苹果硅芯片同级的 Arm 芯片,因此,将这个全球最流行的浏览器提升到原生质量水平对运行在 Arm 上的 Windows 来说至关重要。

(插图:DA/d0e8ce41-4459-471a-90a0-c11773662d76)

消息来源:Ars Technica

老王点评:要是连 Windows 都愿意跑在 Arm 上,不知道英特尔怎么想。

Valve 对于 Ubuntu 的 Snap 版本的 Steam 并不满意:原因何在

你可能会发现,Snap 版本的 Steam 并不如你期待的那样好,你怎么看?

近年来,由于 Wine、Proton 等工具的兴起,在 Linux 上 玩游戏 变得非常容易。

甚至,越来越多的游戏开发商为 Linux 提供原生支持,通过为运行 SteamOS 的 Valve 手持设备 Steam Deck 发布游戏。

然而,最近的报道显示,一名 Valve 开发者注意到,Steam 客户端的非官方 Snap 版表现并不如预期

事情是这样的: 一位负责 Valve 的 Steam 客户端开发的开发者,Timothée Besset,在 Mastodon 上对 Linux 的 Steam Snap 版本表达了担忧。

需要知道的是,该 Snap 版本 是 Canonical 在 2022 年发布的非官方版本,作为他们全力打造 Ubuntu 游戏体验的一部分。

该开发者指出,他们发现由 Snap 版本的 Steam 客户端引发的问题报告数量大幅度增加

然而,问题在于,许多用户可能并未意识到他们正在运行的是 Steam 客户端的 Snap 版本,反倒是首先向 Valve 报告问题,而非与 Canonical 取得联系。

原因何在呢?

主要是因为 Ubuntu(及其官方发行版)在推广 Snap 包的使用。同时,当用户从软件中心安装 Steam 时,系统会默认安装 Snap 应用,许多用户并未觉察。

然而,用户并未得到任何关于这个包并非由 Valve 官方维护的信息。

虽然有一个标记表明 Canonical 是它的维护者,验证了包的真实性,但是,它并不是 Valve 官方推荐的东西。

因此,若在 Ubuntu 上安装 Steam,用户可能会被误导(或是产生困惑)。

自然地,用户会希望软件开箱即用。如果做不到,就会有人声称 “Steam 在 Ubuntu 或 Linux 上无法工作”,这会对 Valve 的声誉产生影响。

如何应对: 根据 Timothée 的建议,对于 Debian 及其它基于 Debian 的发行版(当然,包括 Ubuntu),你最佳的选择是从他们的 GitHub 仓库 下载并安装官方的 .deb 包。

作为替代,你也可以选择 非官方的 Flatpak

有人建议让 Steam 检测 Snap 并禁止其运行,Timothée 进一步补充说:

运行报告会检测到 snap/flatpak(或即将检测到)。但考虑到用户的自由等等因素,我们通常不会因此停止服务。如果真的出现严重问题,我们可能会开始发出警告。

我觉得发出警告听起来不错。但当然,既然 Valve 的关切已经被公之于众,Canonical 应对这个问题采取行动,与 Valve 合作改善现状。

? 你觉得呢? Canonical 会采取行动,解决他们所开发的基于 Snap 的 Steam 客户端存在的问题吗?

参考:GamingOnLinux

(题图:DA/13bf0574-9608-4d18-97ef-c136cbd81ef4)


via: https://news.itsfoss.com/valve-steam-snap-ubuntu/

作者:Sourav Rudra 选题:lujun9972 译者:ChatGPT 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

硬核观察 #1259 苹果公司将允许第三方浏览器引擎,但 Firefox 非常失望

#1 苹果公司将允许第三方浏览器引擎,但 Firefox 非常失望

在 iOS 17.4 中,苹果将不再强制欧盟国家的浏览器使用 WebKit。这一变化为其他浏览器引擎打开了大门,意味着第三方浏览器可以在 iOS 上全面运行,而不会受到 WebKit 的任何限制。尽管这似乎是一个值得欢迎的变化,但 Mozilla 表示对苹果将此限制于欧盟感到 “非常失望”。因为这将迫使像 Firefox 等浏览器需要构建和维护两个独立的浏览器实现。Mozilla 认为苹果公司 “让其他公司在提供 Safari 的竞争性替代品时尽可能痛苦。”

(插图:DA/2876d0b4-cb70-405e-bad6-513f43933093)

消息来源:The Verge

老王点评:这就有点矫情了。

#2 红帽将修改其云计算 RHEL 定价

红帽公司目前针对公共云使用红帽企业 Linux(RHEL)的定价模式是针对 “小型” 和 “大型” 虚拟机的两级模式。但是,鉴于这种模式是多年前制定的,而公共云已经变得越来越普遍,虚拟机的大小和功能也千差万别,因此红帽公司正在更新其公共云定价。从四月份开始,他们将为在公共云中使用 RHEL 推出新的定价模式,并将按 vCPU 数量计价。虽然尚未公布细节,但预计小型规模的虚拟机实例将会更便宜,而大型实例将更贵。

(插图:DA/e7ae54c0-5659-4989-8094-8bcaccdbd567)

消息来源:Phoronix

老王点评:这样涨价,是让更多的用户转向 Rocky Linux 等替代品吗?

#3 Linux 应用商店 Flathub 现在拥有超过一百万活跃用户

Flathub 是目前最受欢迎的 Linux 应用程序商店之一,以 Flatpak 格式提供超过 2400 个应用程序的 16 亿次下载,其中超过 850 个应用程序已经过原作者验证。现在,Flathub 今天自豪地宣布,Flatpak 应用程序的活跃用户已突破 100 万。

(插图:DA/b038e7d1-b15c-453f-8845-20bfa52f1fa9)

消息来源:9to5linux

老王点评:可喜可贺,什么时候 Flathub 能成为多数主流 Linux 发行版的默认商店就更好了。

Wine 9.0 发布,实验性地加入了 Wayland 驱动

Wine 的这个新版本正在为未来做好准备!

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 的二进制包,那里提供了包括 UbuntuDebianFedoramacOS 在内的多个版本。

Wine 9.0

另外还有一些由 SUSESlackwareFreeBSD等提供的其他二进制包。如果你对它们不感兴趣,你也可以访问其 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版本的看法是什么?欢迎分享你的观点。

(题图:DA/d8042d74-5719-413a-a1fc-4b5a3be581e9)


via: https://news.itsfoss.com/wine-9-0-release/

作者:Sourav Rudra 选题:lujun9972 译者:ChatGPT 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出