2023年3月

嗨!这周我一直在写一些 Javascript,和往常一样,当我开始一个新的前端项目时,我面临的问题是:我是否应该使用构建系统?

我想谈谈构建系统对我有什么吸引力,为什么我(通常)仍然不使用它们,以及一些前端 Javascript 库要求你使用构建系统时,为什么我觉得这让我感到沮丧。

我写这篇文章是因为我看到的大多数关于 JS 的文章都假定你正在使用构建系统,而对于像我这样的人来说,编写非常简单的、不需要构建系统的小型 Javascript 项目时,构建系统可能反而添加了很多麻烦。

什么是构建系统?

构建系统的思路是,你有一堆 Javascript 或 Typescript 代码,你想在把它放到你的网站上之前把它翻译成不同的 Javascript 代码。

构建系统可以做很多有用的事情,比如:

  • (出于效率的考虑)将 100 多个 JS 文件合并成一个大的捆绑文件
  • 将 Typescript 翻译成 Javascript
  • 对 Typescript 进行类型检查
  • 精简化
  • 添加 Polyfills 以支持旧的浏览器
  • 编译 JSX
  • 摇树优化 Tree Shaking (删除不使用的 JS 代码以减少文件大小)
  • 构建 CSS(像 tailwind 那样)
  • 可能还有很多其他重要的事情

正因为如此,如果你今天正在构建一个复杂的前端项目,你可能会使用 Webpack、Rollup、Esbuild、Parcel 或 Vite 等构建系统。

很多这些功能对我很有吸引力,我过去使用构建系统也是出于这样一些原因: 例如,Mess With DNS 使用 Esbuild 来翻译 Typescript,并将许多文件合并成一个大文件。

目标:轻松地对旧的小网站进行修改

我做了很多简单的小网站(之一、之二、之三、之四),我对它们的维护精力大约为 0,而且我改变它们的频率很低。

我的目标是,如果我有一个 3、5 年前做的网站,我希望能在 20 分钟内,

  • 在一台新的电脑上从 GitHub 获取源代码
  • 做一些修改
  • 把它放到互联网上

但我对构建系统(不仅仅是 Javascript 构建系统!)的经验是,如果你有一个 5 年历史的网站,要重新构建这个网站会非常痛苦。

因为我的大多数网站都很小,所以使用构建系统的 优势 很小 —— 我并不真的需要 Typescript 或 JSX。我只要有一个 400 行的 script.js 文件就可以了。

示例:尝试构建 SQL 实验场

我的一个网站(SQL 试验场)使用了一个构建系统(它使用 Vue)。我最后一次编辑该项目是在 2 年前,是在另一台机器上。

让我们看看我今天是否还能在我的机器上轻松地构建它。首先,我们要运行 npm install。下面是我得到的输出:

$ npm install
[lots of output redacted]
npm ERR! code 1
npm ERR! path /Users/bork/work/sql-playground.wizardzines.com/node_modules/grpc
npm ERR! command failed
npm ERR! command sh /var/folders/3z/g3qrs9s96mg6r4dmzryjn3mm0000gn/T/install-b52c96ad.sh
npm ERR! CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/surface/init.o
npm ERR!   CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/avl/avl.o
npm ERR!   CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/backoff/backoff.o
npm ERR!   CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/channel/channel_args.o
npm ERR!   CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/channel/channel_stack.o
npm ERR!   CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/channel/channel_stack_builder.o
npm ERR!   CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/channel/channel_trace.o
npm ERR!   CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/channel/channelz.o

在构建 grpc 时出现了某种错误。没问题。反正我也不需要这个依赖关系,所以我可以花 5 分钟把它拆下来重建。现在我可以 npm install 了,一切正常。

现在让我们试着构建这个项目:

