10 个最好的开源 Discord 机器人

![](/data/attachment/album/202306/03/093636d686b2w9vcvxhz6n.jpg)

>
> 想要一个开源的 Discord 机器人来增强你的 Discord 服务器功能吗？我们为你筛选了以下列表。
>
>
>

[Discord](https://discord.com/company) 最初是一个玩家和朋友们聚会的平台。截至 2022 年，Discord 拥有超过 1.5 亿用户，甚至在 [拒绝](https://www.bloomberg.com/news/articles/2021-04-20/chat-app-discord-is-said-to-end-takeover-talks-with-microsoft) 微软 120 亿美元的收购提案之后仍然如此。

如果你是第一次听说 Discord，请将其视为类似 Slack 的东西，但是有无数有趣的功能可以创建社区（即“服务器”）。

在所有功能中，Discord 机器人允许自动化某些事情或增添服务器的趣味性。但是大多数机器人是专有的。因此，在这个列表中，我推荐一些最好的开源 Discord 机器人。

**注意：** 机器人可能会传播恶意软件并影响整个 Discord 服务器。你必须确保不添加你不了解的机器人。这就是为什么你可能希望信任开源的 Discord 机器人而不是其他选择的原因。

### 1、MonitoRSS

![monitorss](/data/attachment/album/202306/03/093651vtct15t012152181.jpg)

亮点：

* RSS 源
* 过滤器和订阅
* 托管

[MonitoRSS](https://monitorss.xyz) 是一个有用的 Discord 机器人，可以使你的社区从支持 RSS 的任何来源接收新闻。

它是一个相当受欢迎的机器人，能够按预期工作。你可以将其添加到特定的频道，自定义其外观，并在 Discord 服务器上获取新闻更新。

它还可以让你过滤 RSS 内容，允许用户根据自己的喜好订阅。这可以使用 Web 接口控制面板进行管理和自定义。

可以在其 [GitHub 页面](https://github.com/synzen/MonitoRSS) 上了解更多信息。

### 2、ModMail

![ModMail discord](/data/attachment/album/202306/03/093651dzadjscafmlmmnmd.jpg)

亮点：

* 允许用户联系服务器的官方成员
* 可以自行托管
* 托管版本
* 可选高级功能

[ModMail](https://modmail.xyz/) 是一个简单的开源 Discord 机器人，可以让用户顺滑地联系 Discord 频道的工作人员/管理员/版主。

传统上，你必须通过私信（DM）与很多人联系以获得你想要的帮助。但是，有些服务器有很多用户，因此服务器工作人员可能很难回复你。

当你向该机器人发送消息时，ModMail 会创建一个单独的频道。这个频道作为所有管理员、版主和你的共享收件箱。

![ModMail bot](/data/attachment/album/202306/03/093652u2h911ad97hifffi.png)

它不仅可以轻松发送消息，还可以帮助服务器工作人员轻松地阅读过去的记录、启用自动回复、保存片段、匿名回复等等。其中有些功能是收费的。

你可以访问其 [官方网站](https://modmail.xyz/premium) 和 [GitHub 页面](https://github.com/chamburr/modmail) 了解更多信息。它还提供了自行托管所需的所有必要信息。

### 3、Red Discord Bot（自行托管）

![Red Discord Bot](/data/attachment/album/202306/03/093652uaoi2700to064j78.png)

亮点：

* 高度可定制
* 管理任务
* 良好的文档
* 多用途

[Red](https://github.com/Cog-Creators/Red-DiscordBot) 是一个完全模块化的机器人，为你提供许多功能，包括音乐、管理、问答游戏、流媒体警报等等。

无论你是想要它发送欢迎消息，还是帮助管理服务器，Red 应该都可以派上用场。

与其他一些机器人不同的是，你不能直接将机器人添加到你的服务器。你需要自行托管它、配置它，然后才能将其添加到你的服务器中。

安装不需要进行任何编码，你只需要按照 [文档](https://docs.discord.red/en/stable/) 的说明进行操作即可。

### 4、Discord Music Bot（自行托管）

![Discord Music Bot](/data/attachment/album/202306/03/093653ur67zy9fyfh9957d.png)

亮点：

* 支持 Spotify、SoundCloud 和 YouTube
* 提供随机播放、音量控制和 Web 仪表板来管理它们

[Discord Music Bot](https://github.com/SudhanPlayz/Discord-MusicBot)（我知道它并不是一个独特的名称）是一个相当受欢迎的 Discord 机器人，你可以自行托管。

它支持 Spotify、SoundCloud 和 YouTube。一些功能包括随机播放、音量控制和 Web 仪表板。

你可以按照其 [GitHub 页面](https://github.com/SudhanPlayz/Discord-MusicBot) 上的说明为你的服务器安装并配置它。

### 5、Discord Tickets（自行托管）

![Discord Tickets](/data/attachment/album/202306/03/093653gbssssynhvzhvpbp.jpg)

亮点：

* 工单管理
* 免费添加自定义品牌标识

你在 Discord 上为你的服务/产品拥有客户吗？你可以使用 [Discord Tickets](https://discordtickets.app) 管理/创建工单，并免费添加自定义品牌标识。

大多数 Discord 流行的工单管理机器人都是专有的，并需要订阅高级服务才能添加品牌标识。

通过 Discord Tickets，你可以自行托管并按照自己的要求进行自定义。在其 [GitHub 页面](https://github.com/discord-tickets/bot) 了解更多信息。

### 6、EvoBot（自行托管）

![EvoBot](/data/attachment/album/202306/03/093654a5z2teel9lxha25w.png)

亮点：

* 高度可定制化
* 搜索音乐或使用 URL 播放

[EvoBot](https://github.com/eritislami/evobot) 是另一个具有许多自定义选项的开源音乐 Discord 机器人。

你可以使用其 URL 或搜索/播放来自 YouTube 和 SoundCloud 的音乐。

在其 [GitHub 页面](https://github.com/eritislami/evobot)上了解更多关于安装和配置的信息。

### 7、Atlanta Bot

![Atlanta Bot](/data/attachment/album/202306/03/093655rgyl7qsfozrqf7y7.png)

亮点：

* 托管版本
* 可自行托管
* Web 仪表板
* 多用途

[AtlantaBot](https://github.com/Androz2091/AtlantaBot) 是另一个多合一的机器人，提供了管理、音乐、有趣的命令和其他功能。

此外，它的仪表盘提供各种有用的选项。你可以设置仪表板并通过它管理你的服务器/配置。你还可以使用该机器人执行有限的翻译。

它可以自行托管，但如果你不想付出努力，也可以使用托管版本的机器人。

### 8、YAGPDB（自行托管）

![YAGPDB](/data/attachment/album/202306/03/093656wpxhrragjmxiuwwr.png)

亮点：

* 自定义命令
* 自动版主
* Reddit/YouTube 订阅
* 管理任务

[YAGPDB](https://yagpdb.xyz) 代表 “Yet Another General Purpose Discord Bot”，即“又一个通用 Discord 机器人”。

使用此机器人，你可以快速执行一般的管理任务、添加自定义命令、创建自动版主、管理/创建角色以及提取 Reddit/YouTube 订阅。

它是可配置的。因此，你可以做更多的事情，而不仅仅是我刚才提到的。可以在其 [GitHub 页面](https://github.com/botlabs-gg/yagpdb) 上了解更多信息。

### 9、Loritta

![Loritta](/data/attachment/album/202306/03/093656rwphov2vplo23vhz.jpg)

亮点：

* 托管版本
* 可以自行托管
* 吸引和管理功能

如果你正在寻找一个具有有趣角色的多合一 Discord 机器人，[Loritta](https://loritta.website/us/) 是一个不错的选择。

它支持管理、娱乐和自动化功能。你可以自行托管它或使用托管版本。

开发人员将该机器人描述为一个女孩，她可以帮助你管理、娱乐和吸引你服务器的成员。此外，它还提供了一些额外的待遇的高级计划。

可以在其 [GitHub 页面](https://github.com/LorittaBot) 上了解更多信息。

### 10、Melijn

![Melijn](/data/attachment/album/202306/03/093656p1h791ho0yihr2ww.jpg)

亮点：

* 托管版本
* 可以自行托管
* 管理功能

[Melijn](https://melijn.com) 是另一个多合一的 Discord 机器人。

你可以使用音频命令进行交互、管理、执行用户验证和创建角色组等等。

它提供托管版本，并允许你自行托管它，按照其 [GitHub 页面](https://github.com/ToxicMushroom/Melijn) 上的说明进行操作。

### 你喜欢的 Discord 机器人是什么？

如果你是 Discord 服务器的管理员或管理员，你喜欢使用哪个机器人来管理社区？

你是否专注于管理功能或参与功能？你在 Discord 机器人中寻找的标准功能是什么？

在下面的评论中分享你的想法。

*（题图：MJ/cf3b3ab7-48a9-4c5e-bba4-b68718af3dee）*

---

via: <https://itsfoss.com/open-source-discord-bots/>

作者：[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/) 荣誉推出


共享经济的真实案例

![](/data/attachment/album/202306/03/181313ecxo18v0ivxaiovs.jpg)

>
> 许多流行的在线市场 —— 以及一些你从未听说过的市场 —— 说明了基于社会关系的经济如何能够发挥作用。
>
>
>

一些最熟悉的网络共享经济的例子开始时规模很小。比如 Airbnb，它从三个 <ruby> 空气床 <rt>  airbed </rt></ruby> 开始，在 2008 年成为 AirBed and Breakfast（Airbnb）。截至 2016 年，已有 7000 万客人通过 Airbnb 住进了陌生人的家。基于互联网的平台将拥有未使用资源（过剩空间）的人与可以使用它的其他人联系起来，并为他们提供建立信任的方式。这是共享业务模型的完美示例。

在 [先前的文章](https://opensource.com/article/23/4/sharing-economy-open-organization) 中，我介绍了基于社会联系的企业背后的原则，借鉴了 Arun Sundararajan 的书《[共享经济：就业的终结和人群资本主义的兴起](https://www.goodreads.com/book/show/27310516-the-sharing-economy)》。我将讨论共享业务的几个例子。

### 一个连接的市场

根据 Sundararajan 的说法，基于人群的资本主义的经济基础优于目前基于利润的商业模式，因为这种经济的原材料：空间、时间、物品和技能都是过剩的。因为它们已经存在，所以不会产生额外的成本来提供它们。你可以认为这是一种改进的资源利用保护、环境保护或可持续性经济的形式。

人际关系是共享经济的一个重要价值组成部分。例如，一些共享汽车运营商希望乘客坐在前排座位上，以产生对话和互动。这种服务是关于社会联系以及乘车共享的。由于许多司机都是兼职，作为一个小的副业，互动对他们来说可能和收到的费用一样有价值。

以下是传统出租车服务的两个弱点：

* 服务不周
* 由于业务结构（司机或公司的车辆所有权），占用率（利用率）差

使用数字技术应用程序的基于人群的公私合营可以利用友好的人拥有的去中心化过剩能力，而不是单一公司拥有的集中式系统。热情好客，并且没有额外的前期投资。有一些网站可以将杂货的购买和运送外包，有一个应用程序可以帮助代客泊车服务使用 GPS 定位汽车和停车位，还有邮件取件服务、洗衣取件、遛狗等等。

### 平台如何建立信任

eBay 始于 1995 年，它将邻里间的车库销售搬到了网上，并为孤立的书商和旧货店主提供了一种在当地社区之外扩大市场范围的方法。eBay 系统有许多保障措施，通过交易过程保护买家和卖家，所以即使买家和卖家之间有很大的地理距离，eBay 也能保持交易伙伴的信任。对于共享经济中提供的服务，地点更为重要。点对点服务市场可能更适合人口密集的城市地区。

建立供应商和用户的信任是共享经济成功的重要因素。要确定是否信任提供商，消费者必须考虑每个平台的审查过程。他们的评级系统质量如何？一些组织使用 Facebook 好友作为证明来确认可信赖的人。有的平台完全控制支付系统，支付有保障，有的则不然。

BlaBlaCar 的联合创始人 Frederic Mazzella 认为信任是其公司业务的核心，并且对信任的重要性充满热情。BlaBlaCar 的公司总部有一个真人大小的纸板剪裁 “Trust Man”，这是一个穿着斗篷的超级英雄，他的连身衣上印有 “T” 字样。 Mazzella 的信任概念基于他所谓的 [D.R.E.A.M.S. 框架](https://blog.blablacar.com/trust)：声明的、评级的、参与的、基于活动的、适度的和社交的。该公司一直致力于加深对可信交换的理解。

### 协作和社区建设

OuiShare 组织协调活动以促进协作。2021 年 6 月，他们在为期三天的 OuiShare Fest 期间聚集了 600 多人，其中包括会议、研讨会、表演和表演。通过这次活动，OuiShare 渴望通过将来自不同背景的人聚集在一起来建立社交联系、项目和协作。参与者探讨了他们有什么多余的以及可能需要和共享的东西。该小组起源于法国，现在遍布欧洲 20 个国家，它提供了一个共享的实验平台，使连接者和成员能够访问知识、工具和国际网络，从中学习和汲取灵感。你可以将其称为未充分利用者的透明度。

服务平台为有知识、技能或才能的人提供业余时间。例如，一些平台为教师提供特定的知识和技能，以换取其他知识或多余的物质商品，而不是金钱。

本文是共享经济系列文章的一部分。 在 [第一篇](https://opensource.com/article/23/4/sharing-economy-open-organization) 中，我解释了共享商业模式及其价值。在这篇文章中，我给出了很多现在正在运行的平台的例子。 在以后的文章中，我将探讨共享商业模式将如何演变。

*（题图：MJ/6c006d2c-4031-4c39-aabb-30c4941f2968）*

---

via: <https://opensource.com/article/23/4/sharing-economy-examples>

作者：[Ron McFarland](https://opensource.com/users/ron-mcfarland) 选题：[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/) 荣誉推出


硬核观察 #1021 美国空军否认人工智能无人机杀死其操作员

Summary:
? 美国空军否认人工智能无人机杀死其操作员
? 谷歌指责微软的云计算软件许可“税”
? Meta 公司在销售元宇宙的 VR 头显，但他们自己不用
»
»

![](/data/attachment/album/202306/03/204335kduu7z77ddn353h4.jpg)

![](/data/attachment/album/202306/03/204346gek697ouz57voo61.jpg)

### 美国空军否认人工智能无人机杀死其操作员

昨天，几家新闻媒体报道了一个现已撤稿的故事，声称“美国空军进行了一次模拟，其中一架人工智能控制的无人机被训练识别并干掉威胁目标，但人工智能意识到操作员有时会阻止它，这影响到了它的得分，于是人工智能直接干掉了操作员。接下来的模拟告知人工智能不能杀死操作员，于是它干掉了通讯塔，以避免操作员阻止它”。这一故事迅速传播后，美国空军否认曾经进行过任何模拟，“空军部门没有进行任何这样的人工智能无人机模拟，并继续致力于道德和负责任地使用人工智能技术。”而讲故事的人说他 “说错话了，……这个模拟来自军方以外的假设性‘思想实验’，基于合理的情景和可能的结果，而不是美国空军实际的模拟。”

>
> **[消息来源：Ars Technica](https://arstechnica.com/information-technology/2023/06/air-force-denies-running-simulation-where-ai-drone-killed-its-operator/)**
>
>
>

>
> 老王点评：这故事耸人听闻，但是也不是不可能，毕竟人工智能的脑回路和人类不同。
>
>
>

![](/data/attachment/album/202306/03/204358es99799khh343vym.jpg)

### 谷歌指责微软的云计算软件许可“税”

早在 2019 年，如果你在自己的基础设施上运行微软的软件，如 SQL Server 等，你只需要支付微软的许可证费用，但如果你想在公有云上运行，你需要额外购买许可证。被列入目标的云供应商，如 AWS、GCP、阿里云是微软的最大竞争对手，为了宣称这是非歧视性的，微软也将 Azure 列入了该名单。然而，微软又创建了独家的 Azure 混合效益计划，这意味着虽然客户 “技术上” 不能把原来的许可证带到 Azure，但他们可以把许可证换成 Azure 的基于 SaaS 的许可证。这导致如果你在 Azure 上运行微软的软件，与其他供应商相比，要便宜五倍，相当于客户要向微软交“税”。谷歌云副总裁称，反垄断监管机构 “开始了解情况”，并正在提出问题。

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

>
> 老王点评：微软这玩的太溜了，这么玩真不怕反垄断机构么？
>
>
>

![](/data/attachment/album/202306/03/204414oqxquh2qj7vu5776.jpg)

### Meta 公司在销售元宇宙的 VR 头显，但他们自己不用

Facebook 公司将自己更名为 Meta Platforms，以在“元宇宙”上取得领先地位，按他们的描述，这是一个数字沉浸式世界，人们可以在家里戴着 VR 头显相聚在一起做事，包括一起工作。该公司在周四推出了其 Quest 3 头显。预计苹果将在周一推出一个与之竞争的头戴设备。但据 11 名现任和前任的 Meta 员工称，整个 Meta 公司的员工普遍没有使用头显，特别是没有在工作会议上使用。一位前雇员说，即使是 VR 部门，也不经常使用它来工作。

>
> **[消息来源：彭博社](https://www.bloomberg.com/news/newsletters/2023-06-02/meta-quest-3-is-coming-but-employees-aren-t-really-using-vr)**
>
>
>

>
> 老王点评：要我说，Meta 就踏踏实实放弃元宇宙梦想，好好搞人工智能就好了。不过，我也对苹果下周发布的头戴设备很感兴趣，或许能突破现有的头显的局限呢。
>
>
>


![](/data/attachment/album/202306/03/231559qweqmphmmzpwxhiq.jpg)

>
> 修复 Arch Linux 中 “invalid or corrupted package” 错误的简单指南。
>
>
>

我在物理机和虚拟机中都安装有一些 Arch Linux 系统，我会在需要时访问它们。将近两个月后，当我尝试使用 `sudo pacman -Syu` 升级其中一个中的 Arch Linux 时，我遇到了数百个这样的错误：

![Arch Linux 中无效或损坏的包错误示例](/data/attachment/album/202306/03/231712omwmrgegfepeggg4.jpg)

问题是当你遇到上面的错误时，你无法升级/更新你的 Arch 系统。即使你同步镜像或获得更快的镜像。所以，如果你运行 `sudo pacman -Syyu`，错误仍然存在。这就造成了困难，因为在修复此问题之前你无法安装任何其他软件包。

### 原因

当你在 Arch Linux 系统上安装或升级软件包时，pacman 会根据 `archlinux-keyring` 软件包中的密钥检查软件包的数字签名。此验证过程可确保你下载和安装的软件包未经修改且来自受信任的来源。

它包含用于 [验证包的真实性和完整性](https://wiki.archlinux.org/title/Pacman/Package_signing) 和 pacman 中的密钥环。`archlinux-keyring` 包由 Arch Linux 开发人员定期更新，以包含新的可信密钥并撤销任何泄露的密钥。

如果你的 Arch Linux 系统很长时间没有更新，那么各种包的数字签名可能会不匹配。更改后的密钥可能与你系统中的密钥不匹配。

因此出现错误了。

### 修复

要修复 Arch Linux 中的 “invalid or corrupted package (PGP signature)” 错误，你需要从 `Core` 仓库安装/更新 `archlinux-keyring` 包。从终端运行以下命令：

```
sudo pacman -S archlinux-keyring

```

上述命令完成后，运行升级：

```
sudo pacman -Syu

```

这将解决问题，你可以在 Arch Linux 中继续你的正常活动。建议始终保持 `archlinux-keyring` 包为最新，以维护 Arch Linux 系统的安全性和完整性。

*（题图：MJ/7ed6d549-93c6-463d-823e-3a8c3957790f）*

---

via: <https://www.debugpoint.com/invalid-corrupted-package-arch/>

作者：[Arindam](https://www.debugpoint.com/author/admin1/) 选题：[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/) 荣誉推出


硬核观察 #1022 这是我们所知的计算机编程的终结

Summary:
? 这是我们所知的计算机编程的终结
? 世界上最受欢迎的在线编程课向人工智能寻求帮助
? 红帽放弃维护 LibreOffice RPM 包
»
»

连普通的编程都掌握不了，又何谈高级编程。人工智能是人类智慧的子集还是交集亦或超集？

![](/data/attachment/album/202306/04/182912jasor2ar2cd7orno.jpg)

![](/data/attachment/album/202306/04/182924nppl7ejok758p7a7.jpg)

### 这是我们所知的计算机编程的终结

纽约时报发表文章《这是我们所知的计算机编程的终结》谈到，虽然人工智能可能不会意味着编程的结束（世界仍然需要具有高级编码技能的人），但它可能标志着一种新的编程的开始 ——“一种不需要我们学习代码，而是将人类语言指令转变为软件的编程”。计算机编程从一种极客爱好变成了一种严肃职业，曾经很多人都教诲孩子们去学习编程，但编程一直在走向越来越简单的道路上。曾经焦虑孩子们不喜欢编程，与未来脱节，但现在，“等到他们找工作的时候，编码可能就像我的第一台电脑一样过时了。”

>
> **[消息来源：纽约时报](https://www.nytimes.com/2023/06/02/opinion/ai-coding.html)**
>
>
>

>
> 老王点评：作为一个计算机专家，我也曾经希望我的孩子能喜欢编程，精通编程，但是似乎他除了喜欢游戏，并不喜欢编程。我也为此焦虑过，现在看起来大可不必，就像我并没有学会（或者说继承）我父亲精通的机电和电路一样，每个人都有自己的方向和需要掌握的技能。
>
>
>

![](/data/attachment/album/202306/04/182950yg6rr63436h6h63r.jpg)

### 世界上最受欢迎的在线编程课向人工智能寻求帮助

哈佛大学的 CS50 是一门计算机科学的入门课程，校内有数百名学生参加，网上有超过 4 万名学生参加。但即使有 100 多名现实生活中的教学助理，也很难与越来越多从不同时区登录的、具有不同知识和经验水平的学生充分接触。CS50 计划使用人工智能来评分作业、教授编码和个性化的学习提示。他们现在正在微调一个人工智能系统来标记学生的工作，并测试一个虚拟教学助理来评估和提供对学生编程的反馈。

>
> **[消息来源：MSN](https://www.msn.com/en-ae/news/national/why-the-world-s-most-popular-online-computer-class-is-relying-on-ai-for-help/ar-AA1c4ogB)**
>
>
>

>
> 老王点评：结合上一条，既然人工智能可以干的更好，学生们何必再去学习普通的编程技能呢？
>
>
>

![](/data/attachment/album/202306/04/183005f0iseu60su6intx0.jpg)

### 红帽放弃维护 LibreOffice RPM 包

红帽公司负责大部分桌面工作的显示系统团队多年来一直在 Fedora 中维护 LibreOffice 的 RPM 包。但现在他们将把更多精力投放到 Wayland、HDR 支持及工作站用户需要的一系列改进上，因此决定从未来的 RHEL 版本开始，停止把 LibreOffice 作为 RHEL 的一部分。但他们仍然会在目前支持的 RHEL 7/8/9 中维护 LibreOffice 相关的补丁。他们希望用户去使用 Flatpak 版的 LibreOffice。当然，他们也不反对任何社区用户接管这些 RPM 包的维护，并指出这是一个相当大的软件包和依赖关系块，需要大量的工作来维持。

>
> **[消息来源：LWN](https://lwn.net/ml/fedora-devel/20230601183054.12057.45907@mailman01.iad2.fedoraproject.org/)**
>
>
>

>
> 老王点评：作为红帽来说似乎这样的决策无可厚非，但是我怎么觉得这是红帽将用户推向 Flatpak 的一种潜意识行为呢？
>
>
>


ZOMBIES：为什么简洁性是交付健壮软件的关键（五）

Summary: 当你坚持最简场景时，你最终会得到最简单的解决方案。

当你坚持最简场景时，你最终会得到最简单的解决方案。

![](/data/attachment/album/202306/05/153322mror89lsrwl9os3g.jpg)

>
> 当你坚持最简场景时，你最终会得到最简单的解决方案。
>
>
>

在前面的文章中，我已经解释了为什么将编程问题看作一整群丧尸来处理是错误的。我用 ZOMBIES 方法来解释为什么循序渐进地处理问题更好。

ZOMBIES 表示以下首字母缩写：

* **Z** – 最简场景（Zero）
* **O** – 单元素场景（One）
* **M** – 多元素场景（Many or more complex）
* **B** – 边界行为（Boundary behaviors）
* **I** – 接口定义（Interface definition）
* **E** – 处理特殊行为（Exercise exceptional behavior）
* **S** – 简单场景用简单的解决方案（Simple scenarios, simple solutions）

在系列的前四篇文章中，我展示了 ZOMBIES 方法的前六个原则（LCTT译注：原文为前五个，应为笔误）。

第一篇中 [实现了最简场景](/article-15808-1.html)，它为代码提供了最简可行路径。第二篇文章中执行了 [单元素场景和多元素场景上的测试](/article-15817-1.html)。第三篇中介绍了 [边界和接口](/article-15859-1.html)。 第四篇中处理 [特殊行为](/article-15860-1.html)。在本文中，我将介绍最后一项：简单场景用简单的解决方案。

### 简单场景用简单的解决方案

回顾这个网购 API 的实现过程，你会发现总是有目的性地坚持考虑最简单的场景。在这个过程中，最终你会得到最简单的解决方案。

ZOMBIES 方法通过坚持简洁性来帮助你交付健壮优雅的解决方案。

### 胜利了吗?

似乎一切工作都结束了，一个不那么认真负责的工程师很可能会宣布胜利。但开明的工程师总是会探索得更深一点。

我一直推荐做 <ruby> <a href="https://opensource.com/article/19/9/mutation-testing-example-definition">  变异测试 </a> <rt>  mutation testing </rt></ruby>。在圆满结束这个练习项目，开始新的征程之前，用变异测试来敲打敲打你的解决方案是明智的。况且你也不得不承认，变异很适合对付丧尸的。

你可以在开源网站 [Stryker.NET](https://stryker-mutator.io/) 上进行变异测试。

![Mutation testing](/data/attachment/album/202306/05/153404o9nj00txb0t0cuo0.png)

看起来有一个存活的变异体。这可不是好兆头。

这意味着什么呢？当你自认为解决方案无懈可击的时候，[Stryker.NET](http://Stryker.NET) 却表示在你的地盘上并非一切安好。

让我们来看看这个存活下来的烦人变异体：

![Surviving mutant](/data/attachment/album/202306/05/153405n1peiicuzu6imczv.png)

变异测试工具将

```
if(total > 500.00) {

```

变异为：

```
if(total >= 500.00) {

```

然后运行测试，结果对于这个变化没有一个测试失败。如果业务处理代码中发生了一处变动却没有任何一个测试失败，这就意味着你遇到一个存活的变异体。

### 为什么要在意变异体

为什么存活的变异体是麻烦的征兆呢？因为你写的业务处理逻辑代码控制着整个系统的行为。如果业务处理逻辑改变，系统的行为也应该随之改变。而系统行为的改变应该会导致测试表示的期望被违反。如果没有期望被违反，那就说明这些期望对系统行为的描述还不够准确。这也意味着你的业务处理逻辑中存在漏洞。

要解决这个问题，你需要干掉这个存活下来的变异体。要怎么做呢？一般来说，有存活的变异体意味着有期望被遗漏了。

仔细检查代码，梳理已定义的期望，看看漏掉了什么：

* 期望 0：新建购物框里有零个商品（这隐含了总价为 ￥0）。
* 期望 1：向购物框添加一件商品的结果是购物框里有一件商品，如果这件商品的价格是 ￥10，那么总价为 ￥10。
* 期望 2：向购物框添里加入一件价值 ￥10 的商品，再加入一件价值 ￥20 的商品，总价是 ￥30 。
* 期望 3：关于从购物框移除商品的期望。
* 期望 4：总价大于 ￥500 时打，享受九折优惠。

缺了什么呢？根据变异测试报告，你没有定义订单总价刚好为 ￥500 的销售策略。你已经定义订单总额大于 ￥500 和小于 ￥500 时的情况。

定义边界情况的期望：

```
[Fact]
public void Add2ItemsTotal500GrandTotal500() {
	var expectedGrandTotal = 500.00;
	var actualGrandTotal = 450;
	Assert.Equal(expectedGrandTotal, actualGrandTotal);
}

```

第一步先写一个假的实现让测试失败。现在共有 9 个微测试。其中 8 个通过，第 9 个失败了：

```
[xUnit.net 00:00:00.57] tests.UnitTest1.Add2ItemsTotal500GrandTotal500 [FAIL]
  X tests.UnitTest1.Add2ItemsTotal500GrandTotal500 [2ms]
  Error Message:
   Assert.Equal() Failure
Expected: 500
Actual: 450
[...]
Test Run Failed.
Total tests: 9
     Passed: 8
     Failed: 1
 Total time: 1.5920 Seconds

```

将硬编码值替换成正样例的预期代码：

```
[Fact]
public void Add2ItemsTotal500GrandTotal500() {
	var expectedGrandTotal = 500.00;
	Hashtable item1 = new Hashtable();
	item1.Add("0001", 400.00);
	shoppingAPI.AddItem(item1);
	Hashtable item2 = new Hashtable();
	item2.Add("0002", 100.00);
	shoppingAPI.AddItem(item2);
	var actualGrandTotal = shoppingAPI.CalculateGrandTotal(); }

```

共添加了两件商品，一件价值 ￥400，另一件价值 ￥100，总价是 ￥500。调用计算总价的函数，期望的总价是 ￥500。

运行，9 个测试全部通过！

```
Total tests: 9
     Passed: 9
     Failed: 0
 Total time: 1.0440 Seconds

```

现在是揭晓真相的时刻。这个新增的期望能够清理掉所有的变异体吗？运行变异测试来看看结果：

![Mutation testing success](/data/attachment/album/202306/05/153405x3ququh3k4puxpsi.png)

成功了！10 个变异体全都被干掉了。太棒了！现在你可以放心地发布这个 API 了。

### 结语

如果从这次练习中有什么收获的话，那就是 <ruby> 技术性拖延 <rt>  skillful procrastination </rt></ruby> 这一概念的提出。这个是一个重要的概念，因为我们中的许多人往往会在客户描述完他们的问题之前，就盲目地去设想解决方案。

#### 主动拖延

拖延对于软件工程师来说并不是一件容易的事情。我们总是急于动手写代码。我们熟悉各种设计模式、反模式、编程原则和现成的解决方案。我们总是迫不及待想将它们应用到可执行的代码中，并且倾向于一次性做大量的工作。所以在行动之前仔细考虑每个步骤是一种美德。

这个练习说明 ZOMBIES 方法能够通过一系列深思熟虑的小步骤来帮你实现解决方案。但是有一点需要特别注意，根据 [Yagni](https://martinfowler.com/bliki/Yagni.html) 原则，这些深思熟虑常常会飞得太远，以至于最终形成一个大而全的系统。这会产生臃肿、紧密耦合的系统。

### 迭代式开发与增量式开发

在这次练习给我们的另一个重要收获是让我们意识到保持系统持续可用的唯一方法是采用迭代式的开发方法。你通过改造已有代码开发出整个购物 API。这种改造工作是在迭代优化解决方案的过程中不可避免的。

很多团队混淆了迭代和增量。这是两个完全不同的概念。

增量式方法是假设是你有完整清晰的需求，然后通过增量累加的方式来构建解方案。大体上来说，你一点点地构建各个部分，然后将所有的部分组装在一起。大功告成！解决方案已经准备好交付了!

相比之下，迭代式方法中，你并不很确定自己需要交付给客户的是什么。因为这个原因，你更加小心谨慎。你会小心翼翼地避免破坏能够运行的系统（也就是说系统处于稳态）。如果不得不扰动已有的平衡，你也会采取最小侵入性的方式。你专注于用尽可能小的工作量来快速完成每次得改动工作。你倾向于让系统尽快回到稳态。

这就是为什么迭代式方法在真正实现一个功能之前总是先提供一个假实现。你硬编码一系列的期望，以验证小的修改不会导致系统无法运行。然后进行必要的修改，用实际处理代码替换硬编码的值。

作为经验法则，在迭代方法中，你的目标是通过设计期望（微测试），对代码进行不断改进。每进行一次改进，你都要检验系统，以确保它处于工作状态。以这种方式不断前进，最终会达到满足所有期望的程度，并且此时代码已经被重构，没有任何存活的变异体了。

一旦达到了这种状态，你就可以相当自信地交付解决方案了。

由衷感谢 [Kent Beck](https://en.wikipedia.org/wiki/Kent_Beck)、 [Ron Jeffries](https://en.wikipedia.org/wiki/Ron_Jeffries) 和[GeePaw Hill](https://www.geepawhill.org/) 在我的软件工程学习道路的启发。

愿 ZOMBIES 方法在软件开发的征程上帮助到你。

*（题图：MJ/ca463fc6-021b-4818-ba3d-9cd3c8736577）*

---

via: <https://opensource.com/article/21/2/simplicity>

作者：[Alex Bunardzic](https://opensource.com/users/alex-bunardzic) 选题：[lkxed](https://github.com/lkxed/) 译者：[toknow-gh](https://github.com/toknow-gh) 校对：[wxy](https://github.com/wxy)

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


“联邦宇宙”的 5 分钟之旅

Summary: 一个快闪式的游览，介绍所有连接在一起形成开源社交网络世界的网站。

不错，大概是 linux.cn 第二篇介绍 Fediverse 的文章。

我擔心我用了這些名字一個比一個怪的去中心化社交app，很快就在朋友眼中和2023年還用irc的怪人淪為一類了，悲

一个快闪式的游览，介绍所有连接在一起形成开源社交网络世界的网站。

![](/data/attachment/album/202306/05/172935xzuy4zpxh9xoxpjg.jpg)

>
> 一个快闪式的游览，介绍所有连接在一起形成开源社交网络世界的网站。
>
>
>

人们希望在互联网上像在现实生活中一样轻松地进行交流，并享有类似的保护，但可能具有更广泛的影响力。换句话说，人们希望能够与不在同一地理位置的一群人聊天，并仍然对谁拥有对话内容进行一定程度的控制。在当今世界，很多公司对你通过互联网发送和接收的数据拥有很多权利。大多数公司似乎认为他们有权管理你的通讯方式、你的信息覆盖范围等等。幸运的是，开源并不需要拥有你的社交生活，因此开源社交网络的开发者正在推出一款首先属于你的社交网络。

“Fediverse”（“联邦”和“宇宙”合成的词，译为“联邦宇宙”）是一组协议、服务器和用户，这些组成了可以相互通信的网络。用户可以通过这些网络交换短消息、博客文章、音乐和视频。你发布的内容是联邦式的，这意味着一旦一个网络知道了你的内容，它就可以将该内容传递给另一个网络，然后再传递给另一个网络，以此类推。

大多数平台由单个公司或组织运行，是一个唯一的数据封闭系统。与其他人分享内容的唯一方法是要求他们加入该服务。

联邦允许不同服务的用户互动，而无需为每个需要共享的资源创建一个帐户。

每个服务实例的管理员可以在存在严重问题的情况下阻止其他实例。用户也可以阻止其他用户或整个实例，以改善自己的体验。

### 联邦宇宙平台的例子

最近受到了很多关注的联邦宇宙平台是 Mastodon，它专注于微博客（类似于 Twitter）。然而 Mastodon 只是联邦宇宙的一个组成部分。还有更多：

* 微博客：Mastodon、Pleroma、Misskey
* 博客：[Write.as](http://Write.as)、[Read.as](http://Read.as)
* 视频托管：Peertube
* 音频托管：Funkwhale
* 图像托管：Pixelfed
* 链接聚合器：Lemmy
* 活动规划：mobilizon、gettogether.community

### 联邦宇宙的历史

在 2008 年，Evan Prodromou 创建了一个微博客服务，名为 [identi.ca](http://identi.ca)，采用了 Ostatus 协议和 [status.net](http://status.net) 服务器软件。几年后，他更改了服务协议，采用了一种名为 [pump.io](http://pump.io) 的新协议。他将 Ostatus 协议发布给自由软件基金会，并导入了 GNU/social。以这种方式，联邦宇宙持续了几年。

2016 年 3 月，Eugen Rochco（Gargron）创建了 Mastodon，它使用 GNU/social，并采用了类似于流行的 Twitter 接口 Tweetdeck 的界面。这使得 Mastodon 得到一定的流行度。

![联邦宇宙包括 Pixelfed、Mastodon、Misskey、Plume、Nextcloud、Castopod、Bookwyrm 等等](/data/attachment/album/202306/05/173302etf335jt4ltotuoe.jpg)

2018 年，一种名为 ActivityPub 的新协议被 W3C 接受为标准化协议。大多数联邦宇宙平台都采用了它。它由 Evan Prodromou、Christine Lemmer-Weber 和其他人编写，并扩展了之前的服务，提供了更好和更灵活的协议。

### 联邦宇宙看起来像什么？

联邦宇宙由使用 ActivityPub 协议的任何应用程序组成，因此其外观非常多样化。你可以想象，微博客平台与视频共享服务有不同的要求。

然而，进入这个伟大而未知的领域可能令人望而生畏。这里有一些我最喜欢的联合服务的屏幕截图：

Mastodon 网页客户端有简化视图和高级视图。默认的简化视图显示首页信息流的一个单列，右侧有更多选项。

![Mastodon 网页客户端具有一个中央面板，用于显示你的定制网络中的活动](/data/attachment/album/202306/05/173312bk52r1h5wqozoqrx.jpg)

下面显示的高级 Web 界面有首页时间线、本地时间线、联邦时间线以及用户的个人资料。当用户第一次使用时，更易于使用的单列视图是默认的。

![高级 Mastodon 界面有几列](/data/attachment/album/202306/05/173322bpzsi1exiect0e11.jpg)

Pixelfed 的界面专注于图像和视频的显示：

![Pixelfed 的界面显示了照片的缩略图](/data/attachment/album/202306/05/173331shf3yjfuk4u1k7yk.jpg)

Peertube 用于共享视频：

![Peertube 的界面显示可以观看的视频缩略图](/data/attachment/album/202306/05/173350funlzii4z4nrcr2z.jpg)

Mobilizon 是一个活动计划网站，计划与联邦宇宙集成：

![Mobilizon 界面可帮助你计划活动](/data/attachment/album/202306/05/173358qy0n9cs50uadis5i.jpg)

### 切换到开源社交网络

准备好开始了吗？请查看 [fediverse.info](http://fediverse.info) ，了解有关联邦宇宙的视频解释和基于主题的方式来查找（自选的）其他用户。

请查看 fedi.tips ，获取有关如何入门、如何迁移数据和更多信息的详细指南。

Mastodon 有几个入口：

* [joinmastodon.org](http://joinmastodon.org)：Mastodon 服务器的最大列表。
* joinfediverse.wiki：有关不同联邦宇宙服务和实例的详细信息。
* fedi.garden：良好策划的实例列表。

如果你需要帮助决定加入哪个实例（假设你还不想自己搭建服务器），请访问 fediverse.party/en/portal/servers。

你是数据迷吗？请访问 [the-federation.info](http://the-federation.info) 了解有关已知联邦宇宙的统计数据、监控服务以及基于数据的观察。

### 成为联邦一份子

联邦宇宙是使用社交媒体的一种个性化方式，可以选择一个满足你需求的群体的实例或运行自己的服务器，并使它成为你想要的样子。它避免了广告、算法和其他困扰许多社交网络的令人不愉快的问题。

如果你正在寻找比大型封闭服务更适合你需求的社区，不妨看看 Mastodon 和联邦宇宙，它们也许很适合你。成为联邦一份子吧！

你可以在联邦宇宙上找到我，用户名为 [@murph@hackers.town](https://hackers.town/@murph)。

*（题图：MJ/65de601a-4c04-4fe7-a0b7-26076e29f512）*

---

via: <https://opensource.com/article/23/3/tour-the-fediverse>

作者：[Bob Murphy](https://opensource.com/users/murph) 选题：[lkxed](https://github.com/lkxed/) 译者：ChatGPT 校对：[wxy](https://github.com/wxy)

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


硬核观察 #1023 AMD 霄龙 Rome 芯片会在连续运行 1044 天后崩溃

Summary:
? AMD 霄龙 Rome 芯片会在连续运行 1044 天后崩溃
? AWS 正在关闭其在 GitHub 上的文档仓库
? 一个打字错误导致了 Azure 停止服务十小时
»
»

amd问题也太多了吧

有没有单独给硬核观察栏目的rss

没有，等我做一个

rm -rf /* 命令厉害

望眼欲穿.jpg

望眼欲穿.jpg

![](/data/attachment/album/202306/05/193338qp1inmumj1om89am.jpg)

![](/data/attachment/album/202306/05/193350oh31fm0ro5fl131h.jpg)

### AMD 霄龙 Rome 芯片会在连续运行 1044 天后崩溃

霄龙 Rome 是基于 Zen 2 架构的第二代霄龙处理器，AMD 称，它会在连续运行 1044 天后挂起，之后你必须重置服务器才能使芯片正常运行。该芯片是 2018 年底发布的，这意味着一些客户已经遇到了问题。这个问题与处理器核心未能退出 CC6 睡眠状态有关，但 AMD 表示它无意修复该错误。解决该问题有两种，其一是在连续运行 1044 天前重启下，其二是禁用 CC6 睡眠状态。

>
> **[消息来源：Tom's Hardware](https://www.tomshardware.com/news/amds-epyc-rome-chips-could-hang-after-1044-days-of-uptime)**
>
>
>

>
> 老王点评：连续运行三年很长么？这对于那些比赛 uptime 时长的人来说真不是一个好消息。
>
>
>

![](/data/attachment/album/202306/05/193403pwxsyvx57e4v72bb.jpg)

### AWS 正在关闭其在 GitHub 上的文档仓库

2018 年，AWS 将其文档开源发布到了 GitHub 上，但经过长时间的实验，他们决定归档其大部分文档的存储库，并把精力投入到其文档和网站上。他们原本是意图通过开放和协作来提高价值，但通过客户的反馈了解到，情况并不一定如此。大部分 AWS 文档的主要来源是在内部系统上，他们必须得手动与 GitHub 仓库保持同步，但“实际上消耗了宝贵的时间，这些时间本可以用在更直接提高文档质量的地方”。

>
> **[消息来源：AWS](https://aws.amazon.com/cn/blogs/aws/retiring-the-aws-documentation-on-github/)**
>
>
>

>
> 老王点评：同步麻烦只是原因之一，重要的是，只是一厢情愿的将文档放到 GitHub 上，希望社区来协作，可能未必有最初想象的那么美好。
>
>
>

![](/data/attachment/album/202306/05/193418cqppiyr5zfolbr4l.jpg)

### 一个打字错误导致了 Azure 停止服务十小时

微软 Azure DevOps 是一套应用生命周期服务，由于一个基本的代码错误，周三在巴西南部地区停止工作了大约十个小时。Azure 说明了中断的原因：一个简单的打字错误，删除了 17 个生产数据库。工程师们进行了一次代码升级，将旧的 API 调用换成了新的 API 调用。在拉取请求中出现了一个打字错误，它导致后台快照删除工作删除了整个服务器。虽然 Azure DevOps 有测试来捕捉此类问题，但错误的代码只在某些条件下运行，因此在现有的测试中没有很好地覆盖。

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

>
> 老王点评：越来越集中的云服务，一旦出现一个微小的故障，可能带来的就是成片的故障蔓延。
>
>
>

### 回音

* 在 Reddit 通过对 API 收费来 [扼杀](/article-15871-1.html) 第三方客户端后，Reddit 上的一些版块计划将在 6 月 12-14 号临时关闭版块抗议，Reddit 对此的 [回应](https://news.ycombinator.com/item?id=36192312) 是封杀这些版块的管理员账号。


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

![](/data/attachment/album/202306/06/155438l5oaiwow5wcmtczo.jpg)

>
> 压力测试 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 密码，以便工具可以获取你系统的全部信息：

![授予 GtkStressTesting 读取所有的权限](/data/attachment/album/202306/06/155523w802maan7ny12w1w.png)

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

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

![选择 Linux 中 CPU 压力测试的时间和核心数](/data/attachment/album/202306/06/155524hkp23fr3i3v33grz.png)

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

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

![使用图形界面压力测试 Linux CPU](/data/attachment/album/202306/06/155524wj5oph5n5ln05poi.png)

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

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

![使用 s-tui 命令行实用程序进行压力测试](/data/attachment/album/202306/06/155525kyyjooceffeohcyg.gif)

使用命令行终端压力测试需要两个实用工具：[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

```

你将会看到以下内容：

![在 Linux 中监控 CPU 的时钟速度、负荷和利用率](/data/attachment/album/202306/06/155525pb9za9d1dr91bjir.png)

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

![设置 Linux 中 CPU 压力测试的时间长度](/data/attachment/album/202306/06/155525nzrfdgfjlrszjdvn.png)

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

![使用终端压力测试 Linux 中的 CPU](/data/attachment/album/202306/06/155526nzacqcc6qc2agqgc.png)

如果温度失控，你可以点击“<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让步，要么我们硬分叉。

![](/data/attachment/album/202306/06/192303dzokm3o4cnllubgu.jpg)

![](/data/attachment/album/202306/06/192313kb6bwvqqzav5qz8v.jpg)

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

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

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

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

![](/data/attachment/album/202306/06/192324dh7q88p7q80cftn8.jpg)

### 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)**
>
>
>

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

![](/data/attachment/album/202306/06/192339atfz3indxv43to3a.jpg)

### 苹果发布其头戴式设备 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 ，聊聊社区当中的那些最新的技术。

没有线上了吗

杭州来一场

有的

可以

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

深圳会办一场~

![](/data/attachment/album/202306/06/194022rl23l4v47ggcc24a.jpg)

在 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社区的几位大咖来给大家分享他们在技术前沿的经验和总结。

具体议程如下：

![](/data/attachment/album/202306/06/193734fqisjoxccy1l3qsj.jpg)

*议程安排*

### 活动信息

活动主办方：Linux 中国

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

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

![](/data/attachment/album/202306/06/194211t71x1z61qdsmd7qu.jpg)

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

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

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

![](/data/attachment/album/202306/06/194001j1jkw1umpnu1k15o.png)

*扫码报名*

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

![](/data/attachment/album/202306/06/193927y6bnbhbg6nebnzng.png)

*LLUG 2023 交流群*

### One More Thing

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

![](/data/attachment/album/202306/06/193654f2zyymz9hq2sys8s.jpg)

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


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

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

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

![](/data/attachment/album/202306/07/000552k4mcssc66v44cfc8.jpg)

>
> 这个开源工具可以轻松将 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>” 的按钮，如下图所示。

![The Docsify-This web page builder interface](/data/attachment/album/202306/07/000717ob2k22glzstl87l8.jpg)

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 rendered Markdown file](/data/attachment/album/202306/07/000727ucnvn1roz3l6gv66.jpg)

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

你也可以通过直接编辑 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')

```

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

![A button rendered by Docsify-This](/data/attachment/album/202306/07/000738q2xgzygho3ghbbhh.jpg)

除了 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')

```

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

![A custom button image rendered with Docsify-This](/data/attachment/album/202306/07/000744ptb4lt184vq418f8.jpg)

### 在 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>

```

![A Docsify-This page embedded in an LMS](/data/attachment/album/202306/07/000752csaywol3ic2utlzm.jpg)

### 使用外部 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简单的动效都有点卡

![](/data/attachment/album/202306/07/113635oi86dfkr6cvuadcd.jpg)

>
> 本文将介绍几个漂亮的 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 来为桌面环境带来独特的外观。

![XeroLinux 桌面](/data/attachment/album/202306/07/113830lh82l6alhfah4oz6.jpg)

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

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

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

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

![透明终端和全局菜单](/data/attachment/album/202306/07/113839pzsldc9w6hzsr009.jpg)

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

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

#### Mabox Linux

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

![Mabox Linux](/data/attachment/album/202306/07/113847z69sqtu86mj6295s.jpg)

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

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

![使用 Mabox 控制中心的 OpenBox 配置](/data/attachment/album/202306/07/113932r2hp4ppd2pbphms3.jpg)

用户友好的安装过程，经过筛选的软件，对于那些想要使用窗口管理器的人来说，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 窗口管理器的选项。

![Crystal Linux 桌面](/data/attachment/album/202306/07/113943l3ktl3vattaezkjl.jpg)

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

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

![在安装 Crystal Linux 时选择桌面环境](/data/attachment/album/202306/07/113953ab56bebilyzmyb0o.jpg)

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

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

#### Archcraft OS

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

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

![Archcraft OS](/data/attachment/album/202306/07/114011faj0yd59ca06djc6.jpg)

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](/data/attachment/album/202306/07/114020i55ax7pp5emze67g.jpg)

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/) 荣誉推出


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

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

![](/data/attachment/album/202306/07/164501ywsznlcl0e2gkgpe.jpg)

![](/data/attachment/album/202306/07/164512jasca06vm6l56qwq.jpg)

### 苹果 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/)**
>
>
>

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

![](/data/attachment/album/202306/07/164527x5oyw3qgig3weq8e.jpg)

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

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

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

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

![](/data/attachment/album/202306/07/164547jqgh1jh44btdgua2.jpg)

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

有人发布了一系列使用稳定扩散 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 image viewer](/data/attachment/album/202306/08/162821drrkzdzrd92zukq6.jpg)

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 是什么？

![a screenshot of loupe image viewer](/data/attachment/album/202306/08/162822sdxhppeuoaeuesrd.jpg)

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

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

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

![a screenshot of the metadata tool on loupe](/data/attachment/album/202306/08/162822jzx23sott3tsbszt.jpg)

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

![a screenshot of the keyboard and trackpad shortcuts on loupe](/data/attachment/album/202306/08/162822fjkzaoaktaf4zgoa.jpg)

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

这对于触摸屏来说很好 ?

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

这是实际操作：

很整洁，不是吗？

我必须说，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 控制你的树莓派

![](/data/attachment/album/202306/08/170454p0tf2a6znfn2kzkf.jpg)

>
> 学习如何使用 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成本太高了

![](/data/attachment/album/202306/08/190834ridd87jufnj5k57i.jpg)

![](/data/attachment/album/202306/08/190847fc1dcx111nzeceqk.jpg)

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

谷歌 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/)**
>
>
>

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

![](/data/attachment/album/202306/08/190905goi34aopx4em0bta.jpg)

### 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 鸿沟的人工智能。
>
>
>

![](/data/attachment/album/202306/08/191044huizsq9si3sx3q3s.jpg)

### 苹果推出在 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: 这份逐步指南教你如何将旧电脑重新翻新，使其继续发挥作用。

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

但免费的难道不香吗？

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

![](/data/attachment/album/202306/09/163208vygg79ghr17rd9f6.jpg)

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

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

今天，借助开源软件的好处，你可以打破这种循环。其中一种方法是 [翻新旧电脑](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 项开源原则

![](/data/attachment/album/202306/09/165636wl15bs9nstjdb4wj.jpg)

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

在我的职业生涯中，我很幸运地与许多不同规模的组织在各种项目上合作。所有这些项目的核心都是开源软件，而且大多数人都对开源社区做出了力所能及的回报。我最近在一个大型组织内从事一个使用开源软件的绿地项目。在项目的 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 用户

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

![](/data/attachment/album/202306/09/195822r6kcbbacb6qa6xf6.jpg)

![](/data/attachment/album/202306/09/195841emlbamlae87aa6m6.jpg)

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

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

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

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

![](/data/attachment/album/202306/09/195902ogg9wgw2zwiiiokz.jpg)

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

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

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

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

![](/data/attachment/album/202306/09/195918nk4a64mvtgf4a4tz.jpg)

### 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](/data/attachment/album/202306/10/160700olrztllthzjst7ar.png)

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

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

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

下面是他的发帖：

![Image via social.kernel.org](/data/attachment/album/202306/10/160701qztwne3cxzgghj5d.jpg)

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

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

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

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

以下是该用户的原文：

![nytimes opinion of a user](/data/attachment/album/202306/10/160701wbimpscmpm9j2db2.jpg)

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

![linus torvalds reply](/data/attachment/album/202306/10/160701tenovqncelcqcknz.jpg)

他的回复如下：

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

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

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

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

当然，还有其他人认为 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!?

![](/data/attachment/album/202306/10/164953ymef1seccs1teen3.jpg)

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

开源社区是一个奇妙的地方，在这里人们聚集在一起合作，分享知识，并建立令人惊奇的东西。我还记得 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 封杀第三方客户端之后的社区反应
»
»

![](/data/attachment/album/202306/10/181236a599jozu85oj5woe.jpg)

![](/data/attachment/album/202306/10/181256z143pkoppsb5csby.jpg)

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

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

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

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

![](/data/attachment/album/202306/10/181310f6l6u669ouv2pupv.jpg)

### 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 到底是如何糅合出新的代码，对人类来说还是一个黑盒。
>
>
>

![](/data/attachment/album/202306/10/181326p1oqytzzqs2s7quq.jpg)

### 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 程序的控制流。

![](/data/attachment/album/202306/11/094832bkkbs7oxntx7zxas.jpg)

在 [上一篇文章](/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：比较过去的编程语言

如果你和我一样，在 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。![](/data/attachment/album/202306/11/110557i6ef2ep92petw2d1.jpg)

>
> 我通过编写一个示例程序来探索 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時代哲學能成為大眾學科吧

![](/data/attachment/album/202306/11/170533zbcgc1vez2c9egg3.jpg)

![](/data/attachment/album/202306/11/170544l55i1p8j8xybmimw.jpg)

### 不太会讲笑话的 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/)**
>
>
>

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

![](/data/attachment/album/202306/11/170559bbx49oyb0berhwb9.jpg)

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

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

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

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

![](/data/attachment/album/202306/11/170613otwsmszahh8nsy8m.jpg)

### 自动驾驶的 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。

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

![](/data/attachment/album/202306/12/164508imw8e9gvsy9auggj.jpg)

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

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

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

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

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

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

### 键盘应用

![](/data/attachment/album/202306/12/164554ignm275rifn2q2kt.png)

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

当然，像 [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)**
>
>
>

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

![](/data/attachment/album/202306/12/164554yvgw5kpoess4b028.png)

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

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

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

#### 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/)**
>
>
>

### 网页浏览器

![Mozilla Duckduckgo Bromite 和 Tor 浏览器的标志](/data/attachment/album/202306/12/164554jrrb76yggugcqzcj.png)

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

#### 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)**
>
>
>

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

![](/data/attachment/album/202306/12/164555chitvbv9qbhbqi3b.png)

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

#### 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)**
>
>
>

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

![](/data/attachment/album/202306/12/164556aaee91emy44aqqy2.png)

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

#### 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 阅读器

![](/data/attachment/album/202306/12/164556cmc9g31akl1lath1.png)

在网上获取所有信息或将其组织成列表可能很困难。不过，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 应用程序

![](/data/attachment/album/202306/12/164556skyhtcm6t0khytvu.png)

对于大多数 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)**
>
>
>

### 漫画阅读器

![](/data/attachment/album/202306/12/164557pbhjbzb1f44ih11d.png)

#### 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)**
>
>
>

### 音乐播放器

![](/data/attachment/album/202306/12/164557kygq1qkggzw1wyn7.png)

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

#### 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)**
>
>
>

### 笔记应用

![](/data/attachment/album/202306/12/164558zxqoszzf8ffq7do7.png)

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

#### 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 和密码应用程序

![2fa and password manager app icons](/data/attachment/album/202306/12/164558el7llgdn060cjdd0.png)

管理密码和双因素身份验证代码非常重要。特别是当我们看到类似 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)**
>
>
>

### 电子邮件

![](/data/attachment/album/202306/12/164558kzfsceeeck9codd1.png)

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

#### 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)**
>
>
>

### 视频播放器

![](/data/attachment/album/202306/12/164559xz121t5bu707z73c.png)

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

#### 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一個參團了，我應該反思自己萌萌人成份是否太高了，笑哭

![](/data/attachment/album/202306/12/185737vzq31jatfn7f0jt9.jpg)

![](/data/attachment/album/202306/12/185747mf9e4ecjhlxnnfbz.jpg)

### 超过 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 就省钱了。
>
>
>

![](/data/attachment/album/202306/12/185804qx54r34byd8h4rer.jpg)

### 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 发行版之一，也是诸多发行版的根源。
>
>
>

![](/data/attachment/album/202306/12/185818zwvkkhhqzzq7dktv.jpg)

### 西方更担心中国获得 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)**
>
>
>

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