Revolt：Discord 的开源替代品

# Revolt：Discord 的开源替代品

>
> Revolt 是一个有前途的自由开源的 Discord 替代品。在这里，让我们看一下它所提供的东西以及它的初步印象。
>
>
>

Discord 是一个功能丰富的协作平台，主要为游戏玩家量身定做。尽管你可以在 Linux 上毫无问题地使用 Discord，但它仍然是一个专有解决方案。

你可以选择使用 [Element](https://itsfoss.com/element/) 作为一个开源的解决方案协作平台，但它不是一个替代品。

但是，Revolt 是一个令人印象深刻的 Discord 替代品，它是开源的。

>
> 注意：
>
>
> Revolt 正处于公开测试阶段，不提供任何移动应用。它可能缺乏一些你在 Discord 上找到的基本功能。
>
>
>

我会重点说一下 Revolt 的功能，以及它是否可以成为 Linux 上 Discord 的替代品。

### 一个你可以自行托管的开源 Discord 替代品

Revolt 不仅仅是一个简单的开源替代品，而且你还可以自我托管。

它确实缺少 Discord 提供的各种功能，但你可以获得许多基本功能，可以先体验一下。

即使缺乏一些功能，但它也是一个功能丰富的开源客户端。让我们来看看现有的功能。

### Revolt 的功能

它看起来和感觉已经很像 Discord，这是一些关键的亮点：

* 能够创建你自己的服务器
* 创建文字频道和语音频道
* 在服务器中分配用户角色
* 调整主题（深色/浅色）
* 改变强调色
* 从可用选项中管理字体和表情包
* 支持自定义 CSS
* 能够添加机器人
* 易于管理文本/语音频道的权限
* 向其他用户发送朋友请求
* 保存的笔记
* 能够控制通知
* 支持硬件加速
* 专门的桌面设置
* 使用 Docker 进行自我托管
* 用户状态和自定义状态支持

因此，作为处于公开测试阶段的东西，它听起来对初学者来说非常好。你已经拥有了大部分的核心功能，但你可能想等着看它成为一个成熟的 Discord 替代品。

### 使用 Revolt 的初步印象

如果你使用过 Discord，用户体验会感觉很熟悉。这是一件好事。

对于这篇快速亮点介绍，我没有比较 Discord 和 Revolt 的资源使用情况，因为它仍然处于测试阶段，不是同等级的比较。

然而，在我简短的测试中，它感觉很快速，除了第一次加载一个文本频道时。在发表这篇文章时，它没有双因素认证（2FA）功能，但应该会在他们的第一个里程碑（第一版）版本中添加。

一些功能如用户状态、权限管理和外观调整看起来很有用。但是，当涉及到语音频道时，它和 Discord 的工作方式不一样，至少现在是这样。

我不知道他们是否打算用同样的方式，但 Discord 的语音频道功能是直观的、快速的，而且有更好的控制。

不要忘了，Discord 还提供 “Discord Stage”，这是一个类似 Clubhouse 的音频聊天室功能。

其他一些我找不到的功能包括：

* 对信息作出反应的能力
* 抑制噪音的功能
* 改变服务器
* 服务器日志
* 各种有用的机器人

当然，要赶上 Discord 提供的功能还需要大量的时间，但至少我们现在有一个开源的 Discord 解决方案。

你可以了解他们的 [项目路线图/发布跟踪器](https://github.com/orgs/revoltchat/projects/2)，看看你可以在其最终/未来的版本中期待什么。

### 在 Linux 中安装 Revolt

Revolt 可用于 Linux 和 Windows。你可以选择在你的网络浏览器上使用它，而不需要一个单独的应用。

但是，如果你需要在你的桌面上使用它，他们提供了一个 AppImage 文件和一个 deb 包，你可以从它的 [GitHub 发布页](https://github.com/revoltchat/desktop/releases/tag/v1.0.2) 下载。

如果你是 Linux 的新手，可以参考我们关于 [使用 AppImage 文件](https://itsfoss.com/use-appimage-linux/) 和 [安装 deb 包](https://itsfoss.com/install-deb-files-ubuntu/) 的资源来开始学习。

如果你想用你的错误报告和建议来帮助他们改进，请随时前往 [反馈页面](https://app.revolt.chat/settings/feedback)。此外，你还可以浏览他们的 [GitHub 页面](https://github.com/revoltchat) 以了解更多信息。

* [Revolt](https://revolt.chat)

你觉得 Revolt 怎么样？你认为它有可能成为 Linux 上 Discord 的一个很好的开源替代品吗？

请在下面的评论中告诉我你的想法!

---

via: <https://itsfoss.com/revolt/>

作者：[Ankush Das](https://itsfoss.com/author/ankush/) 选题：[lujun9972](https://github.com/lujun9972) 译者：[geekpi](https://github.com/geekpi) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


硬核观察 #530 量子计算机距离破解 BTC 加密还差百万级

Summary: 更多：• 可以训练 AI 的 AI • 影响 12 年来所有 Linux 发行版的本地提权漏洞

破解比特币没前途，找到质数的方程式才是终极解，可质数代表的是整个宇宙，不可能有解的。因为观测到得越多，就越是找不到解。

来自120.230.61.84的 Chrome Mobile 75.0|Android 10 用户

目前的僵尸网络一个其节点在百万左右。到量子计算机时代，只需要1/10规模就可以轻松破解比特币了。

# 硬核观察 #530 量子计算机距离破解 BTC 加密还差百万级

### 量子计算机距离破解 BTC 加密还差百万级

量子计算机可借助量子的特性来加速某些计算，科学家们正在研究“到底需要多大规模的量子计算机”才能攻破 BTC 网络。[他们发现](https://www.newscientist.com/article/2305646-quantum-computers-are-a-million-times-too-small-to-hack-bitcoin/)，如果将破解 BTC 加密的时间窗口限制在 BTC 网络的出块时间 10 分钟，将需要动用规模达到 19 亿个量子比特的超级计算机。但若放宽到半小时，就只需要动用具有 1300 万个量子比特的量子计算机。IBM 创纪录的超导量子计算机，目前也只达成了 127 个量子比特。而将量子比特扩大百万倍，看起来在十年内不大可能做到。

>
> 老王点评：即便量子计算机真的发展到那么强大，也有比破解 BTC 更重要的事情要做。
>
>
>

### 可以训练 AI 的 AI

深度神经网络在 10 年前开始超越传统算法，这是因为我们终于有了足够的数据和处理能力来充分利用它们。训练神经网络需要仔细调整数百万甚至数十亿的参数值，这些参数是这些网络的特征，目标是为它们找到近乎理想的值，这个过程被称为优化，但训练网络并不容易。科学家们构建了一种“超网络”以 [加快训练过程](https://www.quantamagazine.org/researchers-build-ai-that-builds-ai-20220125/)，即训练神经网络的神经网络。给出一个为某些任务设计的新的、未经训练的深度神经网络，超网络可以在几分之一秒内预测出新网络的参数，理论上可以使训练不再必要。

>
> 老王点评：虽然还不是最可怕的情况，但是这无异于给了 AI 一种自我进化的能力。
>
>
>

### 影响 12 年来所有 Linux 发行版的本地提权漏洞

Polkit 是一个 SUID 程序。它被默认安装在每个主要的 Linux 发行版中。任何普通用户都可以通过利用其默认配置中的这个 [漏洞](https://www.zdnet.com/article/major-linux-policykit-security-vulnerability-uncovered-pwnkit/)，在有漏洞的计算机上获得完全的 root 权限。这个漏洞自 2009 年 5 月创建以来一直存在，即使 polkit 守护程序本身没有运行，它也可以被利用。

>
> 老王点评：其实 Linux 世界中这种早期潜伏的危险应该还不少，因为那时候 Linux 显然没现在这么重要。
>
>
>


9 个可以改善你的 Firefox 体验的插件

Summary: Firefox 显然是 Linux 用户中最受欢迎的开源网络浏览器之一。

然后证书出错，全部插件被停用。笑死;D，火狐开源也就图一乐，真得盈利还是要靠收集用户信息。

Firefox 显然是 Linux 用户中最受欢迎的开源网络浏览器之一。

# 9 个可以改善你的 Firefox 体验的插件

Firefox 显然是 Linux 用户中最受欢迎的开源网络浏览器之一。

事实上，它是 [可用于 Linux 的最佳网络浏览器](https://itsfoss.com/best-browsers-ubuntu-linux/) 之一。但是，它的附加组件（或扩展组件）如何呢？

考虑到你更喜欢开源的解决方案，你是否在使用开源服务的附加组件？有哪些你可以安装的最好的开源 Mozilla Firefox 附加组件？

### 你应该尝试的开源 Firefox 扩展程序

需要注意的是，在 Firefox 中并不是每个附加组件都是开源的。

此外，有几个开源项目的 Firefox 附加组件采用了不同的许可证。

#### 1、Dark Reader

[Dark Reader](https://addons.mozilla.org/en-US/firefox/addon/darkreader/) 是一个流行的浏览器扩展，让你打开网站的深色模式。该扩展只是简单地改变背景和文本颜色，以融合深色模式主题。

在默认情况下，它与几乎所有网站都能很好地配合。然而，如果你认为深色模式无法阅读（或不好看），你也可以自定义颜色、对比度、亮度和灰度。

你也可以选择在特定的网站上启用它，而在其他网站上禁用它。在这两种情况下，你都可以创建一个网站白名单/黑名单的列表。

它是一个尊重用户隐私的开源项目。你可以在它的 [GitHub 页面](https://github.com/darkreader/darkreader) 中了解更多关于它的信息，或者安装该附加组件来尝试它。

#### 2、Bitwarden

毋庸置疑，这是现有的 [最佳密码管理器](https://itsfoss.com/password-managers-linux/) 之一。

[Bitwarden](https://addons.mozilla.org/en-US/firefox/addon/bitwarden-password-manager/) 是一个开源的密码管理器，提供各种功能。它专注于提供有竞争力的开源解决方案。

这个用于 Mozilla Firefox 的密码管理器插件并不亚于任何其他类似产品。你可以通过该扩展获得所有的基本功能，包括生成密码、管理你的保险库以及一些高级选项。

在我的使用场景中，我没有发现这个扩展有任何不足之处。如果你还没有试过，你应该尝试一下这个插件。你可以看看它的 [GitHub页面](https://github.com/bitwarden/browser) 来了解更多信息。

#### 3、Vimium-FF

这是一个受 [Vim 键盘快捷键](https://itsfoss.com/pro-vim-tips/) 启发的开源工具，最初出现在 Chrome 浏览器上，后被移植到 Firefox。

Mozilla Firefox 上的 [Vimium](https://addons.mozilla.org/en-US/firefox/addon/vimium-ff/) 附加组件还在开发中，最近没有新版本。然而，作为一个实验性的附加组件，它仍然拥有优秀的用户评价。

这个附加组件可以让你使用键盘快捷方式来改善你的浏览体验。例如，你可以设置快捷键来滚动、查看源代码、启用插入模式、浏览历史记录、检查下载等。

如果你对键盘快捷键很熟悉，这个附加组件应该是你的菜，尝试一下吧。

你可以找到它的 [GitHub 页面](https://github.com/philc/vimium)，也可以试试它的几个定制版本（复刻）。

#### 4、uBlock Origin

如果你想摆脱网站中的那些动来动去的元素，以改善浏览体验，[uBlock Origin](https://addons.mozilla.org/en-US/firefox/addon/ublock-origin/) 是一个出色的内容拦截器。

首先，它能阻止各种广告、跟踪器、弹出式窗口，以使网页的加载速度更快。如果一些网页在你的浏览器中加载时出现卡顿，它应该会派上用场。

如果一个网站不能正常运行，你也可以选择选择性地阻止或允许 JavaScript。它还具有过滤列表的功能，帮助你积极地阻断或尽量减少阻断，以平衡网络浏览体验而不破坏网站。

诸如阻止恶意域名、阻止大于特定尺寸的媒体等高级功能，能帮助你保持安全并节省网络带宽。查看其 [GitHub页面](https://github.com/gorhill/uBlock#ublock-origin) 以了解更多技术细节。

#### 5、LanguageTool

**注意：** 在这个列表中，我们尽量推荐完全开源的 Firefox 附加组件。但是，这是一个例外，作为一个非 FOSS 附加组件，其服务最初是开源的，但该扩展不是。

[LanguageTool](https://languagetool.org) 是一个开源的语法和拼写检查器，它尊重你的隐私，使它成为与 Grammarly 和其他同类产品相当的替代品。它可以免费使用，但可以选择升级为高级更正功能。

对于基本的拼写检查和常见的语法错误，它应该是足够好的。在我写这篇文章的时候，我的 [LanguageTool](https://itsfoss.com/languagetool-review/) 扩展已经激活。这不仅仅是一个注重隐私的开源替代品，它的工作速度超快，不会影响你的写作体验。

服务器端是开源的，但不幸的是，该附加组件不是开源的。他们澄清了原因，因为他们不希望竞争对手使用该插件而没有任何回报（更多内容见他们的 [论坛帖子](https://forum.languagetool.org/t/about-the-browser-addon-privacy-and-open-source/7505)）。

然而，Mozilla 在它每次发布时都能审查源代码，这使得它成为一个值得推荐的附加组件。你可以在其 [官方网站](https://languagetool.org) 或其 [GitHub 页面](https://github.com/languagetool-org/languagetool) 上探索关于该工具的更多信息。

#### 6、Tabby

如果你想方便地管理具有不同活动窗口的多个标签，[Tabby](https://addons.mozilla.org/en-US/firefox/addon/tabby-window-tab-manager/) 应该会派上用场。

它简化了管理一个浏览器的多个标签和窗口的方法，还可以让你保存标签/窗口以便以后使用。说到标签管理，Firefox 并不是最棒的，所以你可能想试试这个。

你可以查看它的 [GitHub 页面](https://github.com/Bill13579/tabby) 或者安装这个附加组件来了解更多。

#### 7、Emoji

在计算机上挑选或使用表情符并不容易。有了这个开源的 [扩展](https://addons.mozilla.org/en-US/firefox/addon/emoji-sav/)，你就只需点击一下就可以轻松地将几个表情符复制到剪贴板。

该插件是完全开源的，并且还使用一些开源字体。

你可以在其 [GitHub 页面](https://github.com/Sav22999/emoji) 上找到更多关于它的信息。

#### 8、DownThemAll

[DownThemAll](https://addons.mozilla.org/en-US/firefox/addon/downthemall/) 是一个强大的插件，可以轻松地从一个网页上下载多个文件/媒体。你可以选择一键下载所有文件，或者自定义你想要的文件。

还有一些额外的选项可以自定义文件名、基于队列的下载和高级选择。

你可以在其 [官方网站](https://www.downthemall.org) 或 [GitHub 页面](https://github.com/downthemall/downthemall) 上了解它的更多信息。

#### 9、Tomato Clock

如果你想在你的网络浏览器中实现 Pomodoro 功能（就像 Vivaldi 开箱即用提供的功能），[Tomato Clock](https://addons.mozilla.org/en-US/firefox/addon/tomato-clock/) 是你需要的插件。

换句话说，它可以让你设置定时器，帮助你把工作分成若干个时间段，中间有短暂的休息。这应该有助于你保持生产力，而不会被工作压垮。

它使用起来很简单，还能显示一些使用统计，以了解你对它的利用情况。

你可以探索它的 [GitHub 页面](https://github.com/samueljun/tomato-clock) 了解技术信息，或者获取该扩展来开始。

### 总结

如果你是一个狂热的 Firefox 用户，我建议你看看这个 [Firefox 键盘快捷键的有用清单](https://itsfoss.com/firefox-keyboard-shortcuts/)。我们也有一个 [Firefox 罕为人知的功能](https://itsfoss.com/firefox-useful-features/) 列表。你也可以去看看。

虽然还有其他几个有用的 Firefox 附加组件，但我把这个列表限制在我自己使用的最好的那些。

你最喜欢的开源 Firefox 附加组件有哪些？请在下面的评论中告诉我。

---

via: <https://itsfoss.com/best-firefox-add-ons/>

作者：[Ankush Das](https://itsfoss.com/author/ankush/) 选题：[lujun9972](https://github.com/lujun9972) 译者：[wxy](https://github.com/wxy) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


用 Bitsy 制作电子游戏

# 用 Bitsy 制作电子游戏

>
> Bitsy 是一个开源电子游戏设计软件。 其简约的功能使任何人都可以探索他们的创造力。
>
>
>

有许多游戏设计程序和各种游戏设计方法，但对我来说，最突出的是 Bitsy。Bitsy 由 Adam Le Doux 在 2017 年创建，在 MIT 许可下发布，用其创造者的话说，Bitsy 是：“一个用于小游戏或世界的编辑器。其目标是使制作游戏变得容易，在那里你可以四处走动，与人交谈，并到某个地方。”

### 安装 Bitsy

Bitsy 是用 JavaScript 编写的，可以制作 HTML5 游戏。你可以从 [GitHub](https://github.com/le-doux/bitsy) 或 [它的创造者的网站](https://ledoux.itch.io/bitsy) 下载它。它很小，很容易学习，有独特的位图艺术风格，有意在功能上有所欠缺，而且能做的事情有限。

尽管（也许是因为）这些限制，Bitsy 自发布以来吸引了一个充满活力的用户社区。用户对 Bitsy 采取的两个主要方法是：接受限制和寻求突破限制，看看你能走多远。

### 创意的界限

Bitsy 的局限性意味着接受这些局限性仍能制作出令人满意的游戏，这就成为一个需要创造性和创造力的挑战。你可以在 [Itch.io 网站](https://itch.io/games/tag-bitsy) 上看到和玩一些用 Bitsy 制作的令人印象深刻的游戏。同时，人们也想出了一些黑科技、调整和扩展。这些都在不牺牲 Bitsy 的本质的前提下突破了一些限制。

Bitsy 的基本元素是一个代表玩家的头像、发生游戏动作的房间、精灵（可以与之互动的非玩家角色）和物品。有一个用于创建这些元素的位图编辑器，它也支持简单的两帧动画。

在 Bitsy 中工作依赖于条件变量，而不是成熟的脚本，这使得没有编码背景的人容易学习，但有时会让那些期待更多灵活性的人感到沮丧。

如果你想了解 Bitsy 的基本情况，你可以在创作者的网站上了解，或者下载并在本地运行。

### 文档

关于 Bitsy 的文档并不是只有一个地方可以去看。如果你想看 Bitsy 的操作，可以在 YouTube 上找到各种短视频。我更喜欢基于文本的教程，我发现最有用的三个资源是：

* [Itch.io 网站上提供的官方 Bitsy 教程](https://www.shimmerwitch.space/bitsyTutorial.html)，作者是 Claire Morwood
* [Bitsy workshop PDF](https://static1.squarespace.com/static/58930a6c893fc0a33ae624db/t/5bacd94ac83025ead3937071/1538054510407/BITSY-WORKSHOP.pdf)， 由用户 haraiva 提供
* [Bitsy 变量](https://ayolland.itch.io/trevor/devlog/29520/bitsy-variables-a-tutorial)， 教程由用户 ayolland 编写

阅读这些教程，尝试一些 Bitsy 游戏，并开始创造你自己的东西。开始时要保持简单。当你熟悉了 Bitsy，你可能想研究一下人们为它创造的一些 [工具、黑科技和扩展](https://itch.io/tools/tag-bitsy)。

它也是教育工作者的完美工具，甚至还有教育工作者 Hal Meeks 的 [Bitsy 课程](https://halmeeks.net/bitsyclass/) 可供在线学习。

你还可以在 [Itch.io 网站](https://itch.io/game-assets/tag-bitsy) 上找到人们为 Bitsy 制作的大量游戏资源。

### Twine 整合

你可能已经尝试过流行的基于浏览器的游戏开发工具 [Twine](https://opensource.com/article/18/2/twine-gaming)。你可以将 Bitsy 与 Twine 不同程度地整合。整合的范围可以从简单地将 Bitsy 游戏放在一个 iframe 中显示在你的 Twine 游戏中，到在两个引擎之间共享变量和对话命令，让你在 Bitsy 游戏中执行基本的 Twine 命令！如果你对这些感兴趣，那么请看：

* [结合 Bitsy 和 Twine 的教程](https://spdrcstl.com/blog/bitsy-twine-tutorial.html)
* [Bitsy 黑科技](https://github.com/seleb/bitsy-hacks/blob/main/dist/twine-bitsy-comms.js)
* [Freya 的 Twisty 模板](https://communistsister.itch.io/twitsy-template-1)

### 给初学者的 Bitsy

初学者很容易入门 Bitsy，无论你是编程新手还是仅仅是游戏设计的新手。有了它，你可以探索它在激发创造力、想象力和创造性方面的所有可能性。

---

via: <https://opensource.com/article/22/1/bitsy-game-design>

作者：[Peter Cheer](https://opensource.com/users/petercheer) 选题：[lujun9972](https://github.com/lujun9972) 译者：[geekpi](https://github.com/geekpi) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


硬核观察 #531 洋葱新闻：“Linus 发现 Windows XP 很棒”

Summary: 更多：• 最新版 macOS 12.3 终于移除了 Python 2 的支持 • OpenSea 称其上免费创建的 NFT 80% 都是垃圾或剽窃作品

NTF本来就是拍卖垃圾起家的，还要说明80%都是垃圾吗？真会有人上百万买这个垃圾? 营销罢了。毕加索早就玩烂了

这个老王点评和废话有什么区别. 点评至少要有点原创性或启发性, 这啥也没有

Windows 10和Windows XP相比，兼容性可以吧？你看现在还不是大多数人依然抱着Windows XP不放。所以，Python 3不兼容Python 2是挺好的一件事。抱着Python 2不放的永远会不放，和兼容性没什么关系。

你这也太苛刻了

# 硬核观察 #531 洋葱新闻：“Linus 发现 Windows XP 很棒”

### 洋葱新闻：“Linus 发现 Windows XP 很棒”

Linux 创始人 Linus Torvalds 在 GitHub 上的 Linux 仓库的 README 中写道：“我删除了Linux，因为我讨厌它，现在我认为它很糟糕。你应该去使用这个很棒的操作系统，它叫 Windows XP，我刚刚发现它很棒。”，这个文件的 URL 是 <https://github.com/torvalds/linux/tree/8bcab0346d4fcf21b97046eb44db8cf37ddd6da0> ，没错，看起来是 Linux 的仓库地址。好吧，这是一个洋葱新闻。事实上，这是一个 GitHub 的 bug，任何人都可以通过伪造 URL 而看起来像是另外的仓库和另外的作者。而这个 Bug 由来已久，但是 GitHub 从未准备修复。

>
> 老王点评：无论 GitHub 基于什么理由不修复，但是通过这个漏洞可以制作出以假乱真的钓鱼信息，大家一定要注意。
>
>
>

### 最新版 macOS 12.3 终于移除了 Python 2 的支持

苹果释出了 macOS Monterey 12.3 Beta，一个主要变化是 [不再捆绑 Python 2.7](https://developer.apple.com/documentation/macos-release-notes/macos-12_3-release-notes#Python)。苹果建议开发者使用 Python 3 或替代语言。Python 语言项目在 2020 年 1 月 1 日停止支持 Python 2 分支，接替 Python 2 的 Python 3 早在 2008 年就已经发布，但由于它不向后兼容，导致许多用户仍然停留在 Python 2 分支。但 macOS 也没有预装 Python 3，开发者可选择安装捆绑 Python 3 的 Xcode 开发工具。

>
> 老王点评：如果 Python 3 能对 Python 2 提供更多的兼容性，而不是弃之如敝履，就不会有这么多的产品和服务还留在 Python 2。
>
>
>

### OpenSea 称其上免费创建的 NFT 80% 都是垃圾或剽窃作品

占有绝对垄断地位的 NFT 市场 OpenSea 宣布，它将限制用户在平台上使用其工具免费创建 NFT 的次数为 50 次。这些免费创建的 NFT 可以跳过支付区块链燃料费用，而在售出时由买家支付。之后在社区的反对之下，OpenSea 又宣布取消这一限制，同时也给出了做此限制的 [理由](https://twitter.com/opensea/status/1486843201352716289)：用这个免费工具创建的项目中，超过 80% 是抄袭作品、虚假收藏和垃圾内容。

>
> 老王点评：其实我觉得这种对免费创建的限制是有道理的，要不 OpenSea 可能会沦为垃圾场。
>
>
>


我们最喜欢的好玩的 Linux 命令

Summary: Linux 命令行以生产力强而闻名。它也是一个可以获得一些乐趣的地方！

真命玩年;D

但凡编剧懂点LINUX 电视剧里黑客也不会只用PING了

但凡编剧懂点LINUX 电视剧里黑客也不会只用PING了

Linux 命令行以生产力强而闻名。它也是一个可以获得一些乐趣的地方！

# 我们最喜欢的好玩的 Linux 命令

>
> Linux 命令行以生产力强而闻名。它也是一个可以获得一些乐趣的地方！
>
>
>

去年 11 月，我们分享了一篇文章《[7 个好玩的 Linux 命令](https://opensource.com/article/21/11/fun-linux-commands)》，并请读者们告诉我们推荐的“好玩”的 Linux 命令是什么，以及为什么？

一些读者在下面分享了他们的最爱：

---

这是我的最爱：

* 当然得有 `cowsay`！
* `fortune`，我最喜欢的 “黑科技” 是让用户连接时的 `motd` 成为一个幽默的格言。
* `sl`，在你的终端上的蒸汽机车。
* `xsnow`，另一个 XWindow 黑科技，这个命令可以在你的工作区降雪，并堆积在打开的窗口上。
* GNOME 复活节彩蛋，在 GNOME 2 中，按下 `Alt+F2`（打开运行对话框）并输入 `free the fish`，就可以在你的根窗口中释放 “Wanda the Fish”。如果你点击 Wanda，它就会四处游荡，窜来窜去（一段时间）。

~[Dave Neary](https://opensource.com/users/dneary)

---

我的一天从这些开始:

`fortune`、`cowsay`、`lolcat`

紧接着是 `curl` [wttr.in](http://wttr.in/)。

现在我们可以喝咖啡了 ;-）

~[Tomasz Waraksa](https://opensource.com/user_articles/380541)

---

`cmatrix` ，因为每当这个时候，你就会觉得自己被插入了机器。

~[Gary Smith](https://opensource.com/users/greptile)

---

```
telnet towel.blinkenlights.nl

```

这并不完全是 Linux 特有的，但它还挺棒的。

~[John 'Warthog9' Hawley](https://opensource.com/users/warthog9)

---

Xroach 是 20 世纪 90 年代你的窗口管理器的一个很酷的附加功能。当时它与 Tab Window Manager （TWM）和 F Virtual Window Manager （FVWM）一起使用时非常有趣，但我已经多年没有使用它了。当你运行 Xroach 时，它添加了小蟑螂并“住”在你的窗口下。当你移动一个窗口或关闭它时，蟑螂就会窜到另一个窗口下躲起来或跑出屏幕。这只是其中一种使桌面更有趣的小方法。

看起来有一个 [Xroach 的现代移植](https://github.com/interkosmos/xroach)，我得找个时间试试。

~[Jim Hall](https://opensource.com/users/jim-hall)

---

我在 90 年代末担任过计算机科学的助教，我们的计算机实验室里有 Sun Sparc 工作站。有时学生会在实验室时间里走开而不锁屏。每隔一段时间，我就会在他们不注意的时候在终端上执行 `xroach &; clear`。

XRoach 是个好东西。蟑螂躲在窗口下，在屏幕上窜来窜去，当你移动一个窗口时，又躲在另一个窗口下。

~[Ann Marie Fred](https://opensource.com/users/annmarie99)

---

我最喜欢的一个是 `hollywood`，在 [这里](https://snapcraft.io/install/hollywood/ubuntu) 了解下。

只需运行它并开始随意按键，你就会让星巴克的每个人都相信你正在摧毁美国。

~[Clint Byrum](https://opensource.com/users/spamaps)

[Jim Hall](https://opensource.com/users/jim-hall) 对此回应道：

这真是太棒了! 这让我想起了 [Hacker Typer](https://hackertyper.net/)。它是一个网站而不是一个终端程序。只要调出网站，然后敲击键盘。不管你输入什么，Hacker Typer 的输出都似乎是真正的工作。:-）

为了回应 Clint Byrum（和 Jim Hall 的回应）带来的乐趣：

这两个我都喜欢! 请欣赏这篇关于 Hollywood 黑科技的 [博文](https://www.dgregscott.com/hollywood-hacker/)。我最爱之一。

~[Greg Scott](https://opensource.com/users/greg-scott)

---

你最喜欢的“有趣的” Linux 命令是什么？请在下面的评论中分享你的。

---

via: <https://opensource.com/article/22/1/fun-linux-commands>

作者：[Opensource.com](https://opensource.com/users/admin) 选题：[lujun9972](https://github.com/lujun9972) 译者：[geekpi](https://github.com/geekpi) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


给开源爱好者的 10 个节日礼物创意

给开源爱好者的吃灰礼物?

# 给开源爱好者的 10 个节日礼物创意

>
> 从 DIY 项目到电脑再到书籍，这份清单提供了培养创造力、学习和探索的礼物创意。
>
>
>

你是否正在为你的节日购物清单上的人寻找很酷的礼物，或者为你自己的愿望清单寻找建议？如果是这样，请考虑以下十条建议。这些礼物建议中的每一个都以某种方式与开源精神相联系。从 DIY 项目到电脑再到书籍，这份清单提供了培养创造力、学习和探索的礼物建议。

### System76 电脑

你身边的某人需要一个新的台式机、笔记本电脑或服务器吗？[System76](https://system76.com) 应该是你首先应该寻找的地方之一。想找一些轻巧的移动设备吗？轻巧的 14 英寸 [Lemur Pro](https://system76.com/laptops/lemur) 笔记本电脑是一个很好的选择。需要一个有大量处理能力、内存和存储空间的台式机？各种 [Thelio](https://system76.com/desktops/) 台式机中就有一款是你要找的。还有很多介于两者之间的其他选择。他们的电脑配备了 Ubuntu 或 Pop!\_OS，这是该公司自己的基于 Ubuntu 的 Linux 发行版，并有终身支持。System76 也支持 [维修权法案](https://blog.system76.com/post/646726872371200000/carl-testimony-hb21-1199mp3)。虽然不是唯一一家销售安装 Linux 系统的电脑的厂商，但他们肯定是最受欢迎的厂商之一。

* **价格不一**

### 树莓派 400 个人电脑套件

树莓派几乎不需要介绍。自从 2012 年第一款树莓派风靡全球以来，树莓派一直是最受欢迎的单板计算机之一，可用于教育、业余爱好者和手工爱好者们。[树莓派 400 个人电脑套件](https://www.raspberrypi.com/products/raspberry-pi-400/) 延续了这一趋势。除了一个显示器之外，这个套件包含了人们开始使用所需的一切。花 100.00 美元，你就可以得到树莓派 400（树莓派 4 系列的一个变种，内置于一个键盘外壳中）、一只鼠标、电源、micro HDMI 转 HDMI 电缆、一张预装树莓派操作系统的 SD 卡，以及一本《树莓派初学者指南》。虽然树莓派 400 不是世界上最强大的计算机，但对于你的礼物清单上的孩子来说，树莓派 400 完全可以作为一个得当的入门计算机。

* **价格：100.00 美元**

### 树莓派 Build HAT

树莓派的诸多优势之一是它能够通过各种附加板进行扩展。最近推出的一款附加板 —— [树莓派 Build HAT](https://www.raspberrypi.com/products/build-hat/)，可以用树莓派来控制多达四个乐高技术电机或 [乐高教育 SPIKE](https://education.lego.com/) 产品系列的传感器。Build HAT 适用于任何带有 40 针 GPIO 接头的树莓派。你可以使用专门开发的 Python 库对项目进行编码。Build HAT 可以使用外部 8V 直流电源（如 [官方 Built HAT 电源](https://www.raspberrypi.com/products/build-hat-power-supply/)）或 7.5V 电池组为自身、树莓派板以及乐高电机和传感器供电。

* **价格：25.00 美元（加上一个项目所需的零件和配件的费用）**

### CrowPi2

[CrowPi2](https://www.crowpi.cc/) 是一个 STEM 学习项目集合，放在一个由树莓派驱动的笔记本电脑式的机箱里。CrowPi2 套件有三种尺寸：基本型、高级型和豪华型。基本型套件包括一些附件，但不包括树莓派。高级套装配备了一个拥有 4GB 内存的树莓派 4B，并有比基本套装更多的配件选择。豪华套装配备了最多的配件和一个拥有 8GB 内存的树莓派 4B。所有三个套件都有太空灰或银色可供选择。一个可选的移动电源可以在不插入电源插座时为 CrowPi2 提供电源。如果你想了解更多关于 CrowPi2 的信息，你可以阅读 Seth Kenlon 的 [对 CrowPi2 的点评](https://opensource.com/article/21/9/raspberry-pi-crowpi2)。

* **基本套件：339.99 美元**
* **高级套件：469.99 美元**
* **豪华套装：529.99 美元**
* **可选的移动电源：19.00 美元**

### Keebio Quefrency 键盘

推荐人：John Hall

[Keebio Quefrency 键盘](https://keeb.io/collections/quefrency-split-staggered-65-keyboard) 对于任何想组装自己的键盘的人来说，都是一个很好的节日礼物！它是一款 65% 键盘，这可能是大多数人愿意去做的最小的键盘，因为它有 Home、PgUp、PgDn 和方向键。它是一个分体式的人体工程学键盘，但如果你难以适应分体式的键盘，你可以将两半重新组合起来。最重要的是，最新版本的 Quefrency 有热插拔插座，所以你可以在不需要焊接任何东西的情况下组装它。

下面是一个廉价的 Quefrency 键盘组件：

* [Quefrency rev4 PCBs](https://keeb.io/collections/quefrency-split-staggered-65-keyboard/products/quefrency-rev-4-65-split-staggered-keyboard) 带有热插拔插座，加上 FR4 板（左边没有宏，右边有 65%）
	+ 80 + 28 美元
* [2u 稳定器（5 个）](https://keeb.io/collections/diy-parts/products/cherry-mx-stabilizer?variant=43449871046)
	+ 10 美元
* [按键开关（70 个）](https://divinikey.com/collections/linear-switches/products/gateron-milky-yellow-linear-switches?variant=32193385201729)
	+ 16 美元
* [键帽](https://drop.com/buy/artifact-bloom-series-keycap-set-vintage)
	+ 45 美元
* [2.25u G20 左空格键](https://pimpmykeyboard.com/g20-2-25-space-pack-of-4/) 和 [2.75u G20 右空格键](https://pimpmykeyboard.com/g20-2-75-space-pack-of-4/)
	+ 8 + 8 美元
* [USB C 到 USB C 键盘连接器](https://keeb.io/products/usb-c-to-usb-c-cable?variant=32313985728606)
	+ 4 美元
* **共计 199 美元**（不包括运费）

正如零件清单中指出的，Keebio Quefrency rev4 需要五个稳定器：

1. 左 Shift 键
2. 左空格键
3. 右空格键
4. 回车键
5. 退格键

Keebio Quefrency rev4 目标是构建 65% 键盘，它有一个缩短的右 Shift 键，不需要稳定器。许多键帽套装，甚至是相对便宜的套装，如 Artifact Bloom 和 Glorious GPBT，包括一个缩短的右 Shift 键，适合大多数像这样的键盘。难的是找到匹配的分体式空格键键帽。但你可以从 Pimp My Keyboard 等地方买到空格键的键帽，效果很好。不幸的是，几乎不可能从不同的制造商那里得到匹配的颜色。即使你选择白色键帽和白色空格键，其中一个也可能比另一个更灰。为什么不接受这种差异呢？试着将白色和灰色的键帽与红色或蓝色的空格键配对一下。

### Petoi Nybble 开源机器猫

[Petoi Nybble 开源机器猫](https://www.petoi.com/pages/petoi-nybble-overview) 是一个用于建造机器宠物猫的套件。该套件包含了建造该项目所需的一切，但不包括电池。Nybble 需要两块 14500 锂离子可充电 3.7V 电池，可提供约 45 分钟的游戏时间。一旦组装完成，可以使用 Arduino IDE、Python API 或 Android/iOS 应用程序对该猫进行编程/控制。查看 [Nybble 用户手册](https://nybble.petoi.com/) 了解更多细节。

* **价格：249.00 美元**

### 《苍穹浩瀚》小说系列

James S.A. Corey 的《<ruby>   苍穹浩瀚  <rt>  Expanse </rt></ruby>》系列的最后一部小说正好在假日送礼季节推出。定于 11 月 30 日发行的《<ruby>   利维坦瀑布  <rt>  Leviathan Falls </rt></ruby>》将结束这个史诗般的九部科幻小说系列的主要叙事，探索人类在太空的未来。按顺序，该系列的九本书是《<ruby> 利维坦觉醒 <rt>  Leviathan Wakes </rt></ruby>》、《<ruby> 卡利班之战 <rt>  Caliban's War </rt></ruby>》、《<ruby> 阿巴顿之门 <rt>  Abaddon's Gate </rt></ruby>》、《<ruby> 西波拉燃烧 <rt>  Cibola Burn </rt></ruby>》、《<ruby> 复仇游戏 <rt>  Nemesis Games </rt></ruby>》、《<ruby> 巴比伦的灰烬 <rt>  Babylon's Ashes </rt></ruby>》、《<ruby> 波斯波利斯的崛起 <rt>  Persepolis Rising </rt></ruby>》、《<ruby> 提亚马特之怒 <rt>  Tiamat's Wrath </rt></ruby>》和《<ruby> 利维坦瀑布 <rt>  Leviathan Falls </rt></ruby>》。明年还将出版一本短篇小说和长篇小说集。这些故事和长篇小说中的大部分已经有了电子书格式，但这是第一次的印刷合集。给你身边的科幻小说读者购买该系列的第一本书，让他们开始阅读，或者给他们购买整个系列。

* **第一至第六本：17.99 美元（平装本）**
* **第七本和第八本：18.99 美元（平装本）**
* **第九本：30.00 美元（精装本）**

### 书籍

如果你正在寻找书籍推荐，而《苍穹浩瀚》的推荐并不符合你的需求，可以考虑 [这份 2021 年夏季阅读清单](https://opensource.com/article/21/6/2021-opensourcecom-summer-reading-list) 中的书籍。这份清单包含八本适合各种阅读口味的书籍推荐。从《<ruby> 贝奥武夫 <rt>  Beowulf </rt></ruby>》的现代翻译到关于技术的非小说类书籍，那里应该有适合你生活中的读者的东西。如果 2021 年夏季阅读清单中没有你要找的东西，这篇文章还包含了以前所有夏季阅读清单的链接，其中提供了十多份建议清单。

* **价格不一**

### 贴纸

大流行期间的虚拟会议的一个缺点是，你无法带走从各个供应商摊位上收集的贴纸。对于那些喜欢用贴纸装饰笔记本电脑的人来说，这可能意味着他们最新的笔记本电脑目前还没有通常的装饰品。如果这听起来像你生活中的某个人，考虑给他们买一个来自 Sticker Mule 的 [Unixstickers 包](https://www.stickermule.com/unixstickers)。该包有三种不同的尺寸：专业版，包含十张贴纸；精英版，包含专业版中的所有贴纸，再加十张贴纸；终极版，包含精英版中的所有内容，再加十张贴纸。这些贴纸涵盖了许多开源项目，使这些捆绑包成为参观供应商展位和亲临会议的贴纸交换台的下一个最佳选择。

* **专业包：1.00 美元**
* **精英包：19.00 美元**
* **终极包：24.00 美元**

### 向开源组织慈善捐赠

如果你购物清单上的人已经拥有了一切（或者不想要任何有形的礼物），可以考虑以他们的名义向开源项目进行慈善捐赠。这个 [开源组织](https://opensource.com/resources/organizations) 列表中有很多组织供你选择。你、以其名义捐款的人和收到你捐款的组织都会很高兴，你的礼物有助于使开源变得更好。

---

via: <https://opensource.com/article/21/11/open-source-holiday-gifts>

作者：[Joshua Allen Holm](https://opensource.com/users/holmja) 选题：[lujun9972](https://github.com/lujun9972) 译者：[wxy](https://github.com/wxy) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


硬核观察 #532 实验证明标准量子力学必须用复数表达

Summary: 更多：• Rust 编写的一些 GNU Coreutils 工具更快了 • 用 Rust 开发的勒索软件加大了解决勒索的难度

对世界的观测越多，我们就越是对世界一无所知。

因为所有的已知都是片面和局限的。

所以庄子说的对，什么都不知道的人才是真正了解"道"的人。

# 硬核观察 #532 实验证明标准量子力学必须用复数表达

### 实验证明标准量子力学必须用复数表达

在经典物理学中，人们只用实数就可以写出所有定律，而复数仅仅作为一个方便的计算工具被主观引入。而随着量子力学诞生，复数逐渐表现出某种直觉上的不可排除性。但量子物理是否确实必须使用复数，是一个长期未解决的基础性问题。近期，国外的科学家团队提出一种利用确定性纠缠交换来验证复数必要性的贝尔不等式类型的检验方法。中科大团队基于自主设计研发的超导量子线路和高精度量子操控技术，在世界上首次 [完成了该实验](https://journals.aps.org/prl/abstract/10.1103/PhysRevLett.128.040403)。该实验结论支持量子物理需要使用复数。

>
> 老王点评：虚数、复数这种原本看起来只是纯数学概念的数字，和量子力学这种“不实在”的东西果然是绝配。
>
>
>

### Rust 编写的一些 GNU Coreutils 工具更快了

人们一直在努力编写一个基于 Rust 的 GNU Coreutils 替代品。近一年来，该 [Rust Coreutils](https://sylvestre.ledru.info/blog/2022/01/29/an-update-on-rust-coreutils) 已经能够运行一个基本的 Debian 系统。不仅更安全，而且它的一些二进制文件性能更好。目前剩下的唯一没替换的二进制文件是 stty。随着优化和兼容性工作的进行，将可以让 Debian、Ubuntu 能够轻松地默认切换到 Rust Coreutils，而不需要任何黑科技或古怪的配置。

>
> 老王点评：真的能完整替换了 Coreutils，那对进一步扩展 Rust 在 Linux 生态中的影响非常有意义。
>
>
>

### 用 Rust 开发的勒索软件加大了解决勒索的难度

去年 12 月，研究人员发现了据信是第一种由专业网络犯罪组织用 Rust 语言开发的勒索软件 ALPHV/BlackCat。用 Rust 开发的程序更难找到常见的编程漏洞，如果有更多网络犯罪组织切换到 Rust 语言，将会加大安全公司发现勒索软件漏洞的 [难度](https://krebsonsecurity.com/2022/01/who-wrote-the-alphv-blackcat-ransomware-strain/)。这会导致安全公司为被勒索的组织找到解锁密钥更加困难。

>
> 老王点评：这充分体现了两面性。我必须说，Rust 是无辜的……
>
>
>


Jrnl：你的 Linux 终端数字日记

Summary: 这个方便的小程序是 Jrnl，它可以让你在终端中直接创建、搜索和查看日记条目。

这个方便的小程序是 Jrnl，它可以让你在终端中直接创建、搜索和查看日记条目。

# Jrnl：你的 Linux 终端数字日记

想象一下：有人伤了你的心，而你想要的是心无旁骛地在日记中写下你的感受。你明白这种感受吗？没有吗？我也不知道。我没有心碎过（或者也许我心碎了，但我不想告诉你）。

但我还是想向你展示一个奇妙的极简的开源的记事应用来保存日记。

这个方便的小程序是 [Jrnl](https://jrnl.sh/en/stable/)，它可以让你在终端中直接创建、搜索和查看日记条目。

用 Jrnl 创建新的笔记就像下面一样简单：

```
jrnl yesterday: I read an amazing article on It’s FOSS. I learn about a minimalist app called Jrnl, I should try it.

```

看起来很简单，不是吗？关键字 “yesterday” 在这里是一个触发器，它把你的笔记保存到昨天的日期。记住，它被称为 Jrnl（日记）是有原因的。它的主要目的是保存日记。

如果你喜欢把你的想法写成日记，或者只是想尝试一下，让我分享一下安装和使用的一些细节。

### 在你的 Linux 系统上安装和使用 Jnrl

Jrnl 可以用 pipx 或 Homebrew 包管理器安装。

我在测试中使用了 Homebrew，所以我将列出这些步骤。首先获取 Homebrew：

```
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

```

这就好了！如果你需要更多的信息，我们有一个关于 [在 Linux 上安装 Homebrew](https://itsfoss.com/homebrew-linux/) 的详细教程。

当你安装了 Homebrew 包管理器后，用它来安装 Jrnl：

```
brew install jrnl

```

安装后，只要初始化 jrnl 并开始写你的随机想法。

你还记得本文开头的第一个例子吗？让我们再来看看它吧！

```
jrnl yesterday: I read an amazing article in It’s FOSS. I learn about a minimalist app called Jrnl, I should try it.

```

在这一行中，我用命令 `jrnl` 在一个时间戳旁启动程序，在这个例子中是 `yesterday`。我写了一个冒号 `:`，表示我将开始写一些东西，在第一个句子标记 `.?!:`（在这里是句号 `.`）之前包含的所有内容将是标题。最后，这个句号旁边的所有内容将被视为文件的主体。

目前，Jnrl 有两种模式：撰写和查看；前面的步骤用于撰写条目，但如果你想查看，例如，之前写过的条目，语法也很简单，你只需输入下一行。

```
jrnl -on yesterday

```

认为有人可能会阅读你的日记和想法？你也可以对你的条目进行加密。

这就好了！ 当然，Jrnl 还有很多功能，你可以通过下面这行轻松找到：

```
jrnl --help

```

你也可以参考 [其官方网站](https://jrnl.sh/en/stable/overview/) 上的文档。记住，在这样的一个开源项目中，文档是你最好的朋友。享受它吧！

### 总结

当然，Jrnl 并不适合所有人。大多数命令行工具都不适合。但如果你在终端中生活和呼吸，并喜欢记录你的想法，它就适合你。

请不要忘记在评论中与我们分享你的个人经验，或者更好的是，如果你想让更多的人了解这个项目，你可以在各个社区和论坛上分享这个帖子。

---

via: <https://itsfoss.com/jrnl/>

作者：[Marco Carmona](https://itsfoss.com/author/marco/) 选题：[lujun9972](https://github.com/lujun9972) 译者：[geekpi](https://github.com/geekpi) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


黑曜石：Markdown 硬核用户创建知识图谱的 Notion 替代品

# 黑曜石：Markdown 硬核用户创建知识图谱的 Notion 替代品

我喜欢用 Markdown 来写文章和做笔记。我不确定我是否符合 “Markdown 硬核用户”的标准，但我觉得它对我的写作工作很方便。

我在 Linux 上试过几个 Markdown 编辑器。我最喜欢的是 [Joplin](https://itsfoss.com/joplin/)，它可以用来做笔记和组织笔记，并在 Nextcloud 上保留备份。还有 [Zettlr](https://itsfoss.com/zettlr-markdown-editor/)，它适合于研究人员。

最近，我遇到了另一个 Markdown 编辑器，它在文档整理方面意外的不错。你可以用它将你的文件相互连接起来，并以类似思维导图的图形方式显示出来。

这就是 <ruby>   黑曜石  <rt>  Obsidian </rt></ruby> 的主要吸引力，你可以用图形的方式查看你的 Markdown 笔记，特别是当这些笔记需要相互连接的时候。当然，它也有其他的功能。

>
> 非 FOSS 警报！
>
>
> 最初，我以为黑曜石是一个开源软件。当我寻找他们的源代码库时（在我写完这篇文章后），我才意识到它是 [免费使用的应用程序](https://obsidian.md/eula)，但不是 FOSS（自由及开源软件）。这让我觉得惭愧，因为它实在是一个好应用，好到让我继续在这里介绍它。
>
>
>

### 黑曜石 Markdown 编辑器的功能

在黑曜石里，你会发现你期望从一个标准的 Markdown 编辑器得到的所有功能。它有一个侧边栏来显示文件夹结构，还有一个主窗格来显示你的文档。你可以选择在“编辑”和“阅读”视图之间切换。

默认情况下，它只显示一个窗格，但你可以根据自己的喜好添加更多的窗格。例如，我添加了一个新的窗格来同时显示编辑和查看模式，这样就可以在同一时间编辑和预览文档。

你可以通过按 `[[` 键来创建现有笔记的内部链接。它可以打开一个文件搜索器，让你从同一项目（这里称为 “<ruby> 金库 <rt>  vault </rt></ruby>”）中的现有笔记中选择。

你可以切换到“图表视图”来显示同一个“金库”（项目）中的笔记之间的联系。我快速做了几个内部链接来进行测试，你可以看到它显示了文件之间的相互联系。

你可以图形化地进行搜索和替换。对笔记进行备注、合并文件、在笔记之间移动标题等等。

它还有一个命令模式（位于编辑器的左侧侧边栏），允许你控制编辑器的各个方面。其中一些“动作”也可以用键盘快捷键来完成。

这还不是全部。黑曜石还有一个 [社区市场](https://obsidian.md/plugins)，在那里你可以找到并安装插件来扩展其功能。例如，你可以下载看板插件，用黑曜石来管理项目和任务。

这里还有很多功能，我不可能把它们全部列出。即使是项目网站也没有一次性列出所有的功能，这是很无奈的。

### 安装黑曜石

黑曜石是一个跨平台的应用程序，它可用于 Linux、macOS、Windows、Android 和 iOS。

对于 Linux，你可以选择使用 AppImage、Snap 或 Flatpak。我使用 AppImage 版本进行测试。你可以在其下载页面找到相关信息和文件。

* [下载黑曜石](https://obsidian.md/download)

### 它值得使用吗？

黑曜石有一个学习曲线。你当然需要了解 [Markdown 的基础知识](https://itsfoss.com/markdown-guide/)，但是除了编辑和显示 Markdown 文本之外的任何功能，你都需要在这里学习。

几乎任何应用程序都需要一些学习，但要想充分使用黑曜石，你需要付出比平常更多的努力。

但如果你是一个痴迷于 Markdown 的用户，并且有成吨的文档，这完全是值得的。这里的好处是它有 [丰富的文档](https://help.obsidian.md/Obsidian/Index) 来帮助你的学习过程。当你点击帮助按钮（显示为问号）时，这些文档也可以从应用界面中获得。

黑曜石的界面让我觉得我在使用 VS Code，这并不是一件坏事。

如果你以 Markdown 为生，并且对正确管理你的文档很着迷，你应该考虑尝试一下黑曜石。

如果你足够喜欢它并开始定期使用它，也许你可以 [考虑捐赠](https://obsidian.md/pricing) 或使用他们的高级产品以支持这个项目的发展。高级产品包括选择将你的笔记同步到他们的云端，或者将你的笔记发布到网站上。

黑曜石已经做得很专业和漂亮了。它就像 VS Code 的 Markdown 版，它有可能成为 [Notion](https://www.notion.so/) 等的真正替代品。

---

via: <https://itsfoss.com/obsidian-markdown-editor/>

作者：[Abhishek Prakash](https://itsfoss.com/author/abhishek/) 选题：[lujun9972](https://github.com/lujun9972) 译者：[wxy](https://github.com/wxy) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


硬核观察 #533 英国提议自动驾驶的汽车事故由汽车制造商承担责任

Summary: 更多：• AlphaZero 创造了不同的国际象棋变体 • 欧洲首台超 5000 量子比特的量子计算机于德国启动

# 硬核观察 #533 英国提议自动驾驶的汽车事故由汽车制造商承担责任

### 英国提议自动驾驶的汽车事故由汽车制造商承担责任

英国法律委员会建议引入新的 [自动驾驶汽车法案](https://www.lawcom.gov.uk/legal-reforms-to-allow-safe-introduction-of-automated-vehicles-announced/)，如果司机选择汽车的自动驾驶模式，期间发生交通事故，那么司机将无需被追责，而是由自动驾驶实体（如汽车制造商和自动驾驶软件、系统开发商等）承担责任。[他们认为](https://www.lexology.com/library/detail.aspx?g=fb37cb52-b695-4373-aa9e-6387b6ea8dfb)，启用自动驾驶功能后驾驶座上的人将不再是司机，而是“使用负责人”，他们不能因为驾驶行为产生的后果而被追责起诉，包括危险驾驶、超速和闯红灯等。

>
> 老王点评：如果得到通过，必然会导致软件开发商开发更安全可靠的软件，而相应的软件费用也会进一步增加。
>
>
>

### AlphaZero 创造了不同的国际象棋变体

“王车易位”这步棋是在 17 世纪才以目前的形式出现的。如果没有将它纳入规则，国际象棋会是什么样子？研究表明，在现代国际象棋规则之外，还有丰富的可能性，一些规则变体至少会与经典国际象棋一样吸引人。AlphaZero 训练了 9 种不同的国际象棋“[变体](https://cacm.acm.org/magazines/2022/2/258230-reimagining-chess-with-alphazero/fulltext)”，它与自己下了 11,000 盘棋。这些变体包括：不允许王车易位；棋子只能移动一个位置；兵在任何回合都可以选择走两格；能吃掉自己的棋子等等。

>
> 老王点评：AI 从向人学习到胜过人类，现在更进一步可以为人类设计游戏规则了，并且人类还是下不过它。
>
>
>

### 欧洲首台超 5000 量子比特的量子计算机于德国启动

这是一台量子退火计算机，本质上与绝热量子计算相同，该机器旨在处理优化和采样问题。量子退火方式的优势在于，其系统稳定性要远高于量子门方式。该量子计算机部署在德国利希研究中心，是由加拿大 D-Wave 公司制造，是该公司迄今为止计算能力最强大的机器。欧盟计划未来六年内花费 70 亿欧元在超级计算机上，其中一些将用于量子项目。

>
> 老王点评：全世界的量子计算的竞赛正在展开，但是这也是一个吞金兽啊。
>
>
>


系统管理员排除故障的五种武器

Summary: 当你不知道从哪里开始时，这五个工具可以帮助你找到用户的 IT 问题的源头。

echo CODE > /dev/tcp/IP_or_HOSTNAME/PORT<br />
echo CODE> /dev/udp/IP_or_HOSTNAME/PORT

当你不知道从哪里开始时，这五个工具可以帮助你找到用户的 IT 问题的源头。

# 系统管理员排除故障的五种武器

>
> 当你不知道从哪里开始时，这五个工具可以帮助你找到用户的 IT 问题的源头。
>
>
>

作为系统管理员，我每天都面临着需要快速解决的问题，用户和管理人员期望事情能够顺利地进行。在我管理的这样的一个大型环境中，几乎不可能从头到尾了解所有的系统和产品，所以我必须使用创造性的技术来找到问题的根源，并（希望可以）提出解决方案。

这是我 20 多年来的日常经验！每天上班时，我从不知道会发生什么。因此，我有一些快速而简陋的技巧，当一个问题落在我的身上，而我又不知道从哪里开始时，我一般就会采用这些技巧。

但等一下！在你直接打开命令行之前，请花一些时间与你的用户交谈。是的，这可能很乏味，但他们可能会有一些好的信息给你。请记住，用户可能没有你那么多的经验，你需要对他们说的东西进行一些解释。试着清楚地了解正在发生什么和应该发生什么，然后用技术语言自己描述故障。请注意，大多数用户并不阅读他们面前的屏幕上的内容；这很可悲，但却是事实。确保你和用户都阅读了所有的文字，以收集尽可能多的信息。一旦你收集到了这些信息，就打开命令行，使用这五个工具。

### Telnet

让我从一个经典开始。[Telnet](https://en.wikipedia.org/wiki/Telnet) 是 SSH 的前身，在过去，它在 Unix 系统上用来连接到远程终端，就像 SSH 一样，但它没有加密。Telnet 在诊断网络连接问题方面有一个非常巧妙和宝贵的技巧：你可以 Telnet 到不是专属于它 TCP 端口（23/TCP）。要做到这一点，可以像平时一样使用 Telnet，但在末尾加上 TCP 端口（例如 `telnet localhost 80`），以连接到一个网络服务器。这可以让你能够检查一个服务器，看看服务是否正在运行，或者防火墙是否阻挡了它。因此，在没有应用程序客户端，甚至没有登录应用程序的情况下，你可以检查 TCP 端口是否有反应。如果你知道怎么做，有时你可以通过在 Telnet 提示符手动输入并获得响应以检查。网络服务器和邮件服务器是你可以这样做的两个例子。

### Tcpdump

[tcpdump](https://www.tcpdump.org/) 工具可以让你检查网络上正在传输的数据。大多数网络协议都相当简单，如果你把 `tcpdump` 和一个像 [Wireshark](https://www.wireshark.org/) 这样的工具结合起来，你会得到一个简单而好用的方法来浏览你所捕获的流量。在如下的例子中，我在下面的窗口中检查数据包，在上面的窗口连接到 TCP 3260 端口。

这张截图显示了在现实世界中使用 Wireshark 查看 iSCSI 协议的情况；在这种情况下，我能够确定我们的 QNAP 网络附加存储的配置方式有问题。

### find

如果你不知道从哪里开始，[find](https://en.wikipedia.org/wiki/Find_%28Unix%29) 命令就是最好的工具。在其最简单的形式中，你可以用它来“寻找”文件。例如，如果我想在所有的目录中进行递归搜索，得到一个 conf 文件的列表，我可以输入：

```
find . -name '*.conf'.

```

但是，`find` 的一个隐藏的宝藏是，你可以用它对它找到的每个项目执行一个命令。例如，如果我想得到每个文件的长列表，我可以输入；

```
find . -name '*.conf' -exec ls -las {}\;

```

一旦你掌握了这种技术，你就可以用各种创造性的方法来寻找、搜索和以特定方式执行程序。

### strace

我是在 Solaris 上认识 [strace](https://strace.io/) 这个概念的，在那里它被称为 `truss`。今天，它仍然像多年前一样有用。`strace` 允许你在进程实时运行时检查它在做什么。使用它很简单，只要使用命令 `ps -ef`，找到你感兴趣的进程 ID。用 `strace -p <进程 ID>` 启动 `strace`，它会开始打印出一大堆东西，一开始看起来像垃圾信息。但如果你仔细观察，你会看到你认识的文字，如 `OPEN` 和 `CLOSE` 这样的词和文件名。如果你想弄清楚一个程序为什么不工作，这可以引导你走向正确的方向。

### grep

把最好的留到最后：[grep](https://en.wikipedia.org/wiki/Grep)。这个工具是如此有用和强大，以至于我很难想出一个简洁的方法来描述它。简单地说，它是一个搜索工具，但它的搜索方式使它如此强大。在问题分析中，我通常会用 `grep` 搜索一堆日志来寻找一些东西。一个叫 `zgrep` 的配套命令可以对压缩文件做同样的事情。在下面的例子中，我使用 `zgrep bancroft /var/log/*` 在所有的日志文件中进行 grep，以查看我在系统中的工作情况。我使用 `zgrep` 是因为该目录中有压缩文件。

使用 `grep` 的另一个好方法是将其他工具的输出通过管道输送到它里面；这样，它就可以作为一种过滤器来使用。在下面的例子中，我列出了 auth 文件，并通过使用 `cat auth.log |grep bancroft` 来搜索我的登录信息，看看我都做了什么。这也可以写成 `grep bancroft auth.log`，但我这里用管道（`|`）来证明这一点。

### 其他需要考虑的工具

你可以用这些工具做更多的事情，但我希望这个简单的介绍能给你一个窗口，让你了解如何用它们来解决你遇到的讨厌的问题。另一个值得你注意的工具是 [Nmap](https://nmap.org/)，我没有包括它，因为它是如此全面，需要一整篇文章（或更多）来解释它。最后，我建议学习一些白帽和黑客技术；在试图找出问题的根源时，它们可能非常有益，因为它们可以帮助你收集对决策至关重要的信息。

---

via: <https://opensource.com/article/20/1/ops-hacks-sysadmins>

作者：[Stephen Bancroft](https://opensource.com/users/stevereaver) 选题：[lujun9972](https://github.com/lujun9972) 译者：[wxy](https://github.com/wxy) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


使用 DeepSpeech 在你的应用中实现语音转文字

Summary: 应用中的语音识别不仅仅是一个有趣的技巧，而且是一个重要的无障碍功能。

支持中文吗

来自广东广州的 Chrome Mobile 71.0|Android 6.0 用户

aa@xxx:~/cs330/Deepspeech$ deepspeech --model deepspeech*pbmm \

--scorer>   --scorer deepspeech*scorer \

>   --audio toefl1.mp3

deepspeech: command not found

aa@xxx:~/cs330/Deepspeech$ deepspeech

deepspeech: command not found

使用的windows wsl ubuntu，有点像win10的path问题，请问这个如何解决

应用中的语音识别不仅仅是一个有趣的技巧，而且是一个重要的无障碍功能。

# 使用 DeepSpeech 在你的应用中实现语音转文字

>
> 应用中的语音识别不仅仅是一个有趣的技巧，而且是一个重要的无障碍功能。
>
>
>

<img src="content_image/album_202202_01_102117mvnx1o9zxxikz91z.jpg" alt="" title="Colorful sound wave graph">

计算机的主要功能之一是解析数据。有些数据比其他数据更容易解析，而语音输入仍然是一项进展中的工作。不过，近年来该领域已经有了许多改进，其中之一就是 DeepSpeech，这是 Mozilla 的一个项目，Mozilla 是维护 Firefox 浏览器的基金会。DeepSpeech 是一个语音到文本的命令和库，使其对需要将语音输入转化为文本的用户和希望为其应用提供语音输入的开发者都很有用。

### 安装 DeepSpeech

DeepSpeech 是开源的，使用 Mozilla 公共许可证（MPL）发布。你可以从其 [GitHub](https://github.com/mozilla/DeepSpeech) 页面下载源码。

要安装，首先为 Python 创建一个虚拟环境：

```
$ python3 -m pip install deepspeech --user

```

DeepSpeech 依靠的是机器学习。你可以自己训练它，但最简单的是在刚开始时下载预训练的模型文件。

```
$ mkdir DeepSpeech
$ cd Deepspeech
$ curl -LO \
  https://github.com/mozilla/DeepSpeech/releases/download/vX.Y.Z/deepspeech-X.Y.Z-models.pbmm
$ curl -LO \
  https://github.com/mozilla/DeepSpeech/releases/download/vX.Y.Z/deepspeech-X.Y.Z-models.scorer

```

### 用户应用

通过 DeepSpeech，你可以将语音的录音转录成书面文字。你可以从在最佳条件下干净录制的语音中得到最好的结果。然而，在紧要关头，你可以尝试任何录音，你可能会得到一些你需要手动转录的东西。

为了测试，你可以录制一个包含简单短语的音频文件：“This is a test. Hello world, this is a test”。将音频保存为一个 `.wav` 文件，名为 `hello-test.wav`。

在你的 DeepSpeech 文件夹中，通过提供模型文件、评分器文件和你的音频启动一个转录：

```
$ deepspeech --model deepspeech*pbmm \
  --scorer deepspeech*scorer \
  --audio hello-test.wav

```

输出到标准输出（你的终端）：

```
this is a test hello world this is a test

```

你可以通过使用 `--json` 选项获得 JSON 格式的输出：

```
$ deepspeech --model deepspeech*pbmm \
  -- json
  --scorer deepspeech*scorer \
  --audio hello-test.wav

```

这就把每个词和时间戳一起渲染出来：

```
{
  "transcripts": [
    {
      "confidence": -42.7990608215332,
      "words": [
        {
          "word": "this",
          "start_time": 2.54,
          "duration": 0.12
        },
        {
          "word": "is",
          "start_time": 2.74,
          "duration": 0.1
        },
        {
          "word": "a",
          "start_time": 2.94,
          "duration": 0.04
        },
        {
          "word": "test",
          "start_time": 3.06,
          "duration": 0.74
        },
[...]

```

### 开发者

DeepSpeech 不仅仅是一个转录预先录制的音频的命令。你也可以用它来实时处理音频流。GitHub 仓库 [DeepSpeech-examples](https://github.com/mozilla/DeepSpeech-examples) 中有 JavaScript、Python、C# 和用于 Android 的 Java 等各种代码。

大部分困难的工作已经完成，所以集成 DeepSpeech 通常只是引用 DeepSpeech 库，并知道如何从主机设备上获得音频（你通常通过 Linux 上的 `/dev` 文件系统或 Android 和其他平台上的 SDK 来完成。）

### 语音识别

作为一个开发者，为你的应用启用语音识别不只是一个有趣的技巧，而是一个重要的无障碍功能，它使你的应用更容易被有行动问题的人、低视力的人和长期多任务处理的人使用。作为用户，DeepSpeech 是一个有用的转录工具，可以将音频文件转换为文本。无论你的使用情况如何，请尝试 DeepSpeech，看看它能为你做什么。

---

via: <https://opensource.com/article/22/1/voice-text-mozilla-deepspeech>

作者：[Seth Kenlon](https://opensource.com/users/seth) 选题：[lujun9972](https://github.com/lujun9972) 译者：[geekpi](https://github.com/geekpi) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


硬核观察 #534 B 站发布新项目让老动漫变高清

Summary: 更多：• 一网站因通过谷歌字体泄露访问者的 IP 地址被德国法院罚款 • Redis 7.0 即将迎来“重大性能优化”

可以相信b站确实没有好的开源管理，毕竟上一次「开源」了自己的后端代码

来自江西赣州的 Chrome Mobile 97.0|Android 12 用户

可以相信b站确实没有好的开源管理，毕竟上一次「开源」了自己的后端代码

可以相信b站确实没有好的开源管理，毕竟上一次「开源」了自己的后端代码

# 硬核观察 #534 B 站发布新项目让老动漫变高清

### B 站发布新项目让老动漫变高清

B 站在 GitHub 发布了 [Real-CUGAN](https://github.com/bilibili/ailab/tree/main/Real-CUGAN) 项目，可让老旧动漫画面变高清。据了解，Real-CUGAN 是一个使用百万级动漫数据进行训练的，结构与 Waifu2x 兼容的通用动漫图像超分辨率模型，支持 2x/3x/4x 倍超分辨率。从官方晒出的对比图来看，修复后的画面比原版要高清得多，即便是“上古画质”如《黑猫警长》等动漫也能实现高清修复，效果十分显著。但该项目并没有指定使用的开源许可证，仅仅只是公开了源代码。

>
> 老王点评：“开源”值得鼓励，但是看来他们在“开源”之前没想好，这或许是 B 站在开源方面没有明确的管理和政策吧。
>
>
>

### 一网站因通过谷歌字体泄露访问者的 IP 地址被德国法院罚款

该网站通过在其网页上加入谷歌字体托管的字体，在未经授权和没有合法理由的情况下将身份不明的原告的 IP 地址传递给谷歌。而这违反了欧洲的《一般数据保护条例》（GDPR）。这种热链接对谷歌字体来说是正常的；这里的问题是，访问者显然没有允许他们的 IP 地址被共享。该网站被法院 [罚以](https://www.theregister.com/2022/01/31/website_fine_google_fonts_gdpr/) 110 美元，如果继续不正当使用谷歌字体，每次罚款 25 万欧元，或最多监禁 6 个月。大约有 5 千万个网站远程使用谷歌字体。

>
> 老王点评：好吧，基于两个不用说的原因，国内的网站并不需要忧虑此事。
>
>
>

### Redis 7.0 即将迎来“重大性能优化”

本周一，[Redis 7.0](https://github.com/redis/redis/releases/tag/7.0-rc1) 迎来了首个候选发布版本。其称有了“重大的性能优化”和其它功能改进，但也有些带来了一些向后兼容性问题。7.0 通过各种优化来“显著”节省了内存资源、降低写入时复制内存的开销、提升内存效率，改进 fsync 来避免大量的磁盘写入和优化延迟表现。

>
> 老王点评：一个值得关注的版本，但是我觉得 Redis 已经不是那个曾经小而美的软件了。
>
>
>


我的一年的 PinePhone 日常使用体验

Summary: 它不是每个人的理想选择，但作为一个 Linux 爱好者，我喜欢用它做实验。

不如发一篇介绍Symbian S60的手机，起码淘宝能买到

这是 Linux 社区，又不是 Symbian 社区

再说 Symbian 还需要介绍？网上文章随便一搜一大堆。

这话我就不爱听了，首先这里不是Mozilla社区，不也发它们家新闻?其次，Symbian系统还开源了，符合开源社区发开源相关的东西的传统，再者，Symbian系统手机淘宝一大堆，至少能买到，Pinephone你国内有地方买?最后，00后有多少人知道Symbian?不要介绍?

它不是每个人的理想选择，但作为一个 Linux 爱好者，我喜欢用它做实验。

# 我的一年的 PinePhone 日常使用体验

>
> 它不是每个人的理想选择，但作为一个 Linux 爱好者，我喜欢用它做实验。
>
>
>

当 Pine64 在 2019 年发布 PinePhone 时，没有人能够预见它将对移动 Linux、桌面 Linux 和隐私产生巨大的影响。

作为 [少数专为运行桌面 Linux 而设计的手机](https://itsfoss.com/linux-phones/) 之一，它具有低端安卓手机的所有功能，同时又具有笔记本电脑的多功能性。不幸的是，桌面 Linux 就是这样：它是为台式机设计的，而不是为手机设计的。

幸运的是，由于 GNOME、KDE、Pine64 和众多 Linux 社区的惊人力量，全新的桌面环境、应用程序和发行版应运而生。其中一些比较知名的包括 Plasma Mobile、[Phosh](https://github.com/agx/phosh)、Megapixels 和Mobian。

有了这些所有关键的部分，Pine64 需要做的就是销售 PinePhone，他们确实也卖出了 PinePhone。每一轮社区版（每个都预装了不同的发行版）的预购都收到了数千份订单，其中之一就是我的。

自从我在 2020 年 12 月收到我的设备后，PinePhone 一直是我日常生活中的重要组成部分，我在 2021 年全年都把它作为我的日常设备。以下是我使用它的经验。

### 它的性能就像糖浆一样

PinePhone 采用了全志 a64 系统芯片，它的功率只够完成最基本的手机任务。即使是简单的事情，如打开火狐浏览器，也需要将近 20 秒的时间，这无疑要“归功于”它仅有的 4 个核心。这与现代中高端安卓手机形成鲜明对比，所有这些手机都有至少 2GHz 的 8 核处理器。

幸运的是，社区再次介入，对数以千计的小型软件实施了优化。虽然性能仍然不如安卓系统的竞争对手，但这确实意味着 PinePhone 对于大多数手机任务来说是非常适用了，甚至在通过附带的底座使用外部显示器时，也可以使用一些面向桌面的应用程序。

即使它在这里和那里可能会有一点卡顿，PinePhone 在大多数情况下都有足够的能力。但是电池呢？它真的能续航一整天吗？

### 电池续航……没问题

虽然我很想说，由于 PinePhone 的低功耗组件，电池续航想必是超棒的。但不幸的是，情况并非如此，即使在实施了所有节电改进措施后也是如此。

经过一夜的充电，我通常在早上阅读新闻，然后在午餐时间再读一些。尽管这相当于不到一个小时的屏幕开启时间，但电池仍然持续下降约 35%，使我在下午只剩下 65%。幸运的是，这并不是一个大问题，尤其是调制解调器的深度睡眠功能工作得很好。

补充一句，几乎所有的移动电话都会将其调制解调器放入深度睡眠模式，这基本上是关闭一切除了接收电话和短信所需的功能。然后，当你接到一个电话时，调制解调器会唤醒自己和 SoC，然后开始响铃。

根据我的经验，PinePhone 上深度睡眠的实施绝对很棒，没有错过任何一个电话。因此，考虑到其糟糕的开屏续航时间，PinePhone 的关屏续航相当惊人。我在最少使用的情况下，电池寿命一直能保持在 60 小时以上，这是我的 Galaxy S20 FE 无法比拟的。

### 不要期望有什么漂亮的照片

PinePhone 仅有的 500 万像素后置摄像头和更小的 200 万像素前置摄像头，不要指望能拍出专业级别的照片。甚至许多 USB 网络摄像头也能提供更好的图像质量，以及更多的常规功能。见鬼，PinePhone 的摄像头甚至不能够拍摄视频！

它所做的少量后期处理确实有助于提升一点照片质量，尽管还不足以让它们适合发到社交媒体上。作为比较，这里是用 iPhone 4S（2011 年）和 PinePhone（2019 年）拍摄的同一张照片。

|  |  |
| --- | --- |
| iPhone 4S | PinePhone |
| iPhone 4S |  PinePhone |

在古老的 SoC、普普通通的电池续航和可怜的相机之间，很明显 PinePhone 的硬件绝对不是它的强项。但软件能拯救它吗？

### 桌面环境还是移动环境？

在这个移动 Linux 的世界里，主要有三种桌面环境领域，它们是：

* Plasma Mobile
* Phosh
* [Lomiri](https://lomiri.com/)

在我日常使用 PinePhone 的过程中，我大约花了 4 个月的时间使用每个环境。在这段时间里，我发现它们的功能、问题和成熟度各有不同，我会在这里讨论这些问题。

#### Plasma Mobile

早在 2015 年 Plasma 5 发布之后，Plasma Mobile 已经默默地在后台开发了近 7 年。从最初的发布到 PinePhone 的发布，Plasma Mobile 背后的团队成功地创造了一个相当可用的移动桌面环境。

然而，随着 PinePhone 的发布，这一切都改变了。困扰 Plasma Mobile 的许多错误已经被解决了，而且也在改进用户界面方面付出了巨大的努力。

作为一个 KDE 项目，Plasma Mobile 广泛使用了 Kirigami，这导致了一个极其一致和移动友好的应用生态系统。此外，许多先前就有的 KDE 应用程序也能完美地扩展到该平台。

由于 Maui 项目刚刚发布了他们的 Maui Shell，这个应用生态系统得到了进一步的扩展（更多信息即将发布）。由于他们强大的实用程序套件，Plasma Mobile 是一个真正的安卓替代品。

然而，这并不是说 Plasma Mobile 是完美的。即使到了 2022 年，仍有一些残余的错误和问题。然而，这被其成熟的应用生态系统、对手势的广泛使用和对移动体验的专注所抵消。

#### Phosh

Phosh 主要由 Purism 开发，是相当于 Plasma Mobile 的 GTK。它最初是为 Librem 5 打造的，自 2018 年以来一直在开发。由于只有 4 年的历史，你可能会认为 Phosh 是不成熟的，但这与事实相差甚远。

事实上，在超过 3 个月的时间里，我从未遇到过 Phosh 的崩溃，相比之下，Plasma Mobile 没几天崩溃一次。当然，由于建立在 GTK 和其他 Gnome 技术之上，Phosh 有许多可用的应用程序。一些流行的应用程序可以完美地工作，包括：

* Firefox
* Geary
* Headlines（Reddit 应用程序）
* Megapixels（相机应用）
* Gnome 地图

此外，许多为 Plasma Mobile 设计的应用程序也能完美运行，尽管它们使用 Kirigami。不幸的是，虽然有许多 GTK 应用程序，但它们并不像 Kirigami 应用程序一样适合各种环境，所以开发者必须专门使他们的应用程序与 Phosh 和 PinePhone 兼容。

此外，GTK 主要是一个面向桌面的 UI 工具包，这意味着诸如手势等功能，甚至让应用程序能够适应屏幕的功能，充其量是零散的，最糟糕的是不存在。

不过幸运的是，Purism 在默认的 Gnome 应用程序中投入了大量的工作，这些应用程序都是完全可用的，而且速度很快。

总的来说，Phosh 是非常可靠的，特别是对于台式机和笔记本电脑上的 Gnome 用户。然而，它也因为缺乏核心的移动功能和优化的应用程序而受到阻碍。

#### Lomiri

我怀疑你是否听说过它，因为它最近才改了名字。它以前被称为 Unity 8，是 Ubuntu Touch 操作系统的默认桌面环境。它也可以在 Manjaro ARM 上使用。

由于使用 Qt Quick 构建，它可能是 PinePhone 最成熟的桌面环境。它很好地利用了手势来实现核心系统功能，并且有大量专门为它制作的应用程序。

然而，它的缺点是只能在 Ubuntu Touch 上使用，因为没有一个应用程序被移植到 Manjaro。因此，它的用户受制于 Ubuntu Touch 的“锁定”风格，类似于安卓和 iOS。

虽然这对典型的用户来说可能是件好事，但 PinePhone 的用户一般都是喜欢控制自己设备的手工爱好者，而 Ubuntu Touch 则使其变得更加困难。

### 操作系统

与任何以 Linux 为主的设备一样，它有大量的发行版和操作系统可用。在写这篇文章的时候，Pine64 维基列出了 21 个单独的操作系统，它们的完整度各有不同。

然而，在这些不同的操作系统中，有四个我在 PinePhone 上有很好的体验：

* Manjaro ARM
* Mobian
* SailfishOS
* Ubuntu Touch

虽然我不打算详细介绍它们，但它们都是很好的选择，对于大多数任务来说都是完美的功能。除了 SailfishOS 之外，它们都是开源的，而 SailfishOS 大部分是开源的。

### 关于安卓应用程序的说明

正如你现在可能已经猜到的，应用程序的支持可能有点问题。即使看到 PinePhone 上有近 400 个确认可以使用的应用程序，但与安卓和 iOS 的数百万个应用程序相比，这也是相形见绌。

幸运的是，有一些方法可以解决这个问题，最简单的是使用兼容层来模拟安卓应用。在这方面，Anbox 已经成为几年来的首选。

#### Anbox

如果说 WINE 是 Windows 的兼容层，那么 Anbox 对 Android 也是如此。安装后，或打开它，因为它预装在许多发行版中，就像运行一个命令来安装一个 APK 文件一样简单。

从这里开始，该应用程序的行为就像任何 Linux 应用程序一样，尽管在性能上有很大的影响。

最近，有一群人决定解决这个问题，创建了一个名为 Waydroid 的新项目。

#### Waydroid

Waydroid 是为 PinePhone 开发的安卓模拟器的最新尝试，即使在这个早期阶段，它看起来也非常有发展前景。由于安卓应用可以直接在硬件上运行，它的性能相当惊人，特别是与 Anbox 相比。

因此，许多极为流行的应用程序都能完美运行，如 F-Droid 和 Aurora 商店。

此外，通过 Waydroid 安装的应用程序被很好地整合到 Linux 中，它们能够像其他应用程序一样被打开和关闭。

### 我对 PinePhone 的总体看法

在我使用它的过程中，我花时间使用了几乎所有可用于它的不同操作系统，以及每个桌面环境。正如我之前所说，它的性能一般都很差，尽管 Lomiri 和 Plasma Mobile 足够流畅。

我不经常拍照，所以相机的使用频率很低。然而，当我拍摄照片时，它们通常够用了，即使相片质量并不特别高。

总的来说，我认为 PinePhone 的最大弱点实际上是它的电池续航。这是因为即使只是打开它查看一下时间，也会唤醒调制解调器，导致电池迅速耗尽，除非我尽量不打开它。

幸运的是，我总是确保随身携带一块备用电池，我可以通过取下后盖换入。此外，我还可以插入一张 SD 卡，用作额外的存储空间或测试新的操作系统。

正如预期的，PinePhone 并不防水，但我发现在雨中使用它似乎没有任何损害，尽管你的经历可能有所不同。当我在室内时，我经常发现自己会借助它附带的底座来使用它的外部显示器。

在这种设置下，我对 PinePhone 作为一台笔记本电脑的能力感到惊讶。我经常发现自己可以在 LibreOffice 中编辑文件，甚至有一次还能用 Kdenlive 编辑了一段视频！

总的来说，即使有一些不足，我与 PinePhone 相处的这一年也很顺利，我从来没有发现自己对安卓的渴望。

### 获得 PinePhone

如果你想获得一台 PinePhone，下面有一个按钮，可以带你到 Pine64 的网站。在写这篇文章的时候，有两种型号可供选择，一种是 16GB 的存储空间和 2GB 的内存。另一个型号有 32GB 的存储空间和 3GB 的内存。（LCTT 译注：应该是不向中国发货的。）

本评论中使用的型号是 3GB 版本，价格为 199 美元。2GB 型号的价格为 149 美元。

* [获取 PinePhone](https://pine64.com/product-category/pinephone/)

我们只希望即将推出的 PinePhone Pro 能以其更强大的硬件保持这种积极的趋势！

---

via: <https://news.itsfoss.com/pinephone-review/>

作者：[Jacob Crume](https://news.itsfoss.com/author/jacob/) 选题：[lujun9972](https://github.com/lujun9972) 译者：[wxy](https://github.com/wxy) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


硬核观察 #535 英特尔为 Linux 开发“软件定义芯片”功能

Summary: 更多：•  黑莓以 6 亿美元出售其移动和信息专利 • OpenSSF 启动 Alpha-Omega 项目

# 硬核观察 #535 英特尔为 Linux 开发“软件定义芯片”功能

### 英特尔为 Linux 开发“软件定义芯片”功能

去年 9 月以来，英特尔一直在正在开发一个允许激活特定 CPU 功能的 Linux 内核驱动，这让人想起十年前的英特尔升级服务，它可以通过软件在某些酷睿 CPU 上激活特定功能。这个 [功能](https://www.phoronix.com/scan.php?page=news_item&px=Intel-SDSi-Linux-2022) 允许通过驱动程序和加密许可证，在特定的 CPU 上单独购买并激活特定的功能。但是英特尔并没有披露他们计划使用该驱动在未来的 CPU 上提供什么样的功能。

>
> 老王点评：可能有些人不知道，你购买的芯片中的某些电路其实没有工作的，而通过这个功能，以后就可以有选择性地付钱激活使用了。
>
>
>

### 黑莓以 6 亿美元出售其移动和信息专利

黑莓将这些围绕黑莓手机、QWERTY 键盘和黑莓信使（BBM）的 [专利出售](https://arstechnica.com/gadgets/2022/01/blackberry-sells-mobile-and-messaging-patents-for-600-million/) 给一家名为 Catapult 的新公司。在 2018 年黑莓曾将这些专利作为武器来对付 Facebook Messenger。有意思的是，这 6 亿美元的交易提供的资金中有 1.5 亿美元是期票。也就是说这家新公司，有大量的债务，没有产品，也没有现金流。这大概意味着起诉所有它认为侵犯了其新收购的专利资产的公司。

>
> 老王点评：没料到黑莓最后所剩不多的遗产居然是专利索赔。
>
>
>

### OpenSSF 启动 Alpha-Omega 项目

[该项目](https://openssf.org/press-release/2022/02/01/openssf-announces-the-alpha-omega-project-to-improve-software-supply-chain-security-for-10000-oss-projects/) 已经获得了 500 万美元的启动资金，并得到了包括微软、谷歌等的支持。Alpha-Omega 将系统地寻找开源代码中尚未发现的新漏洞，然后与项目维护者合作，使其得到修复，来提升全球开源软件供应链的安全性。该项目中的 “Alpha” 代表将帮助最关键的开源项目（包括独立项目和核心生态系统服务）的维护者识别和修复安全漏洞。而 “Omega” 则确定至少 10,000 个广泛部署的开源软件项目，将自动安全分析、评分和补救指导等应用于其维护者社区。

>
> 老王点评：看起来近来几次开源供应链的事故让业界行动起来了，希望能见到实际的效果。
>
>
>


最漂亮的 Linux 发行版之一 Nitrux 2.0 发布

有本事打开GIMP试试，嘿嘿嘿。也就桌面截图好看而已

GIMP 用的 GTK2，太丑了，啥主题都救不了。

# 最漂亮的 Linux 发行版之一 Nitrux 2.0 发布

>
> Nitrux 2.0.0 是一个令人兴奋的版本，它默认采用 XanMod 内核，并 带来了其他各种视觉和技术改进。
>
>
>

Nitrux Linux 轻松成为了 [最漂亮的 Linux 发行版](https://itsfoss.com/beautiful-linux-distributions/) 之一。

上个月，我们点评了 [Maui Shell](https://news.itsfoss.com/maui-shell-unveiled/)，它也是由 Nitrux Linux 背后的团队所设计的。现在，Nitrux 2.0.0 已经发布，并带来了一些令人兴奋的变化。

让我在这里重点介绍一下基本变化。

### Nitrux 2.0.0 有什么新东西？

这次升级包括一个新的 Linux 内核、更新的应用程序、桌面环境、固件改进，以及大大减小了 ISO 的大小。

你还会注意到布局和顶部面板等几处细微视觉变化。

### XanMod 内核 5.16.3

XanMod 内核是为新一代硬件量身定做的，以获得尽可能好的桌面体验。

与许多其他 Linux 发行版中自带的 Linux 内核相比，你会发现它有一些自定义设置和新功能，可以提高你的使用体验。

在 Nitrux 2.0.0 中，默认选择了 XanMod 内核 5.16.3。当然你仍然可以选择最新的主线 LTS 或非 LTS（5.15.17、5.16.3）Linux 内核。

别忘了，如果你需要，你还可以安装 Liquorix 和 Libre 内核。

### 更新布局和面板的变化

顶部面板现在显示了窗口控制、标题、全局菜单和系统托盘区。

布局仍然与以前的版本相似，但有一些位置的调整，比如将应用程序菜单添加到<ruby> 基座 <rt>  dock </rt></ruby>中，应用程序菜单是 Launchpad Plasma（感谢 [adhe](https://www.pling.com/u/adhe/)）。

此外，你应会发现窗口装饰有了改进，所有窗口现在默认都是无边框的。你可以在外观设置下的窗口装饰选项中选择禁用无边框窗口模式。

可选的 Latte 布局也得到了更新，包括窗口控制、标题栏和全局菜单。

### 更新的软件包和驱动程序

出于显而易见的原因，这次升级包括 KDE Plasma 版本更新、KDE 框架、KDE 装备，以及其他必要的应用程序，如 Firefox 和 LibreOffice。

此外，为 AMD GPU 增加了内核软件包中没有的额外固件。他们还在可下载的 ISO 中增加了 i915、Nouveau 和 AMDGPU 驱动。

默认使用的是 MESA 21.3.5 稳定版，但如果你需要的话，可以安装最新的 MESA 22.0。

### 其他改进

在 Nitrux Linux 的这些变化之外，还有一些额外的技术改进，如：

* 减少了标准版和精简版的 ISO 文件大小。
* Xbox One 控制器的工作原理与操纵杆没有冲突。
* 在精简版 ISO 中，JWM 取代了 i3 窗口管理器。

更多细节，你可以参考 [官方公告](https://nxos.org/changelog/release-announcement-nitrux-2-0-0/#download)。

---

via: <https://news.itsfoss.com/nitrux-2-0-release/>

作者：[Ankush Das](https://news.itsfoss.com/author/ankush/) 选题：[lujun9972](https://github.com/lujun9972) 译者：[wxy](https://github.com/wxy) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


2021 总结：10 个值得尝试的 DIY 物联网项目

Summary: 在 2021 年，我们的作者们多次分享了他们关于各种物联网项目的专业知识。

我只知道空气计算，空气显卡，天价树莓派

在 2021 年，我们的作者们多次分享了他们关于各种物联网项目的专业知识。

# 2021 总结：10 个值得尝试的 DIY 物联网项目

>
> 在 2021 年，我们的作者们多次分享了他们关于各种物联网项目的专业知识。
>
>
>

<img src="content_image/album_202202_03_141552nxzj9alj5z7y5eyz.jpg" alt="" title="collection of hardware on blue backround">

物联网（IoT）是计算领域的一个令人着迷的发展方向。互联智能设备、家庭自动化以及相关的发展领域正在产生许多有趣的项目。在 2021 年，我们的作者们多次分享了他们关于各种物联网项目的专业知识。以下是十大最佳物联网文章。

### 如何使用你选择的声音定制你的语音助手

在这篇由 Rich Lucente 撰写的这篇文章中 [了解 Nana and Poppy 项目](https://opensource.com/article/21/1/customize-voice-assistant)。Nana and Poppy 项目是 Rich Lucente 为人工智能语音助手创建自定义问候的开源项目。他描述了整个过程，从录制必要的音频片段到编写代码将这些片段组合成完整的问候语。成品是五个送给曾祖父母和祖父母的定制语音助手，他们现在无论何时与语音助手互动都能听到孙辈的声音。

### 用树莓派和 Prometheus 监测你家的温湿度

Chris Collins 描述了他如何 [利用 Prometheus 监测家中的温度和湿度](https://opensource.com/article/21/7/home-temperature-raspberry-pi-prometheus)。他提供了关于在树莓派操作系统上安装 Prometheus、检测 Prometheus 应用程序、设置 systemd 单元和日志记录等方面的详细说明，以创建用于监控温度和湿度数据的工具。本文建立在 Chris 以前写的一篇文章的基础上，这篇文章是这个系列的下一篇文章。

### 用树莓派在家里设置温度传感器

学习如何通过使用树莓派、DHT22 数字传感器和一些 Python 代码 [设置温度传感器](https://opensource.com/article/21/7/temperature-sensors-pi)。在本文中，Chris Collins 解释了如何将传感器连接到树莓派，安装 DHT 传感器软件，并使用 Python 脚本获取传感器数据。他最后调侃说，未来的文章将更多地自动化从该设备收集数据，这是本列表中的前一篇文章。

### 用智能手机远程控制你的树莓派

Stephan Avenwede 解释了如何 [使用你的智能手机来控制树莓派的 GPIO](https://opensource.com/article/21/9/raspberry-pi-remote-control)。本教程描述了如何安装和使用 Pythonic 来使用 Telegram 通过网络连接控制树莓派。在写这篇文章时，他并没有考虑到具体的最终项目，因此本文提供了广泛的指导，你可以将其应用于许多项目。Stephan 建议的一些可能的项目包括草坪灌溉和车库开门器。

### 家庭自动化项目为什么选择开源

Alan Smithee 在本文中 [介绍了家庭自动化电子书](https://opensource.com/article/21/6/home-automation-ebook)。这本电子书包含了与家庭自动化相关的内容。Alan 的文章概述了为什么技术能让每个人的生活变得更好，并提供了一个下载电子书的链接。

### 用 Grafana Cloud 监控你的树莓派

在 Matthew Helmke 的这篇教程中，了解如何 [用 Grafana Cloud 监控你的树莓派](https://opensource.com/article/21/3/raspberry-pi-grafana-cloud)。该项目使用树莓派、Prometheus 时间序列数据库和 Grafana Cloud 帐户。Matthew 解释了如何在树莓派上安装 Prometheus，并将其连接到 Grafana Cloud，为你的树莓派提供监控。

### 一种新的嵌入式开源操作系统

Zhu Tianlong 提供了 [RT-Thread 智能操作系统简介](https://opensource.com/article/21/7/rt-thread-smart)。本文解释了什么是 RT-Thread Smart，谁可能需要使用它，以及它是如何工作的。本文中还有一个章节对 RT-Thread Smart 和 RT Thread 进行了对比。

### 使用 Rust 进行嵌入式开发

本文由 Alan Smithee 撰写，Liu Kang 供稿，介绍了 [使用 Rust 进行嵌入式开发](https://opensource.com/article/21/10/rust-embedded-development)。这个包含大量代码的教程展示了如何在 C 中调用 Rust，以及如何在 Rust 中调用 C。这里有大量使用 Rust 工具（如 Cargo）进行开发的代码示例和详细说明。

### 开源 Linux 边缘开发入门

Daniel Oh 解释了如何使用 Quarkus 云原生 Java 框架来 [开始边缘开发](https://opensource.com/article/21/5/edge-quarkus-linux)。Daniel 首先简要介绍了他在教程中使用的操作系统 CentOS Stream。然后他介绍了教程的三个主要步骤:

* 将物联网数据发送到轻量级消息代理。
* 使用 Quarkus 处理反应性数据流。
* 监控实时数据通道。

### 什么是雾计算？

你可能听说过云计算，但是 [什么是雾计算](https://opensource.com/article/21/5/fog-computing)？Seth Kenlon 将<ruby> 雾计算 <rt>  fog computing </rt></ruby>描述为“云的外部‘边缘’”——由手机、手表和其他组成物联网的各种设备组成。

---

via: <https://opensource.com/article/22/1/open-source-internet-of-things>

作者：[Joshua Allen Holm](https://opensource.com/users/holmja) 选题：[lujun9972](https://github.com/lujun9972) 译者：[CN-QUAN](https://github.com/CN-QUAN) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


硬核观察 #536 AI 参加编程竞赛，成绩超过了一半的程序员

Summary: 更多：• 树莓派操作系统发布 64 位版本 • Oracle Linux 出现在 Windows 商店

# 硬核观察 #536 AI 参加编程竞赛，成绩超过了一半的程序员

### AI 参加编程竞赛，成绩超过了一半的程序员

DeepMind 刚刚宣布了其最新打造的 [AlphaCode](https://www.theverge.com/2022/2/2/22914085/alphacode-ai-coding-program-automatic-deepmind-codeforce) 编程 AI。它参加了 Codeforces 的编程挑战，这是一个极具挑战性的编程平台，通过类似于国际象棋的 Elo 评级系统来分享每周问题和相关排名。最终 AlphaCode 针对 Codeforces 网站上 5000 名用户解决的十个挑战项目开展了测试，且拿下了平均名次位于前 54.3% 的成绩。DeepMind 估计该系统的 Codeforces Elo 为 1238，位居过去 6 个月在该网站上发起挑战的用户榜单的前 28% 。

>
> 老王点评：看来至少有一半的程序员可以考虑改行了。
>
>
>

### 树莓派操作系统发布 64 位版本

虽然 2016 年发布的树莓派 3 及后来的产品已经带有 64 位 CPU，甚至树莓派 Zero 2 也具有 64 位功能，但官方提供的树莓派操作系统一直是 32 位的。不过，64 位的操作系统可以支持更多内存，较新的指令集也有性能优势，此外，一些基于 Arm 的商业/二进制分发软件只支持 AArch64，因此树莓派基金会决定提供 [64 位的树莓派操作系统](https://www.raspberrypi.com/news/raspberry-pi-os-64-bit/)。

>
> 老王点评：终于升级到 64 位了，虽然之前可以使用其他的 64 位操作系统。
>
>
>

### Oracle Linux 出现在 Windows 商店

Oracle Linux 8.5 是 CentOS 8.5 的衍生发行版，以 WSL 的形式出现在 Windows 商店，这是红帽家族的发行版 [首次](https://www.theregister.com/2022/02/02/oracle_linux_microsoft/) 出现在 Windows 商店，尽管 Oracle Linux 不是红帽的。在 Windows 商店中，如果你搜索 Linux，你会发现 Ubuntu、SUSE/openSUSE、Debian、Kali、Alpine 等等，这都是为 WSL 开发的。但你不会看到 Fedora、CentOS、RHEL 之类的红帽系的 Linux，虽然有人为 WSL 中制作了 Fedora remix。

>
> 老王点评：我就说 Oracle Linux 是叛徒，对吧。:D
>
>
>


Zorin OS 16 教育版：一个让学习更容易的 Linux 发行版

说得好，不过学生还是用iPad吧，把折腾时间拿来谈恋爱、背单词、跑步更好

主要是iPad上有很多有助于学习的工具

说实话 学习的话买台打印机加Windows或Mac笔记本打印材料就够了,完全没必要装Zorin发行版做做样子

# Zorin OS 16 教育版：一个让学习更容易的 Linux 发行版

>
> Zorin OS 16 教育版的重点是离线学习和新的教育应用程序，为学校和学生提供帮助。
>
>
>

Zorin OS 16 是 2021 年最令人印象深刻的发行版之一。你或许想先了解一下 [Zorin OS 16](https://news.itsfoss.com/zorin-os-16-features/) 和 [Zorin OS 16 精简版](https://news.itsfoss.com/zorin-os-16-lite-release/) 的信息。

现在，经过一段时间，Zorin OS 团队终于决定发布 Zorin OS 16 教育版。

可以预期包含 Zorin OS 16 的所有改进，以及为教育而量身定做的具体修改。

请注意，教育版的 Zorin OS 16 是完全免费下载的。对于旧电脑，你还可以使用精简教育版。

### Zorin OS 16 教育版有什么新内容？

Zorin OS 16 教育版的重点是以离线为先的学习体验。换句话说，它包括一个合格的教育内容集，不需要上网就可以访问。

为了实现这一目标，Zorin OS 16 包括了 [Kolibri](https://learningequality.org/kolibri/)，这是一个自由开源的教育解决方案，支持自定进度的学习，并通过本地 Wi-Fi 网络进行同步/共享。

因此，即使没有互联网，你也可以依靠点对点的连接来分享教育内容，进行协作，并继续学习，不受任何干扰。

学校管理者还可以创建自己的课程，并从可汗学院、Open Stax、麻省理工学院等来源下载现成的资源。

当然，管理员需要互联网接入才能做到这一点。但是，一旦你下载了内容，就可以在没有互联网接入的情况下轻松地在本地网络上分享，从而使分发教育内容成为可能。

除了 Kolibri 之外，Zorin OS 16 还出炉了新的教育应用程序，其中一些是：

#### Minder：将想法和笔记可视化

与 [Obsidian](https://itsfoss.com/obsidian-markdown-editor/) 和 [Logseq](https://itsfoss.com/logseq/) 类似，Minder 是一个更简单有效的思维导图工具，帮助你将笔记和想法可视化，而进行头脑风暴会议。

#### Foliate：电子书阅读器

[Foliate](https://itsfoss.com/foliate-ebook-viewer/) 是一个令人印象深刻的 Linux 电子书阅读器应用。它应该能让学生/教师提高阅读体验，也能在需要时提供公共领域书籍的下载。

#### OpenBoard：交互式白板

我最近报道了 [OpenBoard](/article-14212-1.html)，作为我们的应用亮点之一。它是一个自由开源的白板，应该会让老师和学生也感到有趣。

OpenBoard 应该有助于通过工具以及应用程序与多媒体内容互动的能力来改善学习过程。

#### Minuet：音乐教学

Minuet 专注于帮助你向学生教授音乐。你会发现视觉队列，以及和弦、音阶等方面的练耳练习。

#### 其他改进措施

根据你的系统配置，可以选择 Zorin OS 16 教育版或 Zorin OS 16 精简教育版。

这两个教育版应该会带来更快、更漂亮的桌面体验，可以访问更多的应用程序。

Zorin OS 16 教育版支持到 2025 年 4 月。

你可以从其官方网站下载 Zorin OS 16 教育版及其精简版。

* [Zorin OS 16 教育版](https://zorin.com/os/education/)

---

via: <https://news.itsfoss.com/zorin-os-16-education-release/>

作者：[Ankush Das](https://news.itsfoss.com/author/ankush/) 选题：[lujun9972](https://github.com/lujun9972) 译者：[wxy](https://github.com/wxy) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


陷入困境的 15 岁少年：Windows Vista

Summary: 这并不是微软所承诺的……但也不全是坏事。

综上所述，所以Windows 11是Vista Vista?

来自120.230.61.246的 Chrome Mobile 75.0|Android 10 用户

(a) Vista (a) Vista

1             1

11!

这并不是微软所承诺的……但也不全是坏事。

# 陷入困境的 15 岁少年：Windows Vista

>
> 这并不是微软所承诺的……但也不全是坏事。
>
>
>

<img src="content_image/album_202202_04_165634p0s77smqmq00ki0b.jpg" alt="" title="">

2007 年 1 月 30 日，也就是 15 年前，[一再](https://www.theregister.com/2006/03/22/microsoft_vista_delayed/)[延期](https://www.theregister.com/2005/08/30/windows_vista_release/)的 Windows Vista 发布了。

我们可以尽情地谈论 Vista [有多糟糕](https://www.youtube.com/watch?v=-IfnjBHtjHc)、人们有多讨厌它。它是有史以来最不受欢迎的版本之一，与 Windows ME 一样。但是，你今天运行的随便哪个现代 Windows，它都是 Vista 的后裔。

Vista 并没有微软像 [2000 年承诺](https://www.theregister.com/2000/11/12/whistler_and_blackcomb_the_windows/)的那样，Windows “Whistler” 将合并 Windows 9x 和 Windows NT：这变成了 XP，每个人都记得 XP —— 基本上都是怀念。Windows Blackcomb 是 XP 的[计划中的继任者](https://www.theregister.com/2001/07/27/microsoft_reshuffles_windows_roadmap_full/)。它从未面世。我们得到的是 [Windows Longhorn](https://www.theregister.com/2001/10/24/gates_confirms_windows_longhorn/)。

Blackcomb [将有](https://www.theregister.com/2001/08/07/ms_poised_to_switch_windows/)一个新的编程模型、一个新的用户界面，以及一个新的数据库驱动的存储引擎，“WinFS”……但它被[延期](https://www.theregister.com/2003/05/13/microsoft_sidelines_longhorn_database_caper/)了，然后被[删除](https://www.theregister.com/2004/08/27/microsoft_decouples_longhorn/)，最后被[取消](https://www.theregister.com/2006/06/26/winfs_axed/)。

谈论 Vista 到底是什么更有意思。摆上货架的是技术上[更保守的东西](https://www.theregister.com/2003/03/05/windows_longhorn_leaks_again)。

它有用户访问控制（UAC）：那些恼人的弹出式信息不断要求获得你的许可。（这实际上是微软意识到大部分的 Windows 机器都是独立的，没有连接到域。）

它有一个 3D 合成的用户界面，“Aero”，带有透明效果，尽管这确实使它[变得有点慢](https://www.theregister.com/2007/12/04/vista_vs_xp_tests/)。而当 Windows 7 推出时，人们很喜欢它 —— 所以微软将它从 Windows 8 中[剥离](https://www.theregister.com/2012/05/21/windows_8_aero_dead/)了。（指的是外观，而不是合成过程；那仍然存在）。

它有一个包含“小部件”的侧边栏，这在 Windows 11 中[又出现了](https://www.theregister.com/2021/10/05/windows_11_in_detail/)。

尽管它在五年前就[被干掉了](https://www.theregister.com/2017/04/12/windows_vista_support_ends/)，但 Vista 是 Windows 7 的基础。Vista 是 NT 的第 6 版；而 Windows 7 则是 [Windows NT 6.1](https://www.theregister.com/2009/11/18/windows_7_heart/)。

Windows 7 是经过调整的 Vista，响应速度更快。Windows 8 则是 Vista 2：是 Vista 的[平板电脑版](https://www.theregister.com/2011/06/06/windows_tablets_without_silverlight_dot_net/)（它实际上[相当不错](https://www.theregister.com/2011/09/14/samsung_windows8_tablet/)）。

困难在于，人们已经习惯了台式机和鼠标，所以开始按钮又被[迅速恢复](https://www.theregister.com/2013/10/18/windows_8_1_review/)了。Windows 8.1 则是 Vista 2.1。

Windows 10 是 Vista 3，[~~Metro~~ 现代应用程序](https://www.theregister.com/2012/03/15/the_charge_of_the_metro_brigade/)被搁置，桌面应用程序再次成为中心。现在，Windows 11 删除了所有那些讨厌的、复杂的、混乱的东西，如垂直侧边栏。

Vista 是微软放弃其花哨的技术野心而[开始简化事物](https://www.theregister.com/2009/11/18/windows_7_heart/)的时候。现在[有远见的人](https://www.theregister.com/2012/11/13/sinofsky_caligula/)已经离开了。Surface 并没有彻底改变这个行业，它只是疏远了 OEM 厂商。

15 年过去了，微软仍在对 Vista 进行迭代。

---

via: <https://www.theregister.com/2022/02/01/happy_birthday_windows_vista/>

作者：[Liam Proven in Prague](https://www.theregister.com/Author/Liam-Proven) 选题：[wxy](https://github.com/wxy) 译者：[wxy](https://github.com/wxy) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](/article-14240-1.html) 荣誉推出


硬核观察 #537 5 年后，Slackware 发布大变样的 15.0

Summary: 更多：• 一半的英特尔芯片漏洞是员工内部发现的 • Mozilla 关闭了其 VR 浏览器 Firefox Reality

PulseAudio，你也有今天！

何出此言？

Mozilla看到小扎的Meta股价大跌26%，所以赶紧和VR撇清关系。真狐狸没打到，还惹一身骚。巧了，可偏偏它就是个狐狸。

Slackware Linux发行版很美好，在我心里甚至比fedora、openSUSE更稳定易用，但在商业方面，以设计专业举例，还得是MacOS上的修图软件专业，以及各种前端交互设计软件Sketch、Adobe XD.感觉Linux发行版更适合后端开发的程序员用。

Good morning, everyone! Thank you for providing us with this article. The article you shared is very informative, and it will help a lot of people understand how important it is. I'd like to say something about our education. The School of Coding is the platform I'm referring to. They teach computer science, coding, and digital skills to children and adults in the United Kingdom and Europe. They have the best tutors for GCSE Computer Science. The School of Coding has received funding to assist s

# 硬核观察 #537 5 年后，Slackware 发布大变样的 15.0

### 5 年后，Slackware 发布大变样的 15.0

Slackware 是最古老的仍在维护的 Linux 发行版。它的上个版本是 2016 年发布的 14.2。作为一个古老的发行版在五年后发布的 [版本](http://www.slackware.com/announce/15.0.php)，这个版本中有了大幅变化：提供了 5.15.19 LTS 内核；采用 PipeWire 替代了 PulseAudio；X11 之外还提供了 Wayland；用 Qt5 替换了 Qt4；采用 PAM 替代了纯 shadow 密码方式；Postfix 默认替换了 Sendmail；Dovecot 替换了老的 imapd 和 ipop3d；elogind 替换了 ConsoleKit2；带有 Rust 和 Python 3；独有的包管理器 pkgtools 有了很大改进；桌面环境提供了 Xfce 4.16 和最新的 Plasma 5；主要的编译器是 gcc-11.2 和 llvm 13.0；默认浏览器是 Firefox 91.5esr。并且，完全没有 systemd。

>
> 老王点评：简直是一夜之间告别过去，重新粉饰新家。明天我们或许会详细解读一下。
>
>
>

### 一半的英特尔芯片漏洞是员工内部发现的

英特尔在其 [年度安全报告](https://www.intel.com/content/www/us/en/security/intel-2021-product-security-report.html) 中指出，在 2021 年发现的 226 个 CVE 漏洞中，有一半是英特尔员工在内部发现的，其余 113 个 CVE 中，有 86% 是通过他们的 Bug Bounty 计划从外部发现的。77% 的漏洞存在于硬件/固件中，70% 的英特尔软件安全问题是外部研究人员发现的。漏洞最多的产品是他们的图形硬件/驱动程序，其次是以太网产品和其他软件。最后，他们将 CVE 数量与 AMD 进行比较，英特尔在 2021 年称其 CPU 只有 10 个 CVE，而 AMD 共有 31 个；在图形类方面，AMD 在这一年有 27 个 CVE，而英特尔有 51 个。

>
> 老王点评：虽然这些年英特尔 CPU 出现了许多严重漏洞，但是看起来他们还是相当重视的。
>
>
>

### Mozilla 关闭了其 VR 浏览器 Firefox Reality

这个开源浏览器允许用户通过单独的 VR 和 AR 头盔访问网络，用户可以访问标准的 URL，进行搜索，并最终在 2D 网站和沉浸式网络体验之间移动。Mozilla [解释](https://blog.mozilla.org/en/mozilla/news/update-on-firefox-reality/) 说，它决定关闭 Firefox Reality 的原因是计划将该技术放到其他社区和组织中，这样它就可以“像 WebAssembly、Rust 和 Servo 一样继续发展并为网络作出贡献。”

>
> 老王点评：在这个元宇宙大热的时间，Mozilla 却砍掉了其开源的 VR 浏览器，这是对自己的产品能力没有信心吗？
>
>
>


最古老的活跃 Linux 发行版 Slackware 终于发布了第 15 版

不就是KDE发布会么。。。

说的好，我用MacOS

说的好，我用MacOS

# 最古老的活跃 Linux 发行版 Slackware 终于发布了第 15 版

>
> 带着 Linux 内核 5.15 LTS 和 KDE Plasma 5.23 的最新改进，Slackware 15.0 已经来到。
>
>
>

欢呼吧！Linux 粉丝们会很高兴地知道，传奇发行版 Slackware 在很久之后发布了一个新版本。或许你不知道，Slackware 上一个版本的发布要追溯到 2016 年。

当开发者在去年（2021 年）2 月宣布 Slackware 15.0 的计划时，整个 Linux 社区都为此感到兴奋。

从年初的 Alpha 版本开始，在过去的一年里，开发人员在 Slackware Linux 15.0 的开发中取得了快速进展。经过一段时间后，他们发布了其最后一个候选版本，但现在它发布了！

让我们来看看 Slackware 15.0 有哪些新内容。

### Slackware 15.0 的新内容

如前所述，Slackware 15.0 有许多变化。不要忘了，在最终发布之前，它可是发布了一个测试版和两个候选发布版（RC）。

如果你一直在关注我们的报道，早在去年 4 月份你就可能已经看到了我们的 [测试版](https://news.itsfoss.com/slackware-15-beta-release/) 报道。

在测试版 / RC 版中，还有一些东西没有被披露。因此，在这里，我们会介绍它的所有重要内容。

#### Linux 内核 5.15 LTS

Slackware 15 的主要亮点是增加了最新的 [Linux 内核 5.15 LTS](https://news.itsfoss.com/linux-kernel-5-15-release/)。这与我们在测试版中注意到的 Linux 内核 5.10 LTS 相比，有了很大的飞跃。

值得注意的是，Slackware 团队在确定使用 Linux 内核 5.15.19 之前测试了数百个 Linux 内核版本。在发布说明中提到：

>
> 在最终宣布 Slackware 15.0 稳定版的过程中，我们在过去一年里实际上构建了超过 400 个不同的 Linux 内核版本（相比之下，我们在开发 Slackware 14.2 时测试了 34 个内核版本）。在 Greg Kroah-Hartman 确认 5.15.19 版内核将获得至少到 2023 年 10 月（很可能比这更久）的长期支持后，我们最终选择了它。
>
>
>

如果你感到好奇，Linux 内核 5.15 带来了一些更新，如增强的 NTFS 驱动支持和对英特尔 / AMD 处理器以及苹果 M1 芯片的改进。它还增加了对英特尔第 12 代处理器的初步支持。

总的来说，有了 Linux 内核 5.15 LTS，对于这个最古老的活跃 Linux 发行版，你应该会得到良好的硬件兼容性。

Linux 内核提供了两种版本，一种是带驱动的，不需要 initrd；另一种是依靠 initrd 来加载内核模块。发行说明中提到了更多关于它的内容：

>
> 像往常一样，内核提供了两种类型：通用内核和巨型内核。巨型内核包含足够多的内置驱动程序，在大多数情况下不需要 initrd 来启动系统。通用内核需要使用 initrd 来加载挂载根文件系统所需的内核模块。使用通用内核可以节省一些内存，并可能避免一些启动时的警告。我强烈建议使用通用内核以获得最佳的内核模块兼容性。
>
>
>

#### KDE Plasma 5.23 和 Xfce 4.16

谈到 KDE，你应该会发现 KDE Plasma 软件包更新到了 5.23，而 KDE 框架则更新到了 5.88 版本。

[KDE Plasma 5.23](https://news.itsfoss.com/kde-plasma-5-23-release/) 是 KDE 的 25 周年纪念版，包括了 UI 的改进，以及一系列细微的变化来改善用户体验。

除此之外，Slackware 15 还配备了 Xfce 4.16 作为桌面环境选项之一。

#### 对 PipeWire 和 Wayland 的支持

作为 PulseAudio 的替代品，Slackware 15 加入了对 PipeWire 的支持。

而且，对于那些想摆脱 X11 的用户来说，对 Wayland 的支持也在这个版本中出现。

#### 32 位支持

因为 Slackware 是 [适合 32 位系统的 Linux 发行版](https://itsfoss.com/32-bit-linux-distributions/) 之一，最新版本提供了特定的内核版本来支持它。

从技术上讲，有 SMP 和非 SMP 内核，分别用于单核和多核处理器。

建议使用 SMP 内核以获得更好的性能和内存管理，但是如果你的处理器比奔腾 3 还要老，非 SMP 内核应该会派上用场。

#### 其他改进

一些技术上的升级包括 GCC 编译器升级到 11.2.0 版本。相当多的安全和错误也得到了解决。

公告上还说，开发人员正专注于将 Python 更新到 3.3.4 版本，以修复 Samba 的构建。

其他基本软件包和应用程序，如网络管理器、OpenSSH、Krita、Falkon 浏览器和 Ocular 也得到了升级。Mozilla Firefox 和 Thunderbird 也被更新到它们最新的可用软件包。

如果你想获得这个版本的所有技术细节，你可以查看 [官方更新日志](http://www.slackware.com/changelog/current.php?cpu=x86_64)。其它一些重要的内容包括：

* 改进了 Slackware pkgtools，使软件安装体验无障碍，消除了并行冲突。
* Slackware 15 首次包括一个 `make_world.sh` 脚本，以帮助从源代码重建整个操作系统。
* 增加了更多的脚本，以方便重建安装程序和内核包。
* 抛弃了 Qt4，转而使用 Qt5。
* 增加了对<ruby> 特权访问管理 <rt>  Privileged Access Management </rt></ruby>（PAM）的支持，以支持那些不支持<ruby> 影子 <rt>  shadow </rt></ruby>密码的较新项目。

值得注意的是，你不能简单地从 Slackware 14.2 升级。因此，最好是进行一次全新的安装。

* Slackware 15 x86\_64： [ftp://ftp.slackware.com/pub/slackware-iso/slackware64-15.0-iso](file:///Users/xingyuwang/develop/TranslateProject-wxy/sources/news/ftp:/ftp.slackware.com/pub/slackware-iso/slackware64-15.0-iso)
* Slackware 15 x86\_32： [ftp://ftp.slackware.com/pub/slackware-iso/slackware-15.0-iso](file:///Users/xingyuwang/develop/TranslateProject-wxy/sources/news/ftp:/ftp.slackware.com/pub/slackware-iso/slackware-15.0-iso)

无论是哪种情况，你都应该保留一份数据备份，如果你对使用新的 ISO 安装不感兴趣，可以尝试按照 [官方升级说明](https://ftp.osuosl.org/pub/slackware/slackware64-15.0/UPGRADE.TXT) 来进行。

### 总结

Slackware 是最古老的仍然活跃的 Linux 发行版，我很高兴看到 Slackware 有了新的版本。

虽然它仍然推荐给有经验的用户或手工爱好者使用，但最新的 Slackware 15.0 也支持 UEFI 和旧系统。如果你正在寻求冒险，并希望为你的桌面安装一个独特的 Linux 发行版，你可以试试 Slackware 15。

你用过 Slaceware 吗？你会测试 Slackware 15.0 吗？你认为 Slackware 的未来会是怎样的呢？

---

via: <https://news.itsfoss.com/slackware-15-release/>

作者：[Rishabh Moharir](https://news.itsfoss.com/author/rishabh/) 选题：[lujun9972](https://github.com/lujun9972) 译者：[wxy](https://github.com/wxy) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


我如何使用 Linux 的无障碍设置

别调了，最后你会发现文字怎么调怎么难受，最好就是上4k屏幕，否则还是得上Windows。

Windows 的无障碍做的很棒，听说微软还有一位盲人开发者。

# 我如何使用 Linux 的无障碍设置

>
> 不同的 Linux 系统以不同的方式处理辅助技术。 这里是一些对视觉、听觉、打字等有用的设置。
>
>
>

当我在 20 世纪 90 年代开始使用 Linux 时，我已经 40 多岁了，<ruby> 无障碍性 <rt>  accessibility </rt></ruby>不是我非常关注的问题。然而现在，当我快到 70 岁时，我的需求已经改变了。几年前，我从 System76 购买了一个全新的 Darter Pro，它的默认分辨率是 1920x1080，而且也是高 DPI。系统附带了 Pop!\_OS，我发现我必须修改它才能看到显示屏上的图标和文字。谢天谢地，桌面上的 Linux 已经变得比 90 年代更容易使用了。

我需要辅助技术，特别是在视觉和听觉方面。还有一些我不使用的领域，但对需要帮助打字、指点、点击和手势的人来说是有用的。

不同的系统，如 Gnome、KDE、LXDE、XFCE 和其他系统，对这些辅助技术的处理方式不同。这些辅助性的调整大多可以通过 “<ruby> 设置 <rt>  Settings </rt></ruby>” 对话框或键盘快捷键来实现。

### 文字显示

我需要帮助来显示较大的文字，在我的 Linux Mint Cinnamon 桌面上，我使用这些设置：

我还发现 Gnome “<ruby> 优化 <rt>  Tweaks </rt></ruby>” 可以让我对桌面体验的文字显示大小进行微调。我把我的显示器的分辨率从默认的 1920x1080 调整到更舒适的 1600x900。以下是我的布局设置：

### 键盘支持

我不需要键盘支持，但它们是现成支持的，如下图所示：

### 更多无障碍选项

在 Fedora 35 上，无障碍访问也是熟悉的。打开 “<ruby> 设置 <rt>  Settings </rt></ruby>” 菜单，选择让 “<ruby> 总是显示无障碍菜单 <rt>  Always show Accessibility Menu </rt></ruby>” 图标在桌面上可见。我通常会切换 “<ruby> 大字体 <rt>  Large Text </rt></ruby>”，除非我在一个大显示器上。还有许多其他选项，包括 “<ruby> 缩放 <rt>  Zoom </rt></ruby>”、“<ruby> 屏幕阅读器 <rt>  Screen Reader </rt></ruby>” 和 “<ruby> 声音键 <rt>  Sound Keys </rt></ruby>”。这里有一些：

当在 Fedora 的 “<ruby> 设置 <rt>  Settings </rt></ruby>” 菜单中启用了 “<ruby> 无障碍菜单 <rt>  Accessibility Menu </rt></ruby>”，就很容易从右上角的图标中切换其他功能：

有一些 Linux 发行版是专门为需要无障碍支持的人设计的。[Accessible Coconut](https://zendalona.com/accessible-coconut/) 就是这样一个发行版。Coconut 基于 Ubuntu Mate 20.04，并默认启用了屏幕阅读器。它装载了 Ubuntu Mate 的默认应用。Accessible Coconut 是 [Zendalona](https://zendalona.com/) 的作品，该公司专门开发自由开源的无障碍应用。他们所有的应用都是以 GPL 2.0 许可证发布的，包括 [iBus-Braille](https://github.com/zendalona/ibus-braille)。该发行版包括屏幕阅读器、各种语言的打印阅读、六键输入、打字辅导、放大器、电子书扬声器等等。

[Gnome 无障碍套件](https://en.wikipedia.org/wiki/Accessibility_Toolkit) 是一个开源软件库，是 Gnome 项目的一部分，为实现无障碍功能提供 API。你可以通过访问他们的维基来参与 [Gnome 无障碍团队](https://wiki.gnome.org/Accessibility)。KDE 也有一个 [无障碍项目](https://community.kde.org/Accessibility#KDE_Accessibility_Project) 和一个支持该项目的 [应用](https://userbase.kde.org/Applications/Accessibility) 列表。你可以通过访问他们的 [维基](https://community.kde.org/Get_Involved/accessibility) 来参与 KDE 无障碍项目。[XFCE](https://docs.xfce.org/xfce/xfce4-settings/accessibility) 也为用户提供了相关资源。[Fedora 项目维基](https://fedoraproject.org/wiki/Docs/Beats/Accessibility#Using_Fedora.27s_Accessibility_Tools) 也有一个可以安装在操作系统上的无障碍应用的列表。

### Linux 适合所有人

自 20 世纪 90 年代以来，Linux 已经有了长足的进步，其中一个很大的进步就是对无障碍的支持。很高兴知道随着 Linux 用户的不断变化，操作系统也可以和我们一起变化，并做出许多不同的支持选项。

---

via: <https://opensource.com/article/22/1/linux-accessibility-settings>

作者：[Don Watkins](https://opensource.com/users/don-watkins) 选题：[lujun9972](https://github.com/lujun9972) 译者：[geekpi](https://github.com/geekpi) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


硬核观察 #538 苹果改变隐私设置将导致 Meta 明年损失一百亿美元

Summary: 更多：• Meta 将引入虚拟现实形象之间的强制性距离 • 微软正式禁用 MSIX 应用安装协议

保护隐私更重要呀

"某些场景下我们需要更近的距离"<br />
老王说的是什么场景，我有一个大胆的想法

# 硬核观察 #538 苹果改变隐私设置将导致 Meta 明年损失一百亿美元

### 苹果改变隐私设置将导致 Meta 明年损失一百亿美元

之前，苹果默认允许广告商在移动设备上跟踪用户，但用户可以手动关闭跟踪。去年苹果以隐私保护的理由改变了这一行为，要求应用向用户询问是否愿意被跟踪。调查显示，54% 的苹果用户在看到该通知之后选择不要跟踪。苹果的这一变动降低了定位广告的准确度，进而降低了对广告商的吸引力。Meta 称，这将导致该公司在 2022 年 [损失一百亿美元](https://www.economist.com/the-economist-explains/2022/02/03/how-apples-privacy-push-cost-meta-10bn)，占到了 2021 年收入的 8%。而雪上加霜的是，谷歌也准备在安卓中引入了类似的变动。

顺便说一句，Facebook 18 年历史上它的 [日活用户首次下降](https://www.washingtonpost.com/technology/2022/02/02/facebook-earnings-meta/)。

>
> 老王点评：虽然这保护了隐私，但是我觉得广告商们不会这样坐以待毙，或许我们会见到更多广告位？
>
>
>

### Meta 将引入虚拟现实形象之间的强制性距离

Meta 公司 VR 应用“地平线世界”的测试用户抱怨在网上被摸，呼吁在他们的虚拟现实形象周围建立一个保护性的气泡。Meta 公司 [周五宣布](https://www.theguardian.com/technology/2022/feb/04/meta-to-bring-in-mandatory-distances-between-virtual-reality-avatars)，它正在旗下两个 VR 应用上引入个人界限，人与人之间的距离将相当于 VR 中的四英尺。

>
> 老王点评：不过，某些场景下我们需要更近的距离，或许可以设置个亲密白名单。
>
>
>

### 微软正式禁用 MSIX 应用安装协议

微软 [正式宣布](https://www.neowin.net/news/microsoft-disabled-msix-appx-installer-to-save-users-from-emotet-bazarloader-like-threats/)，它已经禁用了 MSIX 应用安装程序协议（ms-appinstaller:）以防止恶意攻击。该协议允许用户直接从网络服务器上安装各种应用程序，而不需要先将其下载到本地。然而，这种 Windows 应用程序安装方式后来被发现用来分发恶意的 PDF 文件。微软表示，它正在研究如何在未来某个时候以安全的方式重新启用该协议，比如添加某些组策略。

>
> 老王点评：本意是出于方便，但是却被利用。很多事情都是这样，便利和安全彼此抵触。
>
>
>

### 回音

* 之前我们 [报道过](/article-14225-1.html) ，GitHub 上可以冒充其它用户伪造仓库 URL。虽然 GitHub 不承认这是漏洞，但现在对这种类型的伪造 URL 给出了一个 [提醒](https://github.com/torvalds/linux/tree/5895e21f3c744ed9829e3afe9691e3eb1b1932ae)：“这个提交不属于这个版本库的任何分支，可能属于版本库以外的复刻。”


Peppermint 11 发布：2022 年值得期待的发行版之一

最期待、最美丽、最友好，结果到头来还是那几大发行版占绝对的大头。

这不是深度图标吗？

linux社区一直在桌面方面玩排列组合。但是就是不整细节，很多大软件用起来小问题很多。

建议linux中国多整理点大软件(LO, GIMP等)的实例教程。而不是今天一个最期待，明天一个最美丽，要不就发点二十年前才玩的cowsay之类的没用的小玩意

我为何不直接用Debian捏

是啊，linux桌面系统就这样一直摊大饼，看起来百花齐放，仔细看没几个能打的。而且和win和mac的差距依然巨大。

# Peppermint 11 发布：2022 年值得期待的发行版之一

>
> 经过近三年的等待，Peppermint OS 11 来了，放弃了以 Ubuntu 作为其基础，并删除了 LXDE 组件。看起来不错！
>
>
>

Peppermint OS 11 是 [2022 年最值得期待的版本](https://news.itsfoss.com/linux-distro-releases-2022/) 之一，而它终于到来了！

2020年，其主要开发者 Mark Greaves 不幸去世，Peppermint OS 失去了它最重要的贡献者之一。

现在，经过近两年的时间，Peppermint 11 来了！这不仅仅是一次普通的升级，Peppermint 11 是它的第一个以 Debian 为基础的版本，抛弃了 Ubuntu。

让我在下面指出该版本的所有关键细节。

### Peppermint 11 有什么新东西？

该版本的主要亮点是放弃 Ubuntu，使用 Debian 64 位作为其基础。

从技术上讲，它基于 [Debian 11 “Bullseye”](https://news.itsfoss.com/debian-11-feature/) 的稳定分支。因此，你可以预期 Debian 的最新改进出现在 Peppermint OS 11 中。

除了新的基础之外，还有一些其他的变化，包括：

#### XFce 4.16.2，无 LXDE 组件

Peppermint OS 利用 XFce 桌面环境与 LXDE 组件来提供混合体验。

Peppermint 11 已经删除了所有的 LXDE 组件，专注于提供一个 XFce 驱动的桌面体验。

#### Calamares 安装程序取代了 Ubiquity

为了改善安装过程，Peppermint 11 使用了现代 Calamares 安装程序。

#### 新的欢迎应用程序

为了让你有一个良好的开端，Peppermint OS 现在包括一个新的欢迎应用程序，让你了解更多关于所使用的系统/组件，并安装开始使用所需的软件。

例如，你在 Peppermint 11 中没有预装默认的网络浏览器。你可以快速启动软件包选择器，安装 Firefox、GNOME、Tor、Falkon 和 Chromium 等浏览器。

#### 新的 Peppermint Hub

新的 Peppermint Hub 合并了设置和控制中心来保持整洁，帮助你轻松管理系统。

#### 新的应用程序

该版本包括一个基于终端的广告屏蔽器，即 [hblock](https://github.com/hectorm/hblock)，可以在需要时启用或禁用。

Nemo 取代了 Thunar 作为默认的文件管理器，它应该感觉很熟悉，对许多用户来说可以派上用场。

#### 其他改进

总的来说，有了新的基础和更新的 Linux 内核 5.10，Peppermint 11 应该是一个令人兴奋的选择。

在 [发布说明](https://peppermintos.com/2022/02/peppermint-release-notes/) 中的一些其他变化包括：

* 在安装过程中包含了一套精简的桌面墙纸。下载额外的壁纸请进入 Peppermint 中。
* 包括一套精简的图标和 XFce 主题。

现在 [Peppermint OS 11](https://peppermintos.com/guide/downloading/) 来了，你会考虑在你的主系统上尝试一下吗？你已经试过了吗？请在下面的评论中告诉我你的想法。

---

via: <https://news.itsfoss.com/peppermint-11-release/>

作者：[Ankush Das](https://news.itsfoss.com/author/ankush/) 选题：[lujun9972](https://github.com/lujun9972) 译者：[wxy](https://github.com/wxy) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


用 HAProxy 实现网络流量的负载平衡

Summary: 安装、配置和运行 HAProxy，在几个网络或应用服务器之间分配网络流量。

nginx可以满足需求了

安装、配置和运行 HAProxy，在几个网络或应用服务器之间分配网络流量。

# 用 HAProxy 实现网络流量的负载平衡

>
> 安装、配置和运行 HAProxy，在几个网络或应用服务器之间分配网络流量。
>
>
>

<img src="content_image/album_202202_06_114005n44h5xx934549133.jpg" alt="" title="eight stones balancing">

不是只有在一个大型公司工作才需要使用负载平衡器。你可能是一个业余爱好者，用几台树莓派电脑自我托管一个网站。也许你是一个小企业的服务器管理员；也许你确实在一家大公司工作。无论你的情况如何，你都可以使用 [HAProxy](https://www.haproxy.org/) 负载平衡器来管理你的流量。

HAProxy 被称为“世界上最快和使用最广泛的软件负载平衡器”。它包含了许多可以使你的应用程序更加安全可靠的功能，包括内置的速率限制、异常检测、连接排队、健康检查以及详细的日志和指标。学习本教程中所涉及的基本技能和概念，将有助于你使用 HAProxy 建立一个更强大的、远为强大的基础设施。

### 为什么需要一个负载平衡器？

负载平衡器是一种在几个网络或应用服务器之间轻松分配连接的方法。事实上，HAProxy 可以平衡任何类型的传输控制协议（[TCP](https://en.wikipedia.org/wiki/Transmission_Control_Protocol)）流量，包括 RDP、FTP、WebSockets 或数据库连接。分散负载的能力意味着你不需要因为你的网站流量比谷歌大就购买一个拥有几十万 G 内存的大型网络服务器。

负载平衡器还为你提供了灵活性。也许你现有的网络服务器不够强大，无法满足一年中繁忙时期的峰值需求，你想增加一个，但只是暂时的。也许你想增加一些冗余，以防一个服务器出现故障。有了 HAProxy，你可以在需要时向后端池添加更多的服务器，在不需要时删除它们。

你还可以根据情况将请求路由到不同的服务器。例如，你可能想用几个缓存服务器（如 [Varnish](https://varnish-cache.org/)）来处理你的静态内容，但把任何需要动态内容的东西，如 API 端点，路由到一个更强大的机器。

在这篇文章中，我将通过设置一个非常基本的 HAProxy 环境，使用 HTTPS 来监听安全端口 443，并利用几个后端 Web 服务器。它甚至会将所有进入预定义 URL（如 `/api/`）的流量发送到不同的服务器或服务器池。

### 安装 HAProxy

要开始安装，请启动一个新的 CentOS 8 服务器或实例，并使系统达到最新状态：

```
$ sudo yum update -y

```

这通常会持续一段时间。在等待的时候给自己拿杯咖啡。

这个安装有两部分：第一部分是安装 yum 版本的 HAProxy，第二部分是编译和安装你的二进制文件，用最新的版本覆盖以前的 HAProxy。用 yum 安装，在生成 systemd 启动脚本等方面做了很多繁重的工作，所以运行 `yum install`，然后从源代码编译，用最新的版本覆盖 HAProxy 二进制：

```
$ sudo yum install -y haproxy

```

启用 HAProxy 服务：

```
$ sudo systemctl enable haproxy

```

要升级到最新版本（[版本 2.2](https://www.haproxy.com/blog/announcing-haproxy-2-2/)，截至本文写作为止），请编译源代码。许多人认为从源代码编译和安装一个程序需要很高的技术能力，但这是一个相当简单的过程。首先，使用 `yum` 安装一些提供编译代码工具的软件包：

```
$ sudo yum install dnf-plugins-core
$ sudo yum config-manager --set-enabled PowerTools
$ sudo yum install -y git ca-certificates gcc glibc-devel \
    lua-devel pcre-devel openssl-devel systemd-devel \
    make curl zlib-devel

```

使用 `git` 获得最新的源代码，并改变到 `haproxy` 目录：

```
$ git clone http://git.haproxy.org/git/ haproxy
$ cd haproxy

```

运行以下三个命令来构建和安装具有集成了 Prometheus 支持的 HAProxy：

```
$ make TARGET=linux-glibc USE_LUA=1 USE_OPENSSL=1 USE_PCRE=1 \
    PCREDIR= USE_ZLIB=1 USE_SYSTEMD=1 \
    EXTRA_OBJS="contrib/prometheus-exporter/service-prometheus.o"

$ sudo make PREFIX=/usr install # 安装到 /usr/sbin/haproxy

```

通过查询版本来测试它：

```
$ haproxy -v

```

你应该看到以下输出：

```
HA-Proxy version 2.2.4-b16390-23 2020/10/09 - https://haproxy.org/

```

### 创建后端服务器

HAProxy 并不直接提供任何流量，这是后端服务器的工作，它们通常是网络或应用服务器。在这个练习中，我使用一个叫做 [Ncat](https://nmap.org/ncat) 的工具，它是网络领域的“瑞士军刀”，用来创建一些极其简单的服务器。安装它：

```
$ sudo yum install nc -y

```

如果你的系统启用了 [SELinux](https://www.redhat.com/en/topics/linux/what-is-selinux)，你需要启用端口 8404，这是用于访问 HAProxy 统计页面的端口（下面有解释），以及你的后端服务器的端口：

```
$ sudo dnf install policycoreutils-python-utils
$ sudo semanage port -a -t http_port_t  -p tcp 8404
$ sudo semanage port -a -t http_port_t  -p tcp 10080
$ sudo semanage port -a -t http_port_t  -p tcp 10081
$ sudo semanage port -a -t http_port_t  -p tcp 10082

```

创建两个 Ncat 网络服务器和一个 API 服务器：

```
$ while true ;
do
nc -l -p 10080 -c 'echo -e "HTTP/1.1 200 OK\n\n This is Server ONE"' ;
done &

$ while true ;
do
nc -l -p 10081 -c 'echo -e "HTTP/1.1 200 OK\n\n This is Server TWO"' ;
done &

$ while true ;
do
nc -l -p 10082 -c 'echo -e "HTTP/1.1 200 OK\nContent-Type: application/json\n\n { \"Message\" :\"Hello, World!\" }"' ;
done &

```

这些简单的服务器打印出一条信息（如“This is Server ONE”），并运行到服务器停止为止。在现实环境中，你会使用实际的网络和应用程序服务器。

### 修改 HAProxy 的配置文件

HAProxy 的配置文件是 `/etc/haproxy/haproxy.cfg`。你在这里进行修改以定义你的负载平衡器。这个 [基本配置](https://gist.github.com/haproxytechblog/38ef4b7d42f16cfe5c30f28ee3304dce) 将让你从一个工作的服务器开始：

```
global
    log         127.0.0.1 local2
    user        haproxy
    group       haproxy

defaults
    mode                    http
    log                     global
    option                  httplog

frontend main
    bind *:80

    default_backend web
    use_backend api if { path_beg -i /api/ }

    #-------------------------
    # SSL termination - HAProxy handles the encryption.
    #    To use it, put your PEM file in /etc/haproxy/certs
    #    then edit and uncomment the bind line (75)
    #-------------------------
    # bind *:443 ssl crt /etc/haproxy/certs/haproxy.pem ssl-min-ver TLSv1.2
    # redirect scheme https if !{ ssl_fc }

#-----------------------------
# Enable stats at http://test.local:8404/stats
#-----------------------------

frontend stats
    bind *:8404
    stats enable
    stats uri /stats
#-----------------------------
# round robin balancing between the various backends
#-----------------------------

backend web
    server web1 127.0.0.1:10080 check
    server web2 127.0.0.1:10081 check

#-----------------------------

# API backend for serving up API content
#-----------------------------
backend api
    server api1 127.0.0.1:10082 check

```

### 重启并重新加载 HAProxy

HAProxy 可能还没有运行，所以发出命令 `sudo systemctl restart haproxy` 来启动（或重新启动）它。“重启” 的方法在非生产情况下是很好的，但是一旦你开始运行，你要养成使用 `sudo systemctl reload haproxy` 的习惯，以避免服务中断，即使你的配置中出现了错误。

例如，当你对 `/etc/haproxy/haproxy.cfg` 进行修改后，你需要用 `sudo systemctl reload haproxy` 来重新加载守护进程，使修改生效。如果有错误，它会让你知道，但继续用以前的配置运行。用 `sudo systemctl status haproxy` 检查 HAProxy 的状态。

如果它没有报告任何错误，你就有一个正在运行的服务器。在服务器上用 `curl` 测试，在命令行输入 `curl http://localhost/`。如果你看到 “This is Server ONE”，那就说明一切都成功了！运行 `curl` 几次，看着它在你的后端池中循环，然后看看当你输入 `curl http://localhost/api/` 时会发生什么。在 URL 的末尾添加 `/api/` 将把所有的流量发送到你池子里的第三个服务器。至此，你就有了一个正常运作的负载平衡器

### 检查你的统计资料

你可能已经注意到，配置中定义了一个叫做 `stats` 的前端，它的监听端口是 8404：

```
frontend stats
    bind *:8404
    stats uri /stats
    stats enable

```

在你的浏览器中，加载 `http://localhost:8404/stats`。阅读 HAProxy 的博客 [学习 HAProxy 的统计页面](https://www.haproxy.com/blog/exploring-the-haproxy-stats-page/)，了解你在这里可以做什么。

### 一个强大的负载平衡器

虽然我只介绍了 HAProxy 的几个功能，但你现在有了一个服务器，它可以监听 80 和 443 端口，将 HTTP 流量重定向到 HTTPS，在几个后端服务器之间平衡流量，甚至将匹配特定 URL 模式的流量发送到不同的后端服务器。你还解锁了非常强大的 HAProxy 统计页面，让你对你的系统有一个很好的概览。

这个练习可能看起来很简单，不要搞错了，你刚刚建立和配置了一个非常强大的负载均衡器，能够处理大量的流量。

为了你方便，我把本文中的所有命令放在了 [GitHub Gist](https://gist.github.com/haproxytechblog/d656422754f1b5eb1f7bbeb1452d261e) 中。

---

via: <https://opensource.com/article/20/11/load-balancing-haproxy>

作者：[Jim O'Connell](https://opensource.com/users/jimoconnell) 选题：[lujun9972](https://github.com/lujun9972) 译者：[wxy](https://github.com/wxy) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


硬核观察 #539 GitHub 推出赞助商专属存储库

Summary: 更多：• Go 语言正在测试对泛型和模糊处理的支持 • GNU/Hurd 使用 NetBSD 驱动程序来支持硬件

BSD系的驱动支持也不太行

# 硬核观察 #539 GitHub 推出赞助商专属存储库

### GitHub 推出赞助商专属存储库

几年前，GitHub 引入了赞助功能，允许任何人财务赞助开源开发者。而现在，GitHub 推出了 [赞助商专属存储库](https://github.blog/2022-02-02-new-sponsors-only-repositories-custom-amounts-and-more/)，也就是只有赞助商才能访问的私人存储库。这些存储库可以分为不同的赞助级别。有了赞助商专属仓库，开发者不仅可以募集捐款，还可以更好地与赞助商（企业或其他）进行更深入、更个性化的接触。

>
> 老王点评：虽然这样使受益和付出更一致，但是，与开源的关系呢？我觉得将来的发展未必是人们所期望的。
>
>
>

### Go 语言正在测试对泛型和模糊处理的支持

Go 1.18 本周发布了 [第二个测试版](https://go.dev/blog/go1.18beta2)。在 1.18 中，通过 Go 语言服务器和 VSCode 扩展可以支持泛型。此外，还引入了模糊处理和新的 Go 工作区模式。Go 1.18 的测试版被证明是非常可靠的，谷歌称，“事实上，我们已经在谷歌这里的生产中运行它”。候选发布版也有望在本月晚些时候发布，最终的 Go 1.18 版预计在 3 月发布。

>
> 老王点评：Go 这样活跃开发的语言，只要坐等就可以预期不断有很多新特性和性能提升。
>
>
>

### GNU/Hurd 使用 NetBSD 驱动程序来支持硬件

GNU/Hurd 的硬件支持一直处于非常粗糙的状态，缺乏完整的 x86\_64 支持，缺少 USB 支持，最近才有一定程度的对声音的支持。即使它比 Linux 内核存在的时间更长，仍然还有漫长的道路需要走。它的开发者在 [FOSDEM 2022](https://fosdem.org/2022/schedule/event/dzammit/) 上说，他们在微内核环境中重新使用 NetBSD 内核驱动，以扩大 Hurd 的硬件支持范围。

>
> 老王点评：Hurd 发展的太慢了，不过这样可以利用其它系统的硬件驱动倒是一个好主意。
>
>
>


使用 CMake 和 VSCodium 设置一个构建系统

# 使用 CMake 和 VSCodium 设置一个构建系统

>
> 提供一个适当的 CMake 配置文件来使其他人可以更容易地构建、使用和贡献你的项目。
>
>
>

这篇文章是使用开源 DevOps 工具进行 C/C++ 开发系列文章的一部分。如果你从一开始就把你的项目建立在一个功能强大的工具链上，你的开发会更快和更安全。除此之外，这会使别人更容易地参与你的项目。在这篇文章中，我将搭建一个基于 [CMake](https://cmake.org/) 和 [VSCodium](https://vscodium.com/) 的 C/C++ 构建系统。像往常一样，相关的示例代码可以在 [GitHub](https://github.com/hANSIc99/cpp_testing_sample) 上找到。

我已经测试了在本文中描述的步骤。这是一种适用于所有平台的解决方案。

### 为什么用 CMake ？

[CMake](https://opensource.com/article/21/5/cmake) 是一个构建系统生成器，可以为你的项目创建 Makefile。乍一看简单的东西可能相当地复杂。在较高的层次上，你可以定义你的项目的各个部分（可执行文件、库）、编译选项（C/C++ 标准、优化、架构）、依赖关系项（头文件、库），和文件级的项目结构。CMake 使用的这些信息可以在文件 `CMakeLists.txt` 中获取，它使用一种特殊的描述性语言编写。当 CMake 处理这个文件时，它将自动地侦测在你的系统上已安装的编译器，并创建一个用于启动它的 Makefile 文件。

此外，在 `CMakeLists.txt` 中描述的配置，能够被很多编辑器读取，像 QtCreator、VSCodium/VSCode 或 Visual Studio 。

### 示例程序

我们的示例程序是一个简单的命令行工具：它接受一个整数来作为参数，输出一个从 1 到所提供输入值的范围内的随机排列的数字。

```
$ ./Producer 10
3 8 2 7 9 1 5 10 6 4

```

在我们的可执行文件中的 `main()` 函数，我们只处理输入的参数，如果没有提供一个值（或者一个不能被处理的值）的话，就退出程序。

```
int main(int argc, char** argv){

    if (argc != 2) {
        std::cerr << "Enter the number of elements as argument" << std::endl;
        return -1;
    }

    int range = 0;

    try{
        range = std::stoi(argv[1]);
    }catch (const std::invalid_argument&){
        std::cerr << "Error: Cannot parse \"" << argv[1] << "\" ";
        return -1;
    }

    catch (const std::out_of_range&) {
        std::cerr << "Error: " << argv[1] << " is out of range";
        return -1;
    }

    if (range <= 0) {
        std::cerr << "Error: Zero or negative number provided: " << argv[1];
        return -1;
    }

    std::stringstream data;
    std::cout << Generator::generate(data, range).rdbuf();
}

```

*producer.cpp*

实际的工作是在 [生成器](https://github.com/hANSIc99/cpp_testing_sample/blob/main/Generator/Generator.cpp) 中完成的，它将被编译，并将作为一个静态库来链接到我们的`Producer` 可执行文件。

```
std::stringstream &Generator::generate(std::stringstream &stream, const int range) {
    std::vector<int> data(range);
    std::iota(data.begin(), data.end(), 1);

    std::random_device rd;
    std::mt19937 g(rd());

    std::shuffle(data.begin(), data.end(), g);

    for (const auto n : data) {

        stream << std::to_string(n) << " ";
    }

    return stream;
}

```

*Generator.cpp*

函数 `generate` 引用一个 [std::stringstream](https://en.cppreference.com/w/cpp/io/basic_stringstream) 和一个整数来作为一个参数。根据整数 `range` 的值 `n`，制作一个在 `1` 到 `n` 的范围之中的整数向量，并随后打乱。接下来打乱的向量值转换成一个字符串，并推送到 `stringstream` 之中。该函数返回与作为参数传递相同的 `stringstream` 引用。

### 顶层的 CMakeLists.txt

顶层的 [CMakeLists.txt](https://github.com/hANSIc99/cpp_testing_sample/blob/main/CMakeLists.txt) 的是我们项目的入口点。在子目录中可能有多个 `CMakeLists.txt` 文件（例如，与项目所相关联的库或其它可执行文件）。我们先一步一步地浏览顶层的 `CMakeLists.txt`。

第一行告诉我们处理文件所需要的 CMake 的版本、项目名称及其版本，以及预定的 C++ 标准。

```
cmake_minimum_required(VERSION 3.14)

project(CPP_Testing_Sample VERSION 1.0)

set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED True)

```

我们用下面一行告诉 CMake 去查看子目录 `Generator`。这个子目录包括构建 `Generator` 库的所有信息，并包含它自身的一个 `CMakeLists.txt` 。我们很快就会谈到这个问题。

```
add_subdirectory(Generator)

```

现在，我们将涉及一个绝对特别的功能: [CMake 模块](https://cmake.org/cmake/help/latest/manual/cmake-modules.7.html) 。加载模块可以扩展 CMake 功能。在我们的项目中，我们加载了 [FetchContent](https://cmake.org/cmake/help/latest/module/FetchContent.html) 模块，这能使我们能够在 CMake 运行时下载外部的资源，在我们的示例中是 [GoogleTest](https://github.com/google/googletest) 。

```
include(FetchContent)

FetchContent_Declare(
  googletest
  URL https://github.com/google/googletest/archive/bb9216085fbbf193408653ced9e73c61e7766e80.zip
)
FetchContent_MakeAvailable(googletest)

```

在接下来的部分中，我们会做一些我们通常在普通的 Makefile 中会做的事: 指定要构建的二进制文件、它们相关的源文件、应该链接的库，以及编译器可以找到头文件的目录。

```
add_executable(Producer Producer.cpp)

target_link_libraries(Producer PUBLIC Generator)

target_include_directories(Producer PUBLIC "${PROJECT_BINARY_DIR}")

```

通过下面的语句，我们使 CMake 来在构建文件夹中创建一个名称为 `compile_commands.json` 的文件。这个文件会展示项目的每个文件的编译器选项。在 VSCodium 中加载该文件，会告知 IntelliSense 功能在哪里查找头文件（查看 [文档](https://code.visualstudio.com/docs/cpp/c-cpp-properties-schema-reference)）。

```
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)

```

最后的部分为我们的项目定义一些测试。项目使用先前加载的 GoogleTest 框架。单元测试的整个话题将会划归到另外一篇文章。

```
enable_testing()

add_executable(unit_test unit_test.cpp)

target_link_libraries(unit_test gtest_main)

include(GoogleTest)

gtest_discover_tests(unit_test)

```

### 库层次的 CMakeLists.txt

现在，我们来看看包含同名库的子目录 `Generator` 中的 [CMakeLists.txt](https://github.com/hANSIc99/cpp_testing_sample/blob/main/Generator/CMakeLists.txt) 文件。这个 `CMakeLists.txt` 文件的内容更简短一些，除了单元测试相关的命令外，它仅包含 2 条语句。

```
add_library(Generator STATIC Generator.cpp Generator.h)
target_include_directories(Generator INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})

```

我们使用 `add_library(...)` 来定义一个新的构建目标：静态的 `Generator` 库。我们使用语句 `target_include_directories(...)` 来把当前子目录添加到其它构建目标的头文件的搜索路径之中。我们也具体指定这个属性的范围为类型 `INTERFACE`：这意味着该属性仅影响链接到这个库的构建目标，而不是库本身。

### 开始使用 VSCodium

通过使用 `CMakeLists.txt` 文件中的信息，像 VSCodium 一样的 IDE 可以相应地配置构建系统。如果你还没有使用 VSCodium 或 VS Code 的经验，这个示例项目会是一个很好的起点。首先，转到它们的 [网站](https://vscodium.com/) ，然后针对你的系统下载最新的安装软件包。打开 VSCodium 并导航到 “<ruby> 扩展 <rt>  Extensions </rt></ruby>” 标签页。

为了正确地构建、调试和测试项目，搜索下面的扩展并安装它们：

如果尚未完成，通过单击起始页的 “<ruby> 克隆 Git 存储库 <rt>  Clone Git Repository </rt></ruby>” 来克隆存储库。

或者手动输入：

```
git clone https://github.com/hANSIc99/cpp_testing_sample.git

```

之后，通过输入如下内容来签出标签 `devops_1`：

```
git checkout tags/devops_1

```

或者，通过单击 “main” 分支按钮（红色框），并从下拉菜单（黄色框）中选择标签。

在你打开 VSCodium 内部中的存储库的根文件夹后，CMake Tools 扩展会侦测 `CMakeLists.txt` 文件并立即扫描你的系统寻找合适的编译器。你现在可以单击屏幕的底部的 “<ruby> 构建 <rt>  Build </rt></ruby>” 按钮（红色框）来开始构建过程。你也可以通过单击底部区域的按钮（黄色框）标记来更改编译器，它显示当前活动的编译器。

要开始调试 `Producer` 可执行文件，单击调试器符号（黄色框）并从下拉菜单中选择 “<ruby> 调试 <rt>  Debug </rt></ruby> Producer”（绿色框）。

如上所述，`Producer` 可执行文件要求将元素的数量作为一个命令行的参数。命令行参数可以在 `.vscode/launch.json` 中具体指定。

好了，你现在能够构建和调试项目了。

### 结束语

归功于 CMake ，不管你正在运行哪种操作系统，上述步骤应该都能工作。特别是使用与 CMake 相关的扩展，VSCodium 变成了一个强大的 IDE 。我没有提及 VSCodium 的 Git 集成，是因为你已经能够在网络上查找很多的资源。我希望你可以看到：提供一个适当的 CMake 配置文件可以使其他人更容易地构建、使用和贡献于你的项目。在未来的文章中，我将介绍单元测试和 CMake 的测试实用程序 `ctest` 。

---

via: <https://opensource.com/article/22/1/devops-cmake>

作者：[Stephan Avenwedde](https://opensource.com/users/hansic99) 选题：[lujun9972](https://github.com/lujun9972) 译者：[robsean](https://github.com/robsean) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


KDE Falkon 浏览器三年来首次更新

直接拿chromium来套壳不就好了，KDE折腾这些做什么

典型的地基不打好，重复铺水泥。干脆就把Linux内核也自己写一个得了，显示服务也写一个，做个3k系统不好?

张口就来？

Chrome/Chromium 最初用的 WebKit，后来基于 WebKit 自己搞了个 Blink。

而 WebKit 就是由 KDE 的 KHTML 项目 fork 出来

你行你上呗。了解一下，WebKit 是由 KDE 的 KHTML 项目 fork 出来，后来基于 WebKit 才有了 Blink。

别说什么把 Linux 内核写一个，把显示服务写一个，拿 Chromium 来套壳不就好了。<br />
Google 巴不得这些浏览器多一点，这样就不会被反垄断调查了。

评论让人一言难尽

Windows8基于MSDOS，不见你用它MSDOS，却用Windows8?<br />
基于又有什么用?安卓基于Linux，Mac基于BSD，不见得后者比前者好用受欢迎

官网UI很KDE

Windows8基于NT Kernel

Android虽然基于Linux但是不含GNU组件(GNU/Linux)

MacOS基于XNU内核,与BSD已经有显著区别了

# KDE Falkon 浏览器三年来首次更新

>
> Falkon 的最新版本带来了截屏功能和基于 PDFium 的 PDF 阅读器以及其他改进。
>
>
>

如果你是 KDE 的粉丝，你肯定接触过，甚至使用过 Falkon。所以，你一定会惊喜地发现，KDE 已经成功地为他们的网络浏览器发布了新的重大升级。

与其他主流网络浏览器不同，Falkon 的更新并不频繁。这个最新发布的版本是一个令人兴奋的更新，在间隔了近三年之后！

补充一句，[Falkon](https://itsfoss.com/falkon-browser/) 是一个建立在 QtWebEngine 上的简单的开源网络浏览器。它最初被称为 QupZilla，后来在 KDE 旗下被重新命名为 Falkon。

虽然并不是新浏览器，它早在 2010 年就发布了，但它为普通用户提供了一种极简的浏览体验。

### Falkon 3.2.0 有什么新内容？

即使你现在安装的是最新版本，Falkon 也没有定期提供安全更新。

因此，你可以考虑将 Falkon 作为满足特定要求的浏览器或作为辅助浏览器。

下面是这个版本的新内容：

#### 截屏和 PDF 阅读器支持

最新的版本带来了急需的截屏功能和可选的基于 PDFium 的 PDF 阅读器。这两个都是基于 Qt 5.13 的版本。

#### 主题和插件

对下载主题和扩展的初步支持也被添加进来了，同时偏好菜单也显示了对 KDE 商店的链接。此外，用户现在也可以删除本地安装的主题和插件。

#### 书签

由于有了上下文菜单项，用户现在可以创建文件夹并存储书签。人们已经注意到，填充书签栏和创建顶级的书签的能力已经没有了。

#### 其他功能

* 在 Falkon 中添加的一个非常常见但又必不可少的功能是暂停或恢复下载的能力。
* 更新的 CookieManager 现在允许同时选择一个以上的 cookie。
* 首选项扩展现在可以筛选查找。
* 用户现在可以通过上下文菜单分离标签。
* 现在包括 NetworkManager 集成。

要了解更多关于所有的技术变化，你可以参考 [官方发布说明](https://www.falkon.org/2022/01/31/320-released/#disqus_thread)。

### 总结

Falkon 的最新版本表明 KDE 仍然计划继续支持它。这对 KDE 爱好者来说是个好消息，特别是对那些使用 Falkon 的人来说。但是，现在说他们是否计划定期推送更新，使其成为日常浏览的理想选择，还为时过早。

如果你觉得一个简单的、轻量级的网络浏览器就可以，而且有很好的广告屏蔽功能，一个与 KDE 桌面融合的浏览器，Falkon 是一个必须尝试的东西。

安装是非常直接的。你可以在你的软件库中找到它，或者使用 Flatpak 或 [Snap 包](https://snapcraft.io/falkon) 安装它。如果你想知道，它也可用于 Windows 用户。

* [下载 Falkon 3.2.0](https://www.falkon.org/download/)

---

via: <https://news.itsfoss.com/falkon-browser-3-2-release/>

作者：[Rishabh Moharir](https://news.itsfoss.com/author/rishabh/) 选题：[lujun9972](https://github.com/lujun9972) 译者：[wxy](https://github.com/wxy) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


硬核观察 #540 美国要替换华为和中兴设备，却没钱没设备

Summary: 更多：• Meta 正考虑退出欧洲市场 • AI 已经威胁到有声书行业的从业者

快进到特啷普再次当选，让Meta退出美国市场。 ;D

更多：• Meta 正考虑退出欧洲市场 • AI 已经威胁到有声书行业的从业者

# 硬核观察 #540 美国要替换华为和中兴设备，却没钱没设备

### 美国要替换华为和中兴设备，却没钱没设备

为替换华为和中兴的设备，美国联邦通信委员会的“安全可信通信补偿计划”为拥有 1000 万以下用户的运营商提供补偿，预算为 19 亿美元。然而在三个月的申请期间收到了 56 亿美元的申请，这就需要美国国会重新解决资金问题了。此外，除了 [资金问题](https://www.theregister.com/2022/02/07/secure_and_trusted_communications_reimbursement_program_overrun/)之外，准备提供替换设备的思科、Juniper 也不能及时提供设备产能，他们表示可能要 1-2 年的时间才能生产出来。

>
> 老王点评：如果真的有后门，这么长时间想做什么都做完了吧。
>
>
>

### Meta 正考虑退出欧洲市场

伴随着《欧洲通用数据保护条例》（GDPR）的生效，美国的隐私保护法规被认为不符合规定。在欧盟法院的一项重要裁决之后，宣告欧盟-美国之间的有关个人数据的隐私盾协议无效。这一裁决影响到每一家美国公司，包括 Meta、谷歌、微软和亚马逊等。在近日提交的一份 SEC 文件中，Meta 说如果它不能与美国的业务、应用程序和数据中心分享欧洲用户的数据，将对其有针对性的在线广告能力产生破坏性影响，它或将干脆完全 [撤出欧洲](https://itwire.com/listed-tech/meta-threatens-to-pull-facebook-and-instagram-from-europe-if-it-can-t-target-ads.html)。

>
> 老王点评：或许广告盈利模式会有一些新的变化和博弈，但是我想本质上不会变，用户获得免费服务的代价总是以某种形式支付。
>
>
>

### AI 已经威胁到有声书行业的从业者

与 [传统的人工配音](https://www.publishersweekly.com/pw/by-topic/industry-news/publisher-news/article/88477-ai-influence-on-audiobooks-grows-as-does-controversy.html) 相比，AI 配音的有声书成本要低得多。但是将失去工作的不仅仅是配音员，而是整个有声书配音生态。根据美国音频出版商协会的最新数据，美国 2020 年出版的有声书超过 7.1 万本，但只占当年出版的印刷书籍数量的一小部分。专业的配音员认为自己所从事的是艺术，然而这并不能阻止出版商越来越多的采用 AI 来配音。

>
> 老王点评：和很多即将被 AI 取代的工作一样，我觉得与其抱怨和反对，倒不如想想如何让 AI 更好的配音，重新定位自己的角色。
>
>
>


Linux BitTorrent 客户端 Fragments 2.0 全新发布

没有自动添加Track服务器功能，渣渣，不如qbittorrent

# Linux BitTorrent 客户端 Fragments 2.0 全新发布

>
> Fragments 2.0 的发布使其成为 Linux 发行版中最方便用户使用的 BitTorrent 客户端之一。让我们来看看有什么新变化。
>
>
>

Fragments 是 [Linux 上最好的 BitTorrent 客户端之一](https://itsfoss.com/best-torrent-ubuntu/)。

最新的 Fragments 2.0 是一个重大升级，它使用 Rust、GTK 4 和 Libadwaita 从头开始完全重写。

除了技术上的改进之外，你还会发现一些新的功能和改进的用户界面。

让我重点介绍一下它的变化。

### Fragments 2.0 的新变化

最近，Gnome 应用程序的生态系统经历了一些大规模的变化。在这个变化的最前沿是向 Gtk4 和 [Libadwaita](https://adrienplazas.com/blog/2021/03/31/introducing-libadwaita.html) 的过渡。不幸的是，这种变化并不小，许多应用程序需要从头开始重建，以支持这些新标准。

与许多其他应用程序开发者一起，Fragment 的开发者 [Felix Häcker](https://twitter.com/haeckerfelix) 决定从头开始重建 Fragments，现在作为 Fragments 2.0 发布。因此，我们现在得到了一个改进的 Linux 的 BitTorrent 客户端。

其中的一些改进包括。

* 一个基于 Libadwaita 的漂亮的新用户界面
* 新的模块化架构
* 能够被用作远程 Fragments / Transmission 会话的远程控制
* 新的偏好对话框有更多的选项
* 能够查看有关网络的统计数据

#### 一个新的用户界面

Fragments 2.0 现在有一个基于 Libadwaita 的新 UI。补充一句，Libadwaita 是 GTK4 对 Gnome 应用程序的一个扩展。它有几个优点，最明显的是在所有 Gnome 应用程序中具有一致的外观。

它比旧的主题更加扁平和圆润，我觉得，看起来非常时尚。

你可以得到一个外观简洁的 BitTorrent 应用程序，易于浏览，你也可以快速访问一些基本的选项。

#### 新的模块化架构

虽然不能直接看到，但 Fragments 2.0 具有一个全新的模块化架构。在内部，该应用程序的所有不同部分都是模块化的。虽然这起初看起来没有那么大的影响，但我可以看到它对用户和开发者都有深远的影响。

首先，它应该意味着更容易维护，希望能让开发人员花更多时间在新功能和错误修复上。其次，它也应该意味着应用程序的更大稳定性。如果 Fragments 的一个部分崩溃了，应用程序的其他部分应该保持工作，希望不会对用户产生任何重大影响。

这只是我想到的这个新架构的两个好处，我相信还可以有更多。

#### 新的首选项对话框

最后，Fragments 2.0 引入了几个经常要求的设置选项。在这些选项中，我认为最重要的是能够改变尚未完全下载的种子的默认文件夹。

虽然仍然不像它的一些替代品那样可以定制，但这些新增功能可以帮助你调整设置以适应你的要求。

其中一些选项包括：

* 添加种子后自动启动它们
* 启用/禁用下载队列
* 可定制的对等体限制
* 网络端口设置
* 自动端口转发的切换

#### 控制远程 Fragments / Transmission 会话

远程控制你的下载的能力可以产生相当大的影响。随着 Fragments 2.0，该应用程序终于获得了类似的功能，允许用户远程控制其他安装的 Fragments 和 Transmission 客户端。

这对使用单独的下载服务器的人来说非常有用，因为他们往往不能直接访问它。

虽然这在其他应用程序中一直提供的，但这一功能被直接整合到 Fragments 中，使得它成为一个对高级用户有用的 BitTorrent 客户端！

#### 其他改进措施

除了所有这些大的变化之外，还有一些错误的修复和一些新的能力。

一些关键的亮点包括：

* 添加的种子的磁力链可以被复制到剪贴板上
* 可以查看关于当前会话的统计数据（速度、总下载数据等）

你可以在其 [GitLab 页面](https://gitlab.gnome.org/World/Fragments) 上探索更多关于 Fragments 2.0 的信息。

### 下载 Fragments 2.0

Fragments 是以 Flatpak 应用程序的形式提供的。如果你的 Linux 发行版没有内置的支持，你可以通过我们的 [Flatpak 指南](https://itsfoss.com/flatpak-guide/) 来设置 Flatpak。

* [Fragments（Flathub）](https://flathub.org/apps/details/de.haeckerfelix.Fragments)

你可以尝试在你的软件中心搜索它（启用 Flatpak 集成）或在终端键入以下命令：

```
flatpak install flathub de.haeckerfelix.Fragments

```

Fragments 2.0.1（有一些小的修正）也可以在其 GitLab 页面上找到，但还没有反映在 Flathub 上。

如果你在使用 Fragments 2.0 时有问题，你可能想等更新版本进入 Flathub。

你最喜欢的 BitTorrent Linux 客户端是什么？Fragments 2.0 是否令人印象深刻？请在下面的评论中告诉我你的想法。

---

via: <https://news.itsfoss.com/fragments-2-0-release/>

作者：[Jacob Crume](https://news.itsfoss.com/author/jacob/) 选题：[lujun9972](https://github.com/lujun9972) 译者：[wxy](https://github.com/wxy) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


用 Linux 命令行解决 Wordle 问题

好

来自江西九江的 Chrome Mobile 98.0|Android 12 用户

(σﾟ∀ﾟ)σ哇!这里的好看一点,知乎上没有配色

(σﾟ∀ﾟ)σ哇!这里的好看一点,知乎上没有配色

# 用 Linux 命令行解决 Wordle 问题

>
> 使用 Linux 的 grep 和 fgrep 命令来赢得你最喜欢的基于单词的猜测游戏。
>
>
>

我最近有点迷恋上了一个在线单词猜谜游戏，在这个游戏中，你有六次机会来猜一个随机的五个字母的单词。这个词每天都在变化，而且你每天只能玩一次。每次猜测后，你猜测中的每个字母都会被高亮显示：灰色表示该字母没有出现在神秘单词中，黄色表示该字母出现在单词中，但不在那个位置，绿色表示该字母出现在单词中的那个正确位置。

下面是你如何使用 Linux 命令行来帮助你玩像 Wordle 这样的猜测游戏。我用这个方法来帮助我解决 1 月 6 日的谜题：

### 第一次尝试

Linux 系统在 `/usr/share/dict/words` 文件中保存了一个单词词典。这是一个很长的纯文本文件。我的系统的单词文件里有超过 479,800 个条目。该文件既包含纯文本，也包含专有名词（名字、地点等等）。

为了开始我的第一次猜测，我只想得到一个长度正好是五个字母的纯文本词的列表。要做到这一点，我使用这个 `grep` 命令：

```
$ grep '^[a-z][a-z][a-z][a-z][a-z]$' /usr/share/dict/words > myguess

```

`grep` 命令使用正则表达式来进行搜索。你可以用正则表达式做很多事情，但为了帮助我解决 Wordle 问题，我只需要基本的东西。`^` 表示一行的开始，`$` 表示一行的结束。在两者之间，我指定了五个 `[a-z]` 的实例，表示从 a 到 z 的任何小写字母。

我还可以使用 `wc` 命令来查看我的可能单词列表，“只有” 15,000 个单词：

```
$ wc -l myguess
15034 myguess

```

从这个列表中，我随机挑选了一个五个字母的单词：`acres`。`a` 被设置为黄色，意味着该字母存在于神秘单词的某处，但不在第一位置。其他字母是灰色的，所以我知道它们并不存在于今天的单词中。

### 第二次尝试

对于我的下一个猜测，我想得到一个包含 `a` 的所有单词的列表，但不是在第一位置。我的列表也不应该包括字母 `c`、`r`、`e` 或 `s`。让我们把这个问题分解成几个步骤。

为了得到所有带 a 的单词的列表，我使用 `fgrep`（固定字符串 grep）命令。`fgrep` 命令也像 `grep` 一样搜索文本，但不使用正则表达式：

```
$ fgrep a myguess > myguess2

```

这使我的下一个猜测的可能列表从 15,000 个字下降到 6,600 个字：

```
$ wc -l myguess myguess2
 15034 myguess
  6634 myguess2
 21668 total

```

但是这个单词列表中的第一个位置也有字母 `a`，这是我不想要的。游戏已经表明字母 `a` 存在于其他位置。我可以用 `grep` 修改我的命令，以寻找在第一个位置包含其他字母的词。这就把我可能的猜测缩小到了 5500 个单词：

```
$ fgrep a myguess | grep '^[b-z]' > myguess2
$ wc -l myguess myguess2
 15034 myguess
  5566 myguess2
 20600 total

```

但我知道这个神秘的词也不包括字母 `c`、`r`、`e` 或 `s`。我可以使用另一个 `grep` 命令，在搜索中省略这些字母：

```
$ fgrep a myguess | grep '^[b-z]' | grep -v '[cres]' > myguess2
$ wc -l myguess myguess2
15034 myguess
 1257 myguess2
16291 total

```

`-v` 选项意味着反转搜索，所以 `grep` 将只返回不符合正则表达式 `[cres]` 或单列字母 `c`、`r`、`e` 或 `s` 的行。有了这个额外的 `grep` 命令，我把下一个猜测的范围大大缩小到只有 1200 个可能的单词，这些单词在某处有一个 `a`，但不在第一位置，并且不包含 `c`、`r`、`e`、或 `s`。

在查看了这个列表后，我决定尝试一下 `balmy` 这个词。

### 第三次尝试

这一次，字母 `b` 和 `a` 被高亮显示为绿色，意味着我把这些字母放在了正确的位置。字母 `l` 是黄色的，所以这个字母存在于单词的其他地方，但不是在那个位置。字母 `m` 和 `y` 是灰色的，所以我可以从我的下一个猜测中排除这些。

为了确定下一个可能的单词列表，我可以使用另一组 `grep` 命令。我知道这个词以 `ba` 开头，所以我可以从这里开始搜索：

```
$ grep '^ba' myguess2 > myguess3
$ wc -l myguess3
77 myguess3

```

这只有 77 个词! 我可以进一步缩小范围，寻找除第三位外还包含字母 `l` 的词：

```
$ grep '^ba[^l]' myguess2 > myguess3
$ wc -l myguess3
61 myguess3

```

方括号 `[^l]` 内的 `^` 表示不是这个字母列表，即不是字母 `l`。这使我的可能单词列表达到 61 个，并非所有的单词都包含字母 `l`，我可以用另一个 `grep` 搜索来消除这些单词：

```
$ grep '^ba[^l]' myguess2 | fgrep l > myguess3
$ wc -l myguess3
10 myguess3

```

这些词中有些可能包含字母 `m` 和 `y`，而这些字母并不在今天的神秘词中。我可以再进行一次反转 `grep` 搜索，将它们从我的猜测列表中删除：

```
$ grep '^ba[^l]' myguess2 | fgrep l | grep -v '[my]' > myguess3
$ wc -l myguess3
7 myguess3

```

我的可能的单词列表现在非常短，只有七个单词!

```
$ cat myguess3
babul
bailo
bakal
bakli
banal
bauld
baulk

```

我选择 `banal` 作为我下一次猜测的可能的词，而这恰好是正确的。

### 正则表达式的力量

Linux 的命令行提供了强大的工具来帮助你完成实际工作。`grep` 和 `fgrep` 命令在扫描单词列表方面提供了极大的灵活性。对于一个基于单词的猜测游戏，`grep` 帮助识别了一个包含 15000 个可能的单词的列表。在猜测并知道哪些字母出现在神秘的单词中，哪些没有，`grep` 和 `fgrep` 帮助将选项缩小到 1200 个单词，然后只剩下 7 个单词。这就是命令行的力量。

---

via: <https://opensource.com/article/22/1/word-game-linux-command-line>

作者：[Jim Hall](https://opensource.com/users/jim-hall) 选题：[lujun9972](https://github.com/lujun9972) 译者：[geekpi](https://github.com/geekpi) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


硬核观察 #541 英伟达收购 ARM 交易失败

Summary: 更多：• 英特尔加入 RISC-V 国际 • 谷歌云增加加密挖矿检测能力

根据老黄让厂商们在AMD显卡上要选择站队的前科来看，假如交易完成，牙膏通岂不是要跪着老黄求食?毕竟当年把Nvidia，德州仪器赶出移动平台的正是它。

更多：• 英特尔加入 RISC-V 国际 • 谷歌云增加加密挖矿检测能力

# 硬核观察 #541 英伟达收购 ARM 交易失败

### 英伟达收购 ARM 交易失败

英伟达在当地时间 2 月 7 日的董事会上决定放弃收购 ARM。此前美国、英国和欧盟监管机构就此交易对全球半导体行业竞争的影响提出严重关切。这笔交易是芯片行业有史以来规模最大的一笔交易，最高曾达 870 亿美元。ARM 的技术是全球大多数移动设备的核心。高通和微软等几家依赖 ARM 芯片设计的大型科技公司曾反对此次收购。软银将获得最高 12.5 亿美元的 [交易终止费](https://arstechnica.com/gadgets/2022/02/nvidia-abandons-66-billion-arm-purchase/)，它将寻求在年底前对 ARM 进行 IPO。

>
> 老王点评：很多国家和 IT 企业并不希望 ARM 被收购，这毕竟这对别人来说都不算什么好事。
>
>
>

### 英特尔加入 RISC-V 国际

虽然英特尔已经有了基于 RISC-V 的处理器，但看来英特尔短期内不会用 RISC-V 取代 x86\_64。英特尔加入了 RISC-V 国际，成为首席成员，[这一举措](https://riscv.org/whats-new/2022/02/intel-corporation-makes-deep-investment-in-risc-v-community-to-accelerate-innovation-in-open-computing/) 应该是希望吸引更多的客户加入英特尔代工服务，领先的 RISC-V 芯片设计公司 SiFive 已经是其客户。英特尔还将赞助一个开源软件开发平台，帮助 RISC-V 发展其开源软件。

>
> 老王点评：不能消灭就拥抱，这很熟悉，对吧？
>
>
>

### 谷歌云增加加密挖矿检测能力

这项名为“虚拟机威胁检测”（VMTD）的 [新功能](https://therecord.media/google-cloud-adds-new-cryptomining-threat-detection-capability/) 是一个无代理系统，它会持续扫描部署在谷歌云环境中的虚拟机内存，以发现 CPU 或 GPU 使用量增加的蛛丝马迹，尤其是加密运算。该功能默认是禁用的，客户需要自行启用。该功能只对非敏感内存起作用，VMTD 不会检查来自标记为“机密”的节点的内存。

>
> 老王点评：这个功能对谷歌云及其客户都是有意义的，我想其它的云服务商也应该有类似举措。
>
>
>


Brave vs Vivaldi：哪个浏览器更好？

Summary: 在此，我将解答上述所有问题，并对这两款浏览器进行并列比较。

菜鸡互啄，其中拉胯Vivadia不华又不实还卡。

Vivaldi太好用了，除了有时候有些更新有点小发疯，总的来说很牛逼，对于丰富功能狂来说。好好好赞赞赞！

Brave 出现过几次负面新闻，Vivaldi 还见过，倒不是夸它，我觉得"所有专门成立个公司开发的，还打着保护隐私旗号的都不要用"。

真在乎隐私，与其用 Brave、Vivaldi，还不如用 ungoogled-chromium。

github.com/ungoogled-software/ungoogled-chromium

《Brave 浏览器在 DNS 流量中会泄露 onion 地址》

www[.]solidot.org/story?sid=66987

《Brave 劫持链接插入返利代码》

www[.]solidot.org/story?sid=64593

《Brendan Eich透露默认屏蔽广告的浏览器Brave，用自己的广告替代被屏蔽的广告》

www[.]solidot.org/story?sid=46979

在此，我将解答上述所有问题，并对这两款浏览器进行并列比较。

# Brave vs Vivaldi：哪个浏览器更好？

毫无疑问，Brave 是一款出色的开源网页浏览器。它也是 [适用于 Linux 的最佳网页浏览器](/article-14075-1.html) 之一。

另一方面，Vivaldi 凭借其强劲的自定义能力和标签页管理功能，在 Linux 用户群中获得了不错的声誉。

Vivaldi 是否值得一试？它开源吗？为什么你会更喜欢 Brave 而不是它？或者，是否应该考虑使用 Vivaldi 呢？

在此，我将解答上述所有问题，并对这两款浏览器进行并列比较。

### 用户界面

虽然这两款网页浏览器都是基于开源的 Chromium 代码，但是它们提供了不同的用户体验。

Brave 专注于提供简洁的外观，而 Vivaldi 则尽力提供更多的功能。

如果你不想受到过多干扰，只想专心浏览网页，那么 Brave 应该能给你提供清爽的体验。

不过，Brave 也为你提供了定制现有界面的选项，例如使用更宽的地址栏、显示完整 URL、显示标签搜索按钮、显示或隐藏主页按钮等。

说到主题，Brave 默认提供了亮色和暗色两款主题，同时也支持 Chrome 应用商店中的主题。

反观另一边，Vivaldi 默认情况下看上去似乎有点满满当当的 —— 能够快速访问的侧边栏、地址栏右边的搜索框，再加上浏览器底部还有更多要素。

Vivaldi 默认也提供了更多主题。别忘了，你可以无缝地编辑、定制主题，而 Brave 可没有这种功能。

对于那些想要一款简洁明了，同时可以自定义的浏览器的人来说，Brave 就是合适的推荐项。而对于那些需要丰富的界面和大量设置项的用户来说，Vivaldi 是个不错的选择。

### 完全开源 vs 99% 开源

Brave 是完全开源的，可以免费 / 自由使用。你可以在 GitHub 上查看它的源代码，如果需要的话还可以<ruby> 复刻 <rt>  Fork </rt></ruby>一份代码以用于实验和测试。

Vivaldi 的话，呃……只能说是几乎开源。整个浏览器基于 Chromium 开发，而修改过的 Chromium 源代码可以在它的官网中找到。不过，这款浏览器的用户界面却是专有的。

为确保提供独特的用户体验，并保持对它的控制权，Vivaldi 决定将用户界面闭源。

不过，他们在一篇 [博文](https://help.vivaldi.com/desktop/privacy/is-vivaldi-open-source/) 中解释得很清楚。

### 标签页管理

对于大多数用户来说，这可能不算是一个比较标准，但考虑到 Vivaldi 以其标签页管理功能而著名，因此这一点仍旧值得比较。

在你打开了许多标签页时，标签页管理就会大有用场。如果你只开了少量的标签页，那你不需要同时考虑标签页管理，但它仍旧十分有用。

有了 Vivaldi，你可以体验两级堆叠标签栏，同时还可以拥有多个堆叠标签组。你还可以将标签栏从浏览器的顶部移动到左、右、底部。

标签的默认行为都可以修改。紧凑标签组可以修改为折叠式，标签宽度可以更改，按钮可选择显示或隐藏，还有许多配置项。

Brave 同样可以分组标签、指定颜色、命名标签组，以及展开、折叠标签组，以便管理。

不过，在 Brave 里就没有 Vivaldi 那样的两级标签栏，以及自定义标签行为的功能。

此外，我个人认为 Brave 的标签管理（在开启暗色模式时）看上去有点混乱不堪。

当然，你可以决定新标签页展示什么内容，但这远远不及 Vivaldi 大量选项那么有用。

所以，在标签页管理这一方面，Vivaldi 明显完胜。不过，一切仍取决于你的实际需求。如果你不在多个标签页中反复横跳，那你其实也不需要什么额外的东西。

### 其他功能

两款浏览器都提供了所有基本功能，但你仍旧可以发现许多区别。

Brave 支持 IPFS 协议，你也可以使用 Brave 奖励功能，并通过由 Brave 提供的尊重隐私的广告来获取奖励。这些奖励可作为赞助费用，以支持网站的创作者。这些奖励同样也可以用于购买来自合作伙伴的 Brave 周边。

Brave 搜索是 Brave 浏览器的默认搜索引擎。虽然这款搜索引擎并非开源，但 Brave 搜索所带来的功能足以使其成为其他隐私保护型搜索引擎的适当替代品。

来到 Vivaldi 这边，它提供了大量额外功能，包括侧边栏的 Web 面板、番茄钟、页面平铺、日历集成、电子邮箱集成、RSS 订阅等。

侧边栏（或者叫 Web 面板）允许你快速访问内容，不需额外新建标签或窗口，让你轻松进行多任务处理，而不会失去对当前活跃标签的专注。

当然，它还有内置的翻译功能，让你能在不懂网站的语言时摆脱谷歌翻译。

除了这些功能以外，Vivaldi 允许你修改键盘快捷键、鼠标手势，以及大量快捷命令。在 Brave 里可没有这些东西。

因此，我认为 Vivaldi 对于喜欢键盘快捷键的人来说是一个不错的选择。

### 隐私一角

Vivaldi 专注于提供隐私友好型网络体验，就和 Brave 一样。它内置了原生的广告 / 跟踪拦截保护，以及专门用于自行调整体验的隐私设置。

就如上方的截图那样，你可以选择启用或禁用谷歌的安全服务，隐藏输入历史，修改历史记录的存储行为，并修改默认的网站权限。

Brave 同样给你类似的控制级别，当然也有更高级的设置项，比如修改 WebRTC IP 处理政策，以及消息推送服务控制。

如果你单纯想要拦截跟踪器和广告的功能，那么两款浏览器都有。不过，如果你更担心某项特定需求，那你可以试着查看它们的设置项，然后自行决定。

### 性能

一如既往，我借助一些知名的基准工具来测试浏览器的性能，例如：[JetStream 2](https://webkit.org/blog/8685/introducing-the-jetstream-2-benchmark-suite/)、[Speedometer 2.0](https://webkit.org/blog/8063/speedometer-2-0-a-benchmark-for-modern-web-app-responsiveness/) 和 [Basemark Web 3.0](https://web.basemark.com/)。

我使用 Pop!\_OS 21.10 作为我的 Linux 发行版，而测试的浏览器版本为 **Vivaldi 5.0.2497.51 稳定版** 和 **Brave 97.0.4692.99**。

在这些基准跑分测试中，Brave 总体更快，但 Vivaldi 在 Speedometer 2.0 中得分更高。

作为参考，我后台没有运行任何程序，只运行了浏览器。电脑配置为 **英特尔 15-11600K @4.7GHz、32GB 3200 MHz 内存、英伟达 1050Ti 显卡**。

因此，两款浏览器都应该能带来快速、便捷的网络体验。

### 安装

Vivaldi 在它的 [官网](https://vivaldi.com/download/) 提供了最新的 DEB/RPM 软件包，而且同样支持 ARM 设备。不过目前稳定版本的 Vivaldi 暂时不提供 Flatpak 和 Snap 版本。

另一边，Brave 并没有直接在官网提供这些软件包。你必须 [在终端中输入一组命令](https://brave.com/linux/#linux) 以安装 Brave，至少这是官方推荐的安装方式。

你也能下载 [Snap 版软件包](https://snapcraft.io/brave)，但这并非是最佳方法，官方也承认有许多问题存在。

但无论如何，你都可以查阅我们的 [在 Fedora 上安装 Brave 的指南](/article-14028-1.html) 以获得帮助。

### 最终结论

如果说到开源浏览器，那 Brave 占绝对优势，毕竟它是完全开源的。不过，Vivaldi 对于隐私型网络体验的承诺，以及对 Linux 平台的重视，反而更具吸引力。

从功能上看，Vivaldi 的标签页管理功能已经是极具竞争力的选择，它可以帮助你在大量标签中更加游刃有余。

需要注意的是，Vivaldi 的双显示器体验似乎不太友好（至少在我这边是这样的）。目前来看，Vivaldi 在我的双显示器环境下出现卡顿，甚至无响应，但在单显示器上从来没有这种情况。

而 Brave 就没有这种问题。因此，建议你自行测试一下。

Brave 提供简洁和快速的体验，Vivaldi 则更适合那些喜欢更多自定义配置和丰富界面的用户。

考虑到 Vivaldi 标签页管理功能确实能省下不少时间，我会选择 Vivaldi，不过我最后还是换回了 Firefox，至少等到 Vivaldi 能够在双显示器环境下流畅运行。

你又会选择哪款呢？欢迎在评论区留言，让我了解你的想法。

---

via: <https://itsfoss.com/brave-vs-vivaldi/>

作者：[Ankush Das](https://itsfoss.com/author/ankush/) 选题：[lujun9972](https://github.com/lujun9972) 译者：[imgradeone](https://github.com/imgradeone) 校对：[wxy](https://github.com/wxy)

本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出