$ npm run build
  ?  Building for production...Error: error:0308010C:digital envelope routines::unsupported
    at new Hash (node:internal/crypto/hash:71:19)
    at Object.createHash (node:crypto:130:10)
    at module.exports (/Users/bork/work/sql-playground.wizardzines.com/node_modules/webpack/lib/util/createHash.js:135:53)
    at NormalModule._initBuildHash (/Users/bork/work/sql-playground.wizardzines.com/node_modules/webpack/lib/NormalModule.js:414:16)
    at handleParseError (/Users/bork/work/sql-playground.wizardzines.com/node_modules/webpack/lib/NormalModule.js:467:10)
    at /Users/bork/work/sql-playground.wizardzines.com/node_modules/webpack/lib/NormalModule.js:499:5
    at /Users/bork/work/sql-playground.wizardzines.com/node_modules/webpack/lib/NormalModule.js:356:12
    at /Users/bork/work/sql-playground.wizardzines.com/node_modules/loader-runner/lib/LoaderRunner.js:373:3
    at iterateNormalLoaders (/Users/bork/work/sql-playground.wizardzines.com/node_modules/loader-runner/lib/LoaderRunner.js:214:10)
    at iterateNormalLoaders (/Users/bork/work/sql-playground.wizardzines.com/node_modules/loader-runner/lib/LoaderRunner.js:221:10)
    at /Users/bork/work/sql-playground.wizardzines.com/node_modules/loader-runner/lib/LoaderRunner.js:236:3
    at runSyncOrAsync (/Users/bork/work/sql-playground.wizardzines.com/node_modules/loader-runner/lib/LoaderRunner.js:130:11)
    at iterateNormalLoaders (/Users/bork/work/sql-playground.wizardzines.com/node_modules/loader-runner/lib/LoaderRunner.js:232:2)
    at Array.<anonymous> (/Users/bork/work/sql-playground.wizardzines.com/node_modules/loader-runner/lib/LoaderRunner.js:205:4)
    at Storage.finished (/Users/bork/work/sql-playground.wizardzines.com/node_modules/enhanced-resolve/lib/CachedInputFileSystem.js:43:16)
    at /Users/bork/work/sql-playground.wizardzines.com/node_modules/enhanced-resolve/lib/CachedInputFileSystem.js:79:9

这个 Stack Overflow 的答案 建议运行 export NODE_OPTIONS=--openssl-legacy-provider 来解决这个错误。

这很有效,最后我得以 npm run build 来构建这个项目。

这其实并不坏(我只需要删除一个依赖关系和传递一个略显神秘的 Node 选项!),但我宁愿不被那些构建错误破坏。

对我来说,对于小项目来说,构建系统并不值得

对我来说,一个复杂的 Javascript 构建系统对于 500 行的小项目来说似乎并不值得 —— 它意味着放弃了在未来能够轻松更新项目的能力,以换取一些相当微小的好处。

Esbuild 似乎更稳定一些

我想为 Esbuild 大声叫好: 我 在 2021 年了解到 Esbuild,并用于一个项目,到目前为止,它确实是一种更可靠的构建 JS 项目的方式。

我刚刚尝试在一台新电脑上构建一个我最后一次改动在 8 个月前的 Esbuild 项目,结果成功了。但我不能肯定的说,两年后我是否还能轻松的建立那个项目。也许会的,我希望如此!

不使用构建系统通常是很容易的

下面是 Nginx 实验场 代码中导入所有库的部分的样子:

<script src="js/vue.global.prod.js"></script>
<script src="codemirror-5.63.0/lib/codemirror.js"></script>
<script src="codemirror-5.63.0/mode/nginx/nginx.js"></script>
<script src="codemirror-5.63.0/mode/shell/shell.js"></script>
<script src="codemirror-5.63.0/mode/javascript/javascript.js"></script>
<link rel="stylesheet" href="codemirror-5.63.0/lib/codemirror.css">
<script src="script.js "></script>

这个项目也在使用 Vue,但它只是用 <script src 来加载 Vue —— 前端没有构建过程。

一个使用 Vue 的无构建系统模板

有几个人问如何在没有构建系统的情况下开始编写 Javascript。当然,如果你想的话,你可以写原味的 JS,但我常用的框架是 Vue 3。

