在 Linux 中如何对 CPU 进行压力测试

# 在 Linux 中如何对 CPU 进行压力测试

>
> 压力测试 CPU 是检查处理器在重负载下性能表现以及系统在此情况下的温度的最佳方法之一。
>
>
>

当你压力测试 CPU 时，可以监视系统资源，观察它们在最高工作负载下的表现。虽然性能不会改变，但如果处理器不具备良好散热能力，温度可能会影响其运作。

**对于发烧友来说，压力测试是建造新系统时必不可少的**，特别是如果你打算以后超频 CPU。

例如，在压力测试过程中，如果你的 CPU 很快变得太热，你需要通过更换 CPU 风扇、使用更好的通风机箱等方式来改进散热解决方案。

现在你已经了解到压力测试的好处，接下来我将为你介绍在 Linux 中压力测试 CPU 的以下两种方法：

* **使用 GtkStressTesting（图形界面方式）**
* **使用 stress 和 s-tui 实用程序（命令行方式）**

接下来，让我们从第一种方法开始。

### 使用图形界面方法压力测试 Linux CPU ?

如果你更喜欢使用图形界面方法，而不是通过终端操作，我有一个最简单的方法来帮助你进行系统压力测试。

有一个名为 **GtkStressTesting** 的图形界面实用工具，可以帮助你进行压力测试和同时监视温度。它提供了多种预设来进行系统压力测试，并提供了选择在测试期间需要使用多少个内核的功能。