这是我做的一个小模板,用于启动一个没有构建系统的 Vue 3 项目。它只有 2 个文件和大约 30 行的 HTML/JS。

有些库需要你使用构建系统

构建系统这些事情最近盘旋在我的脑海里,因为这周我正在用 CodeMirror 5 做一个新项目,我看到有一个新版本,CodeMirror 6。

所以我想 —— 很酷,也许我应该使用 CodeMirror 6 而不是 CodeMirror 5。但是 —— 似乎没有构建系统你就不能使用 CodeMirror 6(根据 迁移指南),所以我打算坚持使用 CodeMirror 5。

同样地,你以前可以把 Tailwind 作为一个巨大的 CSS 文件下载,但是 Tailwind 3 似乎根本不能作为一个大的 CSS 文件使用,你需要运行 Javascript 来构建它。所以我现在要继续使用 Tailwind 2。(我知道,我知道,你不应该使用大的 CSS 文件,但是它验收只有 300KB,而且我真的不希望有构建步骤)

(更正:看起来 Tailwind 在 2021 年发布了一个 独立的命令行工具,这似乎是一个不错的选择)

我不完全确定为什么有些库不提供无构建系统版本 —— 也许发布无构建系统版本会给库增加很多额外的复杂性,而维护者认为这不值得。或者,库的设计意味着由于某种原因,不可能发布无构建系统版本。

我希望有更多的无构建系统的 Javascript 技巧

到目前为止,我的主要策略是:

  • 在某个库的网站上搜索 “CDN”,找到一个单独的 Javascript 文件
  • 使用 https://unpkg.com 来查看该库是否有一个我可以使用的内置版本
  • 托管我自己的库的版本,而不是依赖可能崩溃的 CDN
  • 编写我自己的简单集成方案,而不是拉入另一个依赖关系(例如,前几天我为 Vue 编写了自己的 CodeMirror 组件)。
  • 如果我想要一个构建系统,就使用 Esbuild

还有一些看起来很有趣但我还没有研究过的东西:


via: https://jvns.ca/blog/2023/02/16/writing-javascript-without-a-build-system/

作者:Julia Evans 选题:lkxed 译者:wxy 校对:wxy

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

GNOME 用户,你在等待这一刻吗?准备好选择你的颜色吧!

GNOME 的强调色

从 Ubuntu 22.04 LTS 开始,Ubuntu 上就有了对强调色的支持,人们都很喜欢它。然而,遗憾的是,GNOME 从来没有这样的支持。

现在,得益于一项在 GNOME 中引入强调色支持的工作,这种情况正在改变。

具体情况如何? 最近,Alexander Mikhaylenko 发出了一个附有 合并请求 的提议,以在 GNOME 中添加对强调色的支持。

在目前,它还处于一个 早期开发中状态,尚有很多工作要做,还有一些问题要在最终发布前解决。

通过查看其代码,很明显,最初将提供对 10 种强调色的支持,发布后可能会有更多的选择。

想知道它可能看起来如何?

在 Mastodon 上的一个 讨论 中,GNOME 基金会的成员 Jamie 分享了一些由 Alexander 制作的模拟图,其中描绘了两种不同的配色。

一个是绿色的:

GNOME 即将推出的强调色支持的早期预览

另一个是蓝色的:

GNOME 即将推出的强调色支持的另一个早期预览

我必须说,这些看起来不错 ?。想在非 Fedora 发行版上得到一些 Fedora 的爱吗?把它变成蓝色和其他东西?就它了!

? 请记住,你在上面看到的东西在最终发布前可能会有变化。

预期时间? 在上述讨论中被另一个用户问到时,Alexander 提到,我们可以 预期强调色支持会在 GNOME 45 中出现。

鉴于 GNOME 44 最近才发布,我们还需要等待一段时间才能真正看到它的实现。

但是,很高兴知道它有可能在不久之后出现。

我很喜欢 GNOME 终于得到了对强调色的支持,我希望这种等待是值得的。

如果你问我,我喜欢在我的 GNOME 系统上有绿色的强调色。你呢?

参考自: OMG! Linux


via: https://news.itsfoss.com/gnome-accent-colors/

作者:Sourav Rudra 选题:lkxed 译者:wxy 校对:wxy

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

CentOS Stream 没有及时向后移植安全补丁

谷歌 Project Zero 的安全研究员发现,对 Linux 稳定树所做的内核修复并没有向后移植到许多企业版的 Linux。事实证明,有几个在 Linux 5.15 内核中修复的漏洞,没有在采用 Linux 5.14 内核的较早版本的 CentOS Stream/RHEL 中进行修复,而这些版本还在红帽的支持期中。红帽接受了 Project Zero 报告的安全漏洞,并分配了 CVE 编号,但并没有在 90 天内完成向后移植修复。Project Zero 称会对向后移植安全补丁要求更严格的时限。

消息来源:Neowin
老王点评:这样对待企业级 Linux 发行版,实在有点失望。

互联网档案馆败诉,不能扫描和出借电子书

在四家图书出版商对互联网档案馆提起的诉讼中,一名联邦法官对互联网档案馆作出了不利的裁决,裁定该网站无权扫描图书并像图书馆一样将其借出。法官拒绝了 “合理使用” 的论据,该论据之前曾保护过谷歌图书和数字图书保存项目。法官认为,谷歌图书的使用被认为具有 “改造性”,因为它创建了一个可搜索的数据库,而不是简单地在互联网上发布书籍的副本。而互联网档案馆的“复制和未经授权的借阅没有任何变革性”,复制这些书籍并没有提供 “批评、评论或关于它们的信息”。

消息来源:The Verge
老王点评:听起来有道理,如果只是简单扫描并发布电子副本,那不就是盗版吗?

因开源软件缺陷,ChatGPT 出现故障

OpenAI 在本周早些时候将 ChatGPT 短暂下线,原因是一些用户看到另一个活跃用户的聊天记录中的标题。并进一步发现,该故障也导致少量用户看到了别的订阅用户的支付信息,包括名字和姓氏、电子邮件地址、付款地址和信用卡后四位等。OpenAI 称该故障是 Redis 客户端开源库 redis-py 导致的,并已经提交了相关补丁解决了该漏洞。

消息来源:OpenAI
老王点评:不知道 ChatGPT 能不能自己修复这个错误?

安装之后,你会发现 NixOS 与通用的 Linux 发行版有很大的不同。

当然,作为 高级 Linux 发行版之一,大多数新用户对它并不熟悉。

如果你不知道 为什么你应该使用 NixOS,并且出于好奇而尝试它,那么在继续进行之前,知道它是为谁准备的至关重要。

虽然我假设你已经安装了这个发行版,但如果你是第一次使用,我建议先 在虚拟机上安装 NixOS。

1、更新软件包

即使你使用最新的 ISO 进行安装,也总是会有更新的。那么为什么不从更新软件包开始呢?

要升级软件包,首先,你必须在添加的频道中检查是否有更新:

nix-channel --update

然后,使用下面的命令来安装这些更新(如果有的话):

sudo nixos-rebuild switch --upgrade

这就行了!它将处理其余的事情。

2、在 NixOS 中改变主机名

如果你尝试用传统的方法 改变主机名(使用 hostnamectl 命令),会出现以下错误:

在 NixOS 中改变主机名的错误

在 NixOS 中,你可以用它的主配置文件轻松地改变主机名。使用如下命令:

sudo nano /etc/nixos/configuration.nix

在这个配置文件中,寻找以下一行:

networking.hostName = "nixos";

然后把它改成:

networking.hostName = "Your_Hostname";

例如,我把我的主机名改为 itsFOSS:

networking.hostName = "itsFOSS";

在 NixOS 中改变主机名

现在,保存更改并退出 nano 文本编辑器。

为了使你对主机名的修改生效,执行以下命令:

sudo nixos-rebuild switch