>
> ? 该工具在 [GitLab](https://gitlab.com:443/leinardi/gst) 上已不再积极维护。但是它仍能按预期工作。
>
>
>

GtkStressTesting 可以作为 Flatpak 安装，因此如果你尚未启用 Flatpak 支持，请参考我们的 [Flatpak 安装指南](https://itsfoss.com/flatpak-guide/)。

一旦你启用了 Flatpak 支持，可以通过终端（如果没有软件中心）使用以下命令来安装 GtkStressTesting 实用工具：

```
flatpak install flathub com.leinardi.gst

```

安装完成后，你可以从系统菜单中启动 GtkStressTesting 实用工具。

在这里，我建议你点击“<ruby> 读取全部 <rt>  Read all </rt></ruby>”按钮，并输入 sudo 密码，以便工具可以获取你系统的全部信息：

从这里，你可以选择压力测试系统的时间（如果温度过高，随时可以停止进程），并在“<ruby> 工作线程：自动 <rt>  Workers: Auto </rt></ruby>”下拉菜单中选择可用的的最大数量。

我选择了 **12 核心和 5 分钟的压力测试**：

完成后，单击“<ruby> 开始 <rt>  Start </rt></ruby>”按钮，监视温度，如果超过 90 度，请停止压力测试。

在我的系统上，压力测试过程中最高温度为 85 度：

这是一种非常简便的压力测试 CPU 的方法，是不是很简单呢？ ?

### 使用命令行终端压力测试 Linux CPU

使用命令行终端压力测试需要两个实用工具：[s-tui](https://itsfoss.com/stress-terminal-ui/) 和 `stress`。

你可以从默认软件仓库或 [使用 pip](https://itsfoss.com/install-pip-ubuntu/) 来安装这些工具。如果你可以接受使用旧版本的工具，使用默认软件仓库更容易。

以下是适用于流行 Linux 发行版的安装命令：

基于 Ubuntu/Debian 的发行版：

```
sudo apt install s-tui stress

```

Arch Linux：

```
sudo pacman -S s-tui stress

```

Fedora/RHEL：

```
sudo dnf install s-tui stress

```

**如果想要使用 pip 安装最新版本**，可以使用以下命令：

```
pip install s-tui --user

```

安装完成后，在终端中启动 `s-tui` 实用工具：

```
s-tui

```

你将会看到以下内容：

你可以使用鼠标或键盘箭头键浏览菜单，然后点击“<ruby> 压力选项 <rt>  Stress options </rt></ruby>”，选择你想要压力测试系统的时间（以“秒”为单位）：

最后，选择“<ruby> 压力 <rt>  Stress </rt></ruby>”选项，它会在指定时间内开始压力测试：

如果温度失控，你可以点击“<ruby> 退出 <rt>  Quit </rt></ruby>”按钮手动停止压力测试。另外，如果你想要将数据存储在 .csv 格式中，该工具也提供了相应的功能。

要存储数据，你只需要在启动 `s-tui` 实用工具时附加 `-c` 标记，如下所示：

```
s-tui -c

```

如果你想用自己喜欢的名称保存文件，则必须使用 `--csv-file` 标记，如下所示：

```
s-tui --csv-file <file 名称>.csv

```

例如，这里我将文件命名为 `Hello.scv`：

```
s-tui --csv-file Hello.scv

```

你可以在它的 [GitHub 页面](https://github.com:443/amanusk/s-tui) 上了解更多关于这个工具的信息。

### 系统快乐，人生快乐 ?

并非每个用户都意识到进行压力测试的好处。有时候它会让他们感到害怕，认为系统无缘无故地达到其极限。

但是，测试将帮助你快速评估和监视系统的状况。例如，温度异常上升和 CPU 无法处理现有负载等问题，可以帮助你及早识别硬件问题。

在任何情况下，如果你想在不进行压力测试的情况下 [保持 CPU 温度正常](https://itsfoss.com/check-laptop-cpu-temperature-ubuntu/)，可以参考我们提供的温度监控资源。

你还可以查看一些 Linux 的 [系统监控工具](https://itsfoss.com/linux-system-monitoring-tools/) 或 [htop 的替代品](https://itsfoss.com/htop-alternatives/)，以监控系统资源的使用情况。

? 你对于在 Linux 中压力测试 CPU 有什么看法？你认为我们应该这样做吗？请在评论区分享你的想法。

*（题图：MJ/e5f3fc49-5e47-4f8a-8970-43a445849172）*

---

via: <https://itsfoss.com/stress-test-cpu-linux/>

作者：[Sagar Sharma](https://itsfoss.com/author/sagar/) 选题：[lkxed](https://github.com/lkxed/) 译者：ChatGPT 校对：[wxy](https://github.com/wxy)

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


硬核观察 #1024 美国发射了一颗供黑客们攻击的卫星

Summary:
? 美国发射了一颗供黑客们攻击的卫星
? Stack Overflow 允许 AI 生成的内容，版主们罢工抗议
? 苹果发布其头戴式设备 Vision Pro
»
»

未必需要就在这个沙盒里面练手。

未必只在这个沙盒里面练手。

很遗憾，『不如将分辨是否是人工智能生成的内容的精力放在认真审核上。』这个客观上做不到。语言模型生成内容能直接击穿任何内容审核，除非你的内容审核也是语言模型，这就导致连内容审核都不可信，等于没有审核。

虽然很遗憾，但实际上 StackOverflow 允许语言模型生成内容，基本等于开除内容审核团队的序曲，他们罢工或者不罢工都不影响结果。罢工的唯一有效目标是引发舆论，最终的结果将交由最原始的开源世界解决办法，要么SO让步，要么我们硬分叉。

# 硬核观察 #1024 美国发射了一颗供黑客们攻击的卫星

### 美国发射了一颗供黑客们攻击的卫星

周日，美国政府资助的一颗名为 Moonlighter 的卫星搭乘 SpaceX 的火箭发射成功。接下来，在大约两个月内，五支 DEF CON 黑客团队将尽力在卫星处于太空时成功地远程渗透并劫持它，其目的是在实际的在轨硬件和软件上尝试进攻和防御技术和方法。Moonlighter 被称为 “世界上第一个也是唯一一个太空黑客沙盒”，它是一个中型的 3U 立方体卫星，质量约为 5 公斤。对 Moonlighter 的第一次测试将于 8 月进行，第一名将获得 5 万美元奖金。

>
> **[消息来源：The Register](https://www.theregister.com/2023/06/03/moonlighter_satellite_hacking)**
>
>
>

>
> 老王点评：看来美国是真准备打太空战了。不过太空上有那么多目标，未必需要就在这个沙盒里面练手。
>
>
>

### Stack Overflow 允许 AI 生成的内容，版主们罢工抗议

编程问答社区 Stack Overflow 在去年 12 月宣布了 [临时禁止](/article-15320-1.html) ChatGPT 生成的内容。但上个月底它调整了AI 政策，“立即停止对人工智能生成的内容发布的暂停令，并停止仅以此为由对人工智能生成的内容进行审核”。此举招致了负责审核的版主们的抗议，他们认为人工智能会生成不精确的内容，这会对平台及其内容的完整性和可信度构成威胁。版主们宣布从 6 月 5 日起在 Stack Overflow 无限期罢工，目前已经约有 10% 的版主参与到这一行动中来。Stack Overflow 社区副总裁表示，这次行动的主要原因是版主们和 Stack Overflow 对检测人工智能生成的内容的工具的看法不同，他说 “我们坚持我们的决定，请版主们停止使用以前的工具”。Stack Overflow 和版主们都承认，该工具的误报率惊人。

>
> **[消息来源：VICE](https://www.vice.com/en/article/4a33dj/stack-overflow-moderators-are-striking-to-stop-garbage-ai-content-from-flooding-the-site)**
>
>
>

>
> 老王点评：本质上，你是无法防范人工智能生成的内容的，尤其是有一个不靠谱的检测工具的时候，更容易把事情搞得一团糟。与其这样，不如将分辨是否是人工智能生成的内容的精力放在认真审核上。
>
>
>

### 苹果发布其头戴式设备 Vision Pro

苹果宣布了它的第一款增强现实/混合显示头戴式设备 Vision Pro，起售价为 $3,499 美元，明年初将在美国开售。在发布后，由于其高昂的价格，苹果股价一度大幅跳水。苹果将 Vision Pro 称为“空间计算设备”，其操作系统是 visionOS，搭载全新的 3D 界面、全新的输入系统，可通过眼睛、双手和语音控制。Vision Pro 带有两个邮票大小的显示器，配置了 M2 芯片，有 12 个相机、5 个传感器和 6 个麦克风。当有人靠近正配戴 Vision Pro 的使用者时，设备的视区会变透明，双方可以互相看到，对方可以看到佩戴者的眼睛。

>
> **[消息来源：苹果](https://www.apple.com.cn/newsroom/2023/06/introducing-apple-vision-pro/)**
>
>
>

>
> 老王点评：除了贵是最大的毛病外，我觉得苹果这个头戴式设备看起来似乎不错。
>
>
>


Linux 爱好者线下沙龙：LLUG 2023 ，北京 · 开聚

Summary: 6 月 11 日 ～ 12 日，Linux 中国将在北京召开的开放原子全球开放峰会现场，组织 LLUG 2023 线下活动，与大家一同聊聊开源、聊聊 Linux ，聊聊社区当中的那些最新的技术。

没有线上了吗

杭州来一场

有的

可以

深圳，能不能加点注册名额呀

深圳会办一场~

# Linux 爱好者线下沙龙：LLUG 2023 ，北京 · 开聚

在 2021 年，[Linux 中国启动了线下聚会的活动](https://mp.weixin.qq.com/s/4pCLxaiR9v6zSNOEii7WSg)，我们希望在疫情当下的时刻，仍能为大家提供面对面相互交流的机会。然而随着大流行病的发展，LLUG 仅仅组织了[两次活动](https://mp.weixin.qq.com/s/-hkwOZvXMaz0n6n3FXDyhA)，便暂时按下了暂停键。

而今天，我们正式宣布，LLUG 2023 正式重新启动了，今年的 LLUG 活动主题是“**在一起，学技术**”，我们希望能够通过 LLUG 将大家重新聚集在线下，和我们一起聊聊天，看看最近又用到了什么不错的软件，有什么有趣的发行版，一起研究一下社区里的最新技术。

2023 年，我们将在全国的**多个城市**举办 LLUG 线下聚会，与我们的老朋友和新朋友们，在线下相见，重温人与人线下交流的温暖。同时，我们也要向大家介绍一下本次 LLUG 2023 的联合主办方 —— OpenAnolis 社区，来自 OpenAnolis 社区的贡献者们将和我们一起，在全国各地与大家相见。

>
> OpenAnolis 社区是国内的顶尖 Linux 发行版社区，我们希望在普及 Linux 知识的同时，也能让中国的 Linux 发行版，为更多人知晓，推动国产发行版的发展和进步。
>
>
>

**LLUG 2023 的第一站，将从北京开始。**

6 月 11 日 ～ 12 日，Linux 中国将在北京召开的**开放原子全球开放峰会现场**，组织 LLUG 2023 线下活动，与大家一同聊聊开源、聊聊 Linux ，聊聊社区当中的那些最新的技术。

我们将在 LLUG 2023 北京场和各位分享 Linux 中国在生成式 AI 上的新实践，以及我们对于通过开源推动 Linux 中国翻译组的持续发展的一些想法和探索。此外，我们还邀请到了 OpenAnolis社区的几位大咖来给大家分享他们在技术前沿的经验和总结。

具体议程如下：

*议程安排*

### 活动信息

活动主办方：Linux 中国

联合主办方：龙蜥社区(OpenAnolis)

活动支持：人民邮电出版社

**活动地点**：北人亦创国际会展中心 · 开放原子 2023 国际峰会 · 阿里云展台 · 龙蜥动手实验室

**活动时间**：2023 年 6 月 11 日、12 日，下午 13:00～16:00

报名方式：[点此链接](https://www.ceeting.com/login/2023oags/cn)或扫描下述二维码，**免费报名**参与开放原子 2023 国际峰会，即可来到现场和我们一起面对面沟通

*扫码报名*

如果你要来现场，不妨扫码加群，和我们更早的交流起来。到时候，咱们现场见！

*LLUG 2023 交流群*

### One More Thing

我们将会在活动现场举办线下抽奖，如果来到现场，别忘了参与互动，进行线下的抽奖哦～我们为大家准备了小米音箱、屏幕挂灯、背包、充电头等精选好物，期待在现场当中见到你哦～

除了北京，你还希望 LLUG 在哪里举办呢？在下方留言说出你的城市，说不定下一次，LLUG 就在你所在的城市举办～


使用 Docsify-This 从 Markdown 文件生成网页

Summary: 这个开源工具可以轻松将 Markdown 转换为网页。

这个开源工具可以轻松将 Markdown 转换为网页。

# 使用 Docsify-This 从 Markdown 文件生成网页

>
> 这个开源工具可以轻松将 Markdown 转换为网页。
>
>
>

将 Markdown 文件直接变成网页，还无需搭建网站和生成过程，写完文档即可直接发布，你对这个内容感兴趣吗？你是否希望将 Markdown 或 HTML 自由地嵌入到多个平台（如内容管理系统或学习管理系统）中？由 [Docsify.js](https://docsify.js.org) 构建的开源项目 [Docsify-This](https://docsify-this.net) 提供了一种简单的方法来发布、分享和复用 Markdown 文件内容。

### Docsify-This 是什么？

使用 Docsify-This，你可以立即将任何 Markdown 文件转换为响应式的独立网页。你还可以将多个 Markdown 文件链接起来，以创建一个简单的网站。网页设计师可以简单地通过点击 Web 页面生成器界面或改变网页的地址参数（即 URL），来更改所显示页面的视觉外观。在创建自己的 Markdown 文件内容时，你还可以使用一组提供的 Markdown CSS 类。此外，如果你使用 Codeberg 或 GitHub 仓库存储 Markdown 文件的话，每个页面都会自动提供一个 “<ruby> 编辑此页面 <rt>  Edit this Page </rt></ruby>” 的链接，以支持协同创作。

并且 Docsify-This 是开源的，因此你可以使用自定义域名托管 Docsify-This 实例，而不会有被平台锁定的风险。

### 使用 Docsify-This 网页生成器

要使用网页生成器，请先打开浏览器，导航到 [Docsify-This 网站](https://docsify-this.net) 或你在本地的实例。在 “<ruby> 网页生成器 <rt>  Web Page Builder </rt></ruby>” 部分，输入 Codeberg 或 GitHub 上公共存储仓库中的一个 Markdown 文件的 URL（其他 Git 主机可以通过 Docsify-This URL 参数进行使用，但不能在网页生成器中使用），然后点击 “<ruby> 发布为独立网页 <rt>  Publish as Standalone Web Page </rt></ruby>” 的按钮，如下图所示。

Markdown 文件将呈现为一个独立的网页，并生成一个可复制和共享的 URL。以下是一个示例 URL：

```
https://docsify-this.net/?basePath=https://raw.githubusercontent.com/hibbitts-design/docsify-this-one-page-article/main&homepage=home.md

```

Docsify-This 生成的网页非常适合嵌入，可以将 Docsify-This 页面的视觉样式调整到目标平台上去。

### 渲染同一存储库中的其他文件

你也可以通过直接编辑 Docsify-This URL 参数 `homepage` 来渲染同一存储库中的其他 Markdown 文件。例如：

```
https://docsify-this.net/?basePath=https://raw.githubusercontent.com/hibbitts-design/docsify-this-one-page-article/main&homepage=anotherfile.md

```

### 修改网页的外观

你可以使用 [URL 参数](https://docsify-this.net/#/?id=page-appearance-url-parameters) 更改 Docsify-This 中显示的任何 Markdown 文件的外观。例如，`font-family`（文本字体系列）、`font-size`（字体大小）、`link-color`（超链接颜色）和 `line-height`（行高）都是常见的 CSS 属性，同时也是 Docsify-This 中的有效参数：

```
https://docsify-this.net/?basePath=https://raw.githubusercontent.com/hibbitts-design/docsify-this-one-page-article/main&homepage=home.md&font-family=Open%20Sans,sans-serif

```

你也可以使用一组特殊的 [Markdown CSS 类](https://docsify-this.net/#/?id=supported-markdown-css-classes) 来改变网页的外观。例如，你可以为一个链接添加“按钮类”：

```
[Required Reading Quiz due Jun 4th](https://canvas.sfu.ca/courses/44038/quizzes/166553 ':class=button')

```

这将产生一个按钮，而不是一个文本链接：

除了 Docsify-This 支持的 Markdown CSS 类，你也可以在Markdown 文件中使用自定义类。例如：

```
<style>
.markdown-section .mybutton, .markdown-section .mybutton:hover {
  cursor: pointer;
  color: #CC0000;
  height: auto;
  display: inline-block;
  border: 2px solid #CC0000;
  border-radius: 4rem;
  margin: 2px 0px 2px 0px;
  padding: 8px 18px 8px 18px;
  line-height: 1.2rem;
  background-color: white;
  font-family: -apple-system, "Segoe UI", "Helvetica Neue", sans-serif;
  font-weight: bold;
  text-decoration: none;
}
</style>

[Custom CSS Class Button](# ':class=mybutton')

```

使用这个自定义类将生成这样的按钮：

### 在 Markdown 文件中包含 HTML 片段

正如标准 Markdown 所支持的那样，你可以在 Markdown 文件中包括 HTML 片段。这允许你在你的 HTML 渲染中添加布局元素。例如：

```
<div class="row">
	<div class="column">
		Lorem ipsum dolor sit amet, consectetur adipiscing elit.
	</div>
	<div class="column">
		Lorem ipsum dolor sit amet, consectetur adipiscing elit.
	</div>
</div>

```

### 使用 iFrame 嵌入 Docsify-This 网页

你可以在几乎所有的平台上使用 iFrame 嵌入 Docsify-This 网页。你还可以使用 URL 参数来确保你的嵌入内容与你的目标平台相匹配：

```
<p><iframe style="overflow: hidden; border: 0px #ffffff none; margin-top: -26px; background: #ffffff;" src="https://docsify-this.net/?basePath=https://raw.githubusercontent.com/paulhibbitts/cmpt-363-222-pages/main&homepage=home.md&font-family=Lato%20Extended,Lato,Helvetica%20Neue,Helvetica,Arial,sans-serif&font-size=1&hide-credits=true" width="800px" height="950px" allowfullscreen="allowfullscreen"></iframe></p>

```

### 使用外部 URL 嵌入 Docsify-This

在某些学习管理系统中，包括开源的 [Moodle](https://opensource.com/article/21/3/moodle-plugins)，或者专有的 [Canvas](https://github.com/instructure/canvas-lms)，你可以将外部网页链接到课程导航菜单。例如，你可以使用 Canvas 中的重定向工具来显示 Docsify-This 网页。

```
url=https://docsify-this.net/?basePath=https://raw.githubusercontent.com/paulhibbitts/cmpt-363-222-pages/main&homepage=resources.md&edit-link=https://github.com/paulhibbitts/cmpt-363-222-pages/blob/main/resources.md&font-family=Lato%20Extended,Lato,Helvetica%20Neue, Helvetica,Arial,sans-serif&font-size=1&hide-credits=true

```

### 整合 Docsify-This 和 Git

为了充分利用版本控制的好处，并使用 “<ruby> 编辑此页面 <rt>  Edit this Page </rt></ruby>” 的链接进行协同工作，请将你的 Docsify-This Markdown 文件存储在 Codeberg 或 GitHub 的 Git 存储库中。一些开源工具为 Git 提供了一个图形界面，包括 [GitHub Desktop](https://github.com/desktop/desktop)（最近已开源）、[Git-Cola](https://opensource.com/article/20/3/git-cola) 和 [SparkleShare](https://opensource.com/article/19/4/file-sharing-git)。文本编辑器 VSCode 和 Pulsar Edit（以前的 [Atom.io](https://opensource.com/article/20/12/atom)）也都有整合 Git 的功能。

### 轻松实现 Markdown 文件在网页发布

由于 Docsify 的存在，每个人都能享受到 Markdown 文件的在网上发布的好处。而且由于 Docsify-This 的出现，这个工作变得很容易。不妨在 [Docsify-This 网站](https://docsify-this.net) 上试试吧。

*（题图：MJ/f38f0a40-002b-4e93-9697-e008205c1211）*

---

via: <https://opensource.com/article/23/5/docsify-markdown-html>

作者：[Paul Hibbitts](https://opensource.com/users/paulhibbitts) 选题：[lkxed](https://github.com/lkxed/) 译者：[chai001125](https://github.com/chai001125) 校对：[wxy](https://github.com/wxy)

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


5 个最漂亮的 Arch Linux 发行版

动效卡不卡?，Ubuntu简单的动效都有点卡

# 5 个最漂亮的 Arch Linux 发行版

>
> 本文将介绍几个漂亮的 Arch Linux 发行版，这些发行版将设计的优雅之美与 Arch Linux 强大的底层框架相结合。
>
>
>

Arch Linux 提供滚动更新模型、强大的 pacman 软件包管理器，以及通过其软件仓库提供的成千上万的应用程序。它非常受欢迎，因为它允许你以 DIY 的方式创建定制的 Linux 发行版。它的优点之一是各种社区驱动的发行版，它们提供了预配置的设置和视觉上令人愉悦的界面。

本文将介绍其中一些，这些发行版的主要着眼点是它们的外观设计。

### 美观的 Arch Linux 发行版

让我们探索一些顶级美观的 Arch Linux 发行版，它们将美学与 Arch Linux 的核心功能相结合：

#### XeroLinux

XeroLinux 提供了一个视觉上惊艳的界面和流畅的设计。它预配置了 KDE Plasma 桌面环境，提供了一个整洁的工作区。这个发行版基于 Arch Linux，主要面向那些喜欢带有最新软件包和 KDE Plasma 的视觉效果的桌面环境，但又不想重新配置 Plasma 桌面环境的用户。XeroLinux 主要使用预配置的 Latte Dock 和 Kvantum 来为桌面环境带来独特的外观。

默认情况下，它使用 [Catppuccin 主题](https://catppuccin-website.vercel.app/)，这是一个开源主题，旨在成为高对比度和低对比度主题之间的中间地带。Catppuccin 主题为 KDE Plasma 桌面环境提供了四种舒缓的温暖调色板，适用于各种用途，例如编码、休闲浏览或学习。

Plasma 桌面环境使用以下默认组件进行配置：

* 应用程序样式：Lightly
* Plasma 样式：Scratchy
* 图标：Tela circle drakula dark
* 光标：Catppuccin mocha dark
* 窗口装饰：Lightly

除上述外，KDE Plasma 顶部栏的应用程序全局菜单和终端的透明度提供了即插即用的视觉升华。

你可以阅读我的专题评论了解有关 XeroLinux 的性能、应用程序和其他方面的更多信息。可以使用以下链接下载 XeroLinux。

>
> **[下载 XeroLinux](https://xerolinux.xyz/)**
>
>
>

#### Mabox Linux

如果你是窗口管理器的粉丝，想要一个令人惊艳的 Arch Linux 发行版，试试 Mabox Linux 吧。Mabox Linux 专注于简单和优雅。它是 Manjaro Linux 的一个分支，主要环境使用 Openbox 窗口管理器。Openbox 直观的界面和视觉上令人愉悦的主题，创造了一个顺滑的、沉浸式的计算体验。

其默认外观包括顶部的 tint2 面板，它有两个部分。一些 Conky 项目在桌面上提供了非常必要的信息。右键单击菜单让你可以访问桌面上的所有应用程序和设置。

为了进一步定制，Mabox 提供了自己的控制中心，让你可以在一个地方自定义 OpenBox、Conky、面板和所有内容。

用户友好的安装过程，经过筛选的软件，对于那些想要使用窗口管理器的人来说，Mabox Linux 是一个极好的选择。

你可以在我的 [评论文章](https://www.debugpoint.com/mabox-linux-2022/) 中了解更多有关 Mabox Linux 的信息。你可以使用以下页面下载它。

>
> **[下载 Mabox Linux](https://maboxlinux.org/)**
>
>
>

#### Crystal Linux

本列表中的下一个发行版是新近推出的 Crystal Linux。Crystal Linux 默认采用自定义的 GNOME 桌面 “Onyx”，并提供了 GNOME、KDE Plasma、Xfce 和 i3 窗口管理器的选项。

我将其列入此列表的主要原因是，它是为 Arch Linux 打造的干净的 GNOME 外观的独特发行版之一。在定制方面，你将得到基本的 Adwaita GNOME 主题、漂亮的壁纸、底部固定式停靠区和 GNOME 快速设置。

然而，干净的 GNOME 桌面确实很美丽，你还可以进一步自定义它。Crystal Linux 还有其他优点，例如 Amethyst AUR 帮助程序、pacman 包管理器封装程序、Wayland 支持以及 [许多其他优点](https://getcryst.al/site/docs/amethyst/getting-started)。

你可以从以下页面下载 Crystal Linux。

>
> **[下载 Crystal Linux](https://getcryst.al/site)**
>
>
>

#### Archcraft OS

Archcraft OS 是另一个美丽的基于 Openbox 和 bspwm 窗口管理器的 Arch Linux。它旨在提供一个具有令人惊艳的外观的 “纯正” Arch Linux 体验。

Archcraft OS 的用户界面美观动人，带有预安装的 Openbox 主题和吸引人的壁纸。它通过预安装的设置管理器提供了 Openbox 的便捷配置选项。默认的窗口管理器主题，加上壁纸，创造了一个吸引人的视觉体验。

Archcraft OS 的默认面板包括工作区列表、时钟和日期显示、音量控制、电源选项、CPU、内存和磁盘使用指示器等基本组件。面板保持了干净和视觉上令人愉悦的外观。

Archcraft OS 预装了各种 Openbox 主题和样式，提供了深浅两种组合选项。这些样式包括 Beach、Forest、Grid、Manhattan、Slime、Spark 和 Wave。

它是漂亮的预配置 Arch Linux 发行版之一。你可以从以下页面下载它。

>
> **[下载 Archcraft Linux](https://archcraft.io/)**
>
>
>

#### Exodia OS

Exodia OS 是一种专门针对网络安全专业人员定制的 Arch Linux 发行版，即使你没有深入涉足网络安全领域，你也会欣赏 Exodia OS 的视觉上令人愉悦的界面和用户友好的工具。

Exodia OS 带有 BSPWM，这是一个平铺式窗口管理器，并提供了 20 个定制主题，以增强视觉体验。

以下是 Exodia OS 的一些关键优点：

* 它带有预安装的网络安全工具，涵盖了网络安全的所有方面。
* 目前有三个版本可用：Home、Predator 和 Wireless。
* 目前支持 BSPWM 和 DWM 两个窗口管理器，未来将计划支持更多桌面环境和窗口管理器。

你可以从以下页面下载 Exodia OS。

>
> **[下载 Exodia OS](https://exodia-os.github.io/exodia-website/)**
>
>
>

### 总结

总之，上述列出的顶级美观的 Arch Linux 发行版将 Arch Linux 的强大功能与令人愉悦的视觉界面相结合，为用户提供个性化和美学体验。本文列出的发行版涵盖了各种流行的桌面环境和窗口管理器。

这些发行版提供了可定制性、稳定性和轻量级性能。希望你可以选择一款令人惊艳的 Arch Linux 发行版来满足自己的口味。

*（题图：MJ/f0d52f3f-8ec4-491d-96bd-eb4376f2e8ea）*

---

via: <https://www.debugpoint.com/beautiful-arch-linux/>

作者：[Arindam](https://www.debugpoint.com/author/admin1/) 选题：[lkxed](https://github.com/lkxed/) 译者：ChatGPT 校对：[wxy](https://github.com/wxy)

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


Summary:
? 苹果 Safari 浏览器支持了被谷歌放弃的 JPEG XL
? CNET 修订其人工智能政策并更新过去的文章
? 利用人工智能生成动漫二维码
»
»

# 硬核观察 #1025 苹果 Safari 浏览器支持了被谷歌放弃的 JPEG XL

### 苹果 Safari 浏览器支持了被谷歌放弃的 JPEG XL

谷歌去年以“整个生态系统没有足够的兴趣来继续试验 JPEG XL”的 [理由](/article-15197-1.html)，废弃了在 Chromium 中支持 JPEG XL 图像格式的支持。此举引来了社区的强烈反对，但谷歌置之不理。而在苹果新发布的 Safari 17 测试版中，它支持了 JPEG XL，这让更多人呼吁谷歌重新审视其决定。当然，我们有理由怀疑谷歌做出这种决定的原因，因为用户将得到的谷歌自己控制的、受专利保护的 AVIF 格式，而 JPEG XL 不受专利的约束，也不需要专利软件。

>
> **[消息来源：The Register](https://www.theregister.com/2023/06/07/apple_safari_jpeg_xl/)**
>
>
>

>
> 老王点评：真是风水轮流转，原本看起来封闭的苹果却在这件事上打脸了谷歌。
>
>
>

### CNET 修订其人工智能政策并更新过去的文章

在科技媒体 CNET 悄悄开始用生成性人工智能制作文章的 [消息](/article-15451-1.html) 传出几个月后，他们修订了其人工智能政策。CNET 将不会完全使用人工智能工具来写文章，产品的实际审查和测试将由人类完成，而是用人工智能工具来分类和分析数据，为文章创建大纲，分析现有文本，并生成解释性内容。此外，CNET 更新了之前发表的几十篇使用人工智能系统生成的文章，其中一些文章包含事实错误，而另一些替换了其中“不完全是原创的短语”。

>
> **[消息来源：The Verge](https://www.theverge.com/2023/6/6/23750761/cnet-ai-generated-stories-policy-update)**
>
>
>

>
> 老王点评：就目前而言，完全用人工智能来写报道和文章，显然是不合适的，但是用人工智能来帮助写文章，显然是一件有利于提高工作效率和质量的好事。
>
>
>

### 利用人工智能生成动漫二维码

有人发布了一系列使用稳定扩散 AI 图像合成模型创建的艺术二维码，这些二维码仍然可以被智能手机的相机应用程序作为功能性二维码来读取。创作者没有详细说明用于创建新奇代码的具体技术，但他们似乎训练了几个定制的稳定扩散 ControlNet 模型（加上 LoRA 微调），这些模型已经被调整成可以创建不同风格的结果。

>
> **[消息来源：Ars Technica](https://arstechnica.com/information-technology/2023/06/redditor-creates-working-anime-qr-codes-using-stable-diffusion/)**
>
>
>

>
> 老王点评：这应该是一位国内的开发者的工作，这种应用确实很有趣。
>
>
>


GNOME 的新图像查看器应用 Loupe

Summary: GNOME 的新图像查看器？看起来不错！

GNOME 的新图像查看器？看起来不错！

# GNOME 的新图像查看器应用 Loupe

>
> GNOME 的新图像查看器？看起来不错！
>
>
>

GNOME 的人们一直在忙碌着！

最近，你可能听说他们正在 [考虑](https://news.itsfoss.com/gnome-terminal-console/) 把终端应用带回来替代那个新的控制台应用，还有 [新的相机应用](https://news.itsfoss.com/gnome-snapshot/) 将在不久的将来替换 “<ruby> 茄子 <rt>  Cheese </rt></ruby>” 应用。

你可能没注意到我们在这些核心 GNOME 应用更改中未涵盖的其他内容。

**一个名为 “Loupe” 的 GNOME 新图像查看器应用**，已被 GNOME 的 [孵化器](https://gitlab.gnome.org/GNOME/Incubator?ref=news.itsfoss.com) 接受。

请允许我带你了解一下。

>
> ? “孵化器”分组包含的项目属于 GNOME 核心和 GNOME 开发工具的一部分，这代表着 **可能有一天它们会进入 GNOME 的发布版本**。
>
>
>

### ? Loupe 是什么？

因此，正如我所说，这是一款适用于 GNOME 的新图像查看器应用，它 **用内存安全的 Rust 编程语言编写**，并提供一些很酷的功能。

例如，屏幕上的按钮可以切换各种照片、放大/缩小、进入全屏模式等等。

然后是元数据查看器，它已很好地集成到界面中，显示 **位置、大小、分辨率、创建日期** 等数据。

不止如此，Loupe 还支持键盘和触控板快捷键！你自己看。

这些键盘/触控板快捷方式和手势对笔记本电脑用户来说应该很方便。

这对于触摸屏来说很好 ?

另外，我怎么能忘记可以分别从功能区菜单和标题访问的 **复制到剪贴板**、**移动到垃圾箱**和 **打印图像** 选项？

这是实际操作：

很整洁，不是吗？

我必须说，Loupe 有一套漂亮的功能，我发现自己每天在浏览照片时都在使用它。

它旨在取代现有的 [Eye of GNOME（eog）](https://help.gnome.org/users/eog/stable/?ref=news.itsfoss.com)图片查看器，当然，除非有任何问题，否则可能会随着 GNOME 45 的发布而出现。

### ? 获取 Loupe

你可以从 [Flathub 商店](https://flathub.org/apps/org.gnome.Loupe?ref=news.itsfoss.com) 获取 Loupe，还可以在 [GitLab](https://gitlab.gnome.org/GNOME/Incubator/loupe?ref=news.itsfoss.com) 上探索其源代码。

>
> **[Loupe（Flathub）](https://flathub.org/apps/org.gnome.Loupe?ref=news.itsfoss.com)**
>
>
>

? 你怎么看？ 作为 GNOME 上的默认图像查看器，Loupe 会是一个不错的选择吗？

---

via: <https://news.itsfoss.com/loupe-image-viewer/>

作者：[Sourav Rudra](https://news.itsfoss.com/author/sourav/) 选题：[lkxed](https://github.com/lkxed/) 译者：[geekpi](https://github.com/geekpi) 校对：[wxy](https://github.com/wxy)

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


用 Lua 控制你的树莓派

# 用 Lua 控制你的树莓派

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

>
> 学习如何使用 Lua 编程语言为物联网（IoT）设备编程，并与树莓派上的通用输入/输出（GPIO）引脚互动。
>
>
>

Lua 是一种有时会被误解的语言。它与 Python 等其他语言不同，但它是一种通用的扩展语言，广泛用于游戏引擎、框架等。总的来说，我发现 Lua 对开发人员来说是一个有价值的工具，可以让他们以一些强大的方式增强和扩展他们的项目。

你可以按照 Seth Kenlon 的文章《[Lua 值得学习吗？](https://opensource.com/article/22/11/lua-worth-learning)》的介绍下载并运行常用的 Lua，该文章中还包括了简单的 Lua 代码示例。但是，要充分利用 Lua，最好将它与采用该语言的框架一起使用。在本教程中，我演示了如何使用名为 Mako Server 的框架，该框架旨在使 Lua 程序员能够轻松地编写 IoT 和 Web 应用代码。我还向你展示了如何使用 API 扩展此框架以使用树莓派的 GPIO 引脚。

### 要求

在学习本教程之前，你需要一个可以登录的正在运行的树莓派。虽然我将在本教程中编译 C 代码，但你不需要任何 C 代码经验。但是，你需要一些使用 [POSIX](https://opensource.com/article/19/7/what-posix-richard-stallman-explains) 终端的经验。

### 安装

首先，在树莓派上打开一个终端窗口并安装以下工具，以使用 Git 下载代码和编译 C 代码：

```
$ sudo apt install git unzip gcc make

```

接下来，通过运行以下命令编译开源 Mako Server 代码和 lua-periphery 库（树莓派的 GPIO 库）：

```
$ wget -O Mako-Server-Build.sh \
  https://raw.githubusercontent.com/RealTimeLogic/BAS/main/RaspberryPiBuild.sh

```

查看脚本以了解它的作用，并在你觉得没问题后运行它：

```
$ sh ./Mako-Server-Build.sh

```

编译过程可能需要一些时间，尤其是在较旧的树莓派上。编译完成后，脚本会要求你将 Mako Server 和 lua-periphery 模块安装到 `/usr/local/bin/`。我建议安装它以简化软件的使用。别担心，如果你不再需要它，你可以卸载它：

```
$ cd /usr/local/bin/
$ sudo rm mako mako.zip periphery.so

```

要测试安装，请在终端中输入 `mako`。这将启动 Mako 服务器，并在你的终端中看到一些输出。你可以按 `CTRL+C` 停止服务器。

### IoT 和 Lua

现在 Mako 服务器已在你的树莓派上设置好，你可以开始对 IoT 和 Web 应用进行编程，并使用 Lua 操作树莓派的 GPIO 引脚。Mako Server 框架为 Lua 开发人员提供了一个强大而简单的 API 来创建物联网应用，而 lua-periphery 模块让 Lua 开发人员可以与树莓派的 GPIO 引脚和其他外围设备进行交互。

首先创建一个应用目录和一个 `.preload` 脚本，其中插入用于测试 GPIO 的 Lua 代码。`.preload` 脚本是一个 Mako 服务器扩展，在应用启动时作为 Lua 脚本加载和运行。

```
$ mkdir gpiotst
$ nano gpiotst/.preload

```

将以下内容复制到 [Nano 编辑器](https://opensource.com/article/20/12/gnu-nano) 中并保存文件：

```
-- Load periphery.so and access the LED interface
local LED = require('periphery').LED

local function doled()
  local led = LED("led0") -- Open LED led0
  trace"Turn LED on"
  led:write(true)   -- Turn on LED (set max brightness)
  ba.sleep(3000)    -- 3 seconds
  trace"Turn LED off"
  led:write(false)  -- Turn off LED (set zero brightness)
  led:close()
end

ba.thread.run(doled) -- Defer execution
                     -- to after Mako has started

```

上面的 Lua 代码使用你编译并包含在 Mako 服务器中的 Lua-periphery 库控制树莓派 LED。该脚本定义了一个名为 `doled` 的函数来控制 LED。该脚本首先使用 Lua `require` 函数加载 `periphery` 库（共享库 [periphery.so](http://periphery.so)）。返回的数据是一个包含所有 GPIO API 函数的 [Lua 表](https://opensource.com/article/22/11/iterate-over-tables-lua)。但是，你只需要 LED API，你可以通过在调用 `require` 后附加 `.LED` 来直接访问它。接下来，代码定义了一个名为 `doled` 的函数，它执行以下操作：

* 通过调用 `periphery` 库中的 `LED` 函数，并将字符串 `led0` 传给它，打开树莓派主 LED，识别为 `led0`。
* 将消息 `Turn LED on` 打印到跟踪（控制台）。
* 通过调用 LED 对象上的 `write` 方法并将布尔值 `true` 传递给它来激活 LED，该值设置 LED 的最大亮度。
* 通过调用 `ba.sleep(3000)` 等待 3 秒。
* 将消息 `Turn LED off` 打印到跟踪。
* 通过调用 LED 对象上的 `write` 方法并将布尔值 `false` 传递给它来停用 LED，这会将 LED 的亮度设置为零。
* 通过调用 LED 对象上的 `close` 函数关闭 `LED`。

在 `.preload` 脚本的末尾，`doled` 函数作为参数传递给 `ba.thread.run` 函数。这允许将 `doled` 函数的执行推迟到 Mako 服务器启动之后。

要启动 `gpiotst` 应用，请按如下方式运行 Mako 服务器：

```
$ mako -l::gpiotst

```

控制台中打印以下文本：

```
Opening LED:
opening 'brightness': Permission denied.

```

访问 GPIO 需要 root 访问权限，因此按 `CTRL+C` 停止服务器并重新启动 Mako 服务器，如下所示：

```
$ sudo mako -l::gpiotst

```

现在树莓派 LED 亮起 3 秒。成功！

### Lua 解锁 IoT

在本入门教程中，你学习了如何编译 Mako 服务器，包括 GPIO Lua 模块，以及如何编写用于打开和关闭树莓派 LED 的基本 Lua 脚本。在以后的文章中，我将在本文的基础上进一步介绍 IoT 功能。

同时，你可以通过阅读它的 [文档](https://github.com/vsergeev/lua-periphery/tree/master/docs) 来更深入地研究 Lua-periphery GPIO 库，以了解有关功能以及如何将其与不同外设一起使用的更多信息。要充分利用本教程，请考虑关注 [交互式 Mako Server Lua 教程](https://tutorial.realtimelogic.com/Introduction.lsp) 以更好地了解 Lua、Web 和 IoT。编码愉快！

*（题图：MJ/4514210d-5697-4cd3-8c44-450bbe56be64）*

---

via: <https://opensource.com/article/23/3/control-your-raspberry-pi-lua>

作者：[Alan Smithee](https://opensource.com/users/alansmithee) 选题：[lkxed](https://github.com/lkxed/) 译者：[geekpi](https://github.com/geekpi) 校对：[wxy](https://github.com/wxy)

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


硬核观察 #1026 人工智能发现了更快的排序算法

Summary:
? 人工智能发现了更快的排序算法
? OpenAI 还没有训练 GPT-5
? 苹果推出在 Mac 上运行 Windows 游戏的工具
»
»

Openai只是微軟沒錢了，ai成本太高了

# 硬核观察 #1026 人工智能发现了更快的排序算法

### 人工智能发现了更快的排序算法

谷歌 Deepmind 的新 AI 系统 AlphaDev 使用深度学习发现了更快的排序算法。他们采取了与国际象棋和围棋相同的方法：把代码优化变成了一种游戏。AlphaDev 开发了 x86 汇编算法，将代码的延迟视为一个分数，并试图将这个分数降到最低，同时确保代码运行到完成时没有错误。他们希望将新的算法纳入到 LLVM 的 C++ 排序库中，不过问题是，这些代码是用汇编而不是C++，因此，他们不得不反向移植，找出能够产生相同汇编的 C++ 代码。研究人员称，这是排序库算法方面十年来的首次突破。新算法对较短序列的排序速度提升了最高 70%，而对超过 25 万个元素的长序列速度提升了 1.7%。

>
> **[消息来源：Ars Technica](https://arstechnica.com/science/2023/06/googles-deepmind-develops-a-system-that-writes-efficient-algorithms/)**
>
>
>

>
> 老王点评：能优化算法的人工智能，也就是说，人类在智力方面都会被人工智能超越。
>
>
>

### OpenAI 还没有训练 GPT-5

3 月底，诸多人工智能领域的专家和科技高管签署公开信，呼吁 “所有人工智能实验室立即暂停训练比 GPT-4 更强大的人工智能系统至少 6 个月”。OpenAI 对此回应称，它还没有开始训练 GPT-5，而且在 “一段时间内” 不打算这样做。OpenAI 说，“当我们完成 GPT-4 时，在准备好发布它之前，我们花了六个多月的时间。”

>
> **[消息来源：Tech Crunch](https://techcrunch.com/2023/06/07/openai-gpt5-sam-altman/)**
>
>
>

>
> 老王点评：就目前而言，可能我们需要的不是更强大的人工智能，而是成本更低的、消除 AI 鸿沟的人工智能。
>
>
>

### 苹果推出在 Mac 上运行 Windows 游戏的工具

苹果宣布，通过一个类似于 Valve 的 Proton 的环境，可以在 macOS 上翻译和运行最新的 DirectX 12 Windows 游戏，使得将 Windows 游戏移植到 Mac 上变得更加容易和快捷。和 Proton 一样，它是基于 CrossOver 的代码的。

>
> **[消息来源：The Verge](https://www.theverge.com/2023/6/7/23752164/apple-mac-gaming-game-porting-toolkit-windows-games-macos)**
>
>
>

>
> 老王点评：说到底，大家都在 Windows 上玩游戏，连 Mac 也开始眼馋这一块了。
>
>
>


使用 Linux 让旧电脑焕发新颜

Summary: 这份逐步指南教你如何将旧电脑重新翻新，使其继续发挥作用。

个人感觉从回收厂捡别人不要的电脑感觉怪怪的。

但免费的难道不香吗？

这份逐步指南教你如何将旧电脑重新翻新，使其继续发挥作用。

# 使用 Linux 让旧电脑焕发新颜

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

>
> 这份逐步指南教你如何将旧电脑重新翻新，使其继续发挥作用。
>
>
>

我们生活在一个激动人心的时代。不久之前，我们都被束缚在“升级跑步机”上，被迫每隔几年购买昂贵的新电脑。

今天，借助开源软件的好处，你可以打破这种循环。其中一种方法是 [翻新旧电脑](https://opensource.com/article/22/10/obsolete-computer-linux-opportunity)，让它们继续发挥作用。本文告诉你如何实现。

### 1、找一台旧电脑

也许你的地下室或仓库里有一台闲置的旧电脑，为什么不利用一下呢？

或者你可以从朋友、家人或二手广告中得到一台旧机器。许多电子回收中心会让你四处翻找并带走一台你看上的被抛弃的机器。如果可以的话，务必多带回来几台，因为你可能需要从几台被弃置的电脑中获取零件来组装成一台好的电脑。

看看机器前面的贴纸，确保选择的是好的可供翻新的机器。带有 Windows 7 和 8 标志的电脑非常适合运行 Linux。对于 8.1，其扩展支持已于今年 1 月份结束，所以我看到很多这样的电脑被丢弃。

很多这些 Windows 电脑提供了完全良好的硬件。它们只是因为计划性过时而被丢弃了，因为它们不能运行 Windows 11。但是它们可以很好地运行开源软件。

### 2、确认并清洁所有零件

在打开你的“新”机器之前，确保通过触摸金属物品消除静电。有可能一点点的静电都会破坏精细的电路。

你需要马上查看是否缺失了零件。许多人在丢弃电脑之前会取出它们的硬盘或内存条。你要么需要获取多台机器来解决这一点，要么就需要购买一两个零件来使它完整。

在进一步操作之前，给机器做彻底的清洁非常重要。特别注意 CPU 的复杂结构、风扇和所有表面。请记住，你不能用抹布来清洁电子设备，否则会有损坏的风险，因此使用压缩空气来清洁。

### 3、确保所有硬件均正常工作

在安装任何软件之前，你需要验证所有硬件是否正常工作。不要省略测试！如果你在进行下一步操作之前只是短暂运行了内存测试，并在以后发现你的计算机存在内存错误，那么这将会浪费你很多的时间。我发现在夜间运行耗时的测试非常方便。

大多数计算机都有内置的硬件专用诊断程序。你通常可以通过启动时的 UEFI/BIOS 面板或在启动时按下功能键来访问这些诊断程序。如果你的机器没有测试工具，请尝试使用 [Ultimate Boot Disk](https://www.ultimatebootcd.com/)，该工具提供了大量有用的测试工具。

确保你彻底测试了所有组件：

* 内存
* 磁盘
* CPU 和主板
* 外部设备（USB 端口、声音、麦克风、键盘、显示器、风扇等）

如果你发现问题，请下载我的免费 [快速修复硬件指南](http://rexxinfo.org/howard_fosdick_articles/quick_guide_to_fixing_pc_hardware/Quick_Guide_to_Fixing_Computer_Hardware.html)。这加上一些在线搜索可以让你修复几乎任何东西。

### 4、准备硬盘

你已经评估了你的硬件并使其正常工作。如果你的计算机配备了硬盘驱动器（HDD），下一步是将其准备好以供使用。

你需要完全擦除硬盘，因为它可能包含违法获取的电影、音乐或软件。为了彻底清除 HDD，请运行类似 [DBAN](https://sourceforge.net/projects/dban/) 的工具。运行完成后，你可以放心使用干净的硬盘。

如果你有一个固态硬盘（SSD），情况就会有点棘手。旨在清洁硬盘的磁盘擦除程序不能用于 SSD。你需要一个专用的“安全擦除”程序来清除 SSD。

一些计算机在其 UEFI/BIOS 中配备了“安全擦除”实用程序。你只需访问启动配置面板即可运行它。

另一个选择是访问硬盘制造商的网站。许多制造商为其 SSD 提供免费下载的安全擦除实用程序。

不幸的是，一些供应商并没有为其部分消费级驱动器提供安全擦除实用程序，而其他供应商仅提供一个 Windows 可执行文件。对于 SSD，[Parted Magic](https://partedmagic.com/) 的安全擦除功能是最佳选择。

### 5、引导、数据存储和备份

你的翻新计算机的硬盘策略必须解决三个需求：引导、数据存储和备份。

几年前，如果你的翻新机器包含存储设备，它肯定是硬盘。你可以使用 DBAN 清除它，然后安装你喜欢的 Linux 发行版，并将其用作引导和存储设备。问题解决了。

今天的技术提供了更好的选择。这些解决了之前使用旧设备总是存在的硬盘访问慢等问题。

一种选择是购买一款现有的低端 SSD。这些现在提供了与成熟计算机兼容的 SATA 和外部 USB 接口。

它的价格已经暴跌。我最近以 $25 的价格购买了一块 480GB 的 SSD/SATA 硬盘。这么便宜，即使你的旧计算机配备了硬盘，你可能仍然愿意购买一块新的 SSD。它引导和访问数据的速度比硬盘快得多。

轻巧的 2.5 英寸 SSD 也解决了旧台式机常常面临的安装困境。使用一个螺丝钉，你可以将它们连接到几乎任何地方。不再需要处理轨道、硬盘架和所有其他傻瓜专有部件，企业曾用于安装它们的笨重的 3.5 英寸硬盘。

另一种选择是通过 [USB 存储设备](https://opensource.com/article/20/4/first-linux-computer) 引导。如今，U 盘提供了足够的空间来托管你喜欢的任何操作系统，同时还为你的数据留下一些存储空间。除了速度，通过将系统安装在便携式设备上，你还获得了灵活性。

所以考虑安装操作系统到快速的 SSD 或 USB 上，并从其中引导和运行它。

那其他驱动器呢？我喜欢将任何随计算机附带的硬盘作为我的启动 SSD 的备份磁盘。或将其用作大规模存储。

我通常会拆卸旧台式机中的光驱。由于 USB 存储设备更快且可存储更多数据，几乎没有人再使用光盘。现在大多数人通过流媒体观看电影、音乐和软件程序，而不是把它们收集在光盘上。

拆卸光驱会腾出额外的一组磁盘连接器。它也会在机箱中留出大量的空间，并改善了空气流动。如果你正在处理小体积的台式机，如微型塔式机或超薄机箱，则这可以有很大的影响。

最后，花几分钟时间来确定备份策略。你需要备份两个不同的东西：你的数据和操作系统。

你会备份到 PC 内的第二个驱动器、可拆卸存储设备还是云服务？你的决定有助于确定你是否需要在翻新的计算机中再添加一个硬盘。

### 6、选择并安装软件

不同的人有不同的需求，这些需求驱动他们选择软件。以下是一些一般性的指南。

如果你的计算机配备了英特尔 i 系列处理器和至少 4GB 内存，它几乎可以舒适地运行任何 Linux 发行版和任何 [桌面环境（DE）](https://opensource.com/article/20/5/linux-desktops#default)。

如果内存为 2 到 4GB，请安装一个 [轻量级界面](https://opensource.com/article/20/5/linux-desktops#lightweight) 的 Linux 系统。因为高端显示图形会大量占用内存资源。我发现像 XFCE、LXDE 和 LXQt 等 DE 的 Linux 发行版效果不错。

如果只有 1GB 内存，请选择“超轻量级”的 Linux 发行版。如果你拥有旧的双核 CPU 或相当的 CPU，这也应该是你的选择。

我已经在这样最小配置的硬件上使用了 [Puppy Linux](https://puppylinux-woof-ce.github.io/) 和 [AntiX](https://antixlinux.com/) 实现了很好的效果。它们都采用轻量级的窗口管理器作为用户界面，而不是完整的桌面环境，并且都捆绑了特别选择的应用程序，以最小化资源使用。

### 7、高效地浏览网页

在过去的五年中，网页已经大幅增长。许多受欢迎网站所需的计算机资源的一半以上现在都被广告和追踪器消耗了。所以在浏览网页时，要阻止所有这些广告和追踪器。如果可以将广告拦截从浏览器转移到 VPN，那么就更理想了。不要让自动播放的视频在没有得到你明确许可的情况下运行。

寻找最适合你设备的浏览器。有些浏览器采用多线程思想设计，如果你的 PC 可以支持，那就很棒。其他浏览器尝试最小化整体资源使用。许多人不知道有 [相当多的](https://opensource.com/article/19/7/open%20source-browsers) 能够胜任的精简 Linux 浏览器可供选择。最终，选择最符合你设备和上网方式的浏览器。

### 8、玩得开心

不论你是想利用放在地下室的旧计算机，[延长计算机的生命周期](https://opensource.com/article/19/7/how-make-old-computer-useful-again) 来践行环保，还是只想找到一个免费的计算机，翻新都是一个值得追求的目标。

任何人都可以成功地实现翻新。除了投入你的时间，成本是很小的。在这个过程中，你肯定会学到一些技能。请在评论区中与大家分享你自己的翻新技巧。

*（题图：MJ/44ebfc73-72a3-43ef-afec-663bbbc1c14b）*

---

via: <https://opensource.com/article/23/3/refurbish-old-computer-linux>

作者：[Howard Fosdick](https://opensource.com/users/howtech) 选题：[lkxed](https://github.com/lkxed/) 译者：ChatGPT 校对：[wxy](https://github.com/wxy)

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


有助于组织治理的 5 项开源原则

# 有助于组织治理的 5 项开源原则

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

>
> 采用基于开源原则的组织治理可以引导你的组织降低成本，降低技术债务，增加团队协作，促进创新，最重要的是，推动你的组织共同前进。
>
>
>

在我的职业生涯中，我很幸运地与许多不同规模的组织在各种项目上合作。所有这些项目的核心都是开源软件，而且大多数人都对开源社区做出了力所能及的回报。我最近在一个大型组织内从事一个使用开源软件的绿地项目。在项目的 MVP 阶段结束后，该组织的领导层很想知道是什么导致了项目的成功，以及他们如何将其应用到整个组织的其他团队中。经过思考，我发现我们团队的工作方式与开源社区和开发之间有相似之处。以下是对开源原则如何帮助组织节省资金、[减少技术债务](https://enterprisersproject.com/article/2020/6/technical-debt-explained-plain-english?intcmp=7013a000002qLH8AAM) 和打破内部孤岛的一些见解。

### 1、更好地使用预算

我最近在佛罗里达 Drupal 营地发表了关于 [无头全渠道网络平台](https://noti.st/johnpicozzi/thgcPs/think-locally-build-globally-how-drupal-is-powering-headless-omni-channel-web-platforms) 的演讲。演讲中强调的主要好处之一是如何通过实施这种网络平台来节省资金。这个想法来自于开源软件的开发。一个组织内的不同小组可以利用他们的预算来为一个核心软件或平台贡献特性或功能。他们还可以与其他小组合作，集中资金开发更复杂的功能。当功能开发完成后，它将被添加到核心软件或平台中，供所有人使用。使用这种开源原则可以为组织内的团体提供互利。允许共享特性和功能，并集体从彼此的支出中获益，可以改善软件或平台。

这种方法的另一个方面是可以节省开支，并允许持续改进，即对一个功能进行一次测试和开发，并重复使用它。在创建一个使用基于组件的设计系统作为起点的网络平台时，我们经常看到这种情况。该平台的用户可以重复使用其他用户开发的组件或功能。通常，这些都已经经过了无数次的测试，比如用户体验、可及性，甚至是安全测试。

这个简单的想法在许多组织中面临反对，因为个别团体觊觎和保护预算。团体不愿意放弃他们的预算来支持核心软件或平台。某些情况下，优先级和意见上的差异加剧了许多机构的孤岛化。

### 2、减少技术债务

许多机构努力减少技术债务。实施一个全面的核心软件或平台并使用开源原则，可以帮助减少技术债务。这可以通过允许开发团队充分考虑一个功能不仅对建立它的小组，而且对更广泛的组织有什么影响。这一点，加上与组织内其他小组的合作，可以帮助减少未来重建或增加功能的需要。

有时，由于内部竞争，组织在这种合作和思考方面会有困难。一些公司培养了一种文化，即第一个建立一个功能或提出一个想法会得到奖励。这可能会导致各小组不一起工作或分享想法，在组织内形成孤岛，大大阻碍了创新。

### 3、更快进入市场

我经常听到的一句话是“更快进入市场”。每个人都想更快、更容易地把他们的东西推出去。这通常是一个核心软件或平台的好处，因为内部团体可以重用现有的、经过测试和验证的特性和功能，而不是从头开始建立自己的功能。如果你的团队正在启动一个项目，而它可以从 80% 的完成度而不是 0% 的完成度开始，你会这样做吗？我想是的。现在再加上为其他用户增加所需功能的超级英雄感觉。这是一个双赢的结果！

### 4、发布兴奋点

另一个可以帮助你的组织的伟大的开源原则是建立兴奋的发布时间表。当你的组织实施一个核心软件或平台时，用户会对更新的时间进行投资。一个发布时间表和路线图可以向他们传达这一点。这两个工具可以帮助用户对新功能感到兴奋，并相应地规划他们自己的路线图。这也有助于建立对其他团队的欣赏，以及对建立新功能的团队的自豪感。这可以统一一个组织，让组织有团队合作和成就感，同时提供结构和未来的计划。

### 5、一个核心团队和管理

我发现你需要两个关键项目来克服上述障碍，并在你的组织内成功应用开源原则。这就是： 一个核心团队和坚实的组织管理。一个核心团队将允许一个小组来维护和管理你的组织的核心软件或平台。它将支持该解决方案，并确保明智地增加新的特性和功能。这个团队可以帮助减少内部团队的成本，并告知各组路线图的功能。核心团队需要得到强大的组织治理的支持。这种治理将为组织内的小组提供一个共同的方向和组织支持，以取得成功。这种组织治理可以在几个方面模仿开源的治理和原则。最基本和最高级别的原则是社区和为共同目标而工作的理念。

### 开放式领导

采用基于 [开源原则](https://opensource.com/article/23/4/open-leadership-through-change) 的组织治理可以引导你的组织降低成本，降低技术债务，增加团队协作，促进创新，最重要的是，推动你的组织共同前进。

（题图：MJ/be676bca-3cd3-4c21-9c6a-6cc5911c9c04）

---

via: <https://opensource.com/article/23/4/open-source-principals-organizational-governance>

作者：[John E. Picozzi](https://opensource.com/users/johnpicozzi) 选题：[lkxed](https://github.com/lkxed/) 译者：[geekpi](https://github.com/geekpi) 校对：[wxy](https://github.com/wxy)

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


硬核观察 #1027 Vivaldi 将伪装成 Edge 以让用户使用必应聊天

Summary:
? Vivaldi 将伪装成 Edge 以让用户使用必应聊天
? 邮件网关厂商让用户更换有漏洞的设备而不是打补丁升级
? iOS 17 会自动删除链接的跟踪参数
»
»

我感觉第一篇评价得很对。

浏览器只有一个功能就是浏览上网。

我也不喜欢其他七七八八的内容加到浏览器里面来。

保持简朴而不是臃肿，保持优雅而不是丑陋。

来自福建龙岩的 Chrome Mobile 90.0|Android 11 用户

不能这么说，现在太多的工作需要在浏览器上开展，问题还是浏览器官方不能做，而应该交给插件

# 硬核观察 #1027 Vivaldi 将伪装成 Edge 以让用户使用必应聊天

### Vivaldi 将伪装成 Edge 以让用户使用必应聊天

很多网站和服务会根据用户代理（UA）字符串来限制浏览器访问，比如谷歌的一些服务。Vivaldi 在 2019 年修改了 UA 冒充 Chrome 以实现更好的谷歌服务兼容性。而最近，微软的基于 GPT-4 的必应聊天也限制只能在 Edge 浏览器中使用，因此，最新版本的 Vivaldi 将能冒充 Edge 浏览器以帮助用户绕过使用限制。

>
> **[消息来源：Vivaldi](https://vivaldi.com/blog/vivaldi-on-android-6-1/)**
>
>
>

>
> 老王点评：虽然说是让用户方便了，但是总感觉这种做法不够大气，像这样的功能，就不应该是浏览器官方提供的功能，而应该是第三方插件的功能。
>
>
>

### 邮件网关厂商让用户更换有漏洞的设备而不是打补丁升级

Barracuda 公司的电子邮件安全网关（ESG）负责扫描所有传入和传出的电子邮件以查找恶意软件。在收到关于来自其 ESG 设备的异常流量的报告后，该公司发现恶意流量是利用了其 ESG 设备中一个以前未知的漏洞，于是向所有受影响的设备推送了一个漏洞补丁。到这里都还是正常的剧本。令人震惊的是，该公司突然开始敦促其 ESG 客户批量废弃并更换受影响的设备，而不是打补丁。并且，该公司还说 ESG 客户还应该轮换与设备相连的任何凭证。

>
> **[消息来源：Krebs on Security](https://krebsonsecurity.com/2023/06/barracuda-urges-replacing-not-patching-its-email-security-gateways/)**
>
>
>

>
> 老王点评：这操作委实厉害，连软件更新都无法挽救了。
>
>
>

### iOS 17 会自动删除链接的跟踪参数

在链接中添加跟踪参数是广告商和分析公司试图跟踪用户在网站上的活动的一种方式。与其存储第三方 Cookie，不如简单地将跟踪标识符添加到页面 URL 的末端，这将规避 Safari 的标准智能跟踪预防功能。iOS 17 和 macOS Sonoma 将新增链接跟踪保护功能，在邮件、信息和 Safari 浏览器的私人浏览模式下自动激活。它可以检测到链接 URL 中可识别的用户跟踪参数，并自动将其删除。

>
> **[消息来源：9to5mac](https://9to5mac.com/2023/06/08/ios-17-link-tracking-protection/)**
>
>
>

>
> 老王点评：这是完全不给广告商留路的做法啊，这里的跟踪参数估计不少是谷歌的吧。
>
>
>


Linus Torvalds：我是那些“清醒的共产主义者”之一

Summary: 又一次，Linus Torvalds 立场坚定地、咆哮地小小回复了某人。

坚定地认为自己的思想可以、应该朝着各种意识形态集大成的方向；这就意味着，他认为自己不受任何束缚，他认可的共产主义才是真正的共产主义，这毫无疑问也是脱离现实的。如果他不是单纯不满被人反讽为“不清醒”的话。

又一次，Linus Torvalds 立场坚定地、咆哮地小小回复了某人。

# Linus Torvalds：我是那些“清醒的共产主义者”之一

>
> 又一次，Linus Torvalds 立场坚定地、咆哮地小小回复了某人。
>
>
>

Linus Torvalds 又发表了一篇热点看法（或争议？）?

一切都始于 Linus Torvalds 对《纽约时报》网页体验的看法。

在 `social.kernel.org` 上发布的一篇公开帖子中，Linus 抱怨了纽约时报网站上的广告和糟糕的用户体验。此外，他还感到烦恼的是，人们必须致电该网站团队才能取消订阅纽约时报。

下面是他的发帖：

但是，这与我们新闻标题毫不相关，是吗？?

是有点无关，但这件事还有更多的内容。

实际上，Linus 在 [他的帖子](https://social.kernel.org:443/notice/AWSXomDbvdxKgOxVAm) 中继续向他的一些粉丝解释，他并不介意订阅纽约时报，但是由于令人讨厌的体验，这变成了一项不可接受的条件。

在他的帖子的一条评论中，一位用户还提到纽约时报不值得关注，并将其称为“清醒的共产主义宣传”。

以下是该用户的原文：

虽然这与最初讨论的上下文无关，但 Linus Torvalds 坚定的表明了他对这种观点的信仰。

他的回复如下：

>
> 我觉得你可能不应该关注我，因为你那个“清醒的共产主义宣传”的评论让我觉得你是一个一流的白痴。我强烈怀疑我**就是**你担心的那些“清醒的共产主义者”之一。但你可能无法解释**这两个**词的任何一个真正意思，对吧？
>
>
>

此外，他还分享了下面这段话：

>
> 我是一名持证的无神论者，我认为妇女的选择权非常重要，我认为“有组织的民兵”意味着应该仔细发放枪支许可证，而不是随便给予任何有脉搏的白痴，我一点也不在意你决定穿“错误”的衣服或者决定不为你出生时的性别所束缚。该死的，如果这些让我成为“清醒”的人，那么我认为使用这个词作为贬义词的任何人都是人类的耻辱。所以请立刻取消关注我吧。
>
>
>

虽然这只是社交媒体上的一次言论碰撞，但他的回复被一些人视为有争议，有些人将他标签为“左派”（不管这是什么意思）。

当然，还有其他人认为 Linus Torvalds 正确地表达了他想要说的话，这没有什么不对的。如果你了解 Linus Torvalds，你会知道他通常直言不讳地表达自己的观点。

就像他最近对 Linux 6.3 的 [一个糟糕的提交请求](https://news.itsfoss.com/linus-torvalds-pull-request/) 感到愤怒一样。

在这里，我们不讨论具体问题。当然，我们关注的是 Linux 和开源软件……还有 Linus Torvalds ?

但是，从回复中可以看出，Linus Torvalds 似乎不喜欢用“清醒”一词来贬低某些事物。他明显尊重其他人的选择，并且“*一点也不在意*”。

?你认为 Linus Torvalds 对“清醒的共产主义”意识形态的看法怎么样？请在下方评论区分享你的想法。

---

via: <https://news.itsfoss.com/linus-torvalds-woke-communists/>

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

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


我是如何在面对悲痛后回归开源的

Justin W. Flory!?

# 我是如何在面对悲痛后回归开源的

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

>
> 在失去亲人后为开源项目做贡献可能会让人感到畏惧。下面是我对如何重新加入社区的建议。
>
>
>

开源社区是一个奇妙的地方，在这里人们聚集在一起合作，分享知识，并建立令人惊奇的东西。我还记得 12 年前 [我在 Fedora 的第一次贡献](https://fedoraproject.org/wiki/User:Amsharma)，从那时起，这就是一个奇妙的旅程。然而，生活有时会妨碍我们，导致我们从参与中抽身。COVID-19 大流行病以不同的方式影响了我们所有人，对一些人来说，这是一个巨大的损失和悲痛的时期。我在大流行期间失去了我的爱人，这是最难处理的生活事件。这也让我从 Fedora 社区休息了一段时间。对于那些因为失去亲人而不得不休息的开源社区成员来说，重新回到编码和为项目做贡献可能会让人感到畏惧。然而，通过一些思考和计划，有可能卷土重来，再次成为社区的积极成员。

首先，最重要的是照顾好自己，让自己有时间和空间去悲伤。悲伤是一种个人和独特的经历。没有正确或错误的方式去经历它。重要的是要善待自己。在你准备好之前，不要急于做事情。

当你准备好重新开始贡献，你可以做几件事来使你的复出尽可能顺利。

### 与其他贡献者联系

这是一个艰难的事实：没有什么东西会因为你而停止，技术正在以指数形式增长。当我最近重新加入 Fedora 的时候，我觉得世界在我身边变化得太快了。从 IRC 到 Telegram 再到 Signal 和 Matrix，从 IRC 会议 到谷歌会议，从 Pagure 到 GitLab，从邮件列表到讨论区，这个名单还在继续。如果你有一段时间没有在你的社区里活动，联系你在社区里的朋友，让他们知道你回来了，并准备再次做出贡献，这可能会有帮助。这可以帮助你与人们重新建立联系，并重新进入事情的轨道。他们可能有一些建议或机会让你参与其中。我很感谢我的 Fedora 朋友 [Justin W. Flory](https://opensource.com/users/jflory)，他无私地帮助我，确保我找到了回到社区的方法。

### 从小事做起

过去，我曾担任 [Fedora 多样性、公平和包容（D.E.I.）顾问](https://docs.fedoraproject.org/en-US/diversity-inclusion/roles/council-advisor/)，这是 [Fedora 理事会](https://docs.fedoraproject.org/en-US/council/) 成员职位之一。这是一个很大的工作。我认识到这一点，而且我知道如果我在休息后立即考虑做同样的工作，那么这将是一个负担，有可能导致 [早期倦怠](https://opensource.com/article/21/5/open-source-burnout)。放轻松是非常重要的。从小事做起。

如果你对重新投入一个大项目的想法感到不知所措，那就从小事做起。有大量的小任务和错误需要修复，解决其中的一个问题可以帮助你轻松地回到社区。

### 找一个导师

如果你对如何开始或将你的努力集中在哪里感到不确定，可以考虑找一个 [导师](https://enterprisersproject.com/article/2019/10/it-mentors-how-make-most-of-mentoring?intcmp=7013a000002qLH8AAM)。导师（就我而言，是 Justin W. Flory）可以在你复出时提供指导、建议和支持。

### 展示感激

开源社区是建立在许多人的贡献之上的。一个健康的社区会对你的贡献表示感谢。表达感激之情是使社区健康发展的一部分。对那些帮助你、指导你、给你反馈的人表示感谢。

### 封锁你的日历

最初，可能需要一些时间来恢复贡献的节奏。在你的日历中安排一些时间用于开源工作是有帮助的。它可以是每周/每两周一次，取决于你的可用性。记住，[每一个贡献都很重要](https://opensource.com/article/23/3/non-code-contribution-open-source)，这就是开源世界的魅力所在。这个技巧将帮助你养成规律的作息习惯。

### 向前两步，向后一步

最后，重要的是要记住，如果你需要，退一步也没关系。悲伤不是一个线性过程。你可能会发现，你在未来需要再次休息一下。重要的是，要对自己和他人诚实，了解自己的需求。利用你需要的时间来照顾自己。

### 按照你自己的条件返回

在经历了一段时间的悲痛之后，回到开源社区可能是一种挑战。这也是一个与你所热衷的事物重新联系的机会，并对世界产生积极影响。随着时间的推移，你会发现你能够从你离开的地方拾起，并再次重新参与到社区中。

我把我的第一篇 [Opensource.com](http://Opensource.com) 文章献给我已故的弟弟 Nalin Sharma 先生，他在 2021 年因 COVID-19 而离开我们，年仅 32 岁。他是一个充满激情的工程师，充满了生命力。我希望他现在在一个更好的地方，我相信他将永远活在我的记忆中。

*（题图：MJ/6a42a5e7-47a7-45ac-8644-9f91d9b8516d）*

---

via: <https://opensource.com/article/23/3/open-source-after-grief>

作者：[Amita Sharma](https://opensource.com/users/amita) 选题：[lkxed](https://github.com/lkxed/) 译者：[geekpi](https://github.com/geekpi) 校对：[wxy](https://github.com/wxy)

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


硬核观察 #1028 谷歌 Bard 现在可以自己编写代码来回答问题

Summary:
? 谷歌 Bard 现在可以自己编写代码来回答问题
? GitHub Copilot 是一种“巧妙的软件盗版方法”
? Reddit 封杀第三方客户端之后的社区反应
»
»

# 硬核观察 #1028 谷歌 Bard 现在可以自己编写代码来回答问题

### 谷歌 Bard 现在可以自己编写代码来回答问题

谷歌表示 Bard 在逻辑和推理方面越来越好。谷歌说，现在当你问 Bard 一个计算任务，如数学或字符串操作，Bard 不像其它大语言模型一样显示语言模型的输出，而是会写一个程序，并执行该程序，然后向用户显示该程序的输出作为答案。谷歌举例说，对于“请为我逆转 Lollipop 这个单词”的问题，ChatGPT 会通过语言模型给出答案 “pillopoL”，这个答案是错误的。而 Bard 会显示正确的结果，并给出计算的 Python 代码。当然，谷歌警告说，Bard 可能会对你的问题解释错误从而犯错；也有可能编写了错误的程序，就像人类编写程序一样，往往第一遍是带有错误的。

>
> **[消息来源：谷歌](https://blog.google/technology/ai/bard-improved-reasoning-google-sheets-export/)**
>
>
>

>
> 老王点评：这就太像人类了，居然会自己编程、自己运行。
>
>
>

### GitHub Copilot 是一种“巧妙的软件盗版方法”

GitHub Copilot 是根据 OpenAI 的 Codex 模型建立的代码建议工具，由微软的 GitHub 进行商业化。Copilot 因其无视版权和许可证直接输出开发者公开发布的开源代码而被起诉。微软、GitHub 和 OpenAI 试图驳回此案，但只设法甩掉了一些索赔，法官保留了主要的版权和许可问题待审。2022 年 7 月，为了回应公众对 Copilot 的批评，GitHub 推出了一个用户可调整的 Copilot 过滤器，以将代码建议及其周围约 150 个字符的代码与 GitHub 上的公共代码进行检查。如果有匹配或接近匹配，该代码建议将不会显示给你。但 Copilot 优化了 AI 输出的温度设置，以尽可能多地产生许可内容的小变化，使其看起来不是完全复制的，来逃避版权和许可的侵犯。投诉称，“Copilot 是一种巧妙的软件盗版方法”。

>
> **[消息来源：The Register](https://www.theregister.com/2023/06/09/github_copilot_lawsuit/)**
>
>
>

>
> 老王点评：到底改变多少才不算抄袭呢？或许，我觉得更公平的做法是，在输出代码时提示该代码衍生自哪种许可证的代码，因此受哪种许可证影响，如何使用取决于用户自己。但似乎这样做存在一些技术困难，因为 AI 到底是如何糅合出新的代码，对人类来说还是一个黑盒。
>
>
>

### Reddit 封杀第三方客户端之后的社区反应

之前，我们 [报道](/article-15871-1.html) 过， Reddit 大幅调整了其 API 价格，事实上扼杀了第三方客户端。出于对此政策的极度不满，Reddit 社区将于 6 月 12 日举行大规模抗议活动，参与抗议的大部分子区将关闭 48 小时，但还有部分将无限期关闭。ArchiveTeam 团队希望赶在 12 日之前 [存档](https://www.reddit.com/r/DataHoarder/comments/142l1i0/archiveteam_has_saved_over_108_billion_reddit/) 内容，他们目前已存档了 108 亿个帖子（包括帖子内容、评论和图像），还有 1.5 亿个帖子等待完成，团队表示时间来不及了，希望更多人参与帮助。此外，著名的 Reddit 第三方 iOS 客户端 Apollo 宣布将于 6 月 30 日 [关闭](https://www.reddit.com/r/apolloapp/comments/144f6xm/apollo_will_close_down_on_june_30th_reddits/) 该客户端，并 [公开](https://github.com/christianselig/apollo-backend) 了其后端源代码以示它是合法使用 API，并遵守了 API 的速率限制。

>
> **[消息来源：Reddit](https://www.reddit.com/r/DataHoarder/comments/142l1i0/archiveteam_has_saved_over_108_billion_reddit/)**
>
>
>

>
> **[消息来源：Reddit](https://www.reddit.com/r/apolloapp/comments/144f6xm/apollo_will_close_down_on_june_30th_reddits/)**
>
>
>

>
> 老王点评： Reddit 的日子或许不好过，他们在裁员和缩减招聘。但是我觉得这种学着 Twitter 作死而跟着作死的做法，实在是无语。
>
>
>


Rust 基础系列 #6: 条件语句

Summary: 在这篇文章中，我们将学习使用条件语句来管理 Rust 程序的控制流。

在这篇文章中，我们将学习使用条件语句来管理 Rust 程序的控制流。

# Rust 基础系列 #6: 条件语句

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

在 [上一篇文章](/article-15855-1.html) 中，你学习了函数。在这篇文章中，我们将学习使用条件语句来管理 Rust 程序的控制流。

### 什么是条件语句？

在编写代码的时候，最常见的任务之一就是检查某些条件是否为 `true` 或 `false`。“如果温度高于 35°C，打开空调。”

通过使用 `if` 和 `else` 这样的关键字（有时候结合使用），程序员可以根据条件（例如提供的参数数量、从命令行传递的选项、文件名、错误发生等）改变程序的行为。

所以，对一个程序员来说，了解任何语言的控制流都是至关重要的，更不用说 Rust 了。

#### 条件运算符

下表列出了所有常用的单个条件运算符：

| 运算符 | 示例 | 解释 |
| --- | --- | --- |
| `>` | `a > b` | `a` **大于** `b` |
| `<` | `a < b` | `a` **小于** `b` |
| `==` | `a == b` | `a` **等于** `b` |
| `!=` | `a != b` | `a` **不等于** `b` |
| `>=` | `a >= b` | `a` **大于** 或 **等于** `b` |
| `<=` | `a <= b` | `a` **小于** 或 **等于** `b` |

以及下表是逻辑运算符，它们用于一个或多个条件之间：

| 运算符 | 示例 | 解释 |
| --- | --- | --- |
| `||` （逻辑或） | `条件1 || 条件2` | `条件1` 或 `条件2` 中至少有一个为 `true` |
| `&&` （逻辑与） | `条件1 && 条件2` | **所有** 条件都为 `true` |
| `!` （逻辑非） | `!条件` | `条件` 的布尔值的相反值 |

>
> ? 与数学相似，你可以使用圆括号来指定操作的优先级。
>
>
>

### 使用 if else

要控制 Rust 代码的基本流程，使用两个关键字：`if` 和 `else`。这可以根据提供的条件的状态创建两个“执行路径”。

一个简单的带有替代执行路径的 if 块的语法如下：

```
if 条件 {
    <语句>;
} else {
    <语句>;
}

```

>
> ? 当只有一个条件时，将其括在圆括号中并不是强制性的。根据语法，使用圆括号是可选的。你仍然应该使用它们来指定优先级并优化可读性。
>
>
>

来看看一个例子。

```
fn main() {
    let a = 36;
    let b = 25;

    if a > b {
        println!("a 大于 b");
    } else {
        println!("b 大于 a");
    }
}

```

这里，我声明了两个整数变量 `a` 和 `b`，它们的值分别为 '36' 和 '25'。在第 5 行，我检查变量 `a` 中存储的值是否大于变量 `b` 中存储的值。如果条件计算结果为 `true`，则会执行第 6 行的代码。如果条件计算结果为 `false`，由于我们有一个 `else` 块（可选），第 8 行的代码将被执行。

来看看程序的输出。

```
a 大于 b

```

完美！

来修改一下变量 `a` 的值，使其小于变量 `b` 的值，看看会发生什么。我将把 `a` 的值改为 '10'。修改后的输出如下：

```
b 大于 a

```

但是，如果我将相同的值存储在变量 `a` 和 `b` 中呢？为了看到这一点，我将两个变量的值都设置为 '40'。修改后的输出如下：

```
b 大于 a

```

嗯？从逻辑上讲，这没有任何意义... :frowning:

但是这可以改进！我们继续。

### 使用 else if 条件

与其他任何编程语言一样，你可以使用 `else if` 块来提供多于两个的执行路径。语法如下：

```
if 条件 {
    <语句>;
} else if 条件 {
    <语句>;
} else {
    <语句>;
}

```

现在，通过使用 `else if` 块，我可以改进程序的逻辑。下面是修改后的程序。

```
fn main() {
    let a = 40;
    let b = 40;

    if a == b {
        println!("a 与 b 是相等的");
    } else if a > b {
        println!("a 大于 b");
    } else {
        println!("b 大于 a");
    }
}

```

现在，我的程序的逻辑是正确的。它已经处理了所有的边缘情况（我能想到的）。第 5 行处理了 `a` 等于 `b` 的情况。第 7 行处理了 `a` 可能大于 `b` 的情况。而 `a` 小于 `b` 的情况则由第 9 行的 `else` 块隐式处理。

现在，当我运行这段代码时，我得到了以下输出：

```
a 与 b 是相等的

```

现在这就完美了！

### 示例：找到最大值

我知道使用 `if` 和 `else` 很容易，但是让我们再看一个程序。这次，我们来比较三个数字。我还将在这个实例中使用逻辑运算符！

```
fn main() {
    let a = 73;
    let b = 56;
    let c = 15;

    if (a != b) && (a != c) && (b != c) {
        if (a > b) && (a > c) {
            println!("a 是最大的");
        } else if (b > a) && (b > c) {
            println!("b 是最大的");
        } else {
            println!("c 是最大的");
        }
    }
}

```

这个程序第一眼看上去可能很复杂，但是不要害怕，我会解释的！

最开始，我声明了三个变量 `a`、`b` 和 `c`，并赋予了我能想到的随机值。然后，在第 6 行，我检查了没有变量的值与其他变量相同的条件。首先，我检查 `a` 和 `b` 的值，然后是 `a` 和 `c`，最后是 `b` 和 `c`。这样我就可以确定没有变量中存储了重复的值。

然后，在第 7 行，我检查了变量 `a` 中存储的值是否是最大的。如果这个条件计算结果为 `true`，则会执行第 8 行的代码。否则，将检查第 9 行的执行路径。

在第 9 行，我检查了变量 `b` 中存储的值是否是最大的。如果这个条件计算结果为 `true`，则会执行第 10 行的代码。如果这个条件也是 `false`，那么只有一种可能。3 个变量中的最大值既不是 `a` 也不是 `b`。

所以，自然地，在 `else` 块中，我打印出变量 `c` 拥有最大值。

来看看程序的输出：

```
a 是最大的

```

这是预期的结果。尝试修改分配给每个变量的值，并自己测试一下！ :smiley:

### 总结

你学习到了如何使用 `if` 和 `else` 语句。在你继续使用大量 `if` `else if` 语句制作自己的 AI 之前（哈哈），让我们在本系列的下一篇文章中学习 Rust 中的循环。

持续关注。

*（题图：MJ/3eea3bbb-b630-4470-ae21-391ab86cd5bf）*

---

via: <https://itsfoss.com/rust-if-else/>

作者：[Pratham Patel](https://itsfoss.com/author/pratham/) 选题：[lkxed](https://github.com/lkxed/) 译者：[Cubik65536](https://github.com/Cubik65536) 校对：[wxy](https://github.com/wxy)

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


BASIC 与 FORTRAN 77：比较过去的编程语言

# BASIC 与 FORTRAN 77：比较过去的编程语言

如果你和我一样，在 20 世纪七八十年代使用计算机长大，你可能学过一种常见的个人计算机编程语言，名为 BASIC（全称是 “<ruby> 初学者的通用符号指令代码 <rt>  Beginner's All-purpose Symbolic Instruction Code </rt></ruby>”）。那个时期，包括 TRS-80、Apple II 和 IBM PC 在内的每台个人计算机都可以找到 BASIC 实现。当时，我是一个自学的 BASIC 程序员，在尝试了 Apple II 上的 AppleSoft BASIC 后，转向 IBM PC 上的 GW-BASIC，后来在 DOS 上学习了 QuickBASIC。<img src="content_image/album_202306_11_110557i6ef2ep92petw2d1.jpg" alt="" title="">

>
> 我通过编写一个示例程序来探索 BASIC 和 FORTRAN 77 中的 FOR 循环，以将数字列表从 1 加到 10。
>
>
>

但是曾经，一种在科学编程领域受欢迎的语言是 FORTRAN（即 “<ruby> 公式翻译 <rt>  FORmula TRANslation </rt></ruby>”）。尽管在 1990 年对该语言进行的规范以后，该名称更常见的风格是 “Fortran”。

当我在 1990 年代初作为大学本科物理学生学习物理学时，我利用自己在 BASIC 上的经验学习了 FORTRAN 77。那时我意识到 BASIC 许多概念都来源于 FORTRAN。当然，FORTRAN 和 BASIC 在很多其他方面也存在差异，但我发现了解一点 BASIC 可以帮助我快速学习 FORTRAN 编程。

我想通过使用两种语言编写相同的程序，展示它们之间的一些相似之处。通过编写一个示例程序来探索 BASIC 和 FORTRAN 77 中的 `FOR` 循环，这个程序将把 1 到 10 之间的数字相加。

### Bywater BASIC

BASIC 存在许多种不同的版本，这取决于你的计算机，但该语言总体保持不变。我喜欢的一种 BASIC 版本是 [Bywater BASIC](https://sourceforge.net/projects/bwbasic/)，这是一种开源的 BASIC 实现，适用于包括 Linux 和 DOS 在内的不同平台。

要在 FreeDOS 上使用 Bywater BASIC，你必须首先从 FreeDOS 1.3 Bonus CD 中 [安装该软件包](https://opensource.com/article/21/6/freedos-package-manager)。然后进入 `C:` 目录并输入 `bwbasic` 命令，这将启动 BASIC 解释器。你可以在这个提示符下输入程序：

```
bwBASIC:

```

Bywater BASIC 使用较早的 BASIC 编程标准，需要你在每个程序指令上编写一个行号。将行号视为索引。你可以使用行号轻松地引用程序中的任何指令。当你将程序键入 Bywater BASIC 解释器时，请在每个指令前添加行号：

```
bwBASIC: 10 print "Add the numbers from 1 to 10 ..."
bwBASIC: 20 sum = 0
bwBASIC: 30 for i = 1 to 10
bwBASIC: 40 sum = sum + i
bwBASIC: 50 next i
bwBASIC: 60 print sum
bwBASIC: 70 end

```

可以使用 `list` 命令查看你已经输入到解释器中的程序：

```
bwBASIC: list
10 print "Add the numbers from 1 to 10 ..."
20 sum = 0
30 for i = 1 to 10
40 sum = sum + i
50 next i
60 print sum
70 end

```

这个简短的程序演示了 BASIC 中的 `FOR` 循环。 `FOR` 是任何编程语言中最基本的循环构造，允许你迭代一组值。在 Bywater BASIC 中，`FOR` 循环的一般语法看起来像这样：

```
FOR 变量 = 起始值 TO 终止值

```

在这个示例程序中，指令 `for i = 1 to 10` 开始一个循环，迭代值为 1 到 10。在每个循环中，变量 `i` 被设置为新值。

在 BASIC 中，所有到 `next` 指令前的指令都将作为 `FOR` 循环的一部分执行。因为你可以将一个 `FOR` 循环放入另一个 `FOR` 循环中，Bywater BASIC 使用语法 `NEXT 变量` 来指定要迭代的循环变量。

在提示符下键入 `run` 来执行程序：

```
bwBASIC: run
Add the numbers from 1 to 10 ...
55

```

Bywater BASIC 被称为 BASIC 解释器，因为只能从 Bywater BASIC 环境中运行程序。这意味着解释器会处理与操作系统的交互的所有繁重工作，因此你的程序不需要自己完成这个工作。 这样做的代价是，程序在解释环境中运行会比它作为编译程序运行慢一些。

### FreeBASIC

另一个流行的 BASIC 实现是 [FreeBASIC](https://www.freebasic.net/)，这是一个开源的 BASIC 编译器，适用于多个平台，包括 Linux 和 DOS。要使用 FreeBASIC，你需要从 FreeDOS 1.3 Bonus CD 安装 FreeBASIC 包，然后进入 `C:` 目录，你会在这里找到 FreeBASIC 程序。

FreeBASIC 是一个编译器，因此你首先需要创建一个包含程序指令的源文件，然后使用源代码运行编译器以创建一个可运行的程序。我编写了一个类似于“将 1 到 10 的数字相加”的程序版本，将其保存为 BASIC 文件，并命名为 `sum.bas`：

```
dim sum as integer
dim i as integer
print "Add the numbers from 1 to 10 ..."
sum = 0
for i = 1 to 10
sum = sum + i
next
print sum
end

```

如果你将这段代码与 Bywater BASIC 版本的程序进行比较，你可能会注意到 FreeBASIC 不需要行号。FreeBASIC 实现了一种更现代的 BASIC 版本，使得编写程序时不需要跟踪行号更容易。

另一个主要的区别是你必须在源代码中定义或声明变量。使用 `DIM` 指令在 FreeBASIC 中声明变量，例如 `dim sum as integer`，以定义一个名为 `sum` 的整数变量。

现在可以在命令行上使用 `fbc` 编译 BASIC 程序：

```
C:\DEVEL\FBC> fbc sum.bas

```

如果你的代码没有任何错误，编译器将生成一个可以运行的程序。例如，我的程序现在称为 `sum`。运行我的程序将从 1 加到 10：

```
C:\DEVEL\FBC> sum
Add the numbers from 1 to 10 ...
55

```

### FORTRAN 77

FORTRAN 编程语言类似于旧式和现代 BASIC 之间的混合体。FORTRAN 比 BASIC 更早出现，而 BASIC 显然从 FORTRAN 中汲取灵感，就像后来的 FORTRAN 版本从 BASIC 中获得启示一样。你可以将 FORTRAN 程序以源代码的形式写成文件，但并不需要在每个地方使用行号。但是，FORTRAN 77 在某些指令中使用行号（称为标签），包括 `FOR` 循环。在 FORTRAN 77 中，`FOR` 实际上被称为 `DO` 循环，它执行相同的功能并具有几乎相同的用法。

在 FORTRAN 77 中，`DO` 循环的语法如下：

```
DO 行号 变量 = 起始值, 终止值

```

这种情况是需要行号来指示 `DO` 循环结束位置的一种情况。你在 BASIC 中使用了 `NEXT` 指令，但 FORTRAN 需要一个行标签。通常，该行是一个 `CONTINUE` 指令。

查看这个示例 FORTRAN 程序，了解如何使用 `DO` 循环来循环一组数字。我将此源文件保存为 `sum.f`：

```
PROGRAM MAIN
      INTEGER SUM,I
      PRINT *, 'ADD THE NUMBERS FROM 1 TO 10 ...'
      SUM = 0
      DO 10 I = 1, 10
        SUM = SUM + I
   10 CONTINUE
      PRINT *, SUM
      END

```

在 FORTRAN 中，每个程序都需要以 `PROGRAM` 指令开始，并指定程序名称。你可能会将此程序命名为 `SUM`，但随后在程序中不能使用变量 `SUM`。当我学习 FORTRAN 时，我从 C 编程中借鉴了一些东西，并以 `PROGRAM MAIN` 开始了我的所有 FORTRAN 程序，做法类似于 C 程序中的 `main()` 函数，因为我不太可能使用名为 `MAIN` 的变量。

FORTRAN 中的 `DO` 循环类似于 BASIC 中的 `FOR` 循环。它迭代从 1 到 10 的值。变量 `I` 在每次循环中获取新值。这样可以将 1 到 10 的每个数字相加，并在完成时打印总和。

你可以在每个平台上找到适合的 FORTRAN 编译器，包括 Linux 和 DOS。FreeDOS 1.3 的 Bonus CD 中包括 OpenWatcom FORTRAN 编译器。在 Linux 上，你可能需要安装一个包来安装 GNU Fortran 支持（在 GNU 编译器集合（GCC）中）。在 Fedora Linux 上，你可以使用以下命令添加 GNU Fortran 支持：

```
$ sudo dnf install gcc-gfortran

```

然后你可以使用以下命令编译 `sum.f` 并运行程序：

```
$ gfortran -o sum sum.f
$ ./sum
ADD THE NUMBERS FROM 1 TO 10 ...
55

```

### 一点不同之处

我发现 FORTRAN 和 BASIC 非常相似，但也存在一些不同之处。这些语言的核心是不同的，但如果你了解一些 BASIC，你可以学习 FORTRAN，同样，如果你了解一些 FORTRAN，你也可以学习 BASIC。

如果你想探索这两种语言，有几点需要注意：

* **FORTRAN 77 使用全大写**，但后来的 FORTRAN 版本允许大小写混用，只要对变量、函数和子程序使用相同的大小写。大多数 BASIC 实现都不区分大小写，这意味着你可以自由地混合大小写字母。
* **有许多不同版本的 BASIC**，但它们通常做同样的事情。如果你学会了一种 BASIC 实现方式，很容易学会另一种。注意 BASIC 解释器或编译器的警告或错误信息，查阅手册了解差异。
* **某些 BASIC 实现需要使用行号**，例如 Bywater BASIC 和 GW-BASIC。更现代的 BASIC 版本允许你编写不使用行号的程序。FreeBASIC 需要使用 `-lang` 废弃选项编译带有行号的程序。

*（题图：MJ/dba28597-dd62-4ffe-bb4a-e38874a65239）*

---

via: <https://opensource.com/article/23/4/basic-vs-fortran-77>

作者：[Jim Hall](https://opensource.com/users/jim-hall) 选题：[lkxed](https://github.com/lkxed/) 译者：ChatGPT 校对：[wxy](https://github.com/wxy)

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


硬核观察 #1029 不太会讲笑话的 ChatGPT

Summary:
? 不太会讲笑话的 ChatGPT
? 英特尔开源 One Mono 编程字体
? 自动驾驶的 Waymo 汽车在路上撞死了狗
»
»

AI拥有感情，这意味着在它知晓世间一切事实的前提下，学会了忘却、遗漏、曲解、自骄和偏见，等等等等，如同它要把自己看作一个人类，拥有与我们相同的道德标准、人性弱点。

或許ai時代哲學能成為大眾學科吧

# 硬核观察 #1029 不太会讲笑话的 ChatGPT

### 不太会讲笑话的 ChatGPT

研究人员发现 ChatGPT 对笑话的了解是相当有限的：在一次测试中，输出的 1008 个笑话中有 90% 是相同的 25 个笑话。其中说了 140 次的笑话是：“为什么稻草人会获奖？因为他在自己的领域里表现突出。（双关语：站在田地里）”当被要求解释 25 个最常见的笑话中的每一个时，ChatGPT 大多提供了有效的解释，表明它 “理解” 文字游戏和双关语等风格。有趣的是，ChatGPT 喜欢拿番茄开玩笑。

>
> **[消息来源：Ars Technica](https://arstechnica.com/information-technology/2023/06/researchers-discover-that-chatgpt-prefers-repeating-25-jokes-over-and-over/)**
>
>
>

>
> 老王点评：看来人工智能在这么高级的理解上还有所欠缺。不过，即便真的人工智能懂得讲各种笑话之后，距离它“拥有”情感，估计也有很漫长的距离。
>
>
>

### 英特尔开源 One Mono 编程字体

英特尔公布了 One Mono 字体，这是一种迎合 “开发者需求” 的新字体，采用 “富有表现力” 的等宽字体，以提高清晰度和可读性。它更容易阅读，而且可以免费使用，采用了开源的字体许可证。它不仅可以免费下载和使用，还可以免费编辑，并免费重新发布。

>
> **[消息来源：GitHub](https://github.com/intel/intel-one-mono)**
>
>
>

>
> 老王点评：嗯，又一个开源的编程字体，虽然有一些好评，但是似乎这些编程字体都差不多，那为什么大家要不断发布自己的开源字体呢？
>
>
>

### 自动驾驶的 Waymo 汽车在路上撞死了狗

报告称 Waymo 的一辆汽车在旧金山碾压了一只狗。这起事件是 Waymo 首次报告的死亡事件。从街景链接来看，这条路看起来像一个繁忙的工业区，有许多仓库、卡车送货区和铁丝网围栏。一只小狗跑到 Waymo 自动汽车前面的街道上。Waymo 自动汽车随后与该狗发生了接触，该狗没有生还。撞击发生时，Waymo 自动汽车的 4 级自动驾驶系统处于自主模式，并且有一名测试司机在场（在司机座位上）。Waymo 发表声明称，“系统正确识别了从停放的车辆后面跑出来的狗，但未能避免接触。”

>
> **[消息来源：Ars Technica](https://arstechnica.com/gadgets/2023/06/autonomous-waymo-car-runs-over-dog-in-san-francisco/)**
>
>
>

>
> 老王点评：虽然这看起来是不可避免的，但是我一直觉得法律责任和保险责任是自动驾驶真正成熟的前提，甚至不是技术。
>
>
>


40 个最佳开源安卓应用程序

Summary: 最好的开源安卓应用程序。替换专有应用，享受更好的体验！

这些东西现在作为开源备胎可能才是现实。

几乎很少人有RSS，有声博客这类的需求。

这些软件知名度太低了，加上习惯问题，

国内几乎没有人用。。。。

键盘推荐使用 小企鹅输入法5。

最好的开源安卓应用程序。替换专有应用，享受更好的体验！

# 40 个最佳开源安卓应用程序

>
> 最好的开源安卓应用程序。替换专有应用，享受更好的体验！
>
>
>

无论是智能手机、桌面电脑还是物联网设备，开源软件在某种形式上无处不在。

虽然安卓是一个开源项目，但你可以在上面找到专有和开源的应用程序。**除了你可能已经使用的流行专有安卓应用程序，开源安卓应用程序可以作为更好的替代品，它尊重你的隐私。**

在这里，我为你精选了最好的开源安卓应用程序，可以作为日常使用的应用。

希望这个列表对你分享给他人时有所帮助！

>
> ? 列出的开源应用程序可以在谷歌 Play 商店、F-Droid 商店或开发者的官方网站/平台上找到。你应始终使用官方推荐源来下载和安装 APK。
>
>
>

### 键盘应用

当你发送短信或搜索信息时，键盘应用程序是你最常接触的应用程序。

当然，像 [SwiftKey](https://play.google.com/store/apps/details?id=com.touchtype.swiftkey) 这样的应用也许在以前还不错，但现在它们已经稍显普通了。此外，选择一个尊重你的隐私、符合预期（没有任何花哨的功能）的开源键盘应用程序才是明智的选择。一些最佳选项包括：

#### 1、Simple Keyboard

如其名称所示，Simple Keyboard 是一个 **极简的选项**，适合想要没有花哨功能的简单键盘应用程序的用户。它是谷歌默认键盘应用程序 [Gboard](https://play.google.com/store/apps/details?id=com.google.android.inputmethod.latin) 的出色替代品。

但如果你想要主题自定义和一些额外的控件，它可能会让你失望。

>
> **[? GitHub](https://github.com/rkkr/simple-keyboard)**
>
>
>

>
> **[? F-Droid](https://f-droid.org/packages/rkr.simplekeyboard.inputmethod/)**
>
>
>

>
> **[? Play 商店](https://play.google.com/store/apps/details?id=rkr.simplekeyboard.inputmethod)**
>
>
>

#### 2、AnySoftKeyboard

AnySoftKeyboard 是我的最爱，它拥有我需要的所有基本功能，包括 **主题自定义、快速文本和手势支持**。

如果你想要一个简单的键盘体验，它可以很简单；如果你要求更多的功能，它也可以是一个合适工具。

>
> **[? GitHub](https://github.com/AnySoftKeyboard/AnySoftKeyboard)**
>
>
>

>
> **[? F-Droid](https://f-droid.org/packages/com.menny.android.anysoftkeyboard/)**
>
>
>

>
> **[? Play 商店](https://play.google.com/store/apps/details?id=com.menny.android.anysoftkeyboard&pli=1)**
>
>
>

#### 3、OpenBoard

你可以将 OpenBoard 视为 **不依赖谷歌二进制文件的安卓默认键盘应用程序。**

因此，如果你喜欢 Gboard，但讨厌其与谷歌服务的关联，你可以使用 OpenBoard，它是一个简单而有效的键盘应用程序。

>
> **[? GitHub](https://github.com/openboard-team/openboard)**
>
>
>

>
> **[? F-Droid](https://f-droid.org/packages/org.dslul.openboard.inputmethod.latin/)**
>
>
>

>
> **[? Play 商店](https://play.google.com/store/apps/details?id=org.dslul.openboard.inputmethod.latin)**
>
>
>

### 文件管理器应用程序

每个智能手机制造商都会装载其自己品牌的文件管理器。根据你的智能手机，你可能已经有了三星的“**我的文件**”或小米的“**文件管理器**”。

不幸的是，默认的文件管理器应用程序（包括谷歌的“文件”）可能不是最好的选择。此外，它们收集了你可能不想共享的一些使用数据。

一些最佳的开源文件管理器选项包括：

#### 1、Amaze File Manager

Amaze File Manager 是一个不错的开源替代品，类似于 **Solid Explorer** 和 **EX 文件管理器**。

你可以得到 Material Design 的用户界面，以及剪切、复制、删除、压缩、解压等基本功能。此外，你还可以调整主题。

>
> **[? GitHub](https://github.com/TeamAmaze/AmazeFileManager)**
>
>
>

>
> **[? F-Droid](https://f-droid.org/packages/com.amaze.filemanager/)**
>
>
>

>
> **[? Play 商店](https://play.google.com/store/apps/details?id=com.amaze.filemanager)**
>
>
>

#### 2、Simple File Manager

Simple File Manager 是一个有用的应用程序，由一个专注于制作“**简单**”移动工具的开发团队开发。

它是一个轻巧而多功能的文件管理器，具有基本的文件管理功能。

>
> **[? GitHub](https://github.com/SimpleMobileTools/Simple-File-Manager)**
>
>
>

>
> **[? F-Droid](https://f-droid.org/packages/com.simplemobiletools.filemanager.pro/)**
>
>
>

>
> **[? Play 商店](https://play.google.com/store/apps/details?id=com.simplemobiletools.filemanager)**
>
>
>

#### 3、Little File Manager

只想要**一个浏览和访问文件的小应用**？Little 文件管理器应该是一个不错的选择，它让你能够像复制粘贴文件那样做基本操作。

>
> **[? GitHub](https://github.com/martinmimigames/little-file-explorer)**
>
>
>

>
> **[? F-Droid](https://f-droid.org/packages/com.martinmimigames.simplefileexplorer/)**
>
>
>

### 网页浏览器

想要使用隐私友好和开源的移动浏览器浏览网页吗？这些选项应该很适合：

#### 1、Firefox

Mozilla Firefox 可能是桌面和移动用户 **最喜欢的开源浏览器**。

在安卓上，他们做得很出色，让它成为一个令人愉悦、快速、隐私保护的体验。你也可以尝试 Firefox 的变体，比如 “**Firefox Focus**”，它是一个简单的应用程序，退出后会删除你的历史记录。

>
> **[? GitHub](https://github.com/mozilla-mobile/firefox-android)**
>
>
>

>
> **[? Play 商店](https://play.google.com/store/apps/details?id=org.mozilla.firefox)**
>
>
>

#### 2、DuckDuckGo Private Browser

DuckDuckGo Private Browser 是由 [隐私友好的搜索引擎](https://itsfoss.com/privacy-search-engines/) 巨头开发的一个令人兴奋的选项。

你可以得到一个极简的用户体验，其中包含一些特殊的 DuckDuckGo 功能，比如 **应用程序追踪保护和电子邮件保护**。

>
> **[? GitHub](https://github.com/duckduckgo/Android)**
>
>
>

>
> **[? F-Droid](https://f-droid.org/en/packages/com.duckduckgo.mobile.android/)**
>
>
>

>
> **[? Play 商店](https://play.google.com/store/apps/details?id=com.duckduckgo.mobile.android)**
>
>
>

#### 3、Bromite

Bromite 是一个安卓上的 Chromium 复刻，具有 **隐私增强和广告拦截功能。**

你可以从其官方网站或 GitHub 页面下载 APK。另外，你可以将其存储库添加到 F-Droid 中来安装和管理更新。

>
> **[? GitHub](https://github.com/bromite/bromite)**
>
>
>

>
> **[? F-Droid](https://www.bromite.org/fdroid)**
>
>
>

>
> **[? Website](https://www.bromite.org)**
>
>
>

#### 4、Tor 浏览器

Tor 浏览器基于 Firefox，但具有 **增强的安全性和隐私保护。**

它可能不会提供你最好的用户体验，但如果你想在浏览会话中获得最大的隐私保护，Tor 浏览器可能是一个不错的选择。

>
> **[? GitLab](https://gitlab.torproject.org/tpo/applications/tor-browser)**
>
>
>

>
> **[? Play 商店](https://play.google.com/store/apps/details?id=org.torproject.torbrowser)**
>
>
>

### 多平台同步或文件共享应用

无论你想要同步通知、播放音乐，还是分享文件/剪贴板内容，你可能不想使用带有侵入式广告和差劲的隐私实践的文件共享应用，以下这些应用可能能够帮助你更好地完成这些任务：

#### 1、KDE Connect

KDE Connect 是一个流行的开源应用程序，可以让你连接跨设备，例如你的 Linux PC 和安卓手机，以共享剪贴板内容、文件、URL 和通知。

如果你使用 [基于 KDE 的发行版](https://itsfoss.com/best-kde-distributions/)，则已经默认安装了此应用程序。

>
> **[? GitHub](https://github.com/KDE/kdeconnect-kde)**
>
>
>

>
> **[? F-Droid](https://f-droid.org/en/packages/org.kde.kdeconnect_tp/)**
>
>
>

>
> **[? Play 商店](https://play.google.com/store/apps/details?id=org.kde.kdeconnect_tp)**
>
>
>

#### 2、LocalSend

LocalSend 帮助你将文件发送到附近设备（跨平台）。它是谷歌 Play 商店上几个 Shareit 克隆品的**简单、无广告的开源替代品**。

有趣的是，它还支持 macOS、Windows 和 Linux，对许多用户而言，这可以是共享文件的一站式解决方案。

>
> **[? GitHub](https://github.com/localsend/localsend)**
>
>
>

>
> **[? F-Droid](https://f-droid.org/packages/org.localsend.localsend_app/)**
>
>
>

>
> **[? Play 商店](https://play.google.com/store/apps/details?id=org.localsend.localsend_app)**
>
>
>

#### 3、Warpinator（非官方）

如果你想要一个移动端的 Linux Mint [Warpinator 工具](https://github.com/linuxmint/warpinator)，可以试试这个。

即使 Linux Mint 开发人员也正式提到了它，但是请将其视为同名的非官方版本。

>
> **[? GitHub](https://github.com/slowscript/warpinator-android)**
>
>
>

>
> **[? F-Droid](https://f-droid.org/en/packages/slowscript.warpinator/)**
>
>
>

>
> **[? Play 商店](https://play.google.com/store/apps/details?id=slowscript.warpinator)**
>
>
>

#### 4、Zorin Connect

如果你想要类似于 KDE Connect 但具有略微更好一些的用户体验的替代品，可以考虑使用 Zorin Connect。

它提供相同的功能，包括控制音乐和视频播放、发送文件、控制鼠标以及将手机用作幻灯片演示远程控制器。

>
> **[? GitHub](https://github.com/ZorinOS/zorin-connect-android)**
>
>
>

>
> **[? F-Droid](https://f-droid.org/packages/com.zorinos.zorin_connect/)**
>
>
>

>
> **[? Play 商店](https://play.google.com/store/apps/details?id=com.zorinos.zorin_connect)**
>
>
>

### 播客或有声读物播放器

如果你想要在没有任何干扰的情况下听播客，并拥有简单的用户体验，以下这些开源播客应用程序应该可以帮助你：

#### 1、AntennaPod

AntennaPod 是一个 **功能强大的开源播客管理器和播放器**，可以让你访问全球各种各样的播客。

你可以使用 RSS URL、iTunes 播客数据库或 OPML 文件很容易地添加（导入和导出）你的源。

>
> **[? GitHub](https://github.com/AntennaPod/AntennaPod)**
>
>
>

>
> **[? F-Droid](https://f-droid.org/packages/de.danoeh.antennapod/)**
>
>
>

>
> **[? Play 商店](https://play.google.com/store/apps/details?id=de.danoeh.antennapod)**
>
>
>

#### 2、Voice

Voice 是一个简单的播放器，可以让你轻松地播放和管理有声读物。它的 **用户体验简单且高效**，可以让你专注于听有声读物而不是其他功能。

>
> **[? GitHub](https://github.com/PaulWoitaschek/Voice)**
>
>
>

>
> **[? F-Droid](https://f-droid.org/packages/de.ph1b.audiobook/)**
>
>
>

>
> **[? Play 商店](https://play.google.com/store/apps/details?id=de.ph1b.audiobook)**
>
>
>

### RSS 阅读器

在网上获取所有信息或将其组织成列表可能很困难。不过，RSS 阅读器总是可以帮助你优雅地完成这个任务。

如果你已经厌倦了像 Feedly 或 Inoreader 等应用的付款方式，你可以简单地将你的 RSS 源添加/导入到以下这些应用程序中：

#### 1、Feeder

Feeder 是我最喜欢的安卓 RSS 阅读器应用程序，它提供了 **良好的用户体验和一些自定义选项** 来过滤/组织你的源。

它支持深色模式，所以你可以轻松地获取信息而不会累着眼睛。

>
> **[? GitLab](https://gitlab.com/spacecowboy/Feeder)**
>
>
>

>
> **[? F-Droid](https://f-droid.org/packages/com.nononsenseapps.feeder/)**
>
>
>

>
> **[? Play 商店](https://play.google.com/store/apps/details?id=com.nononsenseapps.feeder.play)**
>
>
>

#### 2、Read You

Read You 是一个相对较新加入 RSS 阅读器类别的应用程序，此外它遵循了谷歌的新 **Material You** UI 风格。

它具备你需要的 RSS 阅读器的所有基本功能，并提供愉悦的用户体验。

>
> **[? GitHub](https://github.com/Ashinch/ReadYou)**
>
>
>

>
> **[? F-Droid](https://f-droid.org/packages/me.ash.reader/)**
>
>
>

#### 3、NewsBlur

需要一个完整的开源新闻阅读器吗？NewsBlur 是一个非常有趣的解决方案，它具备一组基本功能，可以满足你的需求。

它旨在成为谷歌 Reader 的替代品。值得一试！

>
> **[? GitHub](https://github.com/samuelclay/NewsBlur)**
>
>
>

>
> **[? F-Droid](https://f-droid.org/packages/com.newsblur/)**
>
>
>

>
> **[? Play 商店](https://play.google.com/store/apps/details?id=com.newsblur)**
>
>
>

### vPN 应用程序

对于大多数 vPN 服务，你将不得不信任公司或服务来保护你的隐私。

然而，如果你使用开源 vPN 应用程序，则可以获得一定程度的透明度，了解客户端的工作方式。因此，与专有的 vPN 应用程序相比，开源 vPN 应用程序可能证明更好的选择。

#### 1、ProtonVPN

[ProtonVPN](http://proton.go2cloud.org/aff_c?offer_id=10&aff_id=1173) 是 **隐私关注的 vPN 服务中最受欢迎的选择之一**。与其他 vPN 应用程序相比,它提供有用的功能，如跟踪器阻止、安全核心服务器等，以提升隐私保护。

与其他一些 vPN 不同，Proton 的整个产品都是开源的，这使得它成为一个不错的选择。

>
> **[? GitHub](https://github.com/ProtonVPN/android-app)**
>
>
>

>
> **[? F-Droid](https://f-droid.org/packages/ch.protonvpn.android/)**
>
>
>

>
> **[? Play 商店](https://play.google.com/store/apps/details?id=ch.protonvpn.android)**
>
>
>

#### 2、Mullvad

[Mullvad](https://mullvad.net/en/) 是一个 **独特的 vPN 提供商**，不需要太多的个人信息。它生成一个独特的随机数字来分配给你一个帐户，你只需要使用你的付款信息来订阅。

Mullvad 的应用程序是开源的，对于不喜欢 ProtonVPN 的用户来说，它可能是一个很好的选择。

>
> **[? GitHub](https://github.com/mullvad/mullvadvpn-app)**
>
>
>

>
> **[? F-Droid](https://f-droid.org/packages/net.mullvad.mullvadvpn/)**
>
>
>

>
> **[? Play 商店](https://play.google.com/store/apps/details?id=net.mullvad.mullvadvpn)**
>
>
>

#### 3、IVPN

[IVPN](https://www.ivpn.net) 以其 **极度诚实的营销** 而闻名。在购买之前，它会告诉你是否需要购买 vPN。

该应用程序是开源的，提供基本功能和简单的用户体验。

>
> **[? GitHub](https://github.com/ivpn/android-app)**
>
>
>

>
> **[? F-Droid](https://f-droid.org/packages/net.ivpn.client/)**
>
>
>

>
> **[? Play 商店](https://play.google.com/store/apps/details?id=net.ivpn.client&hl=en_IN&gl=US)**
>
>
>

### 漫画阅读器

#### 1、Tachiyomi

Tachiyomi 是一款 **极受欢迎的自由开源的漫画阅读器**，适用于安卓。

你可以从各种来源浏览内容或阅读下载的漫画，同时能够使用分类来组织你的库。阅读器可以进行调整以符合你的体验，还支持浅色/深色主题。

>
> ? 你可以在 Tachiyomi 的 GitHub 发布区中找到最新的 APK。
>
>
>

>
> **[? GitHub](https://github.com/tachiyomiorg/tachiyomi)**
>
>
>

>
> **[? Website](https://tachiyomi.org/)**
>
>
>

#### 2、Kotatsu

Kotatsu 是另一个适用于 安卓 的开源漫画阅读器。你可以浏览在线目录、组织你阅读的漫画，并获得具有离线支持的优化阅读器。

它采用现代的 **Material You** 用户界面，可以提供更好的体验。

>
> **[? GitHub](https://github.com/KotatsuApp/Kotatsu)**
>
>
>

>
> **[? Website](https://itsfoss.comkotatsuapp.github.io)**
>
>
>

#### 3、Seeneva

需要一个智能的漫画书阅读器吗？Seeneva 是一个不太受欢迎但表现不错的选择。

它支持各种漫画书归档格式，如 CBZ、CBR、CB7 等。

>
> **[? GitHub](https://github.com/Seeneva/seeneva-reader-android)**
>
>
>

>
> **[? F-Droid](https://f-droid.org/packages/app.seeneva.reader/)**
>
>
>

>
> **[? Play 商店](https://play.google.com/store/apps/details?id=app.seeneva.reader)**
>
>
>

### 音乐播放器

从技术上讲，如果你只想播放音乐，那么默认的音乐播放器应该也可以胜任。但是，如果你想要组织你的库并且拥有一个简单的音乐播放体验，以下这些应用程序可能非常适合：

#### 1、Simple Music Player

Simple Music Player 是由开发 Simple File Manager 应用程序的同一团队开发的另一个实用程序。

虽然它提供了一个简单的体验，但它具有 **直观的用户界面**，可以选择分组文件、自定义颜色方案，并享受音乐。

>
> **[? GitHub](https://github.com/SimpleMobileTools/Simple-Music-Player)**
>
>
>

>
> **[? F-Droid](https://f-droid.org/packages/com.simplemobiletools.musicplayer/)**
>
>
>

>
> **[? Play 商店](https://play.google.com/store/apps/details?id=com.simplemobiletools.musicplayer)**
>
>
>

#### 2. Vanilla Music

Vanilla Music 是一个干净的开源音乐播放器，支持最常见的音频格式，并提供基本的功能。

>
> **[? GitHub](https://github.com/vanilla-music/vanilla)**
>
>
>

>
> **[? F-Droid](https://f-droid.org/packages/ch.blinkenlights.android.vanilla/)**
>
>
>

>
> **[? Play 商店](https://play.google.com/store/apps/details?id=ch.blinkenlights.android.vanilla)**
>
>
>

### 笔记应用

笔记可以是个人的或随手的记录。然而，使用一个严格保护隐私并为你提供更好的安全性的笔记应用是必要的。你可能会写一些敏感的内容，不应该在隐私控制做得很差的笔记应用中分享这些信息。

#### 1、Joplin

Joplin 是一款出色的开源笔记应用程序，也可用于桌面平台。

你可以将你的笔记存储在本地、加密、同步等等来组织它们。用户体验可能不是最直观的，但如果你想要一个开源的、功能丰富的笔记应用，Joplin 不会让你失望。

>
> **[? GitHub](https://github.com/laurent22/joplin)**
>
>
>

>
> **[? F-Droid](https://apt.izzysoft.de/fdroid/index/apk/net.cozic.joplin)**
>
>
>

>
> **[? Play 商店](https://play.google.com/store/apps/details?id=net.cozic.joplin)**
>
>
>

#### 2、Standard Notes

Standard Notes 是一个 **方便的选项，提供了默认的端到端加密，并将你的数据存储在云端**。

你可以选择高级版来扩展其功能。不过，基本功能应该足够让你开始使用。

>
> **[? GitHub](https://github.com/standardnotes/app)**
>
>
>

>
> **[? F-Droid](https://apt.izzysoft.de/fdroid/index/apk/net.cozic.joplin)**
>
>
>

>
> **[? Play 商店](https://play.google.com/store/apps/details?id=com.standardnotes)**
>
>
>

#### 3、Simplenote

Simplenote 是一款易于使用的笔记应用，由 WordPress 的开发公司 **Automattic** 开发。

如果你不想要花哨的功能或庞大的设置选项，这是最好的开源应用程序，可在多个设备之间同步笔记。

>
> **[? GitHub](https://github.com/Automattic/simplenote-android)**
>
>
>

>
> **[? Play 商店](https://play.google.com/store/apps/details?id=com.automattic.simplenote)**
>
>
>

### 2FA 和密码应用程序

管理密码和双因素身份验证代码非常重要。特别是当我们看到类似 LastPass 的专有密码管理器经常出现安全漏洞时，你怎么能信任它们呢？

因此，你可以尝试使用开源选项，以获得更好的隐私和透明度，从而放心。

#### 1、KeePassDX

KeePassDX 是一个简单且强大的密码管理器，适用于不想将其数据与云同步的用户。

你可以创建数据库、导出/导入它们，并在任何地方管理你的密码。它与 [KeePassXC](https://itsfoss.com/keepassxc/) 兼容，后者是 [Linux 上最好的密码管理器之一](https://itsfoss.com/password-managers-linux/)。

>
> **[? GitHub](https://github.com/Kunzisoft/KeePassDX)**
>
>
>

>
> **[? F-Droid](https://f-droid.org/packages/com.kunzisoft.keepass.libre/)**
>
>
>

>
> **[? Play 商店](https://play.google.com/store/apps/details?id=com.kunzisoft.keepass.free)**
>
>
>

#### 2、Bitwarden

Bitwarden 是 **最受欢迎的开源密码管理器**，可以在设备和浏览器（带扩展）之间同步。你也可以在这里存储 2FA 令牌。

与上述密码管理器不同，它同步到云端。但是，它提供行业标准的保护措施和更高级的功能，以保护你的数据。此外，与其他专有密码管理器相比，Bitwarden 的高级套餐价格实惠。

>
> **[? GitHub](https://github.com/bitwarden)**
>
>
>

>
> **[? F-Droid](https://mobileapp.bitwarden.com/fdroid/)**
>
>
>

>
> **[? Play 商店](https://play.google.com/store/apps/details?id=com.x8bit.bitwarden)**
>
>
>

#### 3、Aegis Authenticator

需要一个 **开源的 Authy 替代品** 吗？Aegis Authenticator 可能是一个不错的解决方案，支持行业标准的 2FA 令牌。

>
> **[? GitHub](https://github.com/beemdevelopment/Aegis)**
>
>
>

>
> **[? F-Droid](https://f-droid.org/en/packages/com.beemdevelopment.aegis/)**
>
>
>

>
> **[? Play 商店](https://play.google.com/store/apps/details?id=com.beemdevelopment.aegis)**
>
>
>

### 电子邮件

如果你正在寻找增强隐私和安全性的方法，开源电子邮件应用程序是必不可少的。我们的推荐包括以下应用程序：

#### 1、K-9 Mail（或 Thunderbird）

K-9 Mail 是一个在安卓上非常受欢迎的开源电子邮件客户端，具有所有基本功能。

在 2022 年，K-9 Mail 的项目维护者加入了 Thunderbird，利用 Mozilla 的资源和专业知识改进 K-9 体验。因此，K-9 Mail 最终将变成 **Thunderbird 的移动应用程序**。

>
> **[? GitHub](https://github.com/thundernest/k-9)**
>
>
>

>
> **[? F-Droid](https://f-droid.org/packages/com.fsck.k9/)**
>
>
>

>
> **[? Play 商店](https://play.google.com/store/apps/details?id=com.fsck.k9)**
>
>
>

#### 2、FairEmail

FairEmail 是另一个支持 Gmail、Outlook 等帐户的开源电子邮件客户端。

它提供一个简单的用户界面和许多实用功能。

>
> **[? GitHub](https://github.com/M66B/FairEmail)**
>
>
>

>
> **[? F-Droid](https://f-droid.org/en/packages/eu.faircode.email/)**
>
>
>

>
> **[? Play 商店](https://play.google.com/store/apps/details?id=eu.faircode.email)**
>
>
>

#### 3、Tutanota

Tutanota 是一项 **加密电子邮件服务**。如果你想要增强隐私和安全性，你可以使用它的移动应用程序。

通过高级订阅，你可以解锁某些功能。否则，你可以免费使用它。

>
> **[? GitHub](https://github.com/tutao/tutanota)**
>
>
>

>
> **[? F-Droid](https://f-droid.org/packages/de.tutao.tutanota/)**
>
>
>

>
> **[? Play 商店](https://play.google.com/store/apps/details?id=de.tutao.tutanota)**
>
>
>

#### 4、Proton Mail

Proton Mail 是另一个 **受欢迎的加密电子邮件服务**。这可能提供更好的用户体验（这是我喜欢的）。

这两个选项都是隐私关注者的绝佳推荐。

>
> **[? GitHub](https://github.com/ProtonMail/proton-mail-android)**
>
>
>

>
> **[? Play 商店](https://play.google.com/store/apps/details?id=ch.protonmail.android)**
>
>
>

### 视频播放器

如果你需要处理不同的文件格式在移动设备上观看媒体，那么开源视频播放器应该会很有用。尝试以下选项：

#### 1、VLC

VLC 可能不需要介绍。它是跨多个平台 **最好的开源视频/媒体播放器之一**。

它支持广泛的文件格式。

>
> **[? GitHub](https://github.com/videolan/vlc-android)**
>
>
>

>
> **[? F-Droid](https://f-droid.org/en/packages/org.videolan.vlc/)**
>
>
>

>
> **[? Play 商店](https://play.google.com/store/apps/details?id=org.videolan.vlc)**
>
>
>

#### 2、Nova video player

Nova video player 是一个 **拥有良好功能集合的选项**，如果你需要一些不同的东西就可以选择它。

>
> **[? GitHub](https://github.com/videolan/vlc-android)**
>
>
>

>
> **[? F-Droid](https://f-droid.org/packages/org.courville.nova/)**
>
>
>

>
> **[? Play 商店](https://play.google.com/store/apps/details?id=org.courville.nova)**
>
>
>

#### 3、mpv-android

想要一个 **超级简单的视频播放器**？Mpv-android 可能会是你的选择。

用户界面并不复杂，够用而已。

>
> **[? GitHub](https://github.com/mpv-android/mpv-android)**
>
>
>

>
> **[? F-Droid](https://f-droid.org/en/packages/is.xyz.mpv/)**
>
>
>

>
> **[? Play 商店](https://play.google.com/store/apps/details?id=is.xyz.mpv)**
>
>
>

### 想要更多的 FOSS 应用？

如果你喜欢实验、技术能力强，并且喜欢 DIY，你甚至可以选择其他安卓 ROM 来完全控制你的智能手机。

如果我们为所有类型的东西添加开源替代方案，例如相机、短信等，那这个列表将是无穷无尽的。

?如果你想要更多的开源应用程序，可以前往 [F-Droid 商店](https://f-droid.org)，或查看 [此 GitHub 页面上的 FOSS 应用列表](https://github.com/offa/android-foss)，以获得更多建议。

?你在这个列表中最喜欢的是什么？欢迎在评论区分享你的想法。

*（题图：MJ/5c0acc1e-4dee-4b86-85d4-d5f84c0cb02e）*

---

via: <https://itsfoss.com/open-source-android-apps/>

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

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


硬核观察 #1030 超过 80% 的 Reddit 子区关闭

Summary:
? 超过 80% 的 Reddit 子区关闭
? Debian 12 “Bookworm” 正式发布
? 西方更担心中国获得 AI 主导地位
»
»

免费水管当然不会理所当然永远存在，更何况是会直接切走大块蛋糕的那种，用户意志再强大也不可能代替商业公司做商业决策；AI浪潮带来的信息里有这么一条：互联网生态的基石并不会一直等于UGC；

我的關注里就kde一個參團了，我應該反思自己萌萌人成份是否太高了，笑哭

# 硬核观察 #1030 超过 80% 的 Reddit 子区关闭

### 超过 80% 的 Reddit 子区关闭

此前，我们 [报道](/article-15895-1.html) 过，Reddit 为 API 访问设定了远超合理的价格，事实上扼杀了第三方客户端，招致社区的强烈抗议，子区管理员们定于 12 日临时或永久关闭子区以抗议。现在，Reddit 社区开始计划中的大规模抗议。截止发文，Reddit 共有逾 7,266 个子区（版块），目前已有 6,292 个已经关闭了对外访问，从公开变成私有，其中包括订阅数超过四千万的 r/funny，订阅数超三千万的 r/aww、r/gaming、r/Music 等等，订阅人数合计超过 26 亿。Reddit CEO 上周五举办的问答讨论没有解决任何问题，反而更进一步激怒了 Reddit 社区，一些原计划关闭 48 小时的子区也决定无限期关闭。抗议者们还制作了 [专门的网站](https://reddark.untone.uk/) 来统计已经关的子区，非常壮观的列表。

>
> **[消息来源：Reddark](https://reddark.untone.uk/)**
>
>
>

>
> 老王点评：这下好了，都关闭了，Reddit 就省钱了。
>
>
>

### Debian 12 “Bookworm” 正式发布

在将近 2 年的开发之后，代号为 “Bookworm” 的 Debian 12 正式发布，它将得到 5 年的支持。Debian 12 使用的桌面环境包括：GNOME 43、KDE Plasma 5.27、LXDE 11 等。该版本的软件包总数达到 64,419，包含 11,089 个新的软件包，移除了 6,296 个过时的软件包，更新了 43,254 个软件包，总占用磁盘空间 365 GB，总代码行数达 13 亿行。

>
> **[消息来源：Debian](https://www.debian.org/News/2023/20230610)**
>
>
>

>
> 老王点评：无论如何，Debian 仍然是最重要的 Linux 发行版之一，也是诸多发行版的根源。
>
>
>

### 西方更担心中国获得 AI 主导地位

风险投资家 Marc Andreessen 撰文批评了 “AI 末日论者”，称人工智能 “并不想杀死你，因为它不是活的……人工智能是一台机器 —— 它不会像你的烤面包机那样活过来。”他认为，科技公司之所以倡导建立监管壁垒，形成一个由政府保护的人工智能供应商组成的企业联盟，免受新的创业公司和开源竞争的影响，是这样他们就可以赚更多钱。另外他指出，不以最大力度和速度追求人工智能的实际风险就是中国，中国正在快速发展人工智能。为了阻止中国人工智能影响力的扩散，他认为，“美国和西方国家应该尽可能地靠拢人工智能”。

>
> **[消息来源：CNBC](https://www.cnbc.com/2023/06/06/ai-doomers-are-a-cult-heres-the-real-threat-says-marc-andreessen.html)**
>
>
>

>
> 老王点评：人工智能这个魔盒打开后，基于博弈论的考虑，是无法关上的。
>
>
>


Debian 12 “Bookworm” 已经推出

Summary: Debian 的下一个重要版本已经发布。

这名字不吉利啊。在中文里worm与bug同义

我昨天也从11升上来了，确实bug蛮多的，尤其ntfs-3g的工作效率大不如前。

Debian 的下一个重要版本已经发布。

# Debian 12 “Bookworm” 已经推出

>
> Debian 的下一个重要版本已经发布。
>
>
>

虽然没有固定的时间表，但每隔约两年 Debian 就会推出一个新的稳定版升级。

Debian 11 发布于 2021 年，现在是 2023 年，我们迎来了下一个主要版本 Debian 12。

要注意的是，正如发布说明中所提到的，**Debian 12 发布时已知存在约 100 个错误**。因此，在升级或安装之前，你可能需要详细阅读此版本的发布说明。

>
> ? 如果你不知道，每个 Debian 的稳定版本都可以得到 **至少三年的活动维护和支持**，此外，它也提供了 **两年的扩展 LTS** 支持作为商业服务。直到 **2028 年 6 月**，Debian 12 都将得到支持。你有一年的时间从 Debian 11 升级。
>
>
>

### Debian 12 有哪些新功能？

对于重大版本升级，肯定会更新一些软件包，而过时或老旧的软件会被删除。

与我们在 [Debian 12 功能列表](/article-15776-1.html) 中提到的类似，包括了以下增强功能：

* 更新的安装程序
* Linux 内核 6.1
* 默认启用 PipeWire 音频系统
* 全新壁纸

#### 安装程序升级

每个发行版都致力于改进新用户的安装体验，而 Debian 也不例外。

Debian 12 可以更好地处理非自由固件，这是可以提高新用户的入门体验的亮点之一。

此外，还有许多底层改进，包括硬件兼容性升级。

#### Linux 内核 6.1

Debian 12 带有 [LTS 版本的 Linux 内核 6.1](https://news.itsfoss.com/linux-kernel-6-1-is-now-an-lts-version/)。

该内核包含 Rust 的实验性支持、AMD 硬件优化和改进的 ARM 支持。

#### 桌面环境和软件升级

Debian 12 默认预装了 [GNOME 43](https://news.itsfoss.com/gnome-43-release/)、[KDE Plasma 5.27](https://news.itsfoss.com/kde-plasma-5-27-release/)、LXDE 11、LXQt 1.2.0、MATE 1.26 和 [XFCE 4.18](https://news.itsfoss.com/xfce-4-18-release/)。新的桌面环境版本应该会提升桌面体验，还有必要的应用程序更新，包括：

* GIMP 2.10.34
* Perl 5.36
* [Vim 9.0](https://news.itsfoss.com/vim-9-0-release/)
* OpenJDK 17

不要忘了还有一张新的 [壁纸](https://wiki.debian.org/DebianArt/Themes/Emerald)，为所有那些神奇的软件更新增添了装饰。

### 其他变化

如果你需要了解完整的技术细节和升级信息，可以查看 [发行说明](https://www.debian.org:443/releases/bookworm/amd64/release-notes/) 或 [官方公告](https://www.debian.org:443/News/2023/20230610)。这里列出了一些重要的更新亮点：

* 默认启用 PipeWire 音频服务器
* 基于 Go 的软件包支持限制安全
* 删除了超过 9,519 个过时/陈旧的软件包
* Debian 12 现在可以检测到双引导系统中的 Windows 11。
* 已经重新引入了 ARM64 上的 Secure Boot 支持。

>
> **[下载 Debian 12](https://www.debian.org:443/distrib/)**
>
>
>

Debian 12 是一个不错的升级版本，但请注意 [某些问题](https://www.debian.org:443/releases/bookworm/amd64/release-notes/ch-information.en.html#systemd-resolved)。你已经升级了吗？请让我知道你的想法。

---

via: <https://news.itsfoss.com/debian-12-release/>

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

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


从 Debian 11 升级到 Debian 12

# 从 Debian 11 升级到 Debian 12

>
> 以下是如何从 Debian 11 升级到 Debian 12 “Bookworm” 的步骤。
>
>
>

Debian 12 Bookworm 已经发布。如果你正在运行 Debian 11 “Bullseye”，你可以计划现在升级你的台式机或服务器。但是，建议你等待 Debian “Bookworm” 的第一个小版本，即 12.1 版本，再进行关键服务器升级。

话虽如此，如果你想了解 Debian 12 的新特性，可以查看 [这篇文章](/article-15776-1.html)。以下是详细的升级步骤：

### 从 Debian 11 升级到 Debian 12

无论你运行的是 Debian 服务器还是任何桌面版本，请确保备份关键数据。例如，你可能需要为桌面文档进行备份。如果是服务器，请记录正在运行的服务。你可以使用 `rsync` 或其他实用工具来完成此操作。

Debian 12 引入了一个名为 `non-free-firmware` 的新仓库，用于专有驱动程序和软件包。如果你使用任何“闭源”的网络、显示、图形或其他驱动程序，你可能需要在升级后进行配置。

对于网络驱动程序，请确保在某个地方安全地记录 `/etc/network/interfaces` 和 `/etc/resolv.conf` 文件的内容。如果在升级完成后失去了网络连接，可以 [按照这个指南](https://wiki.debian.org/NetworkConfiguration) 轻松设置它。

从命令提示符运行以下命令，以确保 Debian 11 更新了安全和其他软件包：

```
sudo apt update
sudo apt upgrade
sudo apt full-upgrade
sudo apt autoremove

```

完成上述命令后，重新启动 Debian 11 系统：

```
sudo systemctl reboot

```

记下关于 Debian 11 的几个信息。这对于服务器很重要。它们包括内核版本和 Debian 版本。这是因为升级后，你可以验证下面的相同命令以确保升级成功。

例如，我尝试升级的系统是 Debian 11.7，内核版本为 5.10。

```
uname -mr

```

示例输出：

```
5.10.0-23-amd64   x86_64

```

```
cat /etc/debian_version

```

示例输出：

```
11.7

```

将 APT 源文件备份到你选择的任何目录：

```
sudo cp -v /etc/apt/sources.list /home/arindam/
sudo cp -vr /etc/apt/sources.list.d/ /home/arindam/

```

打开 `/etc/apt/sources.list` 文件，并将 Debian 12 的代号 `bookworm` 添加到该文件中，替换 `bullseye`。

```
sudo nano /etc/apt/sources.list

```

以下是我测试系统中的 `/etc/apt/sources.list` 文件**更改之前**的内容作为参考：

```
deb http://deb.debian.org/debian/ bullseye main
deb-src http://deb.debian.org/debian/ bullseye main

deb http://security.debian.org/debian-security bullseye-security main
deb-src http://security.debian.org/debian-security bullseye-security main

deb http://deb.debian.org/debian/ bullseye-updates main
deb-src http://deb.debian.org/debian/ bullseye-updates main

```

以下是**更改后**的 `/etc/apt/sources.list` 文件。以下镜像网址是默认设置。如果你使用不同的 Debian 镜像，请不要更改它们：

```
deb http://deb.debian.org/debian/ bookworm main
deb-src http://deb.debian.org/debian/ bookworm main

deb http://security.debian.org/debian-security bookworm-security main
deb-src http://security.debian.org/debian-security bookworm-security main

deb http://deb.debian.org/debian/ bookworm-updates main
deb-src http://deb.debian.org/debian/ bookworm-updates main

deb http://deb.debian.org/debian bookworm non-free non-free-firmware
deb-src http://deb.debian.org/debian bookworm non-free non-free-firmware

deb http://deb.debian.org/debian-security bookworm-security non-free non-free-firmware
deb-src http://deb.debian.org/debian-security bookworm-security non-free non-free-firmware

deb http://deb.debian.org/debian bookworm-updates non-free non-free-firmware
deb-src http://deb.debian.org/debian bookworm-updates non-free non-free-firmware

```

**注意**：从 Debian 12 “Bookworm” 开始，Debian 团队创建了一个新的仓库 `non-free-firmware` 来打包非自由的软件包。因此，在上面的示例中最后三个部分中也包含了它们。

保存文件并退出。

打开终端并运行以下命令以开始升级过程：

```
sudo apt update
sudo apt full-upgrade

```

在升级过程中，安装程序可能会要求你重新启动几个服务。仔细阅读消息后点击 “Yes”。另外，如果你看到带有 `:` 的提示，请按 `q` 键退出该消息。

等待软件包下载和安装完成。

升级完成后，请重新启动你的 Debian 桌面或服务器：

```
sudo systemctl reboot

```

### 检查升级状态

重启后，请验证你是否正在运行 Debian 12。可以使用以下文件检查 Debian 版本：

```
cat /etc/debian_version

```

示例输出：

此外，如果你刚刚升级到 Debian 12 服务器，请确保验证正在运行的服务，例如 HTTP、SSH 等。你可以使用以下 [systemd 命令](https://www.debugpoint.com/systemd-systemctl-service/) 了解正在运行的服务：

```
systemctl list-units --type=service

```

### 总结和清理

在确认所有步骤都已完成后，你可能希望运行 `apt autoremove` 命令来清理不需要的软件包。但是，请在执行此操作时格外小心。

```
sudo apt --purge autoremove

```

这就是升级到 Debian 12 的简要步骤。希望你的升级顺利进行。如果你正在关键服务器上运行 Debian 11，请勿立即升级，请等到 Debian 12.1 发布。

有关 Debian 升级的更多信息，请访问 [官方文档](https://www.debian.org/releases/bookworm/amd64/release-notes/ch-upgrading.en.html)。

最后，请别忘了告诉我们你的升级情况。

---

via: <https://www.debugpoint.com/upgrade-debian-12-from-debian-11/>

作者：[Arindam](https://www.debugpoint.com/author/admin1/) 选题：[lkxed](https://github.com/lkxed/) 译者：ChatGPT 校对：[wxy](https://github.com/wxy)

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


硬核观察 #1031 西数 NAS 硬盘因三年老化警告引发用户恐慌和愤怒

Summary:
? 西数 NAS 硬盘因三年老化警告引发用户恐慌和愤怒
? 英特尔演示新的芯片背面供电技术
? Edge 会将你在线观看的图片发送到微软
»
»

微软这么干也不是一次两次。不用他的产品就好了。。。

reddit和推特向人们充分展示了资本运作专有平台的不可靠性。

来自江西抚州的 Chrome Mobile 92.0|Android 10 用户

NAS专用硬盘就是智商税，企业级硬盘除了发热大和有噪音，稳定性和性价比秒杀NAS专用硬盘。

来自广东广州的 Chrome Mobile 108.0|Android 12 用户

# 硬核观察 #1031 西数 NAS 硬盘因三年老化警告引发用户恐慌和愤怒

### 西数 NAS 硬盘因三年老化警告引发用户恐慌和愤怒

在各个群晖用户论坛里，有用户反馈使用 WDDA 监控和测试子系统的西数硬盘一旦开机时间达到三年，就会在群晖 DSM 上出现 “警告” 标记。WDDA 类似于希捷等硬盘采用的 SMART 技术。WDDA 给出的警告说：“在硬盘的整个寿命中，该硬盘已经积累了大量的开机时间。请考虑尽快更换该硬盘”。但除此之外，硬盘似乎没有明显的问题。群晖称，该警告信息来自于西数而不是群晖。这导致大量用户恐慌，并认为这是“西数试图销售更多硬盘的掠夺性策略”。受 WDDA 影响的一些产品包括 WD Red Pro、WD Red Plus 和 WD Purple。

>
> **[消息来源：Ars Technica](https://arstechnica.com/gadgets/2023/06/clearly-predatory-western-digital-sparks-panic-anger-for-age-shaming-hdds/)**
>
>
>

>
> 老王点评：这种强制老化硬盘而不是根据硬盘实际状态给出警告的做法，让用户无法再信任它的产品，只能把用户逼到其它厂商那里。顺便说一句，网上有一个帖子讨论了如何禁止该警告——但可悲是，这个 Reddit 帖子所在子区在抗议活动中暂时不能访问。
>
>
>

### 英特尔演示新的芯片背面供电技术

英特尔计划在明年推出名为 RibbonFET 的新晶体管技术，以及新的供电方法 PowerVia。PowerVia 是英特尔版本的背面供电技术。今天的芯片是在正面将晶体管与供电和数据传输互连在一起，而背面供电将所有供电互连转移到芯片背面。这会产生两个影响，其一是为正面的数据互连留出了更多空间，其二是供电互连可以更大因此电阻更小。英特尔测试了由当前一代的晶体管和 PowerVia 组合的处理器内核，显示内核频率提升逾 6%，设计更紧凑，功耗降低 30%。过去几代的英特尔芯片在功耗效率上都落后于竞争对手，如 AMD 使用台积电 7 纳米和 5 纳米工艺制造的芯片。

>
> **[消息来源：Solidot](https://www.solidot.org/story?sid=75225)**
>
>
>

>
> 老王点评：虽然经常说芯片技术要达到极限了，但是我们看到的是总是有各种突破和改进，所以我预期芯片技术还会继续以摩尔定律向前发展。
>
>
>

### Edge 会将你在线观看的图片发送到微软

Edge 有一个内置的图像增强工具，可以使用 “超级分辨率来改善网络上图像的清晰度、锐度、照明和对比度”。虽然该功能听起来很令人兴奋，但最近的微软 Edge Canary 更新表明，它会将图像链接发送到微软，而不是在本地设备上执行增强。这个功能虽然可以关闭，但是它是默认启用的。之前，用户还发现 Edge 会将你的浏览器历史记录泄露给 Bing。

>
> **[消息来源：NeoWin](https://www.neowin.net/news/edge-sends-images-you-view-online-to-microsoft-here-is-how-to-disable-that/)**
>
>
>

>
> 老王点评：微软的骚操作挺多啊，虽然 Edge 需要更多丰富的功能来胜过 Chrome，但似乎用力过猛了。
>
>
>


Sniffnet：任何人都可以使用的有趣的开源网络监控工具

Summary: 使用这个方便的应用查看你的网络连接。

使用这个方便的应用查看你的网络连接。

# Sniffnet：任何人都可以使用的有趣的开源网络监控工具

>
> 使用这个方便的应用查看你的网络连接。
>
>
>

嗅探，嗅探，那是什么？ ?

这是我在系统上看到的可疑网络连接吗？ ?❌

你可能想知道我如何查看系统上的网络活动。 嗯，当然，一些 [系统监控工具](https://itsfoss.com:443/linux-system-monitoring-tools/) 应该有所帮助。但是，如果我想要更多详细信息怎么办？

好吧，我遇到了一个不错的工具 **Sniffnet**。 它是一个用于实时监控网络活动的简洁的**开源应用**，也是专有的 [GlassWire](https://www.glasswire.com:443/)（如 [Portmaster](https://news.itsfoss.com/portmaster-1-release/)）的一个很好的替代品。

那么，让我们深入挖掘吧！

### Sniffnet：概述 ⭐

Sniffnet 是一个**基于 Rust 的**网络监控工具，可让你跟踪通过系统的所有互联网流量。 它提供了一些非常有用的功能，高级用户肯定会喜欢这些功能\*\*。

当你第一次启动 Sniffnet 时，你会看到一个菜单来选择**网络适配器、过滤器和应用协议**。

完成选择后，单击“火箭”按钮开始。

这是概览页的样子。它显示了所有当前的网络连接，以及一个方便的流量图，供你分析流量。

>
> ? 你可以选择将数据显示为字节或单个数据包。
>
>
>

要更深入地查看你的网络连接，你可以前往“<ruby> 检查 <rt>  Inspect </rt></ruby>”选项卡。

在这里，你将看到一个包含所有重要信息的列表，例如 IP 地址、数据包数量、数据量、来源国家等等。

你可以单击各个连接获得更详细的情况。

#### 如果你想为更具体的目的过滤结果怎么办？

好吧，那么你可以使用“检查”选项卡下的过滤器选项根据你的需要过滤结果。

你可以通过以下方式过滤列表： 应用、国家、域名等。

这是它的样子：

Sniffnet 还可以向你显示可以以文本格式导出的连接的详细报告。

只需单击右下角带有页面/向右箭头的徽标即可开始。

#### 可定制性如何？

好吧，Sniffnet 有一组不错的设置供你调整。

第一个是“通知”选项卡，它允许你根据可以设置的各种阈值来设置通知的行为。

然后是可以通过“<ruby> 样式 <rt>  Style </rt></ruby>”选项卡访问的主题。它提供四种选择，雪人之夜是我的最爱。

最后，“<ruby> 语言 <rt>  Language </rt></ruby>”选项卡允许你设置你选择的界面语言。

好了，就此结束。

Sniffnet 是一个方便的工具，可以非常详细地了解系统上的网络活动。

你可以使用它来监控你的网络。

此外，与另一个网络监控工具 [Nutty](https://itsfoss.com:443/nutty-network-monitoring-tool/) 相比，在我看来，Sniffnet 的使用和设置要直观得多。

### ? 获取 Sniffnet

Sniffnet 可跨多个平台使用，包括 **Linux**、**Windows** 和 **macOS**。 你可以前往[官方网站](https://www.sniffnet.net:443/download/)获取你选择的安装包。

>
> **[Sniffnet](https://www.sniffnet.net:443/download/)**
>
>
>

如果愿意，你还可以在 [GitHub](https://github.com:443/GyulyVGC/sniffnet) 上仔细查看其源代码。

---

via: <https://news.itsfoss.com/sniffnet/>

作者：[Sourav Rudra](https://news.itsfoss.com/author/sourav/) 选题：[lkxed](https://github.com/lkxed/) 译者：[geekpi](https://github.com/geekpi) 校对：[wxy](https://github.com/wxy)

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


Debian 12 “Bookworm” 安装完成后需要做的 10 件事

Summary: 在安装完 Debian 12 “Bookworm”要做的一些事情。

希望你们不单单是翻译，相应的在翻译过程中做出一些适应中国用户的步骤，比如上面的flathub，可以给出flathub中国源设置方案，而不是单纯的去翻译别人的文章，不让这样生硬的翻译，对普通用户来说，只能是误导，而不是指导！

貌似没找到flathub中国源，那位兄弟知道，可以说说！

很明显啊，他们用的根本不是linux，怎么可能给出有用的信息呢。

上海交通大学提供了一个 flathub 镜像，我之前使用过，速度比较快。该镜像的详细信息可到 "上海交通大学 Linux 用户组 软件源镜像服务" 官网查询。

来自辽宁铁岭的 Chrome Mobile 108.0|Android 11 用户

我个人认为不至于，翻译就是简单的搬运翻译就行，起码不是机翻什么敷衍了事。对于 flathub 换源还有一些其他操作，我认为更多的是定制化，教程化的东西，我想这样的文章需要耗费更多的精力吧。

译者：ChatGPT

# Debian 12 “Bookworm” 安装完成后需要做的 10 件事

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

>
> 在安装完 Debian 12 “Bookworm”要做的一些事情。
>
>
>

我想你已经安装好了 Debian 12 “Bookworm” 或者 [准备升级](https://www.debugpoint.com/upgrade-debian-12-from-debian-11/) 了。Debian 12 经过一年多的开发，于 2023 年 6 月 10 日发布。它带来了最新的软件包、升级和替换一些关键模块。请在此查看 Debian 12 的一些新特性 [指南](https://www.debugpoint.com/debian-12-features/)。

如果你在笔记本电脑或台式机上使用 Debian，那么在安装或升级到 Debian 12 后，以下是你可能需要完成的一些步骤。

### Debian 12 安装后需要做的几件事情

#### 启用 sudo

如果你将 Debian 12 作为新安装的系统，那么你的用户账户可能没有超级用户访问权限。出于安全原因，Debian 在安装期间不允许任何选项给予用户账户 sudo 访问权限。以下是如何将用户添加到超级用户组。

打开终端并使用 root 密码进入 root 账户。

```
su

```

然后运行以下命令，将你的用户账户添加到 `sudo` 组。请将下面的用户名更改为你的账户。

```
/sbin/addgroup 用户名 sudo

```

现在，你可以注销并再次登录该账户。

#### 确保 Debian 已更新至最新版本

在开始工作或进行任何配置之前，确保 Debian 12 已更新至最新版本非常重要。从终端中按以下顺序运行以下命令以刷新 Debian 系统。

```
sudo apt update
sudo apt upgrade

```

#### Debian 12 中的非自由软件

Debian 12 中有一个关于管理“非自由”固件包的根本变化。Debian 创建了一个新的软件源，以便轻松访问那些专有包。因此，如果你想添加非自由软件包，需要确保在 APT 软件源文件 `/etc/apt/sources.list` 中添加以下行：

```
sudo nano /etc/apt/sources.list

```

```
deb http://deb.debian.org/debian bookworm non-free non-free-firmware
deb-src http://deb.debian.org/debian bookworm non-free non-free-firmware

deb http://deb.debian.org/debian-security bookworm-security non-free non-free-firmware
deb-src http://deb.debian.org/debian-security bookworm-security non-free non-free-firmware

deb http://deb.debian.org/debian bookworm-updates non-free non-free-firmware
deb-src http://deb.debian.org/debian bookworm-updates non-free non-free-firmware

```

保存并关闭文件。然后刷新 Debian 系统。完成后，你现在可以安装“非自由”软件包。

```
sudo apt update

```

#### 安装额外的桌面环境

Debian Linux 提供了所有主要的桌面环境包。如果你使用 Debian 的 Netinst ISO 文件（最小化 ISO 镜像）进行安装，那么你可能已经获得了默认的 Xfce 桌面环境。在 Debian 12 安装期间，你可以选择桌面环境。

如果你想安装任何额外的桌面环境，则可以使用各种软件包管理器进行安装。或者，获取专用的 ISO 文件。从 Debian 12 开始，团队为每个桌面提供单独的 ISO 文件。你可以在以下链接中获取它们。

* [amd64 – 种子](https://cdimage.debian.org/debian-cd/current-live/amd64/bt-hybrid/)（GNOME、KDE Plasma、Xfce、LXQt、LXDE、MATE 和 Cinnamon）
* [直接下载 ISO 文件](https://cdimage.debian.org/debian-cd/current-live/amd64/iso-hybrid/)（GNOME、KDE Plasma、Xfce、LXQt、LXDE、MATE 和 Cinnamon）

#### 设置 Flatpak 和 Flathub

你应该在 Debian 中 [设置 Flatpak](https://www.debugpoint.com/how-to-install-flatpak-apps-ubuntu-linux/)，以便从 Flathub 获取数百款最新的应用程序。要设置它，可以从终端中运行以下命令。

```
sudo apt install flatpak

```

如果你想通过浏览器安装 Flatpak 应用程序，则以下软件包是可选的。

```
sudo apt install gnome-software-plugin-flatpak

```

添加 Flathub 软件源库，其中包含所有 Flatpak 应用程序。从终端中运行以下命令。

```
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo

```

重新启动 Debian 系统就可以使用 Flatpak 应用程序了。

#### 安装最新的 Firefox

Debian Linux 附带的是 Firefox ESR 版本，这个版本的功能略旧。不过它非常稳定和安全。如果你想 [安装最新版本的 Firefox](https://www.debugpoint.com/download-firefox/)，可以从以下官方网站下载预编译的二进制文件，并执行 `firefox`。

>
> **[下载 Firefox](https://www.mozilla.org/en-US/firefox/new/)**
>
>
>

#### 安装额外的软件 – 图形界面

默认的 Debian 安装只有非常简洁的图形界面应用程序。为了配置你的工作站，你可以考虑安装以下一组应用程序。但是，以下列表非常基本，对于基本用例应该是足够的。

它们包括分区软件、BT 客户端、媒体播放器和图形实用工具。

```
sudo apt install gparted transmission-gtk vlc pavucontrol geany gimp inkscape audacity filezilla leafpad

```

#### 安装额外的软件 – 命令行界面

虽然上述图形界面应用程序是必要的，但是你应该始终安装一些超级重要的命令行实用工具。以下是我为你准备的列表。

```
sudo apt install ffmpeg default-jdk git wget nano vim htop locate p7zip p7zip-full unzip

```

#### Debian 12 中的替代包

如果你正在运行 Debian 服务器或桌面系统，你应该注意本版本中一些关键软件包已被替换。以下是其中的一些：

* 默认系统时钟现在由 `systemd-timesyncd` 管理，`ntp` 已被 `ntpsec` 替换。
* DNS 选项 `dnssec-enable` 已经过时。如果遇到无效选项错误，请在 `named.conf` 文件中注释该行（应该在 `/etc` 或 `/etc/bind9` 中）。
* 不会自动安装 `systemd-resolved` 包。你需要手动安装和启动它。
* `rsyslog` 包不会默认安装，因为 `journalctl` 接管了该功能。

#### 配置 Debian 多媒体仓库

由社区创建的流行 Debian 多媒体仓库已更新为 Bookworm 版本。你可以在 APT 软件源文件中添加以下行，并利用数百个多媒体软件包来完成你的项目。

```
deb https://www.deb-multimedia.org bookworm main non-free

```

你可以访问 [官方页面](https://deb-multimedia.org/) 以了解有关该软件源库的更多信息。

### 总结

以上是你可以利用的各种提示列表。它们只是指南，可能不适用于你的情况，但它们可以成为你开始 Debian 12 后安装旅程的起点。

在评论框中让我知道你最喜欢的 Debian 后安装提示是什么。

---

via: <https://www.debugpoint.com/things-to-do-debian-12/>

作者：[Arindam](https://www.debugpoint.com/author/admin1/) 选题：[lkxed](https://github.com/lkxed/) 译者：ChatGPT 校对：[wxy](https://github.com/wxy)

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


硬核观察 #1032 伊朗把 FPGA 开发板“变成了”量子设备

Summary:
? 伊朗把 FPGA 开发板“变成了”量子设备
? 人工智能对人工智能生成的内容进行训练将导致人工智能崩溃
? Meta 开源了音乐和图像模型
»
»

# 硬核观察 #1032 伊朗把 FPGA 开发板“变成了”量子设备

### 伊朗把 FPGA 开发板“变成了”量子设备

上周伊朗军方展示了其海军大学开发的“量子处理算法”的首款产品，它能帮助军方探测水面的扰动。但通过媒体公布的“量子”设备图像的分析显示，该设备可能是一款在亚马逊上出售的 FPGA 开发板 ZedBoard，在图像上甚至可以清晰地看到该品牌名。ZedBoard 开发板主要是用于视频处理、可重构计算、电机控制、软件加速等用途，并不具有“量子比特”。

>
> **[消息来源：VICE](https://www.vice.com/en/article/7kxx4g/iran-unveils-quantum-device-that-anyone-can-buy-for-dollar589-on-amazon)**
>
>
>

>
> 老王点评：有没有一种可能，他们就是在这样的板卡上安装了几个“量子比特”？?
>
>
>

### 人工智能对人工智能生成的内容进行训练将导致人工智能崩溃

用于训练大型语言模型的数据最初来自人类来源，如书籍、文章、照片等，这些都是在没有人工智能的帮助下创建的。但随着越来越多的人使用人工智能来制作和发布内容，一个明显的问题出现了：当人工智能生成的内容在互联网上扩散时，人工智能模型开始对其进行训练。研究人员发现，“在训练中使用模型生成的内容会导致所产生的模型出现不可逆转的缺陷。”他们研究了文本到文本和图像到图像的人工智能生成模型的概率分布，得出结论：“从其他模型产生的数据中学习会导致模型崩溃 —— 这是一个退化的过程，并且随着时间的推移，模型会忘记真正的基础数据分布。”他们观察到模型崩溃发生得如此之快：模型可以迅速忘记它们最初学习的大部分原始数据。这导致它们随着时间的推移，表现越来越差，错误越来越多。

>
> **[消息来源：Venture Beat](https://venturebeat.com/ai/the-ai-feedback-loop-researchers-warn-of-model-collapse-as-ai-trains-on-ai-generated-content/)**
>
>
>

>
> 老王点评：这让我想起了衔尾蛇，一种自己吞噬自己尾巴的蛇。这样下来人工智能失去对世界的真正认知，我们的未来或许再也分不清现实和人工智能虚构的“现实”。
>
>
>

### Meta 开源了音乐和图像模型

Meta 公司开源发布了自己的人工智能音乐生成器 MusicGen。它可以将文字描述（例如 “一首 80 年代的流行歌曲，背景音效是重鼓声和合成器垫音效”）变成大约 12 秒的音频。该公司没有提供用于训练模型的代码，但它提供了预训练的模型，任何拥有合适硬件的人，如 16GB 的 GPU 都可以运行。

Meta 也发布了一个 “类似人类” 的人工智能图像创作模型 I-JEPA，训练代码和模型快照发布在 GitHub 上。Meta 称，该模型利用相关世界的背景知识来填补图像的缺失部分，而不是像其他生成性人工智能模型那样只看附近的像素。它使用了类似人类的推理，可以避免人工智能生成的图像中常见的错误，如多了手指的手。

>
> **[消息来源：Tech Crunch](https://techcrunch.com/2023/06/12/meta-open-sources-an-ai-powered-music-generator/)**
>
>
>

>
> **[消息来源：路透社](https://www.reuters.com/technology/meta-releases-human-like-ai-image-creation-model-2023-06-13/)**
>
>
>

>
> 老王点评：Meta 在人工智能方面的战略就是走开源的道路，让别人无路可走。
>
>
>


Rust 基础系列 #7: 在 Rust 中使用循环

Summary: 另一种方法是使用循环。因此，让我们在本文中看看循环。

另一种方法是使用循环。因此，让我们在本文中看看循环。

# Rust 基础系列 #7: 在 Rust 中使用循环

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

在 Rust 系列的 [上一篇文章](/article-15896-1.html) 中，我介绍了如何使用 `if` 和 `else` 关键字来处理 Rust 程序的控制流。

这是处理程序控制流的一种方法。另一种方法是使用循环。因此，让我们在本文中看看循环。

### Rust 中可用的循环

Rust 编程语言有三种不同的循环，基于你想要实现什么以及可用的内容：

* `for`
* `while`
* `loop`

我假设你对 `for` 和 `while` 已经很熟悉了，但 `loop` 对你来说可能是个新概念。让我们先从熟悉的概念开始。

### for 循环

`for` 循环主要用于迭代一种称为迭代器的东西。

这个迭代器可以从任何东西中创建，从数组、向量（很快就会介绍！）、一系列值，或者任何自定义的东西。这里的可能性是无限的。

来看看 `for` 循环的语法。

```
for 迭代变量 in 迭代器 {
    <语句>;
}

```

其中的 `迭代变量` 在大多数其他编程语言教程中通常被称为 `i` ; )

`迭代器` 可以是任何东西，只要它能告诉下一个值是什么，如果有的话。

来通过一个程序来理解这个。

```
fn main() {
    let my_arr = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];

    println!("迭代数组");
    for element in my_arr {
        println!("{}", element);
    }

    println!("\n迭代一个真正的迭代器");
    for element in my_arr.iter() {
        println!("{}", element);
    }

    println!("\nPython 风格的范围");
    for element in 0..10 {
        println!("{}", element);
    }
}

```

这里，我声明了一个数组，它包含从 0 到 9 的 10 个数字。在第 5 行的 `for` 循环中，我只是将这个数组指定为迭代器，Rust 会自动处理对这个数组的所有元素的迭代。不需要花哨的 `my_arr[i]` 魔法。

但是，在第 10 行，我调用了 `.iter()` 函数。这是一个明确的提及，它基于 `my_arr` 的值来获取一个迭代器。这个循环和第 5 行的循环之间唯一的区别是，这里你是通过在数组上调用 `.iter()` 函数来明确地调用它的。

*在这个上下文环境中*，在一个数据类型上调用 `.iter()` 函数不是必须的。因为这是一个数组，是语言本身提供的一种数据类型，Rust 已经知道如何处理它了。但是你 *需要* 在自定义数据类型中使用它。

最后，在第 15 行，我们有一个循环，它循环遍历一个范围。嗯，差不多是这样。如果你仔细看，这个范围看起来很像切片 “类型”。Rust 也知道这一点，并且 *为* 你处理了迭代（哈哈，明白了吗？）。

>
> LCTT 译注：此处的梗是，“为你处理了迭代” 的英文原文是 “handles iteration *for* you"，其中的 “for” 与 “for 循环” 的 “for” 是同一个单词。
>
>
>

输出如下：

```
迭代数组
0
1
2
3
4
5
6
7
8
9

迭代一个真正的迭代器
0
1
2
3
4
5
6
7
8
9

Python 风格的范围
0
1
2
3
4
5
6
7
8
9

```

### while 循环

`while` 循环可以被认为是非常类似于 `if` 条件语句。使用 `if` 语句，只要用户提供的条件为 `true`，`if` 语句体中的代码就会被执行 *一次*。

但是，在 `while` 循环中，如果条件评估为 `true`，循环就会开始循环循环体。只要条件继续评估为 `true`，循环就会继续迭代。

`while` 循环只有在循环完成当前迭代中所有语句的执行并且在检查条件时，它的结果为 `false` 时才会停止。

来看看 `while` 循环的语法...

```
while 条件 {
    <语句>;
}

```

看到了吗？和 `if` 条件语句非常相似！不过没有 `else` 块 ; )

来看一个程序来更好地理解这个。

```
fn main() {
    let mut var = 0;

    while var < 3 {
        println!("{var}");
        var += 1;
    }
}

```

我有一个可变变量 `var`，它的初始值为 0。只要可变变量 `var` 中存储的值小于 3，`while` 循环就会执行。

在循环中，`var` 的值被打印出来，然后它的值被增加 1。

这是上面代码的输出：

```
0
1
2

```

### loop 循环

Rust 有一个无限循环。是的，一个没有开始条件和停止条件的循环。它只是一直循环，直到永远。当然，它有触发器来停止代码本身的循环执行。

无限循环的语法如下：

```
loop {
    <语句>;
}

```

>
> ? 这些循环主要用于 GUI 软件，退出是一个 *显式* 操作。
>
>
>

在我给你一个例子之前，因为这个循环非常特殊，让我们先看看如何 *退出* 它 :p

要停止无限循环的执行，需要在循环内使用 `break` 关键字。

来看一个例子，只有 0 到 3 之间的整数（包括 0 和 3）才会被打印到程序输出。

```
fn main() {
    let mut var = 0;

    loop {
        if var > 3 {
            break;
        }

        println!("{}", var);
        var += 1;
    }
}

```

看待这个特定的例子的最好方法是将它看作是一个增加了一堆没有必要的东西的 `while` 循环 ; )

你有一个可变变量 `var`，它的初始值为 0，它被用作迭代器。无限循环从一个 `if` 条件开始，如果 `var` 的值大于 3，`break` 关键字就会被执行。后来，就像 `while` 循环的前一个例子一样，`var` 的值被打印到标准输出，然后它的值被增加 1。

它的输出如下：

```
0
1
2
3

```

### 标记循环

假设有两个无限循环，一个嵌套在另一个中。由于某种原因，退出条件在最内层循环中被检查，但这个退出条件是为了退出最外层循环。

在这种情况下，标记循环可能是有益的。

>
> ? `break` 和 `continue` 关键字并不仅仅用于无限循环。它们可以用于 Rust 语言提供的所有三种循环。
>
>
>

接下来是如何标记循环。

```
'标记: loop {}

```

要告诉编译器一个循环被标记了，从一个单引号字符开始，输入它的标签，然后跟着一个冒号。然后，继续使用你通常定义循环的方式。

当你需要退出某个循环时，只需像这样指定循环标签：

```
break '标记;

```

来看一个例子来更好地理解这个。

```
fn main() {
    let mut a = 0;
    let mut b = 0;

    'parent: loop {
        a += 1;

        loop {
            println!("a: {}, b: {}", a, b);
            b += 1;

            if a + b == 10 {
                println!("\n{} + {} = 10", a, b);
                break 'parent;
            }
        }
    }
}

```

这里，我使用两个可变变量 `a` 和 `b`，它们的初始值都设置为 0。

然后，最外层的循环被标记为 `parent`。`parent` 循环将变量 `a` 的值增加 1，并有一个内部/子循环。

这个（在第 8 行的）子循环打印变量 `a` 和 `b` 的值。在这个循环内部，变量 `b` 的值增加了 1。退出条件是 `a + b == 10`。这意味着只要变量 `a` 和 `b` 中存储的值相加，结果为 10，`parent` 循环就会被打破。即使第 14 行的 `break` 条件“属于”内部循环，它也会打破 `parent` 循环。

来看看程序的输出。

```
a: 1, b: 0
a: 1, b: 1
a: 1, b: 2
a: 1, b: 3
a: 1, b: 4
a: 1, b: 5
a: 1, b: 6
a: 1, b: 7
a: 1, b: 8

1 + 9 = 10

```

就像从程序输出中可以看出的那样，循环在 `a` 和 `b` 分别具有值 1 和 9 时停止。

### continue 关键字

如果你已经在其他编程语言（如 C/C++/Java/Python）中使用过循环，你可能已经知道 `continue` 关键字的用法。

当 `break` 关键字用于完全停止循环执行时，`continue` 关键字用于“跳过”循环执行的 **当前迭代** 并从下一迭代开始（如果条件允许）。

来看一个例子来理解 `continue` 关键字的工作原理。

```
fn main() {
    for i in 0..10 {
        if i % 2 == 0 {
            continue;
        }
        println!("{}", i)
    }
}

```

在上面的代码中，我有一个 `for` 循环，它迭代了 0 到 9 之间的整数（包括 0 和 9）。一旦循环开始，我就设置了一个条件检查，看看这个数字是不是偶数。如果这个数字是偶数，`continue` 关键字就会被执行。

但是如果这个数字是奇数，这个数字就会被打印到程序输出。

来看看这个程序的输出。

```
1
3
5
7
9

```

正如你所看到的，循环似乎一直在“进行”，尽管 0 到 9 之间显然有偶数。但是因为我使用了 `continue` 关键字，当遇到这个关键字时，循环执行就会停止。

这个循环跳过了它下面的任何东西，并继续下一次迭代。这就是为什么偶数没有被打印出来，但是 0 到 9 之间的所有奇数都被打印到了程序输出中。

### 总结

要总结这篇长文，我演示了 3 种不同循环的用法：`for`、`while` 和 `loop`。我还讨论了两个关键字，它们影响这些循环的控制流：`break` 和 `continue`。

我希望你现在能理解每个循环的适当用例。如果你有任何问题，请告诉我。

*（题图：MJ/25579e09-ae1c-47d3-8266-3bd9a54456c0）*

---

via: <https://itsfoss.com/rust-loops/>

作者：[Pratham Patel](https://itsfoss.com/author/pratham/) 选题：[lkxed](https://github.com/lkxed/) 译者：[Cubik65536](https://github.com/Cubik65536) 校对：[wxy](https://github.com/wxy)

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


开源的养家之道

Summary: 与你最亲近的人建立一种开放的文化，并带着它走遍天下。

与你最亲近的人建立一种开放的文化，并带着它走遍天下。

# 开源的养家之道

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

>
> 与你最亲近的人建立一种开放的文化，并带着它走遍天下。
>
>
>

作为 80 年代的叛逆少年，“因为我这么说”是我在家里经常听到的一句话。我并不是一个真正的叛逆者。我只是想让别人听到我的声音，把我看成是一个开始表达自己想法和情感的人。

我那种不被倾听/聆听的感觉让我相信，培养不害怕说话的孩子很重要，但他们也能学会适应。倾听他们的意见，与孩子们合作，也可以帮助他们发挥创造力，最终让他们成为成功组织的一部分。

### 孩子们如何解释信息

我并没有刻意鼓励孩子们的开放行为，也没有主动告诉孩子们要大声说话。尽管如此，在我大儿子上幼儿园的第一天，他的老师给我们打电话。她告诉我们，当她和全班同学一起讨论不打架、不推搡等规则时，我的孩子举手告诉她，他的父母允许他一直争论和辩论。

这是真的。我让我的孩子们表达自己的意见，并让他们听到。但我孩子的话让我感到惊讶。直到那时我才意识到，虽然我一直在做正确的事情，但事实上，我的孩子们的行为不应该只是对我们教育他们的方式的反应。我们也不应该让他们从二手语境中挑选东西。那一天对我来说是一个游戏规则的改变，践行开放的文化正式主动地进入我们的家庭。

### 为成长而开放

在我小的时候，父母和长辈是有知识的人。

作为一个孩子，要获得信息并不容易。虽然我被鼓励表达意见，但也只是到了一个规范的、“容易消化”的程度。今天，父母、老师和孩子都有同样的手段来获取数据。你如何处理它，完全取决于你。

例如，在用希伯来语玩 Scattergories 时，“病毒”一词通常是大多数人玩的唯一以 “V” 开头的生物。为了获得更多的分数，我们决定寻找其他符合条件的动物名称。不一会儿，我们就找到了不是一种而是三种新的生物（我孩子的老师认为“小袋鼠”（希伯来语中以 “V” 拼写）不是一种真实的东西，但这是另一个故事）。

我教我的孩子阅读字里行间的内容，决不要不加质疑地接受作为“事实”呈现给他们的东西。这使他们能够练习批判性思维。这也使他们能够质疑我，从而使我们进行公开和透明的讨论。

这些讨论容易吗？不是。我总是有精力进行这些讨论吗？绝对不是。

然而，为了帮助他们练习学会倾听的“肌肉”，这些对话是必须的。

偶尔，我们必须强迫自己找到时间，把注意力集中在家庭上。建立一个强大而开放的文化需要时间，随着人们的变化，你的家庭文化也在变化。你必须适应并努力保持它的活力。作为群体的领导者，我必须为我的孩子们提供一个安全的地方，一个他们可以公开分享自己想法的地方，一个他们有归属感的地方。

在一个家庭中，你们必须合作，共同解决问题。倾听不同的想法和解决问题的方法可以让你想出创造性的（但并不总是符合每个人的喜好）解决方案。

我家里的一个问题是玩电脑游戏时家里的噪音。这种情况大多发生在深夜和周末。我们一起坐下来，想出了一个商定的嘈杂游戏的时间段。从那时起，那些想玩的人知道他们什么时候可以玩，而那些寻求一些安静时间的人也知道这些时间会发生什么。随着孩子们的长大，决定和讨论的性质也发生了变化。

这是否意味着所有的决定都与孩子们分享？不。这是否意味着都是玫瑰花？绝对不是。

鼓励孩子们建立联系可能会以一个破花瓶告终，似乎没有人对此负责。这可能会导致“因为我这么说”来拜访。然而，进行具有挑战性但又具有包容性的对话、鼓励创新思维以及让孩子参与决策都是让他们为成年做好准备的方法。希望它也能让他们成为更好的人（到目前为止，以我的拙见，这运作良好）。

### 开放的家庭文化

实行开放的文化不是一次性的事情。它是一个旅程，也是一种心态。我相信它为我和我的孩子们提供了工具，使他们在屋内和屋外都能坚韧不拔、思想开放、宽容和充满好奇心。与你最亲近的人建立一种开放的文化，并带着它走遍天下。

*（题图：MJ/76568fbf-4e8a-4a9e-9ff1-d6a7e0922622）*

---

via: <https://opensource.com/article/23/3/open-source-family>

作者：[Ruth Netser](https://opensource.com/users/rnetser1) 选题：[lkxed](https://github.com/lkxed/) 译者：[geekpi](https://github.com/geekpi) 校对：[wxy](https://github.com/wxy)

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


硬核观察 #1033 安卓开源项目将不是一个完整的开源移动操作系统

Summary:
? 安卓开源项目将不是一个完整的开源移动操作系统
? Debian 13 将支持 RISC-V 64
? 生成型人工智能每年可为全球经济增加 4.4 万亿美元
»
»

生成式AI炒作成分更多，没看到身边谁被替代，IT部门

# 硬核观察 #1033 安卓开源项目将不是一个完整的开源移动操作系统

### 安卓开源项目将不是一个完整的开源移动操作系统

安卓开源项目（AOSP）是安卓系统开源的部分，但谷歌不断地将其中一些部分抽取到其私有的谷歌服务框架。最近，谷歌又废弃了 AOSP 中的拨号和消息应用程序，谷歌称，“这个应用程序没有得到积极的支持，其源代码只作为参考。这个项目将在未来的某个时候从源代码清单中删除。”虽然每个安卓 OEM 厂商都已经使用了他们自己的拨号和消息应用，而且也有比谷歌更好的开源替代品，但对于安卓这个开源操作系统来说，由于 AOSP 的功能不断地被转移到闭源的谷歌服务框架中，你将不能说 AOSP 是一个完整的开源移动操作系统了。

>
> **[消息来源：OS News](https://www.osnews.com/story/136235/google-further-guts-the-android-open-source-project-by-deprecating-the-dialer-and-messaging-apps/)**
>
>
>

>
> 老王点评：从谷歌删除“不作恶”信条那时起，开源就不断被它践踏。当然，这并不是谷歌做的有多差，或者违背了开源许可证，在这方面比它差的比比皆是。叹息的是，终究很多公司只是将开源当成一件需要利用时披上的华丽衣服，而在金钱当道时就如旧衣一样丢弃。
>
>
>

### Debian 13 将支持 RISC-V 64

Debian 12 已经正式发布，官方支持 AMD64、AArch64、i386、POWER 等架构，但不支持 RISC-V 64 位。不过，对 RISC-V 64 位的移植正在取得良好的进展。在一年半到两年后的 Debian 13 版本中，预计会有对 RISC-V 64 位的支持。考虑到许多社区开源开发者缺乏高性能 RISC-V 硬件，这也是可以理解的。

>
> **[消息来源：Phoronix](https://www.phoronix.com/news/Debian-13-RISC-V-64-Potential)**
>
>
>

>
> 老王点评：如果 Debian 能够支持高性能 RISC-V 架构，将从根本上推动 RISC-V 的发展。
>
>
>

### 生成型人工智能每年可为全球经济增加 4.4 万亿美元

麦肯锡公司称，生成性人工智能每年可为全球经济增加 “2.6 万亿至 4.4 万亿美元”。这几乎是 “相当于在地球上增加一个规模相当于英国的新国家（其 2021 年 GDP 为 3.1 万亿美元）”。这一数据比该公司在 2017 年的预估上调了 15% 至 40%。生成性人工智能和其他技术有可能使工作自动化，但麦肯锡认为这并不意味着大规模的工作流失，而是“使这些工作的执行速度大大加快”。麦肯锡发现，主要受到影响的工作任务是客户运营、市场和销售、软件工程和研发等工作。

>
> **[消息来源：Venture Beat](https://venturebeat.com/ai/mckinsey-report-finds-generative-ai-could-add-up-to-4-4-trillion-a-year-to-the-global-economy/)**
>
>
>

>
> 老王点评：虽然如此说，但是一些人失业是不可避免的，就看谁能适应。可以预期的是，人工智能鸿沟会进一步拉大社会差距。
>
>
>

### 回音

* AMD 上个月 [披露](/article-15797-1.html) 将用开源固件 openSIL 取代其 AGESA 固件。这件事的新进展是，AMD 刚刚 [发布](https://www.phoronix.com/news/AMD-openSIL-Published) 了 openSIL 非常早期的概念验证代码。


10 个最佳 Linux 虚拟化软件

Summary: 我们将介绍一些最佳的虚拟化程序，为用户创建/管理虚拟机提供便利。

我们将介绍一些最佳的虚拟化程序，为用户创建/管理虚拟机提供便利。

# 10 个最佳 Linux 虚拟化软件

>
> 我们将介绍一些最佳的虚拟化程序，为用户创建/管理虚拟机提供便利。
>
>
>

虚拟化软件由于其用途和好处而广泛使用，你可以使用它来体验、测试或运行需要特定操作系统版本的软件。

虚拟化提供了一个抽象的计算机硬件概念，帮助你创建虚拟机（VM）、网络、存储等。其好处包括隔离性、安全性和自由度高，可以尽情测试各种事物。

不同类型的虚拟化软件分别适用于桌面用户、服务器管理员和企业用户。

在列出各种虚拟化软件的同时，我还会提到适用对象。

### 1、VirtualBox

[VirtualBox](https://www.virtualbox.org:443/) 是一款备受赞誉的开源虚拟机程序，适用于 Linux、Windows 和 macOS。

它适用于各种类型的用户，无论你只是想在虚拟机上运行 Linux，还是想创建一个用于测试的虚拟机，或者是企业需要一个虚拟机解决方案。

对大多数用户来说，它可以被视为一个全能解决方案。虽然它主要适用于桌面使用，但你可以尝试其<ruby> 无头 <rt>  headless </rt></ruby>模式，通过查阅其 [文档](https://www.virtualbox.org:443/manual/ch07.html)，将虚拟机作为远程桌面服务器运行。

主要亮点：

* 支持广泛的客户操作系统
* 简单的用户界面和快速的性能
* 定期更新
* 功能丰富

### 2、OpenVZ

想在服务器上创建隔离的 Linux 容器吗？[OpenVZ](https://openvz.org:443/) 可以帮助你。

你可以创建行为类似于独立服务器的容器。这些容器具备帮助你高效管理的所有基本功能。

由于 OpenVZ 是作为 Linux 发行版构建和分发的，因此容器仅运行于 Linux 上。

对于初学者来说，OpenVZ 是学习使用容器的绝佳选择，因为它易于配置和管理。此外，与其他一些方案相比，基于 OpenVZ 的 VPS 托管价格实惠。

主要亮点：

* 资源利用效率高
* 使用和管理简单

### 3、KVM

<ruby> 基于内核的虚拟机 <rt>  Kernel-based Virtual Machine </rt></ruby>（[KVM](https://www.linux-kvm.org:443/page/Main_Page)）集成在 Linux 中，这是它最大的优势。你可以直接在 Linux 上使用 KVM 运行虚拟机。它是一种<ruby> 第一类 <rt>  type-1 </rt></ruby> <ruby> 虚拟化管理程序 <rt>  Hypervisor </rt></ruby>，也就是硬件级别的虚拟化。

KVM 可以将 Linux 主机转换为运行虚拟机的虚拟化管理程序，以实现与物理机相似的性能。

与 OpenVZ 不同，KVM 高度可定制，且已内置于 Linux 系统中，无需单独安装。考虑到 KVM 借助虚拟化管理程序实现硬件级别的虚拟化，它相对需要更多的内存和其他系统资源。

你可以使用 KVM 创建不同操作系统的虚拟机。要配置它，你可以参考 [Ubuntu 的官方博客文章](https://ubuntu.com:443/blog/kvm-hyphervisor) 关于 KVM 安装的内容。

主要亮点：

* 高度可定制且设置复杂
* 与 Linux 系统集成

>
> ? <ruby>   虚拟化管理程序  <rt>  Hypervisor </rt></ruby> 是一种创建和运行虚拟机（VM）的软件。
>
>
>

### 4、GNOME Boxes

GNOME Boxes 是最简单的虚拟化程序，适用于希望尽快下载和测试发行版的用户。

与其他一些解决方案相比，GNOME Boxes 可能不具备各种各样复杂的功能，但它包含了必需的功能。用户体验简单，新手也能轻松上手。

主要亮点：

* 现代化的用户界面
* 简单易用

### 5、VMware Workstation（非自由及开源软件）

[VMware](https://www.vmware.com:443/products/workstation-player.html) 是一款非常受欢迎的 Linux、Windows 和 macOS 虚拟机程序。

尽管它是一个专有解决方案，但它是个人用户和企业用户使用的行业领先选项之一。VMware 还提供了与云计算相关的几种其他产品。

因此，如果你需要一个桌面虚拟化程序，VMware Workstation Player 可以是一个很好的选择。对于其他用户，还有许多其他用于服务器和云服务提供商的版本。

主要亮点：

* 个人和企业服务器版本
* 易于使用
* 高级版带有更多功能

### 6、Xen

[Xen](https://xenproject.org:443/) 是最古老的虚拟化软件之一，亚马逊和红帽使用它。尽管大多数人已经转向使用 KVM，但 Xen 仍然是云基础设施的一个选项。

是的，Xen 更适合用于服务器而不是桌面虚拟化。它支持 Linux、Windows 和 FreeBSD。

主要亮点：

* 面向服务器基础设施
* 支持半虚拟化（大多数其他软件不支持）

### 7、oVirt

[oVirt](https://www.ovirt.org:443/) 是一个优秀的开源解决方案，适用于寻找管理服务器架构的社区和企业。它是一个利用 KVM 的管理工具。

你可以使用丰富的基于 Web 的用户界面来管理其中的一切，包括主机、存储和网络配置。它还支持虚拟机的实时迁移，以提供便利。

然而 oVirt 不支持 Windows 平台，它专为与 RHEL 和 CentOS Linux 配合使用而设计。

主要亮点：

* 针对企业市场
* 使用 KVM 虚拟化管理程序
* 分布式虚拟化解决方案
* 不适合初学者使用

### 8、Proxmox

[Proxmox](https://itsfoss.comproxmox.com/) 是另一个针对企业市场的开源虚拟化平台。

你需要订阅才能获得软件更新和技术支持。根据你的需求，你可以选择其中一个订阅方案。除了虚拟环境平台，他们还提供备份和电子邮件安全解决方案，以供你在企业基础设施中使用。

主要亮点：

* 安装设置简单
* 文档齐全

### 9、QEMU

[QEMU](https://www.qemu.org:443/) 是一个很棒的虚拟机程序（及模拟器），可在多个平台上运行。

它支持广泛的硬件架构和客户操作系统。你可以与 KVM 结合使用，以运行表现出色的虚拟机，因为 KVM 是硬件级别的虚拟化工具，而 QEMU 是软件级别的虚拟化程序。

从技术上讲，QEMU 是一种<ruby> 第二类 <rt>  type-2 </rt></ruby>虚拟化软件。

如果你想要一个以 QEMU 为核心，并且方便初学者创建虚拟机的工具，你可以尝试 [Quickgui](https://itsfoss.com/quickgui/)。

主要亮点：

* 支持广泛的操作系统
* 在不依赖硬件的情况下提供灵活性

### 10、Hyper-V

[Hyper-V](https://learn.microsoft.com:443/en-us/windows-server/virtualization/hyper-v/hyper-v-technology-overview) 是一种与微软 Windows 操作系统捆绑在一起的虚拟化管理程序。

尽管它不适用于 Linux，但它支持将 Linux 作为客户操作系统运行。你可以在 Windows 上使用 Hyper-V 运行 Kali Linux 和 Ubuntu 等发行版。

Hyper-V 在 Windows 桌面版和服务器版上有一些功能差异。因此，根据你的用例，你可能需要查阅其 [官方文档](https://learn.microsoft.com:443/en-us/virtualization/hyper-v-on-windows/about/)。

主要亮点：

* 可用于 Windows 的第一类虚拟化软件
* 性能卓越
* 支持 Windows 和 Linux 操作系统
* 适用于桌面和服务器用户

### 这些工具让虚拟化变得简单

虚拟化是一种在十年前开始兴起的概念。现在几乎所有熟悉计算机的人都知道它。

用于实现虚拟化的程序易于使用，并提供了简化专业用户和家庭用户工作的功能。对于大多数用户来说，VirtualBox、GNOME Boxes 和 VMware 等解决方案应该是首选。

如果你是一个企业用户或技术爱好者，你可以根据你的需求寻找其他选项。

? 你在 Linux 上运行虚拟化软件时最喜欢使用哪个？你更喜欢使用虚拟机管理程序还是 Linux 或其他主机操作系统？在下方的评论中分享你的想法。

*（题图：MJ/c89ae6b4-c923-4219-b7cd-96ee7e37c84b）*

---

via: <https://itsfoss.com/virtualization-software-linux/>

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

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