最后,重新打开终端,主机名的变化应该反映出来。

3、设置 Flatpak

我知道你可能在想什么。Nix 软件包管理器已经提供了大量的软件包。那么,为什么你需要 Flatpak 呢?

安装你所需要的东西对于第一次使用的人来说可能有点费时。所以,Flatpak 应该能给你带来方便。

设置 Flatpak 与你在 Ubuntu 上做的不一样。

要设置 Flatpak,你必须对 configuration.nix 文件进行修改,可以通过以下方式访问该文件:

sudo nano /etc/nixos/configuration.nix

在 nano 中移动到最后一行,在 } 前添加以下一行:

services.flatpak.enable = true;

在 NixOS 上设置 Flatpak

按 Ctrl + O 保存更改,按回车键,按 Ctrl + X 退出。

接下来,使用以下命令重建并切换到新的配置文件:

sudo nixos-rebuild switch

最后,使用下面的命令将 Flathub 软件库添加到系统中:

flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo

想知道到底什么是 Flatpak 包吗?你可以参考我们关于它的文章:

什么是 Flatpak?你需要知道的关于这个通用包装系统的一切重要信息

4、启用垃圾收集

NixOS 以其不可改变性而闻名,这是有充分理由的。

每当你升级一个软件包时,旧的软件包不会被删除。只是指向旧包的符号链接将被指向最新的版本。

而这样做,你的系统中会积累下不必要的垃圾。

但是,删除每一个旧世代将违背 NixOS 的初衷。

所以,在这种情况下,你可以将你的系统配置为每周删除垃圾包。

要做到这一点,首先,打开 NixOS 配置文件:

sudo nano /etc/nixos/configuration.nix

并在配置文件末尾的 } 前添加以下一行:

# Automatic Garbage Collection
nix.gc = {
                automatic = true;
                dates = "weekly";
                options = "--delete-older-than 7d";
        };

在 NixOS 中启用自动垃圾收集

保存修改并退出 nano 文本编辑器。

为了激活垃圾收集,重建并切换到新的配置文件:

sudo nixos-rebuild switch

如果你不确定垃圾收集器是否在后台正常运行,你可以用以下命令列出活动的计时器:

systemctl list-timers

正如你所看到的,Nix 垃圾收集器正在如期运行,并显示距离下次清理还有 5 天。

5、安装你喜欢的软件

我是说这是我们使用电脑的唯一原因 —— “为了使用我们最喜欢的软件”,如果还不是,我们就把它变成现实!

寻找软件包的最好地方是 Nix 软件包搜索,可以使用你喜欢的任何浏览器访问。

  • 搜索软件包
  • 选择软件包
  • 点击 “nix-env” 并复制给定的 NixOS 的命令
  • 执行该命令,就可以了

你可以查看我们的 NixOS 软件包管理 指南,了解所有的细节。

让我在这里给你一个简单的回顾。例如,在这里,我想安装 Librewolf,所以我采用了以下方法:

搜索 NixOS 的软件包

但如果你想安装 SSH 或 Plex 等服务,上述方法就不能用了。

为此,你得查看位于页面顶部的 “ NixOS 选项 NixOS options ”。

因此,假设我想安装 OpenSSH,那么我必须按照给定的步骤进行:

  • 进入 “NixOS 选项”。
  • 搜索服务的名称
  • 获取服务的名称并将其粘贴到 configuration.nix 中,将其值改为 true。

搜索 NixOS 的服务

services.openssh.enable = true

在 NixOS 上启用 OpenSSH

在配置文件中加入这一行后,重建服务:

sudo nixos-rebuild switch

6、在 NixOS 中启用自动更新(可选)

一些用户喜欢启用自动更新功能,而另一些用户则可以在他们方便的时候更新软件包。

所以这完全取决于你。

要启用自动更新,首先打开 configuration.nix 文件:

sudo nano /etc/nixos/configuration.nix

接下来,在配置文件的末尾,在 } 之前添加以下一行:

# Auto system update
system.autoUpgrade = {
      enable = true;
};

在 NixOS 中启用自动系统更新

保存修改并退出 nano。

要启用自动更新,你必须用以下方法重建并切换到该文件:

sudo nixos-rebuild switch

你也可以用下面的命令检查 NixOS 的升级定时器:

systemctl list-timers

NixOS 的自动升级定时器

正如你所看到的,nixos-upgrade.service 正在后台如期运行!

7、减少交换度

如果你正在利用交换分区,你可能想减少交换度。

交换度只不过是你想要多积极地使用交换分区(或内存)的数值,其范围从 0 到 100。

交换度越小,你的系统就会越多地使用物理内存(RAM),而交换分区只不过是你的存储驱动器的一部分而已。

另外,存储驱动器的速度相对比内存慢,所以如果可能的话,你应该减少交换度。

要检查你的系统的默认交换度,请使用以下方法:

cat /proc/sys/vm/swappiness

检查 Linux 系统的交换度

而对于大多数 Linux 发行版,它被设置为 60。

我建议你把这个值降低到 10。

要做到这一点,首先,用以下命令打开配置文件:

sudo nano /etc/nixos/hardware-configuration.nix

并在 } 之前的行末添加以下一行:

boot.kernel.sysctl = { "vm.swappiness" = 10;};

减少 NixOS 中的交换度

保存修改并退出文本编辑器。

现在,重建配置并使用下面的方法切换到它:

sudo nixos-rebuild switch

现在,你可以再次检查交换度,它应该反映出变化:

cat /proc/sys/vm/swappiness

减少 NixOS 中的交换度

就这些了。

总结

如果你在第一次安装 NixOS 后马上遵循这些要点,你应该得到一个良好的用户体验。

当然,根据你的要求,还可以有一些其他的东西。但是,我认为上面提到的事情是最基本或最常见的事情。

在本系列的下一部分,我将讨论在 NixOS 上设置家庭管理器,这对有多个用户的系统应该是有帮助的。

? 安装NixOS后,你首先做什么?让我知道你的想法。


via: https://itsfoss.com/things-to-do-after-installing-nixos/

作者:Sagar Sharma 选题:lkxed 译者:wxy 校对:wxy

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

Linux 初学者可能会被官方的 Debian 下载 ISO 的页面弄得不知所措。这篇指南旨在简化下载体验。

对于 Debian 初学者来说,安装 Debian 可能会是一次艰难的经历。官方的下载页面包含了不少链接,以至于到底需要下载哪个令人困惑。

我准备这篇指南来帮助你从下载页面挑选合适的 Debian ISO 文件。

总的来说,你可以将 Debian ISO 文件分为两大类。它们是 “自由” 和 “非自由” 。

关于 “自由” 和 “非自由” Debian 镜像之间的一些注意事项

  • Debian “非自由” 镜像是指包含不符合 Debian 自由软件准则的软件包的 Debian 操作系统的安装镜像。
  • “非自由” 软件包包含专有的、有版权的或受许可证限制的软件,这些软件包禁止用户修改或分发代码。Debian 项目提供这些 “非自由” 镜像作为用户的一种可选下载项,以便他们使用需要专有驱动或固件的特定硬件设备或软件。
  • “自由” 版本的 Debian,仅包含开源和可自由分发的软件包,这意味着用户有修改、分发和与他人分享的自由,而不受任何法律和道德上的限制。

从 Debian 12 “Bookworm”(即将发布)之后,非自由固件软件包将正式包含在主 ISO 文件中。因此,这篇指南将分为两个部分。

下载: Debian 12 “Bookworm”

这里是一份下载 ISO 版本的 Debian 12 “Bookworm” 的简单的表格(当前还不稳定,正在测试)。

描述最大 ISO 体积选择此 ISO 的情形ISO 下载链接(amd64)
最小的体积;非常适合基本安装700 MB你想下载基础的软件包,然后通过互联网来安装iso-cd
完整的 DVD 体积5 GB你想先下载所有的东西,然后开始安装,它非常适合离线安装iso-dvd

下载: Debian 11 “Bullseye”

自由版本的 ISO 文件(没有专有软件包)

下面的 ISO 镜像是 “自由” 版本的镜像,这意味着它们不包含用于固件的大量专有软件包。

描述最大 ISO 体积选择此 ISO 的情形ISO 下载链接(amd64)
最小的体积(网络安装 CD);需要联通互联网下载软件包500 MB你有稳定高速的互联网,希望开始时下载较少iso-cd torrent
完整的 CD 体积;带有 CD 1、2 和 3;对于最基础的安装,你只需要 CD 1700 MB你希望下载基础的软件包,然后不使用互联网来安装它们iso-cd torrent
完整的 DVD 体积;带有 DVD 1、2 和 3;对于最基础的安装,你只需要 DVD 15 GB你想先下载所有的东西,然后开始安装,这是离线安装的最理想方式iso-dvd torrent

非自由版本的 ISO 文件(带有专有软件包)

如果你有 Wi-Fi、蓝牙等特殊硬件 – 你可能会希望从下面的表中获取 “非自由” 版本的软件包。

类型镜像种类选择此 ISO 的情形ISO 下载链接(amd64)
非自由完整的 CD 、DVD你想要减少工作量,并希望 Debian 能够在所有受支持的硬件上工作cd-dvd (然后转到 *-nonfree 目录)
非自由完整的 CD 、DVD( 立付 Live 版) – 独立的桌面环境软件包你想要减少工作量,Debian 能够工作,并且带有一个立付系统。立付系统也提供完整的安装cd-dvd-live(然后转到 *-nonfree 目录)

其它的架构

针对 Debian 11 “Bullseye”

所有的镜像,下载链接: 单击这里。

较旧的版本(Debian 10 “Buster”)

如果你需要一些针对 Debian 10 “Buster” 的镜像,请访问这个 页面。

总结

对新用户来说,如果想要从官方网站上下载 Debian ISO 镜像,网站的信息可能多到无所适从。因此,我以一种恰当的格式总结下载链接。我希望这篇文章有助于你找到适合于你系统的目标 Debian ISO 镜像。


via: https://www.debugpoint.com/download-debian-iso/

作者:Arindam 选题:lkxed 译者:robsean 校对:wxy

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

华为称已开发出自己的 14 纳米芯片设计套件

据报道,华为已经完成了电子设计自动化(EDA)工具的工作,用于布置和制造低至 14 纳米工艺节点的芯片。该平台是这家电信设备巨头正在开发的 78 个平台之一,以取代美国和欧洲的芯片设计工具,这些工具已经受到美国和其他国家的出口管制。

消息来源:The Register
老王点评:没说的,点赞!

大众汽车将支持汽车软件产品长达十余年

汽车的预期使用寿命要比智能手机长得多,而现在汽车上的信息娱乐系统对汽车的运行是不可或缺的。大众集团软件部门称“终身支持是完全重要的”,如果要给这个“终身”一个期限,那么是在生产结束后,软件支持 10 年,硬件为 15 年。而且,对于那些希望更长时间的品牌,如布加迪、兰博基尼和保时捷等,将提供额外的持续支持。此外,网络安全以及安全更新和补丁只要有就会提供。

消息来源:Ars Technica
老王点评:确实,手机可以经常换,汽车更换的频率就低多了,那到时候车载软件的更新就是个问题。

谷歌 Bard 令测试者失望

谷歌在二月份 宣布 Bard 时,因为一些演示错误导致估值 骤降千亿。一个多月后,谷歌周二启动了其人工智能 Bard 的测试,邀请美国和英国的用户注册访问。但测试者对 Bard 感到失望,他们说,“(在这个特定的聊天功能方面)必应现在远远领先于谷歌”、“谷歌的 Bard 似乎并不像必应或 GPT-4 那样有能力成为学习工具。”

消息来源:Business Insider
老王点评:没事,谷歌,因为 AI 发布后被嘲讽的不止你一个~