4 个用于提高生产力的 Vim 功能

Summary: Vim 有很多技巧，即使是用过它很多年的人仍然可以学习新东西。

大家对于vim编辑超长的行有什么心得体会吗，如何更方便点

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

俺的心得就是避免有超长行。

避免不了的话，需要快速移动就使用搜索功能，而非HJKL或者 vim-easymotion 之类的插件。

说到 Vim 自动补全，推荐一下韦易笑写的 vim-auto-popmenu 插件。

一个只有 169 行代码的超级轻量级代码补全系统，无需安装各种后端的补全 LSP 服务器，即可提供类似于 YouCompleteMe 的补全体验。

介绍：zhuanlan.zhihu.com/p/349271041

地址：github.com/skywind3000/vim-auto-popmenu

Vim 有很多技巧，即使是用过它很多年的人仍然可以学习新东西。

# 4 个用于提高生产力的 Vim 功能

>
> Vim 有很多技巧，即使是用过它很多年的人仍然可以学习新东西。
>
>
>

<img src="content_image/album_202203_04_102118tgy1i7albn6ndiri.jpg" alt="" title="Person using a laptop">

Vim 总在那里。Vim 是当今最流行的文本编辑器之一。这在很大程度上是因为它随处可见。当你通过 SSH 连接到另一个系统时，你可能找不到 [Emacs](https://opensource.com/article/20/3/getting-started-emacs)、[Nano](https://opensource.com/article/20/12/gnu-nano) 或 [VSCodium](https://opensource.com/article/20/6/open-source-alternatives-vs-code)，但你可以放心，Vim 就在那里。

在本文中，我介绍了一些你可以用 Vim 做的中级事情，以加快你的工作流程并通常让你的一天更轻松。本文假设你以前使用过 Vim，已经了解编辑器的基础知识，并希望将你的 Vim 技能提高一个档次。Vim 充满了有用的技巧，没有人真正掌握它，但本文中的五个技巧可以提高你的技能，并希望让你更加爱上最受欢迎和喜爱的文本编辑器之一。

### Vim 书签

Vim 提供了一种在文本中添加书签的简单方法。假设你正在编辑一个大文件，并且当前的编辑会话要求你在文件中不同位置的两段文本之间来回跳转。

首先，你输入 `m`（用于标记）为当前位置设置一个书签，然后为其命名。例如，如果我正在编辑的文件中有一个名称列表，我想稍后再跳回，我可以使用 `mn`（n 表示名称）为文件的该部分添加书签。

稍后，在编辑文件的另一部分并希望跳回该名称列表时，我有两个选项。我可以输入 ``n`（反引号 n）转到书签的位置，或者我可以键入 `'n`（单引号 n）转到书签所在行的开头。

当我不再需要书签时，我可以使用 `:delmarks n` 将其删除。`:marks` 会显示我所有的书签。

请注意，我使用小写字母来命名我的书签。这是故意的。你可以使用小写字母作为本地书签，使用大写字母来使书签在多个文件中具有全局性。

### Vim 用户定义的缩写

如果你正在处理的文本有一个长词或短语多次出现，那么每次都完整地输入它会很快变得烦人。幸运的是，Vim 提供了一种创建缩写的简单方法。

要将 `Acme Painted Fake Roadways, Inc.` 的用户定义缩写设置为 `apfr`， 你需要输入 `:ab apfr Acme Painted Fake Roadways, Inc.`。现在当在编辑模式时，当你在输入 `apfr` 后面更上空格，就会变成 `Acme Painted Fake Roadways, Inc.`。

当你关闭 Vim 会话时，你使用 `:ab` 设置的任何缩写都会丢失。如果你想在此之前取消设置缩写，你可输入 `:una apfr`。

### Vim 自动补全

许多人没有意识到 Vim 带有自动补全功能。如果你在文件中输入以前使用过的长词，这是一个方便的工具。

假设你正在撰写一篇文章，多次使用 `Antarctica` 一词。使用一次后，下次你可以只输入前几个字母。例如，你输入 `Ant` 然后按下 `Ctrl+P`。 Vim 要么补全单词（如果只有一个选项），要么为你提供可以用箭头键选择的单词列表，继续输入以进一步缩小搜索范围并使用 `Tab` 键选择单词。

### Vim 范围选择

使用 Vim，你可以轻松地对文件中的一系列行执行操作。你可以通过起始行号、逗号和结束行号（包括）来指示范围。除了文字行号之外，你还可以使用句点（`.`）表示当前行，使用美元符号 （`$`） 表示文件缓冲区中的最后一行，以及使用百分号（`%`）表示整个文件。

这里举几个例子来说明。

如果要删除第 2 到 10 行，请输入（在命令模式下）：

```
:2,10d

```

要删除从第 25 行到文件末尾的每一行：

```
:25,$d

```

你可以使用以下命令删除每一行：

```
:%d

```

要将第 5 到 10 行复制（或转移）到第 15 行之后：

```
:5,10t 15

```

要将第 5 行到第 10 行移动到第 15 行之后（而不是复制）：

```
:5,10m 15

```

### Vim 提高生产力

我希望这篇文章教会了你一些关于 Vim 文本编辑器的新知识。 Vim 有很多技巧，即使是使用了多年的人仍然可以学习新事物。总有一些新的和有用的东西可以学习。

---

via: <https://opensource.com/article/22/3/vim-features-productivity>

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

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


简简单单的 Vim 就很好

Summary: 这就是我如何从 35 个 Vim 插件降到只有 6 个的原因。

国外也喜欢写这种过时的水文呀，都 2022 年了 (只针对作者，不针对译者)。

+ CtrlP 性能差的要死 (虽然后面也支持了异步模式)，建议用 leaderf、fzf.vim、denite 替代。

+ Airline 中规中距，要是追求速度可用 lightline。

+ Ale 倒没啥问题，作为一款 lint 插件很是优秀，不过更推荐使用 LSP 提供的语法检查。

matchit其实问题也不少

`引导键` 是什么鬼？<br />
应该是 `mapleader` 吧

这就是我如何从 35 个 Vim 插件降到只有 6 个的原因。

# 简简单单的 Vim 就很好

>
> 这就是我如何从 35 个 Vim 插件降到只有 6 个的原因。
>
>
>

<img src="content_image/album_202203_04_161603q6mmr6q7kkkd2yky.jpg" alt="" title="Person drinking a hot drink at the computer">

当你用 `—clean` 选项启动 Vim 时，它以 “素” 模式展示 Vim。没有插件、没有配置，一切回到了最初。多年来，我收集了一堆配置语句，其中一些可以追溯到 MS-DOS 或 Windows 3.1 时期。我是这样打算的：从头开始，只用 Fedora 35 中可用的插件，找到一个好的配置起点。我可以在一周的编码生活中生存下来吗？我会找到答案的！

规则是这样的：尽可能少的配置语句，并且只使用 Fedora 35+ 中的插件。顺便说一下，如果你不是 Fedora 用户，也请继续阅读。你可以随时从你的操作系统软件包管理器手动安装或者使用 Vim 插件管理器安装这些插件。

在我开始之前，有一个大问题需要解决：用 Vim 还是 Neovim（Vim 的一个复刻）。好吧，这由你决定。这篇文章中的所有内容应该对两者都适用。然而，我只用 Vim 测试过。当你登录到一个只有 `vi` 可用的服务器时，所有的这些技能都会派上用场。它可以是一个旧的 UNIX 系统、一个安装了最少的软件以提高安全性的 Linux 服务器、一个容器中的交互式 shell，或者一个空间宝贵的嵌入式系统。

闲话少说，下面是我提炼出来的使用 Vim 进行编码的绝对最低限度的东西：

```
# dnf install --allowerasing vim-default-editor \
        vim-enhanced \
        vim-ctrlp \
        vim-airline \
        vim-trailing-whitespace \
        vim-fugitive \
        vim-ale \
        ctags

```

不要担心 `—allowerasing` 选项。在确认之前，只需查看一下安装的东西。这个选项的作用是告诉软件包管理器把现有的 `nano-default-editor` 包替换为 `vim-default-editor`。这是一个小软件包，它在 shell 配置文件中将 `EDITOR` 环境变量设置为 `vim`，如果你想默认使用 Vim（例如，与 `git` 一起使用），这是必须的。这是专门针对 Fedora 的。你不需要在其他发行版或操作系统上这样做，只要确保你的 `EDITOR` shell 变量被正确设置就行。

### 概览

简单介绍一下我认为好的、干净的插件集：

* **CtrlP**：尽可能小的模糊查找插件（纯 vimscript）
* **Fugitive**：一个 git 的必备工具
* **Trailing-whitespace**：显示并修复（删除）尾部的空格
* **Airline**：一个改进的状态行（纯 vimscript）
* **Ale**：在你打字时高亮显示错别字或语法错误
* **Ctags**：不是 Vim 插件，但却是一个非常需要的工具

还有其他的模糊查找插件，如 command-t 或我最喜欢的 `fzf.vim`（非常快）。问题是，`fzf.vim` 不在 Fedora 中，而我想要尽可能少的配置。CtrlP 就可以了，而且配置它更容易，因为它不需要什么依赖。

如果让我选择一个绝对最小的配置，那就是：

```
# cat ~/.vimrc
let mapleader=","
let maplocalleader="_"
filetype plugin indent on
let g:ctrlp_map = '<leader><leader>'
let g:ctrlp_user_command = ['.git/', 'git --git-dir=%s/.git ls-files -oc --exclude-standard']
set exrc
set secure

```

但这可能太极端了，所以这里是一个稍大的配置，下面是我的详细解释：

```
" vim: nowrap sw=2 sts=2 ts=2 et:

" leaders
let mapleader=","
let maplocalleader="_"

" filetype and intent
filetype plugin indent on

" incompatible plugins
if has('syntax') && has('eval')
  packadd! matchit
end

" be SSD friendly (can be dangerous!)
"set directory=/tmp

" move backups away from projects
set backupdir=~/.vimbackup

" fuzzy searching
let g:ctrlp_map = '<leader><leader>'
let g:ctrlp_user_command = ['.git/', 'git --git-dir=%s/.git ls-files -oc --exclude-standard']
nnoremap <leader>b :CtrlPBuffer<cr>
nnoremap <leader>t :CtrlPTag<cr>
nnoremap <leader>f :CtrlPBufTag<cr>
nnoremap <leader>q :CtrlPQuickfix<cr>
nnoremap <leader>m :CtrlPMRU<cr>

" buffers and quickfix
function! ToggleQuickFix()
  if empty(filter(getwininfo(), 'v:val.quickfix'))
    copen
  else
    cclose
  endif
endfunction
nnoremap <leader>w :call ToggleQuickFix()<cr>
nnoremap <leader>d :bd<cr>

" searching ang grepping
nnoremap <leader>g :copen<cr>:Ggrep!<SPACE>
nnoremap K :Ggrep "\b<C-R><C-W>\b"<cr>:cw<cr>
nnoremap <leader>s :set hlsearch! hlsearch?<cr>

" ctags generation
nnoremap <leader>c :!ctags -R .<cr><cr>

" per-project configs
set exrc
set secure

```

### 使用逗号作为引导键

我喜欢把我的 `引导键` 映射成逗号 `,`，而不是默认的反斜杠 `\`。当你的手处于书写位置时，它是 Vim 中最接近的自由键。另外，这个键在大多数键盘布局中都是一样的，而 `\` 在每个型号或布局都不一样。我很少使用 `本地引导键`，但下划线 `_` 看起来很合适。

延伸阅读：

* 参见 [Vim 参考手册](https://vimhelp.org/map.txt.html#map-which-keys) 中的 `:help map-which-keys`。
* 参见 [Vim Tips Wiki](https://vim.fandom.com/wiki/Unused_keys) 中的 Vim 中未使用的键。

### 文件类型和关闭语法高亮

接下来是非常重要的 `filetype` 命令。看，Vim 自带“内置电池”，8.2 版本包含 644 种语言的语法高亮，251 个文件类型定义（`ftplugins`），以及 138 种语言的缩进规则。然而，缩进在默认情况下是不启用的，也许是为了给所有人提供一个一致的编辑体验。我喜欢启用它。

一个简单的技巧：如果你正在编辑一个非常大的文件，并且 Vim 感觉很慢，你可能想禁用语法高亮来加快速度。只要输入 `:syn off` 命令即可。

延伸阅读：

* 参见 [Vim 参考手册](https://vimhelp.org/filetype.txt.html) 中的 `:help filetype`。
* 参见 [Vim 参考手册](https://vimhelp.org/syntax.txt.html) 中的 `:help syntax`。
* 参见 [Vim 参考手册](https://vimhelp.org/indent.txt.html) 中的 `:help indent`。

### Matchit 插件

Vim 甚至额外带有使得一些功能不兼容的插件，其中一个相当有用。它就是 `matchit` 插件，它使按下 `%` 键可以在某些语言中查找匹配的括号。通常情况下，你可以找到一个块的开始或结束（开始和结束括号）或 HTML 匹配标签及类似的。

延伸阅读：

* 参见 [Vim 参考手册](https://vimhelp.org/usr_05.txt.html#matchit-install) 中的 `:help matchit`。

### 交换文件

我想从我的旧配置中保留的许多设置之一是使用 `/tmp` 进行交换，并在我的家目录的一个单独目录中创建备份，你需要用 `mkdir ~/.vimbackup` 来创建这个目录。重要的是要明白，当你开始编辑时，Vim 会创建一个名为 “交换文件” 的副本，所有未保存的工作都会保存在这个文件中。所以即使停电了，你的交换文件也包含了大部分未保存的工作。我更喜欢使用 `tmpfs`，因为我所有的笔记本电脑和服务器都有 UPS 保护，而且我经常保存。另外，大多数情况下，你会使用到交换文件是当你的 SSH 连接丢失而不是由于停电时。对于大文件来说，交换文件可能相当大，我很珍视我的固态硬盘，所以我决定这样做。如果你不确定，可以删除这句话，使用 `/var/tmp`，这样更安全。

延伸阅读；

* 参见 [Vim 参考手册](https://vimhelp.org/recover.txt.html#swap-file) 中的 `:help swap-file`。

### 模糊寻找插件

现在，模糊查找是一个我不能没有的插件。在服务器上当你每天需要打开 20 个文件时，使用 `:Ex` 或 `:e` 或 `:tabe` 等命令打开文件是没问题的。而当编码时，我通常需要打开数百个文件。正如我所说，CtrlP 很好地完成了这项工作。它很小，没有依赖性，纯 Vim。它用 `Ctrl + P` 组合键打开，这对我来说有点奇怪。我知道一些著名的编辑器（我记得是 VSCode）使用这个组合键。问题是，这已经是很重要的 Vim 绑定键，我不想覆盖它。所以对我来说，赢家是 `引导键 + 引导键`（逗号按两次）。

`ctrlp_user_command` 只是改变了 CtrlP 获取文件列表的方式。它不使用内置的递归文件列表（glob），而是使用 `git ls-files`，这通常更好，因为它忽略了 `.gitignore` 中的东西，所以像 `node_modules` 或其他可能拖慢列表的不相关目录不会受到影响。

使用 `引导键` + `B`/`T`/`F`/`Q`/`M` 来打开缓冲区、标签、当前文件的标签、快速修复缓冲区和最近使用的文件的列表，非常有用。具体来说，一旦你用 `ctags` 生成了标签列表，这基本上就是数百种编程语言的“去……定义处”，而且不需要插件！这都是 Vim 内置的。现在澄清一下，当我说输入 `引导键 + B` 时，是指按下逗号，然后按 `B` 键，而不是像用 `Control` 或 `Shift` 那样一起按。

延伸阅读：

* 参见 [Vim 参考手册](https://vimhelp.org/pi_netrw.txt.html#netrw-explore) 中的 `:help Explore`。
* 参见 [ctrlp.vim GitHub](https://github.com/kien/ctrlp.vim)。

### 缓冲区管理

虽然现在 Vim 支持标签，但缓冲区管理是掌握 Vim 的一个重要技能。我通常会有很多缓冲区，我需要经常做 `:bdelete`。那么，`引导键 + D` 似乎是一个不错的选择，可以更快地完成这个任务。我也喜欢关闭 Quickfix 窗口，所以也有 `引导键 + W` 的组合键，我在浏览搜索结果时经常使用这个功能。

延伸阅读：

* 参见 [Vim 参考手册](https://vimhelp.org/windows.txt.html#buffer-hidden) 中的 `:help buffer-hidden`。

### Ggrep 和 fugitive 插件

说到搜索，它和打开文件一样重要。我希望能够对代码库进行检索。为此，有一个来自 fugitive 插件的很棒的 `:Ggrep` 命令，它使用 `git grep`，忽略了垃圾文件，只搜索 Git 中的内容。由于 `Shift + K` 是 Vim 中的一个自由键，它非常适用于自动检索光标位置的词语。最后，能够使用 `引导键 + G` 输入任意的搜索模式也很好。注意，这将打开一个叫做 Quickfix 的窗口，你可以在这里浏览结果、查看下一个/上一个/最后一个/第一个出现的地方，等等。这个窗口也用于编译器或其他工具的输出，所以要熟悉它。如果你对此感到陌生，我建议进一步阅读文档。

延伸阅读：

* 参见 [Vim 参考手册](https://vimhelp.org/quickfix.txt.html) 中的 `:help quickfix`。
* 参见 [vim-fugitive GitHub](https://github.com/tpope/vim-fugitive)。

### 用 fugitive 进行搜索、检索

顺便说一下，用 `/` 键搜索是智能和大小写敏感的，这意味着如果所有的搜索字符都是小写的，Vim 的搜索会忽略大小写。默认情况下，它会高亮显示结果，我觉得我已经敲了无数次的 `:noh`（来关闭高亮显示）。这就是为什么我有 `引导键 + S` 来切换高亮显示。我建议以后也多读读手册中关于搜索的内容。

接下来是搜索、检索。fugitive 插件已经为你提供了。使用命令 `:Ggrep pattern` 来进行 `git grep`，结果会进入 Quickfix 窗口。然后简单地使用快速修复命令（`:cn`、`:cp` 等等）浏览结果，或者简单地使用 `:CtrlPQuickfix`（`引导键 + Q`）来直观地滚动它们。CtrlP 的快速修复整合的酷炫之处是，你可以通过输入以匹配文件名或内容来进一步在搜索结果中搜索。

延伸阅读：

* 参见 [Vim 参考手册](https://vimhelp.org/quickfix.txt.html#grep) 中的 `:help grep`。
* 参见 [Vim 参考手册](https://vimhelp.org/pattern.txt.html#noh) 中的 `:help noh`。
* 参见 [vim-fugitive GitHub](https://github.com/tpope/vim-fugitive) 。

### Ctags

`引导键 + C` 可以生成一个 ctags 文件，以便更好地导航，这在处理一个新的代码库或做一个有很多跳转的较长的编码任务时很有用。ctags 支持数百种语言，而 Vim 可以利用所有这些知识来导航。后面会有更多关于如何配置它的内容。注意我已经讨论过 `引导键 + T` 来打开所有标签的模糊搜索，记得吗？这两个是非常相同的。

延伸阅读：

* 参见 [Vim 参考手册](https://vimhelp.org/tagsrch.txt.html) 中的 `:help ctags`。
* 参见 [Universal Ctags 网站](https://ctags.io)。

### 按键映射

能够通过在项目目录下创建一个 `.vimrc` 文件来覆盖该项目中的任何设置是一个好主意。只要把它放在（全局的） `.gitignore` 中，以确保你不需要在每个项目中编辑成千上万的 `.gitignore` 文件。这样的一个项目的 `.vimrc` 可以是这样的（对于使用 GNU Makefile 的 C/C++ 项目）：

```
" coding style
set tabstop=4
set softtabstop=4
set shiftwidth=4
set noexpandtab
" include and autocomplete path
let &path.="/usr/local/include"
" function keys to build and run the project
nnoremap <F9> :wall!<cr>:make!<cr><cr>
nnoremap <F10> :!LD_LIBRARY_PATH=/usr/local/lib ./project<cr><cr>

```

正如你所看到的，我通常将 `F2` 到 `F10` 等键映射到编译、运行、测试和类似的操作。用 `F9` 来调用 `make`，听起来不错。还记得 MS-DOS 上的蓝色 Borland IDE 吗？

如前所述，在全局范围内忽略 `.vimrc` 和（由 `ctags` 生成的）`tags` 是个好主意，所以不需要每次都更新 `.gitignore`：

```
# git config --global core.excludesfile ~/.gitignore
# cat ~/.gitignore
/.vimrc
/tags
/TAGS

```

在我的个人配置中还有几条只与那些非美国键盘布局的人有关（我用捷克语）。我需要用“死键”来输入许多字符（LCTT 译注：“死键”是一种通过将变音符号与后面的字母结合起来打出重音字符的方法。这种方法在历史上被用于机械打字机），这根本不可能，我宁愿输入命令而不是按那些难以按下的组合键。这里有一个解决问题的办法：

```
" CTRL-] is hard on my keyboard layout
map <C-K> <C-]>
" CTRL-^ is hard on my keyboard layout
nnoremap <F1> :b#<cr>
nnoremap <F2> :bp<cr>
nnoremap <F3> :bn<cr>
" I hate entering Ex mode by accident
map Q <Nop>

```

延伸阅读：

* 参见 [Vim 参考手册](https://vimhelp.org/map.txt.html) 中的 `:help map`。

功能键在 Vim 中都是自由的，除了 `F1`，它被绑定在帮助上。我不需要帮助，并不是说我已经会对 Vim 了如指掌，并不是。但如果需要的话，我可以简单地输入 `:help`。而 `F1` 是一个关键的键，离 `Esc` 键如此之近。我喜欢将它用于缓冲区交换（`:b#`），将 `F2`/`F3` 用作下一个/上一个。你越是与缓冲区打交道，你就越需要这个。如果你没有使用过 `Ctrl + ^`，我建议你要习惯于它。哦，你有没有丑陋地输入 `:visual` 进入过 Ex 模式？许多初学者都不知道如何从该模式下退出 Vim。对我来说，这就是打扰，因为我很少使用它。

现在，熟悉 `ctags` 是成功使用 Vim 的一个关键因素。这个工具支持数百种语言，它不小心就为你不想创建标签的文件创建它，因此我建议忽略典型的垃圾目录：

```
# cat ~/.ctags.d/local.ctags
  --recurse=yes
  --exclude=.git
  --exclude=build/
  --exclude=.svn
  --exclude=vendor/*
  --exclude=node_modules/*
  --exclude=public/webpack/*
  --exclude=db/*
  --exclude=log/*
  --exclude=test/*
  --exclude=tests/*
  --exclude=\*.min.\*
  --exclude=\*.swp
  --exclude=\*.bak
  --exclude=\*.pyc
  --exclude=\*.class
  --exclude=\*.cache

```

### Airline 插件

我一定不能忘记 Vim 的 Airline 插件。在 Fedora 的两个插件中，这个插件很轻量级，不需要外部依赖，而且可以开箱即用我所有的字体。你可以定制它，而且还有主题之类的东西。我只是碰巧喜欢它的默认设置。

我必须提到，有两个主要的 Ctags 项目：Exuberant Ctags 和 Universal Ctags。后者是一个更现代的复刻。如果你的发行版有，就用它。如果你在 Fedora 35+ 上，你应该知道你现在用的是 Universal Ctags。

### 总结

作为总结，我的建议是这样的。尽量保持你的 Vim 配置流畅和干净。这将在未来得到回报。在我转换到新配置之后，我不得不重新学习“写入并退出”的命令，因为我总是不小心把它打成 `:Wq`，而我在旧的配置里有一个“小技巧”，让它实际上按我的意思工作。好吧，这个可能真的很有用，并能入选，我希望你能明白我的意思：

```
:command Wq wq
:command WQ wq

```

最后的一个快速技巧是：你可能需要经常改变你的默认 Vim 配置，来找到我在这里向你介绍的和你自己口味之间的舒适区。使用下面的别名，这样你就不需要一直搜索历史。相信我，当一个 Vim 用户在命令历史里搜索 “vim” 时，找不到什么是相关的内容：

```
alias vim-vimrc='vim ~/.vimrc'

```

就是这些了。也许这可以帮助你在没有大量插件的情况下在 Vim 的丰富世界遨游。“简简单单” 的 Vim 也很不错！

要尝试你刚刚读到的内容，请安装软件包并检出这些配置：

```
test -f ~/.vimrc && mv ~/.vimrc ~/.vimrc.backup
curl -s https://raw.githubusercontent.com/lzap/vim-lzap/master/.vimrc -o ~/.vimrc
mkdir ~/.vimbackup

```

特别感谢 Marc Deop 和 [Melanie Corr](https://opensource.com/users/melanie-corr) 对本文的审阅。

### 更新

我已经在这种配置下生存下来了！我唯一的纠结是 CtrlP 插件的结果顺序不同。文件的模糊算法与 `fzf.vim` 插件不同，所以我以前用各种搜索词能找到的文件现在找不到了。我最后安装了 Fedora 的 fzf 包以获得更相关的文件搜索，它附带了一个 vim 函数 `FZF`，可以绑定到引导键组合上。请看我的 [GitHub 仓库](https://github.com/lzap) 中更新后的配置文件。一路走来，我学到了很多东西。有一些键的绑定我已经忘记了，这要感谢许多插件。

这篇文章最初发表在 [作者的网站](https://lukas.zapletalovi.com/2021/11/a-sane-vim-configuration-for-fedora.html) 上，经许可后重新发表。

---

via: <https://opensource.com/article/21/12/vanilla-vim-config>

作者：[Lukáš Zapletal](https://opensource.com/users/lzap) 选题：[lujun9972](https://github.com/lujun9972) 译者：[wxy](https://github.com/wxy) 校对：[wxy](https://github.com/wxy)

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


硬核观察 #565 甲骨文发布持续更新的免费 Solaris

Summary: 更多：• 三星正在降低上万个流行应用程序的性能 • 纯商业的 Qt 5.15.3 LTS 现在开源了

Qt长期支持版本只提供给了商业用途使用，是指只有二进制提供给了商业用途，还是说连源代码一起给呢？<br />
购买Qt的商用能否获得源代码？

Solaris 不是死了吗？

2016年12月03日：甲骨文可能终止了Solaris开发 (来源：solidot.org/story?sid=50602)

2017年01月19日：甲骨文从其路线图中抹掉Solaris 12 (来源：solidot.org/story?sid=51144)

2017年09月03日：甲骨文解雇所有 Solaris 技术员工 (来源：solidot.org/story?sid=53699)

2017年09月07日：甲骨文解雇了 983 名雇员 (来源：solidot.org/story?sid=53759)

是的，11.4 是最后一个版本，但是继续有人用，这个消息看起来，还会继续给打补丁。

# 硬核观察 #565 甲骨文发布持续更新的免费 Solaris

### 甲骨文发布持续更新的免费 Solaris

甲骨文公司在 2009 年收购 Sun 公司时，为其获得的 Solaris 操作系统创建了一个附加版本，它被称为通用构建环境（CBE），算是一种测试版的 Solaris。该公司允许免费使用 Solaris，用于测试和开发，或个人使用。它刚刚发布了 [新的 Solaris 11.4 CBE](https://blogs.oracle.com/solaris/post/announcing-the-first-oracle-solaris-114-cbe)，并采用支持库更新/微型版本的持续交付模式，而不是每隔几年就发布更大的小型版本。

>
> 老王点评：甲骨文公司想起来给 Solaris 提供持续更新了，虽然 Solaris 已经乏人问津了。
>
>
>

### 三星正在降低上万个流行应用程序的性能

三星有一个名为游戏优化服务的应用程序，预装在许多 Galaxy 手机上。虽然其名字表明该应用有助于提高游戏性能，但它显然被用来限制非游戏应用的性能。[一项新的发现表明](https://www.xda-developers.com/samsung-throttling-popular-android-apps/)，三星正在扼杀上万个的安卓应用的性能，包括谷歌和三星的第一方应用。值得注意的是，这个黑名单上没有基准应用程序，因而其性能可以得到自由发挥。

>
> 老王点评：手机厂商们为了你的电池续航简直“操碎了心”啊。
>
>
>

### 纯商业的 Qt 5.15.3 LTS 现在开源了

一年前的这个星期，Qt 5.15.3 LTS 发布了，但这个长期支持版本只提供给了商业用途使用。根据 Qt 公司的计划，Qt LTS 的小版本发布将只针对商业客户，而 Qt 5.15.3 LTS 是第一个这样做的版本，这让那些不是 Qt 商业客户的开源 Linux 桌面用户无法得到更新。今天，Qt 公司 [开源](https://www.phoronix.com/scan.php?page=news_item&px=Qt-5.15.3-Open-Source) 了 Qt 5.15.3 修改版。

>
> 老王点评：好吧，这也完全可以理解，毕竟 KDE 一直在免费使用。
>
>
>


Vim 与 nano：你应该选择哪个？

Summary: Vim 和 nano 是最流行的 CLI 文本编辑器 之二。

对我来说，如果同时预装 Vi 和 Nano，用 Nano；同时预装 Vim 和 Nano，那就用 Vim。

很多人只把 Nano 当成一个极简的记事本来用 (就像 Winows 上的 Notepad)，其实 Nano 也支持语法高亮、代码补全的。

高亮：github.com/scopatz/nanorc

补全：github.com/orsonteodoro/nano-ycmd

还有zile和mg啦, emacs的确是有点大, 但是zile和mg是一个更小的版本啦, zile有一些无伤大雅的小bug, mg会更稳定一些.<br />
mg和zile提供多重BUFFER和undo等高级功能.

Vim 和 nano 是最流行的 CLI 文本编辑器 之二。

# Vim 与 nano：你应该选择哪个？

我们需要利用文本编辑器来做笔记、写程序，或者编辑系统配置文件来完成一些事情。

不管你用来做什么，你的 Linux 发行版已经预装了文本编辑器。

你很可能会注意到一些 [最好的现代文本编辑器](https://itsfoss.com/best-modern-open-source-code-editors-for-linux/)，如 Gedit、Geany、Kate 等，它们已经预装在你的 Linux 发行版中。然而，这些都是基于 GUI 的程序。

如果你想通过终端访问文本编辑器怎么办？你应该发现它也内置在你的 Linux 发行版中了。

Vim 和 nano 是最流行的 [CLI 文本编辑器](https://itsfoss.com/command-line-text-editors-linux/) 之二。

但是，是什么让它们如此受欢迎？你应该选择哪个作为你的文本编辑器？让我指出一下 Vim 和 nano 的区别，以帮助你决定。

### 1、基于终端的编辑器介绍

nano 和 Vim 都提供了大部分的基本功能。虽然 nano 在大多数 Linux 发行版上是内置的，但你必须手动安装 Vim。

为了比较这两者，让我给你简单介绍一下这两者。

#### Vim

Vim 是 “Vi” 文本编辑器的改进版，开发于 1991 年。Vim 是 “<ruby> Vi 改进版 <rt>  Vi IMproved </rt></ruby>” 的意思。

Vi 是一个基于终端的文本编辑器，最初于 1976 年为 Unix 操作系统而开发。Vim 是它的一个具有现代功能的增强版。

考虑到它的各种功能可以帮助编辑程序文件，它也被称为“程序员的文本编辑器”。虽然它提供了一些高级功能，但你也可以用来编辑纯文本文件。

#### GNU nano

GNU nano（我们在文章中称它为 “nano”）是一个简单的基于终端的文本编辑器，其灵感来自于 Pico —— 这个基于 Unix 的文本编辑器是华盛顿大学 1989 年开发的 Pine 电子邮件套件的一部分。

Pico 文本编辑器没有 GPL（许可证），这使得它很难被纳入 Linux 发行版。

因此，nano 被开发出来作为它的自由软件替代品。nano 编辑器最初被称为 “tip”，然后在 Richard Stallman 宣布它成为正式的 GNU 程序之前重新命名为 nano。

这个编辑器的亮点是它的易用性和极小的学习曲线。你不一定需要成为程序员才能使用 nano。

### 2、功能差异

下面是 Vim 和 nano 的主要功能差异：

#### Vim 的主要特点

* 多级撤销
* 语法高亮
* 命令行编辑
* 文件名补完
* 多窗口和缓冲区
* 折叠
* 会话
* 支持宏

#### nano 的主要特点

* 打开多个文件
* 逐行滚动
* 撤销/重做
* 语法着色
* 行号

请注意，一般来说，Vim 提供了更高级的功能。然而，它们都提供了编辑系统配置文件、编程和文本编辑等基本功能。

### 3、用作文本编辑器

在 Vim 或 nano 中打开一个文件很简单，只要输入你想使用的编辑器的名字，然后再输入文件的路径。路径可以是文件的绝对路径，也可以是文件的相对路径。

```
vim Documents/text.txt

```

```
nano Documents/text.txt

```

但是，除了用作文本编辑器访问或打开一个文件之外，还有很多功能，对吗？

如果你想快速比较一下，这里有一些基于我的使用情况的比较点：

Vim：

* 模式驱动的编辑器
* 在开始时有巨大的学习曲线
* 会话恢复
* 语法高亮/着色
* 提供高级功能

nano：

* 易于使用（经常使用的功能及其组合键列在底部）
* 不存在学习曲线
* 旨在进行快速编辑

nano 和 Vim 的主要区别在于，它们的目标受众非常不同。

#### Vim

Vim 是一个模式驱动的编辑器。这意味着字母、数字和标点符号键在按下时都要做一件独特的事情，而不是在屏幕上打出一个字符。

这些模式包括：

* 正常模式
* 视觉模式
* 插入模式
* 命令行命令
* 命令行编辑

默认情况下，当你启动 Vim 时，它以 **正常** 模式打开。每个键都有其独特的功能，不会立即开始输入所按下的字符。

不管什么模式，如果你愿意，你也可以 [把 Vim 配置成一个写作工具](https://news.itsfoss.com/configuring-vim-writing/)。

要知道更多关于这些有趣的事情，你可以参考我们关于 [基本 Vim 命令](https://linuxhandbook.com/basic-vim-commands/) 以及 [Vim 技巧和窍门](https://itsfoss.com/pro-vim-tips/) 的文章。

在正常模式下，按特定的键会移动你的光标。

例如，如果你按下 `l`（小写字母 L），它将把光标向右移动一个字符，按 `h` 键将把光标向左移动一个字符。

如果你想把光标向下移动一行，你就按 `j` 键，如果要把光标向上移动一行，你应该按 `k` 键。

在正常模式下 `l`、`k`、`j`、`h` 是导航键。虽然你可以用方向键来移动，但这样做更有效率。

这些是 Vim 中的基本导航键。

接下来最常用的键是 `w`、`b`、`e`：

* 按 `w` 键可将光标移到下一个词。如果它已经在一个词的开头，它就会移动到下一个词的开头。
* 按 `b` 键，光标会移到左边的词的开头。
* 而 `e` 键，则将光标移到右边的词的末尾。

你甚至可以用这些键混合数字（作为前缀）。例如，按 `6w` 可以将光标向前（向右）移动六个词。

如果你想进入一个模式，你必须按类似的组合键：

* `i` 为插入模式
* `CTRL+C` 回到正常模式
* `:wq` 写入文件并关闭窗口。

最后，我们已经 [列出了退出 Vim 的多种方法](https://itsfoss.com/how-to-exit-vim/)，如果你想了解一下的话。

这只是冰山一角。要学习更多关于 Vim 的知识，你可以使用`vimtutor` 命令，它可以给你提供大多数基本命令的信息，如删除、编辑、保存文件等。

#### GNU nano

nano 有一个基本的交互界面，在窗口的底部给你提供关键信息。

要想有个初步的了解，你可以参考我们的 [nano 编辑器指南](https://itsfoss.com/nano-editor-guide/)。

你不需要参考手册页或任何文档来执行基本操作。这就是为什么与 Vim 相比，nano 被认为是用户友好的。

尽管如此，nano 中使用的一些术语仍然是“旧术语”，一个例子是 “<ruby> 写出 <rt>  Write Out </rt></ruby>”、“<ruby> 在哪里 <rt>  Where Is </rt></ruby>”短语，而不是分别用“<ruby> 保存 <rt>  Save </rt></ruby>”和“<ruby> 查找 <rt>  Find </rt></ruby>”。

但是，这并不是什么大问题。

虽然很容易习惯，但它与使用记事本或 Gedit（GUI 程序）并不完全相同。

例如，在大多数现代编辑器中，执行剪切操作的组合键通常是 `Ctrl + X`，但在 nano 中，它是 `Ctrl + K`。

符号 `^` 是用来表示将 `Ctrl` 键作为修饰键使用，并与旁边的键组合使用。

你还可以找到像 `Ctrl + F`（将光标向前移动）、`Ctrl + B`（将光标向后移动）这样的组合键。一些快捷键包括：

* `Ctrl + X` 退出
* `Ctrl + O` 写入（或保存为）
* `Alt + U` 撤销上一个动作
* `Ctrl + ←` 向后退一个字
* `Ctrl + →` 向前进一个字

你可以看看 [GNU nano 的官方速查表](https://www.nano-editor.org/dist/latest/cheatsheet.html) 来学习更多的快捷键。

总的来说，nano 是一个更适合初学者的编辑器，当你只想偶尔编辑一个文件时，它可以简单地让你完成。

### 4、学习曲线

考虑到上面的所有信息，你一定已经意识到 Vim 与你所习惯的传统文本编辑器不同。

这是真的，这就是为什么 Vim 在学习的初始阶段会显得很艰难。

然而，对于高级用户来说，使用宏、自动补完等高级能力很重要，可以节省时间。

因此，如果你是一个程序员，或者碰巧经常编辑许多文件，Vim 的学习曲线可能是富有成效的。

另一方面，nano 提供了极小的学习曲线，而且感觉比基于图形用户界面的文本编辑器如 Gedit 或 Notepad 更让你熟悉。

### 哪个是最适合你的？

Vim 和 nano 都是合格的基于终端的文本编辑器。但是，当涉及到你如何与上述编辑器互动和使用时，它们有很大的不同。

Vim 很灵活，可以适应各种工作流程，前提是你已经习惯了它的工作方式。

相比之下，nano 工作起来很简单，可以帮助你编辑任何你想要的东西。

如果你还不确定，我建议先开始使用 nano。而且，如果你认为你需要更快地完成工作，并且想要更多的功能，那么就换成 Vim。

### 常见的问题

继续，让我来谈谈几个问题，这将有助于你获得一个良好的开端。

**Vim 比 nano 好吗？**

从技术上讲，是的。但是，如果你不需要它提供的所有功能，使用起来可能会感到力不从心。

**程序员是否使用 Vim？**

系统管理员和程序员喜欢 Vim 的高级功能。所以，是的，他们倾向于使用它。

**nano 是否更受欢迎？**

可以说是的。nano 是一个基于终端的编辑器，被大多数用户使用。此外，它还内置在大多数 Linux 发行版中。

因此，它在用户中普遍受欢迎，而 Vim 仍然是一个为特定人群服务的编辑器。

---

via: <https://itsfoss.com/vim-vs-nano/>

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

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


用 Juk 在 Linux 上听你喜欢的音乐

Summary: Juk 是 Linux 上的 KDE Plasma 桌面的默认开源音乐播放器。

它是多么幸运啊，成为 KDE Plasma 桌面上的默认播放器。

真挺好的，用了一段时间了，简洁，优雅，占用低。就是我的歌词显示有点问题无法显示

# 用 Juk 在 Linux 上听你喜欢的音乐

>
> Juk 是 Linux 上的 KDE Plasma 桌面的默认开源音乐播放器。
>
>
>

KDE 项目不只是提供了一个著名的桌面，它还产生了很多软件，从 [视频编辑](https://opensource.com/article/21/12/kdenlive-linux-creative-app)、[摄影](https://opensource.com/life/16/5/how-use-digikam-photo-management) 和 [插图](https://opensource.com/article/21/12/krita-digital-paint) 工具，到图形计算器、电子邮件和办公工作。这些都是生产力工具，但 KDE 也适合于放松。它有游戏和媒体播放器，而我使用的音乐播放器是 [Juk](https://juk.kde.org/)。

### 在 Linux 上安装 Juk

只要你的 Linux 发行版提供 KDE 软件包，你就可以用你的包管理器安装 Juk。

在 Fedora、Mageia 和类似发行版上：

```
$ sudo dnf install juk

```

在 Elementary、Linux Mint 和其他基于 Debian 的发行版上：

```
$ sudo apt install juk

```

### 使用 Juk

当你第一次启动 Juk 时，你会被问到你想用什么目录作为你的音乐集的来源。选择你希望 Juk 寻找音乐的文件夹，并可选择排除你希望 Juk 忽略的任何子目录。

取决于你有多少音乐，Juk 可能需要一些时间来解析文件系统和元数据。当它完成后，通常的 Juk 窗口就会出现，你所有的音乐都在一个叫做“<ruby> 收藏列表 <rt>  Collection List </rt></ruby>”的中央收藏列表中。

在顶部的搜索栏中，你可以在任何领域搜索任何字符串。双击歌曲，开始播放。

Juk 默认为连续播放，这意味着在它播放完你的选择后，它会继续播放收藏列表中的下一首歌曲，即使你已经将你的列表过滤到只有一首歌曲。这使音乐总是会不断播放，就像一个真正的点唱机。

就我个人而言，我更喜欢听完整的专辑，中间有足够的休息时间去厨房喝咖啡，所以我使用播放列表。

### Juk 中的播放列表

Juk 中的播放列表可以包含你收藏列表中的任何内容。Juk 会在播放列表中播放一次，然后停止。

要创建一个播放列表，在左边的播放列表栏中点击右键，在出现的上下文菜单中选择 “<ruby> 新建 <rt>  New </rt></ruby>”。你可以创建一个空的播放列表，或者从你硬盘上的特定文件夹中创建一个播放列表。

### 自动播放列表

你还可以创建一个与特定搜索绑定的特殊播放列表，这对那些你经常购买并添加到你的收藏中的艺术家很有用。有了搜索播放列表，他们的新音乐就会被添加到他们的播放列表中，而无需你的手动干预。

### 打标签

让我们面对现实吧，音乐播放器是一堆一堆的出现，而且它们大多都做同样的事情。然而，Juk 增加了一个重要的功能。它让你有能力修改元数据标签。

很多音乐的标签是不一致的、不完整的，或者根本就没有，所以当你发现它们出现在播放队列中时，能够纠正它们是一种奢侈。

它还有一个标签猜测器的功能，它试图解析文件名，并对歌曲进行相应的标记。

### 明显的选择

当你在 KDE 上寻找一个音乐播放器时，Juk 是一个简单而明显的选择。当然，还有很多其他非常好的选择，正如我们的常驻发烧友 [Chris Hermansen](https://opensource.com/users/clhermansen) 在他的 [3 个开源音乐播放器](https://opensource.com/article/17/1/open-source-music-players) 文章中详细介绍的那样，但有时你只是想使用你最容易想到的东西。Juk 既能直观地使用，又能出色地完成它的任务。它是多么幸运啊，成为 KDE Plasma 桌面上的默认播放器。

---

via: <https://opensource.com/article/22/2/listen-music-linux-juk-kde>

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

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


硬核观察 #566 RISC-V 走向成功的原因

Summary: 更多：• 主要浏览器厂商共同建立了浏览器兼容性标准 • 《第二人生》开始对游戏中的购买行为收税

RISC-V 社区成员认为成功的原因是免费和自由……这……<br />
难道前面列举的OpenRISC不免费不自由？

一直用 Chromium，没有 Mac，Safari 没用过。

Firefox 倒是很想支持它，可是一大堆网站渲染出来，样式多多少少和 Chromium 上有些不一样，看着怪怪的。

看到 RISC-V 就想起了瑞士……中立……呵呵

有道理

# 硬核观察 #566 RISC-V 走向成功的原因

### RISC-V 走向成功的原因

RISC-V 不是第一款开源指令集的处理器，在它之前有 OpenPOWER、OpenSPARC、OpenRISC 等等，但 RISC-V 在短时间内就取得了令竞争对手 [难以匹敌的成功](https://semiengineering.com/why-risc-v-is-succeeding/)。RISC-V 社区成员认为成功的原因是免费和自由，一些人想要能免费使用的核心，另一些人则想要自由定制核心。RISC-V 是第一种开放可定制的指令集，对自定义扩展的支持给予芯片设计师巨大的自由度。相比 ARM，它促进了竞争，你只能从 ARM 获得 ARM 核心，但你可以从不同供应商获得不同的 RISC-V 核心实现。

>
> 老王点评：RISC-V 就是 CPU 界的 Linux，总有一天，它会复制 Linux 的成功。
>
>
>

### 主要浏览器厂商共同建立了浏览器兼容性标准

有史以来第一次，所有主要的浏览器供应商坐到了一起，苹果、谷歌、微软和 Mozilla 等合作建立了一个名为 Interop 2022 的基准，以解决浏览器兼容性问题。该基准主要是面向设计的，衡量主要浏览器在 15 个 Web 平台规范的测试套件中的表现。现有浏览器的稳定版本，[情况看起来都相当糟糕](https://wpt.fyi/interop-2022)。Chrome 和 Edge 得分 61 分；Firefox 得分 69分；Safari 得分 50 分。而它们的测试版本的表现要好一些。

>
> 老王点评：虽然现在浏览器兼容性问题看起来没那么令人苦恼，但是我没想到各个主要浏览器的兼容性得分会这么低。
>
>
>

### 《第二人生》开始对游戏中的购买行为收税

《第二人生》是一个历史悠久的在线虚拟空间，吸引着近百万的月度活跃用户，自 2003 年推出以来，它 [首次宣布](https://arstechnica.com/gaming/2022/03/even-in-the-metaverse-you-cant-escape-the-taxman/) 将对游戏中的购买行为收取美国用户的当地销售税。从 3 月 31 日开始，《第二人生》的用户将被要求缴纳订阅费和土地费等经常性账单的地方税。它将继续减免一次性购买产生的税款，如改名和购买游戏中的货币，但这些费用将在“未来的某个时候”转嫁给用户。

>
> 老王点评：这才叫现实走入虚拟世界，看来以后的元宇宙也免不了税务官。
>
>
>

### 回音

* [三星表示](https://9to5google.com/2022/03/04/samsung-gos-update-coming-throttling/)，它正在努力“尽快”发布一个软件更新，允许用户通过游戏启动器来切换性能降低的开关，以解决 Galaxy 手机的 [应用降速](/article-14327-1.html) 的投诉。


在 Linux 手机上测试了新的 Maui Shell 后我发现……

真希望有一天也能在手机上自由的安装各种 Linux 系统，换成喜爱的桌面。<br />
再运行 neofetch、截图、晒图、锁屏，美滋滋。

# 在 Linux 手机上测试了新的 Maui Shell 后我发现……

>
> 我在 PinePhone 上测试了 Maui Shell，结果有好有坏。如果你想冒险尝鲜一下，可以按照这个说明进行试验！
>
>
>

就在一个多月前，我们写了 [Maui Shell 初窥](/article-14136-1.html)。它是由 Nitrux Linux 团队开发的，我对它流畅的视觉效果，特别是它的融合功能印象深刻。

同时，我结束了 [我一年的 PinePhone 日用实验](/article-14235-1.html)，这意味着它可以再次自由地进行实验。结果，我很快就自己安装了 Maui Shell，花了不少时间来测试它。

下面是我的发现！

### 关于 Maui Shell 开发状态的简短说明

在我们开始之前，我想指出，Maui Shell 仍处于早期开发阶段。因此，我一般不会提到我注意到的 bug，而是将重点放在它的更基本的方面。

不过，对于更大的、更耗时的问题例外，所以请记住这一点。

说完了这些，让我们开始测试吧！

### 手机上的 Maui Shell

安装完之后，我就看到了 Maui Shell 的（现在熟悉的）桌面上。随即，非常明显的是，它的缩放比例完全错误，这使得它很难使用。

幸运的是，Maui 项目的 Telegram 群组的人提供了极大帮助，我没用了一个小时就成功地修复了缩放比例（感谢 @wachidadinugroho）。

现在好了，我开始测试。

#### 其性能堪比糖浆流动

如果你读过我的 PinePhone 点评，你可能记得把它的性能比作糖蜜滴落的速度。不幸的是，Maui Shell 将这一点提升到了一个全新的高度。即使是最基本的互动，如打开快速控制菜单，也要花上五秒钟的时间！

不幸的是，我的水平还不足以判断这种缓慢的原因，但它很有可能是由软件渲染造成的。如果你不清楚，“软件渲染”是指图形不在 GPU 上渲染，而是在效率和优化程度都更低的 CPU 上（利用软件来）渲染。

我考虑的另一个可能的罪魁祸首是糟糕的优化（毕竟它还处在早期阶段）。如果是这样的话，那么在未来的几个月里，极有可能在为 Maui Shell 的第一个稳定版本做准备的过程中修复这个问题。

然而，正如我之前所说的，对我的早期看法要多加注意。

#### 有望实现的用户体验

与几乎所有的移动 UI 一样，Maui Shell 在触摸屏上使用起来简单而直观。然而，它也结合了许多桌面元素，这对提高用户体验有很大的作用。

例如，从屏幕顶部向下滑动会出现一个快速设置菜单，类似于在安卓和 iOS 上发现的那些。

然而，可以单独点击顶部通知栏的不同部分，会只显示相关的设置，类似于许多桌面环境面板和任务栏上的各种小程序。

现在，让我们前往 **窗口管理**。

对于窗口管理，Maui Shell 团队显然从 GNOME 和 iOS 中获得了一些灵感，从屏幕底部向上滑动会显示一个类似 GNOME 的所有运行中的应用程序的概览。我发现这非常直观和简单，老实说，我很惊讶以前没有这样操作过！

最后，托盘也是 Maui Shell 在手机上的一个重要方面。它在默认情况下自动隐藏，可以通过从屏幕底部向上轻扫来访问。从这里，它显示了所有正在运行的应用程序的图标，以及一个打开应用程序启动器的按钮。

说到应用启动器，它与 iOS 14 及更高版本中的应用库非常相似。每个应用都被分类，只需轻点几下就能轻松找到并启动。

总的来说，其实用性有点独特，而且值得探究。而且，这种特性也延伸到了应用程序，它们是用 Mauikit 和 Kirigami 制作的。

我认为 Maui Shell 团队把基本的东西做得很完美。

#### 应用程序超棒

任何用 Mauikit 构建的东西都能与 Maui Shell 完美整合。到目前为止，最大的 Mauikit 应用程序集来自 Maui Shell 的开发方 Maui 项目。其中一些包括：

* Index
* Nota
* Station
* VVave
* Pix
* Clip
* Buho
* Shelf
* Communicator

所有这些应用都能在移动和桌面设备上完美运行，并将桌面级应用带到手机上。我对 [Index](https://mauikit.org/apps/index/) 特别满意，它是一个有趣而实用的手机文件管理器。

除了 Mauikit 应用外，Kirigami 应用也很好用。因此，在桌面和移动设备上都有一个非常适合 Maui Shell 的庞大的应用程序库。

### 其他观点

除了这些观察之外，还有一些小问题我想提一下：

* 不幸的是，现在似乎还没有虚拟键盘。我通过使用 USB-C 连接的键盘来规避这个问题，但这并不意味着不能把它作为手机使用。
* 我还发现了几个缩放的问题，我无法解决这些问题。这些问题包括应用程序的缩放比例远远超过 Maui Shell 本身，以及根本没有缩放比例。这也许是由于我的错误造成的，但我觉得不能指望一般的用户能够钻研晦涩的 Qt 专用环境变量。

### 自己测试 Maui Shell

如果所有这些问题都不影响你，那么你可以使用下面的说明在 PinePhone 上测试 Maui Shell。需要注意的是，这些都是针对 PinePhone 的，但也可以根据其他需要进行修改：

* 下载 [Arch Linux ARM](https://github.com/dreemurrs-embedded/Pine64-Arch/releases) 并刷入到 SD 卡上
* 用 SD 卡启动，并连接一个外部键盘
* 使用凭证 `alarm`/`123456` 登录
* 现在使用 `nmtui` 连接到 Wi-Fi，并使用 `sudo pacman -Syu` 更新软件包列表
* 运行以下命令（这些命令将需要很长的时间来运行）：

```
sudo pacman -S base-devel
git clone https://aur.archlinux.org/packages/maui-shell-git
git clone https://aur.archlinux.org/packages/mauikit-git
cd mauikit-git
makepkg -Asi
cd ..
cd maui-shell-git
makepkg -Asi

```
* 使用 [nano](https://news.itsfoss.com/gnu-nano-6-0-released/) 创建一个启动脚本：

```
cd
nano start.sh

```

输入如下内容：

```
#!/bin/sh

# in case it's not detected
# or you wish to override
#
# export QT_QPA_EGLFS_PHYSICAL_WIDTH=480
# export QT_QPA_EGLFS_PHYSICAL_HEIGHT=270

export QT_QPA_PLATFORM=eglfs
export QT_AUTO_SCREEN_SCALE_FACTOR=0
export QT_SCALE_FACTOR=2
cask -r -plugin libinput

```
* 使脚本可执行：`chmod +x start.sh`。

现在，可以用 `./start.sh` 启动 Maui Shell 了。

就这样！

你对 Maui Shell 有什么看法？你认为它的融合功能有用吗？请在下面的评论中告诉我们！

---

via: <https://news.itsfoss.com/tested-maui-shell/>

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

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


如何在 KDE Plasma 桌面进行屏幕共享

不得不说，GNOME/KDE 的软件是真的全,啥样的软件都有。

很多需求/操作可以让用户不用跳出 GNOME/KDE，保证了一致的操作体验。

不足的是数量虽然多，但优质的软件很少。

# 如何在 KDE Plasma 桌面进行屏幕共享

>
> krfb 和 krdc 的组合是使远程 Linux 支持变得无挫折感的宝贵工具。
>
>
>

如果你曾经做过专业的或出于家庭义务的远程支持，在待命支持时，解决问题只是第二步，更重要的是可见用户屏幕上的实际内容。有多少次你描述了复杂的桌面任务，后来才发现你的用户甚至还没有打开他们的电脑？支持是重要的，但挫折感是真实的，对于需要支持的人和慷慨地试图提供支持的人来说，这都是一种共同的经历。我相信，作为学习新技能的一种方式，人们自己执行任务是很重要的，但也有一种说法是观察专家应该如何做。这就是屏幕共享的作用，KDE Plasma 桌面已经内置了它。

### 网络安全

Plasma 桌面使用点对点的邀请模式进行屏幕共享。用户启动一个应用，启动一个虚拟网络连接（VNC）服务器，这时，支持人员就可以远程查看甚至控制计算机。如果这听起来像是潜在的不安全，那是因为它可能就是，但有防火墙的干预。如果你是一个与你不在同一网络上的人的支持人员，那么你必须在屏幕共享工作之前建立一个从你的网络到你的用户的网络的安全通道。理想情况下，你会在紧急情况发生前完成这项工作。

1. [配置用户的路由器](https://opensource.com/article/20/9/firewall)，将 VNC 端口（默认为 5900，但你可以使用任何你喜欢的端口）路由到他们的计算机。
2. [在用户的本地防火墙中打开一个服务](https://opensource.com/article/19/7/make-linux-stronger-firewalls)，允许 VNC 流量（在你在第一步中指定的端口）。

### 远程邀请

为了启动屏幕共享会话，用户必须启动 **krfb**（表示 “KDE remote frame buffer”）应用。这将启动一个 VNC 服务器，并创建一个临时密码。

**krfb** 使用的默认端口是 5900，但如果你需要，可以在 **krfb** 设置中改变。不过，这可能是你想提前做的事情，这样你就可以避免向你的用户解释如何改变协议的端口。

### 查看和控制

当这个窗口打开时，你可以使用你喜欢的 VNC 客户端通过 VNC 登录。KDE 有 **krdc**（表示 “KDE remote desktop client”）应用。在支持的计算机上，启动它并向它提供目标 IP 地址。当你被提示输入密码时，输入你正在连接的 **krfb** 会话中显示的密码。

连接上后，你就可以看到你用户的屏幕，你可以在他们遵循你的指示时引导他们。如果他们在遵循你的指示方面有困难，那么你可以控制他们的鼠标，并演示如何做某事。默认情况下，**krfb**（即他们正在运行的应用）在将控制权交给你之前会征求他们的同意。

### 帮助进行中

能够看到你的用户所看到的东西可以加速故障排除，减少支持电话双方的挫折感。只要你事先为你的支持设置好网络，**krfb** 和 **krdc** 的组合对于指导新用户完成 Linux 桌面发现之旅的 Linux 专业人士来说是很有价值的工具。

---

via: <https://opensource.com/article/22/2/screen-share-linux-kde>

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

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


硬核观察 #567 树莓派不考虑采用 RISC-V 核心

Summary: 更多：• Linux 基金会发布“第二次普查”报告 • 超过一半的安全漏洞已经存在五年以上了

产业链生态不成熟，只会更贵。树莓派为什么要用?

来自广东佛山的 Chrome Mobile 75.0|Android 10 用户

这几天，树莓派的价格炒得太离谱了。

树莓派 和 arm 都是 英国公司，应该有什么肮脏的py交易把

# 硬核观察 #567 树莓派不考虑采用 RISC-V 核心

### 树莓派不考虑采用 RISC-V 核心

树莓派上市于 2012 年 2 月 29 日，已经上市十年了，到目前为止已经生产了大约 4600 万台树莓派。树莓派的负责人在 [接受采访时表示](https://www.theregister.com/2022/02/28/pi_at_10/)，RISC-V 并不在计划之内，甚至下一代树莓派也不会考虑。即便他也承认 RISC-V 核心和树莓派 4 的 ARM 核心一样好，但在 2030 年之前，RISC-V 树莓派的可能性或许只有 10%。

>
> 老王点评：树莓派在硬件上从来不是自由的，虽然用的是 Linux 操作系统。
>
>
>

### Linux 基金会发布“第二次普查”报告

Linux 基金会与合作方联合进行了自由开源软件库的“<ruby> 第二次普查 <rt>  Census II </rt></ruby>”。这是 2015 年进行的“第一次普查”的后继报告，“第一次普查”目的是确定 Debian Linux 中对内核的运行和安全最关键的软件包。“[第二次普查](https://www.linuxfoundation.org/tools/census-ii-of-free-and-open-source-software--application-libraries/)”是为了更全面了解自由开源软件采用情况。该报告汇总了来自数千家公司生产应用中使用的 50 多万个自由开源软件库的数据。调查的重要发现之一是，许多最广泛使用的自由开源软件是由少数几个贡献者开发的。

>
> 老王点评：也就是说现在的自由开源软件生态的基础还是很不稳定。
>
>
>

### 超过一半的安全漏洞已经存在五年以上了

安全研究人员的 [分析表明](https://www.zdnet.com/article/these-old-security-vulnerabilities-are-creating-new-opportunities-for-hackers/)，企业网络中存在的 61% 的安全漏洞是 2016 年甚至更早的，尽管补丁已经出现了至少五年。甚至一些继续被利用来入侵网络的漏洞已经超过十年了。困扰企业的最常见的未修补漏洞之一是 CVE-2017-11882，这是微软 Office（包括 Office 365）中的一个老的内存损坏问题，该问题在 2017 年被发现并修补，但自 2000 年以来一直存在。它是 Windows 上最活跃的漏洞之一，而该漏洞几乎不需要用户的交互，这为钓鱼活动创造了条件。

>
> 老王点评：相比互联网，企业网络的安全其实很脆弱。
>
>
>

### 回音

* 之前我们 [报道](/article-14321-1.html) 过，勒索团伙要求在本周五之前，英伟达“开源”其所有显卡驱动，否则将公开更多技术资料。而现在最后期限已经过了，吃瓜群众们还在等黑客兑现威胁，或英伟达“开源”驱动程序，但目前双方都没有动静。不过勒索团伙用偷来的英伟达证书 [签署了两个恶意软件](https://www.bleepingcomputer.com/news/security/malware-now-using-stolen-nvidia-code-signing-certificates/)。


为什么每个人都可以试试 Linux

Summary: 如果你对 Linux 有着充满好奇，那开源社区可以让你轻松上手 Linux。

Elementary ?和大牌搭边吗?

广义来说，全球几乎每个人都在用 Linux 系统。

+ 搭载 Android 系统的手机

+ 很多智能电视、电视盒子也用的 Android 系统

狭义来说，就是 Linux 桌面系统没啥人用，才一天天 "每个人都应该试试 Linux"、"使用 Linux 的 XX 个理由"。

你看，就没有这么说 Windows 的。

还有些汽车的车机也是 Android 系统。

fedora 5 年用户在此

这必须得承认，Linux 桌面仅仅个位数的占有率~~

你说的对

你说的对

你说的对

如果你对 Linux 有着充满好奇，那开源社区可以让你轻松上手 Linux。

# 为什么每个人都可以试试 Linux

>
> 如果你对 Linux 有着充满好奇，那开源社区可以让你轻松上手 Linux。
>
>
>

*开源朗读者 | 若愚*

如今，人们有更多的理由喜欢 Linux。在这里，我会分享使用 Linux 的 21 个不同的理由。我们来讨论讨论，为什么每个人都可以尝试一下 Linux。

Linux 对外行人来说，好像是一个神秘的东西。每当人们说起 Linux，就觉得它是计算机管理员或者系统管理员使用的，但也在讨论在笔记本电脑和手机上使用 Linux。技术网站上列出了 [你需要知道](https://opensource.com/article/19/12/linux-commands) 的 [十大 Linux 命令](https://opensource.com/article/18/4/10-commands-new-linux-users)，但也有很多人在讨论 [Linux 桌面（不止一个）是多么令人激动](https://opensource.com/article/20/5/linux-desktops)。

那么， Linux 到底是干嘛的呢？

Linux 对可用性的支持是它众多重要特性之一。如果你对 Linux 有着充满好奇，那开源社区可以让你轻松上手 Linux。

### 先尝试 Linux 应用

无论是从 Windows 换到 Linux、还是在 Windows 和 Mac 之间横跳，亦或是从 Mac 换到 Linux，要想改变一个人的计算机操作系统的使用习惯是一件很难的事。虽然这件事很少会去讨论，不过现在的电脑是一个比较个性化的东西，每个人都习惯于自己电脑当前的使用习惯，他们往往不愿意去做太大的变化。对我来说，就算在工作电脑跟个人电脑中来回切换（两者都运行相同的操作系统），也需要我调整我的心理和肌肉习惯，仅仅是因为两个电脑针对不同的活动场景进行了优化。尽管我被附近的人称为“很了解计算机的家伙”（，我也这么认为）。但如果我不得不更换我常用的操作系统，我会觉得自己的生产力跟舒适感将在一两周内直线下降。不过这还是比较表层的，虽然我知道怎么用其他的操作系统，但是我需要时间去形成新的直觉跟习惯，需要记住在新系统中，一些不起眼的配置选项的位置，还得知道要怎么使用新的功能。

出于这个原因，我经常告诉那些对 Linux 感到新奇的人，学习 Linux 的第一步就是要去使用 Linux 的应用。实际上，Linux 上专用的应用程序不多，主要是因为 Linux 的大多数应用程序是开源的，因此热衷于在所有平台之间移植。在 Linux 上的很多应用程序，可以在你目前的非 Linux 的平台上去尝试。把替换你默认的应用程序作为一个目标，不管是出于习惯还是方便，都要用开源的等价物。

### 应用替换

这个练习的目的是通过你最终要运行的应用软件，来实现向 Linux 的软过渡。一旦你习惯了一套新的应用程序，那么在 Linux 系统上，除了系统设置和文件管理外，就没有其他什么要适应的了。

如果你还不确定哪个是自己常用的应用，只需看看你的最近使用的应用程序列表（如果你的系统上没有最近使用应用的列表，那还等啥，赶紧换成 Linux 系统吧）。一旦你确定了必须使用的应用程序，可以看看我们的 [应用替代方案](https://opensource.com/alternatives) 页面，了解许多被视为与流行的专有应用程序等效的常用开源应用程序。

### 获取 Linux

不是所有的开源软件都能移植到其他平台，并从在 Linux 上运行而受益。如果你想最终切换到 Linux，那就得完成这个过渡。幸运的是，要安装 Linux 就像下载它一样简单，几乎就像是另一个开源程序一样。

通常，Linux 的安装镜像提供了实时模式跟安装模式两种模式，这意味着你可以从 Linux 介质启动，并且在实时模式下运行使用，而无需将系统安装到计算机。这是了解操作系统的好方法，但因为只是一种临时体验，所以启动后不会保留数据。但是，有些发行版，如 [Porteus Linux](http://porteus.org)，是专门为在 USB 上运行而设计的，这样你的个人数据就能保存。我在钥匙串上挂了一个 Porteus 的 U 盘，所以我无论在哪里，我都有一个可以启动的Linux 系统。

### “最好的” Linux

一旦你决定开始安装 Linux 系统，你会发现有很多 Linux 发行版都是免费的。如果你之前用的操作系统版本只有一两个选择（例如，家庭版或商业版），那么你会对 Linux 操作系统有这么多发行版感到困惑。不过，实际情况没这么复杂。Linux 就是 Linux，它的下载和安装的不同“流派”没有什么太大的不同。像 [Fedora](http://getfedora.org)、 [Debian](http://debian.org)、[Linux Mint](http://linuxmint.com) 和 [Elementary](http://elementary.io) 这些大牌的系统厂商都提供了同样的体验，只是在重点略有不同。

* Fedora 以软件更新迭代快而出名
* Linux Mint 可以轻松安装缺失的驱动程序
* Debian 因能提供长期的支持而受欢迎，因而更新是相对缓慢，但是可靠性很高
* Elementary 提供了精美的桌面体验和几个定制的特殊应用程序

总而言之，所谓最好的“Linux 系统”，即是最适合你的 Linux 系统。而最适合你的 Linux，就是，在你尝试过后，发现你所有的计算机功能仍然能按预期工作的 Linux。

### 获取驱动程序

大多数的驱动程序已经被捆绑在 Linux 的内核中了（或者作为内核模块），特别是在使用一到两年前的计算机零件和外围设备时常常如此。对于已经上市一段时间的设备，Linux 程序员有机会去开发驱动程序或者将公司的驱动程序集成到系统里。我曾不止一次让人惊讶，只需将 Wacom 图形输入板、游戏控制器、打印机或扫描仪连接到我的 Linux 计算机中，不需要下载安装驱动程序，而且几乎不用配置，可以立即使用。

专有操作系统在处理设备驱动程序方面有两种策略。要么是限制用户在操作系统中使用的设备，要么是付费给公司，让他们编写驱动程序并与设备一起提供。第一种方法有种让人不适的限制性，但是大多数人（可悲的）习惯了某些设备只能在某些平台上运行的想法。而后一种方法，被认为是一种奢侈，但在实践中，这种方法太过于依赖程序员。旧货店有很多计算机外围设备，虽然它们设备状况良好，但却基本上报废了。因为设备制造商已经不再维护此设备在现代系统运行所需要的驱动程序了。

对于 Linux 来说，驱动程序要么由制造设备的厂商来开发，要么是由 Linux 的程序员来开发。这就可能会导致，某些驱动程序集成到操作系统的时间会被延迟（例如，新的设备可能要在发布后六个月才能在 Linux 系统上运行），但它有一个明显的优势，即长期支持。

如果你发现有一个驱动程序还没有进入发行版，那你可以等几个月再试一次，有可能是驱动程序已经集成到了系统的镜像里了，或者可以到不同的发行版中找找有没有你要的驱动程序。

### 为 Linux 付费

通过购买预装 Linux 的 PC 或者经过 Linux 认证的 PC，可以避免所有的选择和关于兼容性的担忧。一些供应商提供预装 Linux 的计算机，如所有的 [System76](http://system76.com) 和部分 [Lenovo](http://lenovo.com) 型号。此外，所有的 Lenovo 型号都有 [Linux 兼容性认证](https://forums.lenovo.com/t5/Linux-Operating-Systems/ct-p/lx_en)。

这是迄今为止尝试使用 Linux 最简单的方法。

### 迈向 Linux

这是一个挑战，浏览自己电脑上安装的每个应用程序，并找到潜在的对应开源替代程序。选择一个你经常使用但不是每天都用的应用程序，在下次要用的时候换成开源的应用程序。花点时间学习新的应用程序，直到能够将它作为你的新的默认程序，或者直到你确定需要尝试一个新的选择。

随着你使用的开源产品越多，你就越准备好进入激动人心的 Linux 世界。最后，你会用上 Linux 桌面还有你最喜欢的开源应用程序。

---

via: <https://opensource.com/article/21/2/try-linux>

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

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


Linux 中国开源社区公开接受投稿

Summary: 你想将你的知识和智慧分享给更多人吗？

仓库地址：github.com/LCTT/Articles

404 - Page not found

有两个问题。

1、为啥至少得有一张符合要求的题图？

如果是翻译投稿，原文有题图还好说。要是原文没题图还得再弄一张题图。自己做吧费时间、还没艺术细胞，网上找又可能有版权。

而且很多人写技术博客也没使用题图的习惯。

2、投稿是否会有分成 (豪绅先捐，百姓后捐。事成之后，豪绅的钱如数奉还，百姓的钱三七分成)。

三七分成，一开口老国粹了，哈哈哈

建议设置个捐赠。

金主先捐，用户后捐。事成之后，金主的钱如数奉还，用户的钱三七分成

来自223.104.217.74的 Chrome Mobile 83.0|Android 11 用户

忘记公开了。现在好了~

应该增加gitee或者其他方式投稿,github有不少时候无法访问

三分有点少吧

不是写了不收取任何费用，也不支付任何报酬嘛

你想将你的知识和智慧分享给更多人吗？

# Linux 中国开源社区公开接受投稿

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

熟悉我们的朋友都知道，Linux 中国（<https://linux.cn/>）的内容以旗下 LCTT 翻译组贡献的内容为主，间或有一些朋友私下投递的稿件，嗯，也有一些我们为金主写的软文。不过，近来，常有朋友问，我们是否接受投稿。

考虑之后，在与我的拖延症搏斗中，我终于设置了一个接受投稿的渠道。遵循我们的传统，投稿方式以 GitHub 协作的方式来进行：

* 仓库地址：<https://github.com/LCTT/Articles>
* 投稿方式：采用拉取请求（PR）方式向仓库投递

### 投稿约定

投稿者递交投稿即表示 **接受** 以下约定：

* 投稿者应拥有其所投稿件及稿件内图片的完整版权，如因此出现的任何版权纠纷，由投稿者承担相应责任。
* 投稿者所投稿件采用 **CC-BY-SA** 协议发布。
* 投稿者及其委托方不得对提交的投稿，及「Linux 中国」发布的投稿提起版权异议。
* 「Linux 中国」有权在其发布平台（包括但不限于 Linux 中国的官网、微信公众号、知乎等）声明原创，并享有相应的原创权利。
* 「Linux 中国」发布投稿不向投稿者收取任何费用，也不向投稿者和任何利益相关方支付任何费用。

### 投稿方式

请按照模板创造你的稿件，默认模板为：`templates/article.md`。

* 稿件接受 Markdown 格式
* 投稿文件名格式：“日期 英文标题.md”，例如：`20220222 How To Make Live.md`
* 投稿请发送拉取请求到 `contributions` 目录，标题为文件名
* 文章内图片请自行放置于图床，并引用
* 文章要求至少有一张符合要求的题图
* 提交投稿后，我们会对稿件内容提出修改意见，符合标准后才会发布

### 内容要求

我们接受纯技术投稿，也接受非技术投稿，但是不接受广告内容。比如：

* 包括 Linux 在内的开源技术，如编程、运维、架构、安全、DevOps、云计算、Linux 桌面、开源软件、操作系统等
* 关于开源文化、历史、思考等
* 与开源有关的最新新闻、事件等

如果文章内容和投稿方存在利益相关，可以在文末对相关产品、事件做简短说明。

如果是个人投稿者，可以在文末做简短介绍。

另外,我们只接受简体中文投稿，如是其它语言，请自行转换。

最后，感谢您的投稿和贡献！


硬核观察 #568 科学家扩展 DNA “字母表”以存储更多数据

Summary: 更多：• 研究人员发布第一个开源的代码生成 AI 模型 • 9% 的安全事件由 USB 和其他可移动介质引起

人类才是最大的安全漏洞。

—— 电影《我是谁：没有绝对安全的系统》

# 硬核观察 #568 科学家扩展 DNA “字母表”以存储更多数据

### 科学家扩展 DNA “字母表”以存储更多数据

科学家们一直在研究一种相当独特的解决方案：将文件、照片和文档存储在大自然自己的信息数据库中 —— DNA。每天，互联网上都会产生几百 PB 的数据，而只要一克的 DNA 就足以存储这些数据。DNA 用四种叫做核苷酸的分子来编码遗传信息，分别用 A、G、C 和 T 来代表。这相当于一个四字母的字母表。为了存储更多数据，科学家们在 DNA “字母表”中人为 [增加了七个新字母](https://www.cnet.com/news/dna-gets-artificial-upgrade-to-store-humanitys-boundless-digital-data/)，即新的核苷酸。为了可以精确地读回合成 DNA 的数据，研究人员使用了深度学习算法和人工智能。

>
> 老王点评：这就是字面意义上的“交换 DNA 就是交换信息”。
>
>
>

### 研究人员发布第一个开源的代码生成 AI 模型

尽管像 OpenAI 和 DeepMind 等已经开发出了强大的代码生成人工智能，但这些系统并没有开源，比如， 为 GitHub Copilot 提供动力的 OpenAI Codex 的训练数据尚未公开。研究人员开发了 [PolyCoder](https://github.com/VHellendoorn/Code-LMs)，这是一个基于 OpenAI 的 GPT-2 的模型，在 12 种编程语言的 249 GB 代码数据库上进行了训练。虽然 PolyCoder 在表现上无法与顶级代码生成器相提并论，但研究人员声称，PolyCoder 能够用 C 语言编写代码，其准确度高于所有已知模型，包括 Codex。

>
> 老王点评：只有开源才能让更多的人参与进来，才能培养出生态，而不仅仅是某些大公司的专有服务。
>
>
>

### 9% 的安全事件由 USB 和其他可移动介质引起

在一份 [报告](https://expel.com/blog/top-attack-vectors-january-2022/) 中发现，可移动媒体占所有安全事件的 9%。而在去除涉及云服务的事件后，这一比例增加到 20%。受信任的 USB 设备可能会感染恶意软件，然后会搜索连接到受害者主机的外部存储设备，以感染它们并进一步传播。当终端用户将 USB 设备从个人设备转移到企业资产时，这种风险会更大。

>
> 老王点评：USB 是安全风险的重要源头，但这事我觉得不能怨 USB。
>
>
>


12 款简单好用的保护隐私的软件

Summary: 本文将会推荐一些简单的软件，可以轻松保护你的网络隐私。

这种类型的文章，这几个软件都说烂了。

Tor、DuckDuckGo、Startpage、Linux Mint... 之类的确很棒，

但文末的 Bitwarden 是夹带私货吗？推荐用 KeePassXC。

有一个整理了各类隐私保护软件的网站：privacytools.io

不过这个站也有 Bitwarden，还是推荐用 KeePass / KeePassXC。

人要恰饭哈

bitwarden自建服务还是不错的，我一直在用，官方的付费功能感觉不太值

本文将会推荐一些简单的软件，可以轻松保护你的网络隐私。

# 12 款简单好用的保护隐私的软件

数据是最宝贵的一项资产。

无论影响好坏，数据收集技术都会一直存在。现实生活中，人们进行分析、研究以及学习，都需要各种各样的数据。

当然，数据收集也会带来风险，比如不法机构会收集用户的浏览数据（或网络活动）。

匿名数据收集等技术虽然在不断发展，但在隐私保护这方面可能做的并不是十分完善。

不过先别担心，保护好自己的隐私并不是件难事。

一些简单好用的软件可以在不影响用户体验的前提下，增强用户的隐私保护。更重要的是，搞明白这些软件，你根本不需要着急花大把的时间。

本文将会推荐一些简单的软件，可以轻松保护你的网络隐私。

### 一些增强隐私保护的基本工具

保护数据安全最有效的办法就是，关注你使用频率最高的产品。

担心数据安全是必要的，但不能顾此失彼，忘记产品最基本的用途。

比如，你使用一款去中心化的社交软件，但是你的亲朋好友都不去用它，他们大多时候还是使用 WhatsApp。那么，你的这种做法就没有任何意义。

因此，我们在这里列出了一些不用付出特别的努力就能轻松试用的软件，并将它们归为以下几类：

* 网页浏览器
* 虚拟专用网络
* 搜索引擎
* 社交软件
* 操作系统
* 密码管理

### 关注隐私保护的开源网页浏览器

从办理银行业务到访问社交媒体，网页浏览器能帮你做各种事情。

如果你选择了一款提供优质安全服务以及强大隐私保护功能的网页浏览器，你几乎就可以高枕无忧了。

在我们推荐的 [最好的网页浏览器](https://itsfoss.com/best-browsers-ubuntu-linux/) 之中，（重点关注隐私的）包括:

#### 1、Tor 浏览器

[Tor 浏览器](https://www.torproject.org/download/) 是一款自由开源的网页浏览器，提供了强大的隐私保护功能。它是火狐浏览器的定制版本。

Tor 浏览器借助 [Tor 网络](https://itsfoss.com/tor-guide/) 连接，通过多个节点来传递你的网络请求，以隐藏 IP 地址和位置信息。

在 Tor 浏览器上浏览网页，几乎没有人可以追踪到你。

然而，Tor 浏览器的浏览体验可能稍差一些，它的响应速度极慢。所以，如果你不介意这一点，Tor 浏览器绝对是你的不二之选。

#### 2、Firefox

可以说，[Firefox](https://www.mozilla.org/en-US/firefox/new/) 是最优秀的 [开源浏览器](https://itsfoss.com/open-source-browsers-linux/)。也难怪 [我会一次又一次地回归 Firefox](https://news.itsfoss.com/why-mozilla-firefox/)。

Firefox 浏览器不仅内置最强大的隐私保护功能，而且还经常引入新的行业标准，以确保用户安全地浏览网页。

你可以在 Firefox 上安装一些 [最好的开源插件](https://itsfoss.com/best-firefox-add-ons/)，然后自行配置，更好地保护自己的隐私。

#### 3、Brave

[Brave](https://brave.com/) 是 Linux 系统上最好的浏览器之一，用户体验清新简洁，外观与 Chrome 有些相似。

Brave 凭借其强大的跟踪保护功能，以及开箱即用的自动运行的跟踪拦截器，一直以来都是 Linux 用户的最佳选择。

请阅读我们的文章：《[Brave vs. Firefox：你的私人网络体验的终极浏览器选择](/article-13736-1.html)》，进一步了解 Brave 的优点与缺陷。

### 保护隐私的虚拟专用网络

无论你使用的是电脑还是手机，虚拟专用网络都可以全程保护你的网络连接。

它还可以隐藏你真实的 IP 地址与位置，让你轻松浏览受限制的内容。

[专注隐私保护的虚拟专用网络服务](https://itsfoss.com/best-vpn-linux/) 有很多，这里我们推荐以下几款：

#### 1、ProtonVPN

[ProtonVPN](https://itsfoss.com/recommends/protonvpn/) 是一款强大的隐私保护服务，提供桌面版和移动版的开源客户端。

你可以免费使用这款软件；也可以选择付费，享受恶意软件拦截以及跟踪保护等功能。ProtonVPN 还可以与 ProtonMail 一起付费订阅。

#### 2、Mullvad

[Mullvad](https://mullvad.net/en/) 也提供了开源的客户端。有趣的是，它不需要你使用邮箱注册。

你只需生成一个用户 ID，然后就可以使用加密货币或信用卡购买服务。

### 使用保护隐私的搜索引擎，确保网络活动的安全

网上浏览信息会透露你的身份和工作。

不法组织可能会利用你的搜索内容，对你实施欺诈。

所以，能够保护隐私的搜索引擎就显得十分重要了。我推荐以下两款：

#### 1、DuckDuckGo

[DuckDuckGo](https://duckduckgo.com/) 是最流行的 [保护隐私的搜索引擎](https://itsfoss.com/privacy-search-engines/)之一，它声明不会记录用户的任何浏览数据。

一直以来，DuckDuckGo 也在不断提升自身的搜索结果质量，所以一般情况下你都可以搜索到想要的内容。

#### 2、Startpage

[Startpage](https://startpage.com/) 是一款很有趣的搜索引擎，外观和谷歌搜索相似，搜索结果也与谷歌搜索同步。不过，它不会收集你的信息。

如果你想要获取和谷歌搜索最相似的搜索结果，并且还希望可以使用隐私保护功能，那么你可以试试 Startpage。

### 使用安全的社交软件，保护聊天隐私

无论是政府还是软件本身，如果你不想别人在未经同意下获取你的聊天记录，你需要使用具有隐私保护功能的社交软件。

尽管大多数用户选择信赖 WhatsApp，但是它并不是最有效的隐私保护解决方案。当然，Facebook Messenger就更不用考虑了。

这里我推荐一些 [能够代替 WhatsApp 的社交软件](https://itsfoss.com/private-whatsapp-alternatives/)：

#### 1、Signal

[Signal](https://signal.org/en/) 是一款开源的社交软件，支持端对端加密，[可安装在 Linux 桌面上](https://itsfoss.com/install-signal-ubuntu/)。

它也有一些隐私保护功能，可以保证聊天对话的安全。

#### 2、Threema

[Threema](https://threema.ch/en) 是一款付费软件，内置 Signal 的全部核心功能，无需手机号码即可登录使用。

这款软件也提供了办公版本。如果你的亲朋好友愿意一次性花费 3 美元购买一款软件，那么Threema 是一个不错的选择。

### 选用安全的操作系统，为隐私保护打好基础

可以理解，为了满足个人需求，你 [选择了 Windows，而没有选择 Linux](https://itsfoss.com/linux-better-than-windows/)。

但是，如果你为了保护隐私，想换个系统，可以考虑下面这些 [安全的 Linux 发行版](https://itsfoss.com/privacy-focused-linux-distributions/)。

#### 1、Linux Mint

[Linux Mint](https://linuxmint.com/) 可以满足日常所需，是一款非常出色的 Linux 发行版。它基于 Ubuntu，追求青出于蓝胜于蓝，[希望在一些方面做得更好](https://itsfoss.com/linux-mint-vs-ubuntu/)

Linux Mint 通过关注用户的选择以及常规的安全升级，确保操作系统的安全。

#### 2、Qubes OS

[Qubes OS](https://www.qubes-os.org/) 专注安全和隐私问题。对新手来说，使用起来可能比较困难。

不过，如果你想尝试体验一下最安全、最强大的隐私保护操作系统，那你一定要试试 Qubes OS。

### 选择可靠的密码管理器，保护账号安全

如果不法分子可以轻易获取你的账户信息，那么就算你准备再多的隐私措施，也无济于事。

因此，你必须设置更强大、更复杂的密码。此外，要想做到这些，必须先有密码管理器。

在 [Linux 上最好的密码管理器](https://itsfoss.com/password-managers-linux/) 之中，我建议使用下面这个:

#### 1、Bitwarden

[Bitwarden](https://bitwarden.com/) 是一款开源的密码管理器，全部的主要功能均可免费使用。

解锁这款软件的高级功能，每年只需花费 10 美元。

### 总结

专注隐私保护的软件有很多，数不胜数。

但是，很多都只是打着“隐私保护”的幌子，实际上不过是营销噱头；还有一些则根本无法使用。

所以，坚持使用那些自己用过的、适合自己的软件，才是比较好的选择。

以上软件你喜欢哪些？最喜欢的又是哪一款呢？请在下方评论留言。

---

via: <https://itsfoss.com/privacy-tools/>

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

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


硬核观察 #569 Chrome 在 Mac 上性能测试首超 Safari

Summary: 更多：• Linux 发现严重的 “Dirty Pipe” 本地提权漏洞 • Fedora 鼓励放弃支持 32 位 x86 软件包

安卓内核普遍在4.9.xxx或4.1x.xxx版本吧，如果是5.8引入的漏洞，那影响安卓的范围会比较小吧

32 位的软件我只剩 Steam 了，正考虑是否使用 Flatpak 版本。

算是吧。

5.8 <= 漏洞影响版本 < 5.16.11 / 5.15.25 / 5.10.102。

但大量新发布的安卓 12 手机已经用上了 Linux 内核 5.8 版本及以上，因此这些设备将受到影响，包括搭载骁龙 8 Gen 1、天玑 8000 系列、天玑 9000、Exynos 2200 和谷歌 Tensor 的设备等。

消息来源：ithome.com/0/606/910.htm

# 硬核观察 #569 Chrome 在 Mac 上性能测试首超 Safari

### Chrome 在 Mac 上性能测试首超 Safari

[谷歌今天宣布](https://www.macrumors.com/2022/03/07/chrome-faster-safari-speedometer-benchmark/)，在 Mac 上的最新版 Chrome 浏览器 Chrome 99 在 Speedometer 测试中首次超过 Safari，得分超过 300。Speedometer 是苹果 WebKit 团队开发的网页响应测试工具，模拟用户与网页之间的各种交互。谷歌表示，自 M1 Mac 发布后，Chrome 在这期间速度提升了 43%，在图形处理方面，Chrome 浏览器比 Safari 快 15%。

>
> 老王点评：性能是越来越好，内存占用是越来越多。
>
>
>

### Linux 发现严重的 “Dirty Pipe” 本地提权漏洞

安全研究人员发现了一个被称为 [Dirty Pipe](https://dirtypipe.cm4all.com/) 的 Linux 本地提权漏洞，其概念验证利用代码也一同被披露。该漏洞在内核 5.8 中被引入。正常登录的用户或正在运行的流氓程序可以利用它来获得 root 权限；恶意应用程序也可以利用它来接管有漏洞的安卓设备。这个错误可以被滥用来添加或覆盖敏感的只读文件中的数据，例如从 `/etc/passwd` 中删除 root 密码，允许系统中的任何人获得超级用户权限，或者暂时改变一个 setuid 二进制文件来授予 root 权限。

>
> 老王点评：一般来说，Linux 发行版都会很快打上补丁，不过安卓往往要慢得多。
>
>
>

### Fedora 鼓励放弃支持 32 位 x86 软件包

Fedora 已经很久没有专注于 32 位 x86（i686）硬件支持了，但仍在继续构建一些 i686 软件包，但其中一些软件包没有被使用。为了释放构建/编译阶段的资源和减轻软件包维护者的负担，正在开发中的 Fedora 37 [鼓励](https://www.phoronix.com/scan.php?page=news_item&px=Fedora-37-Stop-Unused-i686-Pkgs) 软件包维护者放弃末端或未使用的 32 位 x86 软件包。但这一变化不会影响对 multilib 的支持，或其他软件包依赖的 i686 软件包。

>
> 老王点评：32 位硬件该落幕了。
>
>
>


如何安装和使用 Latte Dock

用多了之后就不喜欢用dock了

只觉得这玩意碍事，gnome3一个插件的事。最主要是不好用，而且并不好看

其实这个没傻用，主要是屏幕比例问题，16:9用这0疼，竖边栏才是正道。又一个盲目学苹果(苹果屏幕16:10)的垃圾产物。

楼上各位，青菜萝卜各有所爱，不必踩一捧一。

sudo apt install latte-dock这个指令害人不浅，一不注意同时安装了一大堆东西

# 如何安装和使用 Latte Dock

你知道什么是“<ruby> 停靠区 <rt>  Dock </rt></ruby>” 吧，它通常是你的应用程序“停靠”的底栏，以便快速访问。

许多发行版和桌面环境都提供了某种停靠实现。如果你的发行版没有“<ruby> 停靠区 <rt>  Dock </rt></ruby>”，或者你想尝试一些新的停靠应用，Latte Dock 是一个不错的选择。它类似于 macOS 上的停靠区，每次你用鼠标悬停在任何停靠对象上时，都会有一个的抛物线动画。

在本教程中，我将告诉你如何在 Ubuntu 上安装 Latte Dock。我还会展示一些关于使用和定制 Latte Dock 的事情。

### 在 Ubuntu 上安装 Latte Dock

[Latte Dock](https://invent.kde.org/plasma/latte-dock) 是一个流行的应用程序，可以从大多数 Linux 发行版的官方软件库中获得。也就是说你可以使用你的发行版的软件中心或软件包管理器来安装 Latte dock。

在 Ubuntu 和其他基于 Ubuntu 的发行版，如 elementary OS、Linux Mint、Pop!\_OS、Zorin OS 上，使用 `apt` 命令：

```
sudo apt install latte-dock

```

这就行了！现在你已经在 Ubuntu 上安装了 Latte Dock。

#### 停用 Ubuntu 自带的停靠区（针对 Ubuntu 用户）

在你启动你闪亮的新停靠区之前，我建议你禁用 Ubuntu 默认提供的停靠区。这里有一个 [关于如何禁用 Ubuntu 的停靠区的指南](https://itsfoss.com/disable-ubuntu-dock/)。

要禁用停靠区，请在你的终端输入以下内容：

```
gnome-extensions disable ubuntu-dock@ubuntu.com

```

如果你最终改变了主意，你可以用以下命令再次启用 Ubuntu 停靠区：

```
gnome-extensions enable ubuntu-dock@ubuntu.com

```

>
> 注意：
>
>
> 这不能禁用 Pop!\_OS 20.04 LTS 上的默认停靠区（尽管它在桌面上默认是隐藏的；只在活动概览中可见）。在使用 COSMIC 桌面环境/扩展的 Pop!\_OS 上，你可以通过“<ruby> 设置 <rt>  Settings </rt></ruby>”应用中的“<ruby> 桌面 <rt>  Desktop </rt> -> <ruby>  停靠区  <rt>   Dock  </rt> </ruby> ”来禁用或启用停靠区。</ruby>
>
>
>

### 开始使用 Latte Dock

我在教程中使用的是 Pop!\_OS，但这些步骤适用于任何 Linux 发行版。

一旦安装完毕，你会在你的应用程序抽屉里发现一个 Latte Dock 的启动器图标。你可以在这里访问它，或者按 `Super` 键（通常是 `Windows` 键；如果你有 Mac 键盘，则按 `Command` 键）键 + `A`。

从这里打开 Latte Dock：

酷！现在你的桌面上已经打开了 Latte Dock。

#### 启用 Latte Dock 的自动启动功能

随着 Latte Dock 的打开，以及 Ubuntu 自带停靠区的禁用，如果你现在重启，那么下次你的电脑开机时就不会有任何停靠区了。

让我们现在就来解决这个问题。

在停靠区上点击右键。点击“<ruby> 布局 <rt>  Layouts </rt></ruby>”子菜单下的“<ruby> 配置 <rt>  Configure </rt></ruby>”选项。

 “配置” 启动设置面板窗口" title="通过进入“布局” -> “配置” 启动设置面板窗口">

现在，在“<ruby> 偏好 <rt>  Preferences </rt></ruby>”选项卡下，确保“<ruby> 在启动时启用自动启动 <rt>  Enable autostart during startup </rt></ruby>”复选框被选中。

### 定制你的停靠区

如果你安装了任何 KDE 的产品，定制应该是永无止境的。如果 Latte Dock 不允许定制，那就奇怪了。幸运的是，情况并非如此。

你可以做各种各样的事情来定制 Latte Dock。增加它的大小，使它更透明或半透明，为它设计主题等等。

#### 将应用程序固定在停靠区上

要把你的应用程序固定在 Latte Dock 上，打开该应用程序，右键点击在你停靠区中的应用程序图标。现在点击“<ruby> 固定启动器 <rt> </rt> Pin Launcher</ruby>”。完成了！你的应用程序现在已经被固定到了停靠区上。

你可以通过点击和拖动移动它到左边或右边来改变它在停靠区中的位置。

#### 搜索和安装 Latte Dock 主题

通过右击停靠区打开 Latte Dock 的“<ruby> 设置 <rt>  Settings </rt></ruby>”窗口，点击“<ruby> 布局 <rt>  Layout </rt></ruby>”子菜单下的“<ruby> 配置 <rt>  Configure </rt></ruby>”选项。

你可能已经安装了一些主题（呃...布局）。从已安装的选项列表中选择它，然后点击右侧的切换按钮。

你也可以通过点击“<ruby> 下载 <rt>  Download </rt></ruby>”按钮来下载更多的主题。它应该向你显示一个可用的主题列表，以供安装。

#### 改变停靠区的外观和行为

正如我前面提到的，在 KDE 产品中有大量的定制选项。

让我们来试试。

右键点击停靠区，点击 “<ruby> 停靠区设置 <rt>  Dock Settings </rt></ruby>”。

在这里，你会得到各种类型的可以切换的选项。想把停靠区移到显示器的左侧吗？你可以通过“<ruby> 位置 <rt>  Location </rt></ruby>”子菜单下提供的选项来实现。

如果你觉得可用的选项有任何限制，请拨动右上角的“<ruby> 高级 <rt>  Advanced </rt></ruby>”开关。

现在看起来真是太棒了！

试着切换每个可用的开关。你可以延迟隐藏停靠区。你可以把它放在显示器的一个边缘，把它放在该边缘的中心、左边或右边。你可以做到这一切。

想修饰启动、悬停等效果？在“<ruby> 效果 <rt>  Effects </rt></ruby>”选项卡下有更多的调整选项等待着你。

### 从你的系统中删除 Latte Dock

你安装了 Latte Dock，并对其进行了定制，但觉得它不是你想要的东西。而你现在正在寻找删除 Latte Dock 的方法。很好，我帮你。

你可以使用 `apt` 软件包管理器删除 Latte Dock。用下面的命令来做：

```
sudo apt autoremove --purge latte-dock

```

`--purge` 标志将删除 Latte Dock 在系统目录中的任何配置文件，除了 `~/.config`。

#### 仅供高级用户使用：删除用户特定的遗留文件

这不是强制性的，但如果你想删除通常放在 `$HOME/.config`（即 `~/.config`）目录中的用户配置文件。[使用 find 命令](https://linuxhandbook.com/find-command-examples/) 来定位 Latte Dock 的配置文件：

```
find ~/.config -iname "latte*"

```

你可以安全地从你的 `~/.config` 目录中删除这些目录和配置文件。

#### 对于 Ubuntu 用户：重新启用 Ubuntu 停靠区

不要忘了启用 Ubuntu 的停靠区。如果你不记得了，再次启用停靠区的命令在下面：

```
gnome-extensions enable ubuntu-dock@ubuntu.com

```

### 总结

Latte Dock 是一个来自 KDE 社区的令人惊艳的停靠区 ( ͡° ͜ʖ ͡°)

它提供了大量的主题（布局）、外观和自定义选项，以及一些漂亮的效果。如果你正在考虑定制你的桌面外观和感觉，它肯定是你应该寻找的东西。

如果你最终喜欢上了 Latte Dock 并开始每天使用它，请在评论中告诉我。如果你不喜欢 Latte Dock，也请发表评论让我知道原因。

---

via: <https://itsfoss.com/install-use-latte-dock-ubuntu/>

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

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


如何在 Linux 下使用 DLNA 投屏

太卷了，坐等幼儿园大班的儿童投稿

作者在此

一个小建议。

使用 pip install 安装库时，加上 --user 参数 (即: pip install --user)，会将其安装到当前用户目录中 (位于 ~/.local)，

不加的话，会安装到系统目录 (位于 /usr)，会有什么后果呢？

+ pip 卸载时不支持卸载依赖，会导致系统中残留文件越来越多

+ 可能会覆盖系统中已有的文件，造成部分 Python 程序无法正常运行

+ 使用系统包管理器 (如 apt、pacman...) 安装、升级软件包时可能会出错

如果想要把 Python 库装到系统目录，建议为对应的发行版打包，然后用发行版的包管理器进行管理。

比如 Arch Linux 系统打 Python 包指南：

wiki.archlinux.org/title/Python_package_guidelines

一般不用root用户安装的时候 是默认.local的 因为/usr普通用户不可写

顺手加上是个好习惯，保不齐哪天用到 ROOT 用户忘了加。

在 Arch Linux 社区里见过太多一言不合就 sudo pip 的了，然后包管理器 (pacman) 也跟着出问题。

# 如何在 Linux 下使用 DLNA 投屏

>
> 编者按：本文系 Linux 中国公开投稿计划所接受的第一篇投稿，而且投稿作者是一位初中学生，让我们为他点赞！
>
>
>

一般来说，安卓设备和 Windows 设备投屏使用的是 miracast 协议，但是该协议要求网卡支持 p2pwifi，而 Linux 下大多数网卡驱动不支持 p2pwifi。

于是我用 Python + FFmpeg + DLNA 完成了一个在 Linux 下的投屏方案。这个方案的不足是延迟有点大。

### 设置

下面是如何实现。

先装这个 DLNA 库：

```
pip3 install dlna

```

然后用 `pactl` 查找 “监视器信源”（中文输出） 或 “Monitor Source”（英文输出）：

```
pactl list sinks

```

示例输出：

```
Sink #0
	State: RUNNING
	Name: alsa_output.pci-0000_05_00.6.HiFi__hw_Generic_1__sink
	Description: Family 17h (Models 10h-1fh) HD Audio Controller Speaker + Headphones
	Driver: module-alsa-card.c
	Sample Specification: s16le 2ch 44100Hz
	Channel Map: front-left,front-right
	Owner Module: 9
	Mute: no
	Volume: front-left: 53814 /  82% / -5.14 dB,   front-right: 53814 /  82% / -5.14 dB
	        balance 0.00
	Base Volume: 65536 / 100% / 0.00 dB
	Monitor Source: alsa_output.pci-0000_05_00.6.HiFi__hw_Generic_1__sink.monitor
	Latency: 16676 usec, configured 16000 us...

```

然后创建一个 CGI 脚本 `screen.flv`。首先。建立放置该脚本的目录：

```
mkdir screencast
mkdir screencast/cgi-bin

```

然后通过 `cat` 来直接创建该脚本：

```
cat <<eof>screencast/cgi-bin/screen.flv
#!/bin/bash
echo "Content-Type:video/x-flv"
echo

ffmpeg -f pulse -i <监视器信源>   -f x11grab -i :0  -vcodec h264_nvenc  pipe:.flv
eof

```

请用上面获得的监视器信源替换文件中的 `<监视器信源>`。

并为它设置可执行权限：

```
chmod +x screencast/cgi-bin/screen.flv

```

注意：如果没有 Nvidia 显卡，或者要使用其他的硬件加速，请把编码方案 `h264_nvenc` 替换为相应的编码方案。不建议采用软解方式，延迟非常高。

### 投屏

需要投屏时，首先启动本地 Web 服务器：

```
cd screencast
python3 -m http.server --cgi 9999&

```

然后，找到你的 DLNA 设备，然后把 `location` 后面的 URL 复制下来：

```
dlna device

```

示例输出：

```
=> Device 1:
{
    "location": "http://192.168.3.118:1528/",
    "host": "192.168.3.118",
    "friendly_name": "Kodi",
...

```

找到你的 Linux 电脑的局域网 IP 地址：

```
ip addr

```

示例输出：

```
3: wlp2s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 74:4c:a1:82:2e:3f brd ff:ff:ff:ff:ff:ff
    inet 192.168.3.117/24 brd 192.168.3.255 scope global dynamic noprefixroute wlp2s0
       valid_lft 58283sec preferred_lft 58283sec
    inet6 240e:3b3:2ee3:9530:d005:e492:6243:9/128 scope global dynamic noprefixroute
       valid_lft 6738sec preferred_lft 3138sec
    inet6 240e:3b3:2ee3:9539:f289:6043:c56a:4e7b/64 scope global dynamic noprefixroute
       valid_lft 7189sec preferred_lft 3589sec
    inet6 240e:3b3:2ee3:9539:3714:eaf0:c549:b8c9/64 scope global dynamic mngtmpaddr noprefixroute
       valid_lft 7188sec preferred_lft 3588sec
    inet6 fe80::c746:2540:ab7b:20aa/64 scope link
       valid_lft forever preferred_lft forever
    inet6 fe80::3543:2637:e0fc:3630/64 scope link noprefixroute
       valid_lft forever preferred_lft forever

```

启动投屏的命令如下：

```
dlna play -d <URL> http://<局域网 IP>:9999/cgi-bin/screen.flv

```

请相应替换其中的 `<URL>` 和 `<局域网 IP>` 参数，此处我替换后的命令是：

```
dlna play -d http://192.168.3.118:1528/ http://192.168.3.117:9999/cgi-bin/screen.flv

```

然后在你的电视上设置接受投屏，各种电视设备设置投屏方式不同，请参照具体设备说明。

稍等片刻，视频就会出现在电视上了。投屏效果如下：

---

作者简介：

calvinlin：一个普通的深圳初中生。

---

via: <https://www.bilibili.com/read/cv15488839>

作者：[calvinlin](https://space.bilibili.com/525982547) 编辑：[wxy](https://github.com/wxy)

本文由贡献者投稿至 [Linux 中国公开投稿计划](https://github.com/LCTT/Articles/)，采用 [CC-BY-SA 协议](https://creativecommons.org/licenses/by-sa/4.0/deed.zh) 发布，[Linux中国](https://linux.cn/) 荣誉推出


硬核观察 #570 科学家用 AI “听懂”猪是否幸福

Summary: 更多：• 开源软件赶走了专利巨魔 • 韩国法律要求应用商店引入第三方支付渠道

统一专利（UP）能管到中国来吗？

结束 "国外一开源，国内就自研" 的局面。

更多：• 开源软件赶走了专利巨魔 • 韩国法律要求应用商店引入第三方支付渠道

# 硬核观察 #570 科学家用 AI “听懂”猪是否幸福

### 科学家用 AI “听懂”猪是否幸福

这种人工智能猪翻译器可以 [将各种猪叫识别为情绪](https://www.theguardian.com/science/2022/mar/07/scientists-use-ai-to-decode-pig-calls)，可以用来自动监测猪的健康状况。他们训练了一个神经网络，分析了从 400 多头猪身上录制的 7414 个猪叫声的声学特征，记录了从出生到死亡的不同情况下的猪的音频记录和行为数据，学习猪是在经历积极情绪，如快乐或兴奋，还是消极情绪，如恐惧和痛苦。

>
> 老王点评：这样或许可以让猪过的更幸福一些？
>
>
>

### 开源软件赶走了专利巨魔

“统一专利（UP）”是由 200 多家企业组成的国际组织，在过去的两年里，它一直在与专利巨头的斗争中获胜。它与世界上最大的专利不侵犯团体“开放发明网络（OIN）”一起，对不良专利发起了法律诉讼。它们用开源软件的证据来证明，专利巨魔们往往不具备立案条件。UP 已经监督和管理了 43 项挑战，这使得 UP 的成员获得了多项专利和解，而这些又直接传递给 OIN 的 3600 多名社区成员。随着 UP 在淘汰不良专利方面的高成功率，慢慢地专利巨魔们不仅 [被赶出了开源软件](https://www.zdnet.com/article/open-source-zone-grinds-away-at-patent-trolls/)，而且被赶出了所有软件。

>
> 老王点评：这种联合起来的力量很大，对开源软件和软件的健康发展很有意义。
>
>
>

### 韩国法律要求应用商店引入第三方支付渠道

2021 年 8 月，韩国政府投票批准了《电信业务法》，阻止了苹果和谷歌强迫开发者通过应用商店销售应用以及随之而来的佣金抽取，以防止应用内支付系统的强制排他性，以及限制商店经营者不合理地延迟批准或删除应用。3 月 8 日，韩国国会 [通过了该法律](https://www.reuters.com/technology/skorea-approves-rules-app-store-law-targeting-apple-google-2022-03-08/)，它将在 3 月 15 日前生效。苹果和谷歌仅有一周的时间为该法律的实施做准备。如果不遵守该法律，罚款可能会达到公司相关商业活动年平均收入的 2%。

>
> 老王点评：没想到韩国在这方面比美国更坚决。
>
>
>


这个 Linux 图形计算器让数学很有趣

又是一款 KDE 家族的软件。

GNOME 和 KDE 桌面各类软件非常全，虽然量多，但优质的很少 (或者说很多类型的软件只提供了基础的功能，比如浏览器)，不过也一致化了操作体验。

对比 GNOME 和 KDE，个人感觉还是 KDE 家的软件质量高一点。

挺有意思，原来Linux里这么好玩

"并且也超出了我的数学知识"，这句话看着好怪，本文是先机翻，再人工粗略校一遍吗？

校对时也发现这句不通，但是英文原文如此，不太理解原文是什么意思，可能是我英文水平不够吧，也有可能是我数学知识不够。

哈哈哈哈

来自新疆乌鲁木齐的 Chrome Mobile 98.0|Android 11 用户

# 这个 Linux 图形计算器让数学很有趣

>
> 就像你在高中时最喜欢的图形计算器一样，KAlgebra 是科学计算器的同时还有 2D 绘图仪等功能。
>
>
>

如果你在高中时期一直盯着 TI-80 系列计算器，但后来就在也没动过它，那么你有时可能会渴望重温那些激动人心的代数和微积分岁月。Linux KDE 项目中的某个人一定也有这种感觉，因为有个 KDE 框架库 Analitza 提供了相关的语法和小部件，使你能够使用 K 系列应用（如图形计算器 KAlgebra）执行高级数学函数。

### 在 Linux 上安装 KAlgebra

在 Linux 上，你可以从软件仓库安装 KAlgebra。例如，在 Fedora、Mageia 和类似设备上：

```
$ sudo dnf install kalgebra

```

在 Elementary、Linux Mint 和其他基于 Debian 的发行版上：

```
$ sudo apt install kalgebra

```

或者，你可以 [以 flatpak 安装它](https://opensource.com/article/21/11/install-flatpak-linux)。

### Linux 计算器

KAlgebra 与学校中使用的许多著名图形计算器一样，既是科学计算器又是 2D 绘图仪。但与我曾经使用过的任何图形计算器不同，它也是一个 3D 绘图仪。但在进入 3D 空间之前，先从一些基本语法开始。

在 KAlgebra 中表示方程时，你必须对数学符号进行一些小的翻译，因为它们通常是手写的，需要了解它们在计算机上的表示方式。例如，要将华氏度转换为摄氏度，公式为：(5÷9) × (n-32)，其中 n 是华氏度。这通常是方程和数学函数的表达方式：它们使用 ÷ 和 × 之类的特殊符号以及 n 之类的变量，然后它们确定哪个变量代表什么样的值。你不一定知道每个特殊数学符号的含义，但只要你知道特殊符号具有特定含义，那么你就可以查找它。在温度转换示例中，符号很常见，因此你可能已经知道 ÷ 表示除法，× 表示乘法。

在 KAlgebra 中，与大多数编程语言一样，除法由正斜杠表示，乘法由星号表示，因此转换 70 华氏度的等式为 `(5/9)*(70-32)`。

KAlgebra 中还有用于常见数学运算的特殊功能，当你在 KAlgebra 中输入任何字母时，工具提示会为可用的函数提供潜在的自动补全功能。在 KAlgerbra 中编写温度转换方程的另一种方法是使用 `times` 函数：`times(5/9, 70-32)`。

当你完成数学问题时，已确定的变量会列在计算器的右栏中，包括 `ans` 值，该值会根据已完成方程的答案进行更新。那么理论上，你应该能够反转转换并从 `ans` 得出华氏温度。

### 图形计算器

数字很有趣，但当它们被用来绘制形状时，它们才真正变得有趣。图形上二维空间的可视化是所有学科发展的一项重要技能，其中最重要的是计算机编程。

要在图形上画一条线，你必须设置一个水平值（x 轴）或一个垂直值（y 轴），或者两者都设置。在常见的数学符号中，一条有效的直线方程就是 `x=5`。这会在图形的 0 原点上方 5 点处生成一条水平直线。然而，在 KAlgebra 中，你必须明确表示你只想用符号 `x->5` 来设置 x 值。

除此之外，绘图与其他地方一样简单。你可以编写复杂的方程式，并且可以使用特殊函数，例如 `sin`。

### Linux 上的 3D 图

当你进入 3D 图形选项卡时，你可能已经很好地理解了 KAlgebra 的语法，并且也超出了我的数学知识。我从电子学和合成中学到了关于笛卡尔图的所有知识，所以我对 3D 图最有趣的事情是将正弦波可视化为 3D 对象：

3D 图表和 2D 图表（除了一维）之间的区别在于 3D 图表中只能有一个图，因此请明智地选择方程式。

### 数学可以有趣吗？

事实证明，是的，数学可以很有趣，答案就是一个很好的图形计算器。当我一直在通过数学课来弥补过去一些相当糟糕的数学成绩时，我想要是能使用计算器就好了。我发现 KAlgebra 是一个非常有用的工具，不仅可以解决任意问题，还可以理解方程的语法，以及函数的目的。无论你的数学成绩如何，请拿出你的 KAlgebra 计算器，运行一些数字。这真是非常有趣。

---

via: <https://opensource.com/article/22/2/kalgebra-linux-calculator>

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

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


Nitrux 2.0：令人惊艳的发行版

百花齐放、百家争鸣是很好的。

但这么多年过去了，除了那几个元发行版，各发行版本质上就是各团队按自己的喜好增删改查几个包。再多一点就是 Fork 一套桌面。

本质上除了让用户在文件管理器、终端、文本编辑器……多了一个选择外，啥都没变 (哦不，还带来了一堆发行版专属 BUG)，还进一步割裂了社区。

老老实实完善功能，修改bug就好哦。

说的太对了，很多人把时间花在了美化上，折腾系统，最后发现都一样，linux的发行版，就那么几个能用的软件和服务，systemd谁也逃不过。如果不想用，还是freebsd好。

# Nitrux 2.0：令人惊艳的发行版

>
> 以下是对 Nitrux 2.0 在性能稳定性方面的点评，以及我们对是否可以将其用作日常使用的看法。
>
>
>

[Nitrux Linux](https://nxos.org/) 是基于 Debian 的，其特点是采用了修改版的 KDE Plasma 桌面，它被称为 NX 桌面。这个独特的 Linux 发行版带来了它自己的一套 Nitrux 应用程序，它们建立在 Maui 套件和 Qt 上。Nitrux 是没有 systemd 的，它使用 OpenRC 作为初始化系统。凭借所有这些独特的功能和令人惊叹的外观，它是当今最好的 Linux 发行版之一。

Nitrux 团队在 2022 年 2 月发布了它的主要版本 2.0，最近又发布了第一个小版本。因此，我们觉得现在是对这个漂亮的桌面进行评价的好时机。

### Nitrux 2.0 点评

#### 安装

Nitrux 使用了一个修改版的 Calamares 安装程序。该操作系统的 ISO 包含<ruby> 临场 <rt>  live </rt></ruby>桌面，在此你可以访问安装操作系统的快捷方式。启动选项包括更多的选项，包括 `nomodset` 内核启动选项。

在虚拟机测试中，安装很顺利，但在实际的硬件中却失败了，因为我的 NVIDIA 340 有点老。因此，如果你打算安装较新的硬件，应该没有问题。

#### 第一印象和桌面

在外观方面，Nitrux 可以说是与当今所有外观优秀的发行版不相上下，比如深度、Cutefish OS。它们都为用户和 Nitrux 操作系统带来了开箱即用的定制功能。但 Nitrux 的优势在于 KDE Plasma、Plasmoid、Kvuntum 主题与基于 Maui 套件组件的奇妙组合。

当你第一眼看到它的时候，它看起来很好，而且有良好的组织性，底部预配置了 Latte Dock、友好而干净的顶部栏。

它基于 KDE Plasma，你可以轻松地改变外观和感觉，并通过设置在深色和浅色模式之间切换。默认字体 Fire Sans 使它成为一个整体设计完美的桌面。

这个版本采用了 KDE Plasma 5.24+，KDE 框架 5.91 和 xanmod 版的 Linux 内核 5.16。

到目前为止，我的第一印象没有任何槽点。

#### 登录和 Shell

不久前，该团队 [引入](https://www.debugpoint.com/2022/01/maui-shell-first-look-1/) 了 Maui Shell，这是一个以 Cask 为特色的融合性桌面，即 Shell 层。这是这个体验式 Shell 的第一个版本，用户通过登录窗口就可以看到。

但唯一困扰我的是，Cask（仍然是实验性的）被定为默认登录会话。那些知道的人会把它改成 Plasma，但那些不知道的人会有些吃惊！

#### 应用程序

Nitrux 使用 AppImage 格式来发布应用程序。大多数预装的应用程序都是 AppImage。而且在通知方面，它们与整个桌面很好地结合在一起。Nitrux 也会检测你的下载文件夹中外部下载的 AppImage 进行安装。

默认情况下，它预装了以下本地 [Maui 应用程序](https://www.debugpoint.com/2022/03/top-nitrux-maui-applications/)：

* Index 文件管理器
* Station 终端
* Pix 图像浏览器
* Nota 文本编辑器
* Nitro 分享
* NX 软件中心

Firefox 和 LibreOffice 也预装了，以满足基本需求。你可以根据你的工作流程需要，通过 NX 软件中心安装其他应用程序。

关于 Firefox 和更新 Nitrux 的一点提醒。有一些报告说 Firefox 在进行基本系统更新后被删除。在你点击升级之前，请确保你通过终端用 `apt get —upgradable` 检查文件的变化。

#### 性能和资源消耗

因为我无法把它安装在我的物理机上。因此，下面提到的性能指标是在 [virt-manager](https://www.debugpoint.com/2020/11/virt-manager/) 虚拟管理器下测量的。

在空闲状态下，它使用大约 1GB 的内存，CPU 在 9% 到 10%。KWin 窗口管理器和 Latte Dock 在底部消耗了大部分的资源。

现在是时候通过一些繁重的工作负载来运行它了。这包括一个文本编辑器、LibreOffice、文件管理器、图像查看器和 Firefox 的五个标签，其中一个标签正在播放一个 YouTube 视频。

你可以在下面的图片中看到资源使用的峰值。在这种状态下，它使用了接近 2GB 的内存，CPU 为 26%。和往常一样，Firefox 浏览器消耗了大部分资源。

我想说的是，从性能上来说，它的表现还算可以。因为开箱即用的定制版，Latte Dock 和 Kvuntum 主题确实占用了一些资源。而这个指标在空闲和重载状态下要高于基本的 KDE Plasma。

#### 一些有问题的地方

不幸的是，在我的测试过程中，Nitrux 2.0 有几个小问题：

* 在我的 i3+SSD+4gb+NVIDIA+Broadcom 的旧系统中尝试安装了一个小时后 - 我无法让 Calamares 安装程序开始安装。
* 在<ruby> 临场 <rt>  live </rt></ruby>会话中没有检测到 Wi-Fi。然而，到目前为止，我在这个设备上测试的所有发行版都能检测到它。
* KWin 在临场会话开始时崩溃了。
* 由于网络连接的原因，Calamares 安装程序的“下一步”按钮被禁用。这对我来说有点奇怪。
* 而最小的安装 ISO 也给出了 [plymouth failed to start #17](https://github.com/Nitrux/nitrux-bug-tracker/issues/17) 的错误。

然后我在 [这里](https://nxos.org/known-issues/known-issues-nitrux-2-0-1/) 找到了已知问题部分，其中提到了一些问题。我确信这与 xanmod 版的 Linux 内核 5.16 有关。主线内核本来是没有问题的。

在虚拟机环境中，实验性的 Maui Shell 是不能使用的。点击和触摸操作大多不工作。但考虑到这是一个测试版本，这是可以理解的。

我觉得 Calamares 安装程序的错误需要在下一个版本之前进行更多的测试。

### 下载 Nitrux 2.0 +

你可以从以下链接下载最新版本：

* [下载 Nitrux](https://nxos.org/download/standard/)

### 结束语

如果你喜欢 KDE Plasma，并且不想在定制上花费太多精力，你可以选择 Nitrux 2.0。另外，许多用户喜欢类似于 Debian 的稳定性，而不要 systemd。那么，对他们来说，这是一个完美的选择。

但因为有一些错误，我不会向超小白的新用户推荐这个发行版。如果你对 Linux 有一定的了解，并且知道如何用命令行解决一些小问题，那么它就很适合你。你可以使用 Nitrux 2.0 作为你的日常系统。只是要谨慎对待 Debian 的不稳定软件包，这些软件包在更新后偶尔会出现问题。

加油！

---

via: <https://www.debugpoint.com/2022/03/nitrux-2-0-review/>

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

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


硬核观察 #571 企业最舍不得扔掉的设备是台式机

Summary: 更多：• 能放大 40 亿倍流量的 DDoS 攻击 • Azure 在公有云采用方面领先于 AWS

最不舍得扔也是最需要扔掉的，好多企业还是720p的低色域TN垃圾屏幕和塞牙处理器搭配，加上陈年的流氓软件附体，还不能随便重装系统，结果是办公都卡。

"87% 的公司扔掉了笔记本电脑，其次是服务器（76%）、路由器（63%）和显示器（59%）"。

只能说，多扔点，又能淘垃圾了，有些电子产品就算是企业换下来二手的也比家用版强一些。

# 硬核观察 #571 企业最舍不得扔掉的设备是台式机

### 企业最舍不得扔掉的设备是台式机

根据 Euro PC 的 [一份新报告](https://www.techradar.com/news/many-businesses-are-throwing-away-it-equipment-before-end-of-life)，对 1200 名英国企业主的调查发现，只有约 1/4 的企业会修复坏掉的设备，约 2/3 的企业在 IT 设备达到使用寿命之前就将其扔掉，而超过一半的企业平均每三到五年就更换一次终端设备。87% 的公司扔掉了笔记本电脑，其次是服务器（76%）、路由器（63%）和显示器（59%），而唯一半数以上（52%）的受访者不会扔掉的终端类型是台式机。

>
> 老王点评：这么说，台式机还是有很多优势的，尤其是在制造 IT 垃圾方面。
>
>
>

### 能放大 40 亿倍流量的 DDoS 攻击

DDoS 放大攻击非常受网络罪犯的欢迎，它可以大幅减少发动攻击所需的资源。最早的放大攻击是利用错误配置的 DNS 服务器，能将攻击流量放大 54 倍，后来还有利用 NTP 服务器（556 倍）、RDP（86 倍）、memcached（5.1 万倍）等进行的 DDoS 攻击。研究人员发现，错误暴露在互联网上的用于测试的 Mitel 电话网关能 [放大 40 亿倍](https://arstechnica.com/information-technology/2022/03/ddosers-use-new-method-capable-of-amplifying-traffic-by-a-factor-of-4-billion/) 攻击流量。其原因之一是大幅延长攻击时间，一个欺骗性的数据包可以诱发持续时间长达 14 小时的 DDoS 攻击。

>
> 老王点评：这种攻击简直就像是捅了马蜂窝，捅一下蛰你 14 个小时。
>
>
>

### Azure 在公有云采用方面领先于 AWS

[根据一份报告](https://www.theregister.com/2022/03/09/state_of_cloud_survey/)，80% 的企业受访者采用了微软的公共云，比前一年的 76% 有所提高。这领先于 AWS，后者采用率为 77%，低于一年前的 79%。谷歌占 48%，其次是甲骨文的云基础设施，从一年前的 32% 跌至27%。但 AWS 仍然在中小企业公有云中处于领先地位，尽管它的采用率仍然略有下降，从 72% 下降到 69%，而 Azure 从 48% 跃升到 59%。

>
> 老王点评：没想到 Azure 发展这么快啊，虽然其微软 365 确实有很多企业在用。
>
>
>


在你的 Linux KDE 桌面上粘贴便签

Summary: 使用 Kontact 套件的功能 KNotes 温和地提醒你自己的日常任务。

一直在用，KNotes 真的很赞。

使用 Kontact 套件的功能 KNotes 温和地提醒你自己的日常任务。

# 在你的 Linux KDE 桌面上粘贴便签

>
> 使用 Kontact 套件的功能 KNotes 温和地提醒你自己的日常任务。
>
>
>

我记得我第一次参加一个“不算会议的”会议，起初这是一个混乱的活动，有很多社交和个人项目的分享，但它逐渐凝聚成一个主要是自发组织的技术活动。这一切并没有用魔法，而用的是便签。人们在那些彩色的粘性记事贴上写下演讲和演示的想法，并将它们贴在共同的墙上，其他人将类似的想法分组，最终每个人都知道聚集在哪里讨论特定的话题。这是一件美好而令人满意的见证，它让我对便签有了新的认识。所以我很高兴最近发现 KDE Plasma 桌面有了数字便签，而且在很多方面它们甚至比实体的更有用。该应用叫做 KNotes，如果你有随意的想法想记下来，那么你可能想在自己的 Linux 桌面贴上它。

### 安装 KNotes

KNotes 是 Kontact 套件的一部分，这是 KDE 的个人信息管理器（PIM）。如果你正在运行 Plasma 桌面，那么你可能已经安装了 KNotes。如果没有，你可以从包管理器安装它：

```
$ sudo dnf install kontact

```

在基于 Debian 的发行版上，使用 `apt` 命令而不是 `dnf`。

### Linux 桌面上的 KNotes

尽管 KNotes 是 Kontact 的一部分，但它也是一个可以在后台运行的独立应用，随时可以在你需要时生成空白便签。从你的应用菜单启动 KNotes，它会将自身最小化到你的系统托盘。它的图标是一个黄色的小方块，因为在便签在现实生活中变得丰富多彩之前，它们往往都是黄色的。

要创建新便签，请右键单击系统托盘中的 KNote 图标并选择 “<ruby> 新便签 <rt>  New Note </rt></ruby>”。第一次创建便签时，系统会提示你选择保存的位置。选择本地 KNotes 数据库文件（它由 Kontact 管理，因此你不会直接与该文件交互）并默认使用此位置。之后就不会再收到这种提示。

你的桌面上会出现一个新便签，你可以自己在其中输入。

就这么简单。至少它可以像这种老式的纸质便签一样。但这些是数字版的 KDE KNotes，因此你可以做的不仅仅是记下一些提醒文本给自己。

### 更改便签颜色

当一堆黄色便签开始混合在一起，你可以对便签进行颜色编码。右键单击便签的标题栏（带有日期和时间的部分），然后从出现的上下文菜单中选择 “<ruby> 首选项 <rt>  Preferences </rt></ruby>”。在该窗口中，你可以更改标题和正文字体和字体大小，然后选择 “<ruby> 显示设置 <rt>  Display Settings </rt></ruby>” 选项卡以更改便签纸和字体的颜色。

### 发送便签

以前自己写便签的时候，经常会在 [Emacs](https://opensource.com/downloads/emacs-cheat-sheet) 的暂存缓冲区中给自己写一些提醒。有更好的方法来管理 [Emacs 中的便签](https://opensource.com/article/18/7/emacs-modes-note-taking)，但是我将便签内容记下后，之后心不在焉地关闭而没保存的习惯很难改掉。

有了 KNotes，便签会自动保存到 Kontact，因此你不必担心需要记着它们。更好的是，它们是数字的，因此你可以将它们发送给自己的其他设备。你可以通过电子邮件将便签发送给自己，也可以通过网络将它们发送到另一台计算机。只需右键单击便签的标题栏，你就可以选择“<ruby> 电子邮件 <rt>  Email </rt></ruby>”或“<ruby> 发送 <rt>  Send </rt></ruby>”。

要从一个到另一个 KDE Plasma 桌面以 KNotes 方式接收便签，你必须在接收机器上授予 KNotes 接收便签的权限。要允许传入便签，请右键单击系统托盘中的 KNotes 图标并选择 “<ruby> 配置 Knotes <rt>  Configure KNotes </rt></ruby>”。

### 设置闹钟

至少对我来说，写便签通常是因为我答应了某人的事情，通常是在短期内，比如一天结束之前。随着我的工作和打开越来越多的窗口，贴在桌面上的便签往往会被掩盖，所以 KNotes 允许你为真正重要的便签设置闹钟，这一点特别有用。

要为便签设置闹钟，请右键单击便签的标题栏并选择 “<ruby> 设置闹钟 <rt>  Set alarm </rt></ruby>”。

### 在 Linux 上做便签

便笺是记录日常任务的简单而有趣的方法。它们不是对每个人都“有效”，也不是我跟踪每天要做的事情的唯一手段，但它们是很好的选择，而且在一天结束时，在删除已完成的便签前将它们移到“已完成”那一堆，没有什么比这更令人心满意足的了。试一试吧，这是个可能能坚持下去的习惯。

---

via: <https://opensource.com/article/22/2/sticky-notes-linux-kde>

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

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


《Apex 英雄》正式可在 Steam Deck 和 Linux 上运行

是个利好消息

又是等待《彩虹六号：围攻》的一天。加油 Valve、加油 Steam、爱你 G 胖。

前文回顾：

标题：Linux 玩家终于可以玩《Apex Legends》、《Fortnite》等游戏了

链接：linux.cn/article-13821-1.html

感谢！

# 《Apex 英雄》正式可在 Steam Deck 和 Linux 上运行

>
> 《Apex 英雄》现已通过 Steam Deck 验证，这使其成为支持 Linux 的顶级多人游戏之一。
>
>
>

《<ruby> Apex 英雄 <rt>  Apex Legends </rt></ruby>》是最受欢迎的多人游戏之一，我们都在急切地等待它能在 Linux 上运行。

特别是，在它 [宣布正式支持 Linux 的 Easy Anti-Cheat 和 BattleEye](https://news.itsfoss.com/easy-anti-cheat-linux/) 之后。

然而，官方一直并没有宣布支持该游戏，直到刚刚。

它似乎已经被添加到 Valve 的 Steam Deck 验证游戏列表中，这事最初是由 [GamingOnLinux](https://www.gamingonlinux.com/2022/03/apex-legends-gets-steam-deck-verified/) 发现的。

你可以在 [官方 Steam Deck 验证页](https://www.steamdeck.com/en/verified) 上自己检查，或者通过 [SteamDB](https://steamdb.info/app/1172470/history/?changeid=14171059) 发现这一变化。

### 在 Linux 上玩《Apex 英雄》已成为现实

随着 Steam Deck 的验证状态，可以说我们现在有了在 Linux 上运行的顶级多人射击游戏之一。

如果你不知道的话，《Apex 英雄》目前是 Steam 上排名前十的游戏之一，它在 PC 上有大量的玩家。

因此，如果你因为缺乏多人游戏支持而不愿意在桌面上尝试 Linux，现在你可以考虑了。

如果你仍然犹豫，你或许可以看看我 [推荐用 Linux 玩游戏](https://news.itsfoss.com/linux-for-gaming-opinion/) 的观点，以了解更多信息（Linux 的多人游戏和反作弊支持已经有所改善，但文章的大部分内容仍然有效！）。

而且，如果你已经有一个 Steam Deck 游戏机，你现在就可以安装这个游戏并玩起来了。

注意，如果你是在 Linux 桌面上尝试，你可能要在 Steam 上启用 Proton 支持，并选择“<ruby> 实验性 Proton 支持 <rt>  Proton Experimental </rt></ruby>”。

当然，还有许多其他游戏，如《<ruby> 彩虹六号：围攻 <rt>  Rainbow Six Siege </rt></ruby>》，也应该支持 Steam Deck 或一般的 Linux 系统。现在有了 Linux 上的《Apex 英雄》，其他的多人游戏作品可能会重新考虑为 Steam Deck 或 Proton 测试他们的游戏。

这里有一段 Liam Dawe 的视频，展示了运行在 Steam Deck 上的《Apex 英雄》：

你试过在 Linux 桌面或 Steam Deck 上运行《Apex 英雄》吗？请在下面的评论中告诉我你的看法。

---

via: <https://news.itsfoss.com/apex-legends-steam-deck-verified/>

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

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


硬核观察 #572 elementary OS 开发商面临瓦解

Summary: 更多：• 70% 的 IT 从业者想离开这个行业 • 谷歌宣布将推动个人数据在不同平台迁移

又没大公司打压它，公司维持不下去就倒闭呗，虽然很残忍，但这也是市场、社区的自我调节。

干的工作正好是自己喜欢的，终归是少数的。就算是如此，也奈不住钱少事多离家远。

不过呢，工作是工作，生活是生活，只要工作上的事别干涉到生活（比如 996、007），还是能过得很快乐的。

可以给数据安全等相关法律法规提意见

国内公司都在圈地自萌，让它们自行发展只会越来越恶心。自从工信部出手后，不给权限不让用、广告弹窗现象好很多了。

前段时间 (2022 年 03 月 03 日)，工信部信息通信管理局召开行政指导会，规范APP推荐下载行为，改善网页浏览服务体验。

2022 年 03 月 10 日：百度贴吧、百家号移动端网页已支持不跳转 App 查看全文和评论，百家号默认展开全文 (www。ithome.com/0/607/016.htm)

# 硬核观察 #572 elementary OS 开发商面临瓦解

### elementary OS 开发商面临瓦解

近日，排名前十的 Linux 发行版 elementary OS 背后的开发商的两位创始人分道扬镳，并产生了 [严重分歧](https://lunduke.substack.com/p/elementary-os-is-imploding?s=r)。该公司的收入部分来自捐款，部分来自销售，但新冠疫情导致销售难以维系，公司一直在亏钱，为了维持公司的运营，他们决定从今年开始减薪 5%。但创始人之一 Cassidy 却突然通知另外一位创始人 Daniel 他决定接受一个全职工作，在谈好了退出条件之后，又突然加码，不愿意放弃在公司的股份，想要继续对公司有控制和决策权。Daniel 愤怒地回应，既不舍，但也可能考虑离开。

>
> 老王点评：唉，开源商业真的难，希望可以继续走下去。也许广大社区可以施以援手。
>
>
>

### 70% 的 IT 从业者想离开这个行业

Gartner 的 [研究人员发现](https://www.theregister.com/2022/03/09/gartner_only_29pc_of_it/)，全球只有 29% 的 IT 从业者有“高度意愿”留在他们目前的岗位上。根据 2021 年最后三个月对 1.8 万名员工进行的调查，年轻的技术人员比年长的同行更不可能坚持下去，只有 16% 的 19 至 29 岁的 IT 从业者计划留在该行业，而 50 至 70 岁的人则有 48%。

>
> 老王点评：看起来年轻人觉得 IT 行业没前途啊，只有我这样的老人家才“不得不”留在这个行业。
>
>
>

### 谷歌宣布将推动个人数据在不同平台迁移

日前，美国谷歌公司宣布了一项 [推动数据迁移的计划](https://9to5google.com/2022/03/09/google-data-transfer-project/)，未来五年时间里，谷歌准备投入更多资金和人力来推进可移植性领域的各个项目，其中包括 2018 年谷歌参加的数据转移项目（DTP）。谷歌披露说，每个月，用户使用谷歌的数据迁移工具 Takeout 完成的个人数据外迁次数多达 820 万次，2021 年用户外迁的文件数量为 4000 亿个，比 2019 年翻了一倍。

>
> 老王点评：这确实是非常有意义的项目，但是我似乎没听说国内哪个互联网公司支持。
>
>
>


有了新家的 Budgie 发布了第一个新版本

怪不得没听说过 Serpent OS，也没在 distrowatch.com 上看到这个发行版。看了下官网，还在开发中，连 ISO 镜像都还没提供下载。

对于新手或想用ubuntu的人来说，我个人推荐两种桌面版本，一个是DDE，另一个就是budgie。

个人不建议其它发行版装 DDE ，DDE 只在 Deepin 上体验很好，其它发行版会遇到些奇怪的问题。

也不荐议新手自行更换桌面，新手可能会把系统搞坏的，Ubuntu 官方提供了各种桌面集成版，其中有 budgie，用这个就行了。

新手还是使用xfce,kde,lxde等常用界面,dde桌面在非deepin系统中不是很好用,移植方面有些问题

这是老成之见，不过爱好者们，没有折腾的精神，也不会喜欢 Linux。

# 有了新家的 Budgie 发布了第一个新版本

>
> 在一个新组织的管理下， Budgie 10.6 发布在一个新的仓库，进行了一些令人印象深刻的改进。
>
>
>

早在今年一月份，Solus 的前联合负责人 Joshua Strobl 在离开 Solus 后去 SerpentOS 工作的传闻成为了新闻头条。

你可以在我们的 [原始报道](https://news.itsfoss.com/solus-co-lead-resign-budgie-serpent/) 中阅读更多关于它的内容。

然而，他仍然想为 Budgie 桌面环境工作，所以他（在一个新的仓库中）复刻了这个项目，并成立了 Buddies Of Budgie 组织。三个月后，这个组织变化后的第一个版本已经到来，我们将在这里看看它。

### Budgie 10.6 的新变化

鉴于这是自上述组织结构调整后的第一个版本，它的功能变化相当少。尽管如此，这里有一个关于新内容的总体总结：

* 完善的主题设计
* 新的通知系统
* 代码重新格式化

在最新更新的公告中，Joshua 还提到：

>
> Budgie 10.6 旨在弥合 Budgie 传统的“下游”消费者和开发组织本身之间的鸿沟，使像 Ubuntu Budgie 这样的下游能够更密切地参与到它的开发当中。
>
>
> 作为我们的核心支柱之一，即成为一个平台而不是一个产品，Budgie 10.6 和未来的 Budgie 版本的目标是提供一个宏观世界，或一组最小的紧密耦合的组件，并将生态系统的其余部分留给下游消费者的决策和价值观，无论它是发行版还是终端用户。
>
>
>

所以，如果你担心 Budgie 桌面环境在分裂后的发展，这应该能让你放心了。

#### 主题改进

看起来，这个版本的主题改进基本上是为了提高一致性，做一些细节的改变，以获得现代的外观。

例如，边框圆角已经应用于一些桌面元素，统一的间距，统一的小工具的颜色方案，以及对 GTK 主题支持的其他改进。

从我对这个版本的亲身体验来看，这些变化是细微的，但也能让人感受到，而且确实感觉到它们使 Budgie 更能与 GNOME 和 KDE 等桌面相提并论。

#### 新的通知系统

虽然不是很明显，但 Budgie 现在已经有了一个新的通知系统。其最大的影响是它现在已经从位于屏幕右侧的面板 Raven 中移出。

因此，其他 Budgie 组件现在可以使用新的通知系统。一个提到的例子是“解锁未来在图标任务列表中支持通知徽章的能力”。

同样，虽然此变化很小，但确实打开了未来的可能性，希望我们能在未来的版本中看到这些带来的变化。

#### 其他改进措施

Budgie 10.6 一些其他的变化包括：

* 使用制表符而不是空格，对一些代码进行了常规的重新格式化。
* 重新引入对 GNOME 40 的支持，以启用 Ubuntu LTS 支持。
* 将 GNOME 控制中心重新命名为 Budgie 控制中心。
* 修复了扩大 Raven 缩略图导致 Raven 本身调整大小的问题。

如果你想了解更多，你可以在 [GitHub](https://github.com/BuddiesOfBudgie/budgie-desktop/releases/tag/v10.6) 上找到发布公告，以获得完整的新功能列表。

* [Budgie 10.6](https://github.com/BuddiesOfBudgie/budgie-desktop/releases/)

### 获得 Budgie 10.6

如果你想获得 Budgie 10.6，最好是先等待你的发行版将其打包。如果你使用的是 Arch，这可能需要不到一周的时间，而 Ubuntu 及其衍生版本则需要更长时间。

对于那些喜欢冒险的人来说，你也可以尝试编译它，但如果你愿意尝试，你可能已经知道如何做了。

总的来说，Budgie 10.6 看起来是一个值得关注的版本，特别是考虑到其重大的组织变化。

你对 Budgie 10.6 的变化有什么看法？请在下面的评论中告诉我们吧！

---

via: <https://news.itsfoss.com/budgie-10-6-release/>

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

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


Coolero：监测和控制冷却设备的开源应用

收藏吃灰，万一哪天也上水冷呢。

# Coolero：监测和控制冷却设备的开源应用

>
> 正在寻找一个 GUI 程序来管理 Linux 上的 AIO 和其他冷却设备么？让我们来了解一下 Coolero，以获得一些帮助。
>
>
>

说到 Linux，我们无法从 NZXT、Corsair、MSI、ASUS 等品牌那里获得官方软件支持来管理 PC 上的硬件组件。

虽然有开源的驱动/工具可以使事情顺利进行，但在具有图形用户界面（GUI）的程序中，它仍然是一项正在进行的工作。例如，[配置游戏鼠标](https://itsfoss.com/set-up-razer-devices-linux/) 或 [在 Linux 上设置 Razer 设备](https://itsfoss.com/set-up-razer-devices-linux/)。

幸运的是，这些年来情况有所改善，现在可以在 Linux 上管理/调整各种最新的外围设备和组件。

其中一个改进就是有了一个开源的 GUI 程序来管理和监控冷却设备，即 Coolero。

**注意：** 该程序正在积极开发中，并慢慢向其第一个主要版本发展。

### Coolero：轻松地管理你的水冷

当我去年升级我的电脑时，我对我的 AIO（All-in-One）水冷（Corsair Hydro 100i Pro XT）缺乏软件支持感到恼火。

这不仅仅是控制 RGB 灯光（为了美观），而且我找不到一个方便的方法（使用 GUI 程序）来平衡风扇配置。

现在，有了 [Coolero](https://gitlab.com/codifryed/coolero) 就可以做到了。Coolero 是一个使用 [liquidctl](https://github.com/liquidctl/liquidctl) 和其他一些库来控制冷却设备的前端，主要包括 AIO、风扇集线器/控制器，还有 PSU 和一些 RGB 照明支持。

它支持一系列的水冷和一些 PSU。你可以在其 GitLab 页面上获得所有支持设备的细节。请注意，对一些冷却器的支持仍然是试验性的，而且你还不能让你的 Kraken Z 上的 LCD 屏幕与它一起工作。

让我强调一下主要的特点。

### Coolero 的特点

现在有无数的冷却设备。但是，Coolero 支持一些流行的选项和它的变体来控制基本功能：

* 系统概览图
* CPU 温度/负载
* GPU 温度/负载
* 支持多个设备，以及同一设备的多个版本。
* 能够使用该图表定制风扇配置文件。
* 提供了几个预设的风扇配置文件。
* 能够调整 RGB 照明配置文件。
* 保存配置文件并在启动时应用它。

用户界面简单易懂，易于使用。你可以与图表互动以启用/禁用对特定组件的监控。

你所连接的 AIO 或控制器应该作为单独的组件出现在界面上，使你很容易控制它们。

你会有两种类型的功能，控制风扇和灯光（如果有的话）。我使用风扇图表来定制我的 AIO 上的风扇配置文件。

根据我的简单测试，它与 Corsair AIO 工作很好。你可以用它来尝试 NZXT 冷却器、PSU、控制器和智能设备（或集线器）。

### 在 Linux 中安装 Coolero

Coolero 以 AppImage、Flatpak（通过 [Flathub](https://flathub.org/apps/details/org.coolero.Coolero)）的形式提供，或者你可以从源代码中构建它。

如果你是 Linux 的新手，你可能想参考我们的 [AppImage 指南](https://itsfoss.com/appimagepool/) 和 [Flatpak 帮助资源](https://itsfoss.com/flatpak-guide/)。

要探索更多关于它的信息，请前往下面链接的 GitLab 页面。

* [Coolero](https://gitlab.com/codifryed/coolero)

### 总结

如果你有 AIO、集线器和控制器需要按照你的要求进行调整，那么 Coolero 是一个令人兴奋的项目，值得关注。

虽然你可以尝试使用一些命令行工具，但这并不是实现你的 PC 中的组件的基本控制的最方便的方法。

你试过了吗？你用什么来管理你的 Linux 系统上的 AIO 或冷却器？请在下面的评论中告诉我你的想法。

---

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

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

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


硬核观察 #573 中国的百亿亿级超算运行“大脑规模”的 AI

Summary: 更多：• BAT 共同创建新视频流标准 • a.out 二进制格式迈出彻底废弃的最后一步

"中国三大互联网巨头字节跳动、阿里巴巴和腾讯"。

哈哈哈哈，BAT 的【B】由 Baidu (百度) 变成 ByteDance (字节跳动) 了，一手好牌，打得稀烂，自己打得烂就算了，还恶心用户 (当然，另外几家也一样)。

首页移动版改版好丑，太多无意义的配图了，导致一屏看不见几条讯息。

首页移动版改版好丑，太多无意义的配图了，导致一屏看不见几条讯息。

全部文章题图都隐藏，会不会觉得页面不好看？

建议还是开放注册吧，评论需要登录，有回复就站内信通知。谁闲得没事评论后，等几小时再来看一眼。

这次改版，我个人不太喜欢，看着太乱了。题图又占空间。我比较喜欢下面这个样子的：

图床地址：fars.ee/0v06

注册应该不太考虑开了，评论这样匿名除了没回复通知外挺好。搜索也考虑公开开放，而不需要有用户登录。<br />
关于移动版界面，确实有这个问题，我看看如何改进。谢谢提议。

抱歉回复晚了。移动端一屏可见的条目变少了，考虑将条目高度缩小一些，图片也是。我是支持改版的。

# 硬核观察 #573 中国的百亿亿级超算运行“大脑规模”的 AI

### 中国的百亿亿级超算运行“大脑规模”的 AI

去年中国建造了两台百亿亿级的超算，其中一台名为“神威•海洋之光”的超算，是“太湖之光”的下一代，从 CPU 到网络都完全由中国的部件构建。在最近的一篇 [论文中披露](https://www.theregister.com/2022/03/11/china_exascale_sunway_ai/)，该系统有“多达 96,000 个节点”，基于神威 SW26010-PRO 计算单元（内置自定义加速器的多核），具有自定义内存配置和自制的网络结构。此外论文还通过一个“大脑规模”的具有 14.5 万亿个参数的预训练语言模型的跨系统人工智能工作负载展示了其能力，其混合精度的性能超过一百亿亿次（10 的 18 次方）。

>
> 老王点评：虽然还是有人认为中国的超算只是花钱堆砌，但我觉得并非如此。
>
>
>

### BAT 共同创建新视频流标准

中国三大互联网巨头字节跳动、阿里巴巴和腾讯联合 [宣布创建](https://www.theregister.com/2022/03/11/bytedance_alibaba_tencent_video_standard/) 一种新视频流标准——“超低延迟直播协议信号标准”。新标准旨在解决视频流启动的问题，BAT 称现有的流媒体用户需要等待三到六秒钟才能开始观看视频，新标准试图将这一启动时间减少到一秒钟甚至半秒。新技术可能是建立在 WebRTC 之上的，但尚未公开新标准的代码。

>
> 老王点评：不管别人是否乐见，中国会越来越多主导各种标准的制定和推广。
>
>
>

### a.out 二进制格式迈出彻底废弃的最后一步

早在 2019 年，Linux 内核就废除了对 a.out 格式的支持。这种文件格式在 ELF 占主导地位之前曾被使用过。目前只有 Linux 内核中的 Alpha 和 m68k 架构仍在使用 a.out 进行构建。现在计划通过 Kconfig 选项默认停止使用，看看是否有人在意。需要说明的是，这里指的是 a.out 文件格式，并不影响编译器在没有指定输出名称时使用 `a.out` 名称，因为那是 ELF 或其他格式。

>
> 老王点评：这次清楚了吧，你 gcc 默认输出的 `a.out` 只是名字相同。
>
>
>


KDE Plasma 5.24：精心制作的主宰 Linux 世界的桌面

KDE + i3WM，永远的神。

KDE核心软件和配置项都实在太多太分散，而且比较尴尬的是主流浏览器都是基于GTK，而基于QT的Folkan各方面也都显落后，已经基本被不再被各大发行版默认了

KDE 应该是用过的最好的桌面环境了，开箱即用。

Safari 15.0|Fedora 用户 ？？？？？

基于WebKitGTK的GNOME Web，怎么啦

UA 是可以改的。

来自四川的 Internet Explorer 6.0|GNU/Linux 用户

UA 是可以改的。

Chrome 可以安装 'User-Agent Switcher and Manager' 这款扩展修改 UA。

来自四川的 Internet Explorer 22.0|GNU/Linux 用户

我用的是Epiphany（现在叫GNOME Web），默认UA就跟Safari一样，因为都是相同版本的WebKit，你也可以试试

我用的这个解析库，还比较弱智，不能识别这种情况，我回头看看有没有升级改进。

你这个改的就厉害了~

kde吹的太厉害了,开机后内存消耗,lxde 300M-400M左右,xfce4 500-650M左右,gnome 1.1G左右,kde 1.4G-1.6G左右,总体来说kde是最吃内存的桌面.

在低内存机子上，内存占用大的确会影响到体验 (一般来说，低内存的机子配置也可能会较低)。

32G 内存表示，这点占用无所谓 (KDE 会自启一些无用的服务，关闭后会降低一些内存占用)。

KDE YYDS!

我也不怎么喜欢gnome,而且gnome动画开头总是比较卡

但当今世界上最好的几个发行版不是“Debian,Arch”吗

不知道啥时候 debian testing更新kde 5.25

# KDE Plasma 5.24：精心制作的主宰 Linux 世界的桌面

>
> 是时候对前段时间发布的 KDE Plasma 5.24 桌面进行一次简单的回顾和点评了。
>
>
>

*开源朗读者 | 张锦航*

KDE 团队用他们完美的 KDE Plasma 5.24 再次做到了。一个在效率、新功能、性能、稳定性和一切方面都非常完美的版本为所有用户带来了一个优秀的桌面环境。

KDE Plasma 5.24 是 Plasma 的第 26 个版本，也是长期支持（LTS）版本，它将为 Kubuntu 22.04 LTS Jammy Jellyfish 添彩。这意味着你、我和全世界成千上万的用户将使用这个版本两年或更长的时间。你可以想象这个版本是多么重要。

不多说了，让我们去快速点评一下 KDE Plasma 5.24。

### KDE Plasma 5.24 点评

#### 安装

我在 Fedora 上使用 [KDE Plasma 5.24](https://www.debugpoint.com/2022/01/kde-plasma-5-24/) 已经有一段时间了。这次是直接从 [KDE Plasma 5.23](https://www.debugpoint.com/2021/08/kde-plasma-5-23/) 升级而来。在升级过程中，一切都很顺利。所有的用户配置的设置都保持不变，只有默认的壁纸在升级后被改变了。所以，数据或启动加载出现问题是几乎不可能的。

我在一个实体系统中安装了 KDE Plasma 5.24 和 KDE Neon 用户版以进一步测试。在一个 4GB 内存的英特尔 i3 系统中，安装很顺利，大约花了 8 分钟。

这个测试系统上还有另一个操作系统，所以安装程序完美地检测到了所有的操作系统并正确地更新了 GRUB。

#### 新功能、外观和可用性

Plasma 5.24 看起来很震撼。第一次启动后呈现出一个干净的桌面，具有经典的外观和极其漂亮的壁纸。默认的 Breeze Light 主题加上新的边框和装饰，对每个用户来说几乎是完美的。如果你很好奇，想给你的 Plasma 换一个不同的外观，那么所有的设置，如重点颜色之类的都在那里。你不需要通过什么秘籍或命令行来改变外观。

新设计的概览屏幕给你一种 GNOME 的氛围，但在 KDE 环境下，当你设置好它时，它就会变得非常棒。

在我的测试中，我尝试了蓝牙、Wi-Fi 和打印（安装 HPLIP 后）—— 都很顺利。没有磕磕绊绊，也不需要命令行，一切都开箱即用。KDE Plasma 的通知区应该可以让你访问所有必要的选项，你很少需要访问系统设置对话框。

电池使用情况尚可，我认为在我的测试硬件上，自 Plasma 5.23 以来，电池使用情况略有改善。我把测试机保持在待机状态，Plasma 很轻松就唤醒了，没有任何问题。我知道有些 Linux 发行版在睡眠后无法唤醒，导致你得在 TTY 里重启或启动 X 会话。

#### 稳定性和性能

不管你是一个 Plasma 的新用户还是长期用户，Plasma 5.24 都会让你有宾至如归的感觉；一切都准备好了，没有错误，等待你的行动和工作流程。

在我的测试期间中，我没有遇到任何错误。因此，我 [快速翻阅](https://forum.kde.org/search.php?keywords=5.24&terms=all&author=&tags=&sv=0&sc=1&sf=all&sr=posts&sk=t&sd=d&st=30&ch=300&t=0&submit=Search) 了 KDE 官方论坛，看看在发布后的一个月内报告了多少种问题以及有多少问题。不多，实际上只有寥寥两位数。而且报告的问题大多与高端显示器和网络有关，我觉得这与特定的专业硬件有关。

但总的来说，如今它是一个构建良好且经过测试的桌面。

在过去的几个版本中，KDE Plasma 在任何硬件上的性能都是完美的。而这个版本也证明了这一点。

在空闲阶段，KDE Plasma 5.24 消耗了 614MB 的内存，CPU 使用率为 2%。

我通过 Firefox 运行了五个标签，并播放了 Youtube。同时，用一个文件管理器、文本编辑器、图片浏览器、系统设置和“发现”包管理器的实例来测试重载下的性能。这个用例使用了 1.29GB 的内存，而 CPU 平均在 6% 到 7%。

显然，Firefox 消耗了大部分的系统资源。

我必须说，这是一个了不起的性能指标。

所以，有了这个版本，就有了一个完美的 Plasma 桌面。

#### 如何获得 KDE Plasma 5.24

KDE Plasma 5.24 现在可以在 KDE Neon 用户版，和通过 Backports PPA 在 Fedora 35 和 Kubuntu 21.10 上使用。如果你想重新安装，你可以从 [这里](https://neon.kde.org/download) 下载它。

如果你使用的是 Fedora 35 和 Kubuntu 21.10，请按照这些指南来获得这个版本。

* [在 Fedora 上升级 Plasma](https://www.debugpoint.com/2022/02/upgrade-kde-plasma-5-24/)
* [如何在 Kubuntu 21.10 中安装 KDE Plasma 5.24](https://www.debugpoint.com/wp-admin/post.php?post=9018&action=edit)

### 结束语

我为我们的网站点评测试过许多 Linux 发行版和桌面环境。没有哪个能在各个方面接近 KDE Plasma。我知道 GNOME 设计得很好，而且还有其他的小亮点，但是，当你需要一个省心的系统，而且几乎所有的自定义选项都开箱即用时，KDE Plasma 几十年来一直是赢家。

有的时候，为了让系统能在短时间内运行起来而无需太多折腾，我只有安装 KDE Plasma 才行。因为到最后，它肯定能工作，所有的选项都可以供你使用。

我认为运行 KDE Plasma 的 Kubuntu/Fedora 和 Linux Mint 是当今世界上最好的几个发行版，毫无疑问。

作为对本篇 KDE Plasma 5.24 点评的总结，我必须得承认，KDE Plasma 5.24 LTS 是该团队的一个本垒打。我们很高兴 KDE 的存在，并将在未来的日子里占据主导地位。

加油！

---

via: <https://www.debugpoint.com/2022/03/kde-plasma-5-24-review/>

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

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


httpx：一个 Python Web 客户端

推荐个代码示例工具站，对于那些连 README 都懒得多些两行的模块很有用。

本文的 httpx 模块：

链接：programcreek.com/python/index/11833/httpx

# httpx：一个 Python Web 客户端

>
> Python 的 httpx 包是一个用于 HTTP 交互的一个优秀且灵活的模块。
>
>
>

<img src="content_image/album_202203_13_102042hmtif0i7g3fg0ir0.jpg" alt="" title="Digital creative of a browser on the internet">

Python 的 `httpx` 包是一个复杂的 Web 客户端。当你安装它后，你就可以用它来从网站上获取数据。像往常一样，安装它的最简单方法是使用 `pip` 工具：

```
$ python -m pip install httpx --user

```

要使用它，把它导入到 Python 脚本中，然后使用 `.get` 函数从一个 web 地址获取数据：

```
import httpx
result = httpx.get("https://httpbin.org/get?hello=world")
result.json()["args"]

```

下面是这个简单脚本的输出：

```
    {'hello': 'world'}

```

### HTTP 响应

默认情况下，`httpx` 不会在非 200 状态下引发错误。

试试这个代码：

```
result = httpx.get("https://httpbin.org/status/404")
result

```

结果是：

```
    <Response [404 NOT FOUND]>

```

可以明确地返回一个响应。添加这个异常处理：

```
try:
    result.raise_for_status()
except Exception as exc:
    print("woops", exc)

```

下面是结果：

```
    woops Client error '404 NOT FOUND' for url 'https://httpbin.org/status/404'
    For more information check: https://httpstatuses.com/404

```

### 自定义客户端

除了最简单的脚本之外，使用一个自定义的客户端是有意义的。除了不错的性能改进，比如连接池，这也是一个配置客户端的好地方。

例如, 你可以设置一个自定义的基本 URL：

```
client = httpx.Client(base_url="https://httpbin.org")
result = client.get("/get?source=custom-client")
result.json()["args"]

```

输出示例：

```
    {'source': 'custom-client'}

```

这对用客户端与一个特定的服务器对话的典型场景很有用。例如，使用 `base_url` 和 `auth`，你可以为认证的客户端建立一个漂亮的抽象：

```
client = httpx.Client(
    base_url="https://httpbin.org",
    auth=("good_person", "secret_password"),
)
result = client.get("/basic-auth/good_person/secret_password")
result.json()

```

输出：

```
    {'authenticated': True, 'user': 'good_person'}

```

你可以用它来做一件更棒的事情，就是在顶层的 “主” 函数中构建客户端，然后把它传递给其他函数。这可以让其他函数使用客户端，并让它们与连接到本地 WSGI 应用的客户端进行单元测试。

```
def get_user_name(client):
    result = client.get("/basic-auth/good_person/secret_password")
    return result.json()["user"]

get_user_name(client)
    'good_person'

def application(environ, start_response):
    start_response('200 OK', [('Content-Type', 'application/json')])
    return [b'{"user": "pretty_good_person"}']
fake_client = httpx.Client(app=application, base_url="https://fake-server")
get_user_name(fake_client)

```

输出：

```
    'pretty_good_person'

```

### 尝试 httpx

请访问 [python-httpx.org](https://www.python-httpx.org/) 了解更多信息、文档和教程。我发现它是一个与 HTTP 交互的优秀而灵活的模块。试一试，看看它能为你做什么。

---

via: <https://opensource.com/article/22/3/python-httpx>

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

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


硬核观察 #574 微软提案为 JavaScript 增加类型注释

Summary: 更多：• Arch Linux 20 岁了 • 2021 发现了最多的 Chrome 零日漏洞

Arch Linux + KDE + i3WM，永远的神。

似乎没有人做 Linux 各发行版占有率的网站。只有 Steam 的软硬件调查有个简单的统计 (store.steampowered.com/hwsurvey)：

2022 年 02 月，Linux 系统在所有系统中占 1.02%，各发行分别有：

+ Ubuntu 20.04.3 LTS 64bit 0.15%

+ Arch Linux 64bit                   0.13%

+ Manjaro Linux 64bit           0.12%

+ Ubuntu 21.10 64bit             0.07%

+ Linux Mint 20.3 64bit         0.06%

虽然不能代表所有 Linux 用户，但单在桌面游戏这一块，Debian 系 (Ubuntu、Linux Mint) 和 Arch Linux 系 (Manjaro) 的发行版真是各占半壁江山，66666。

distrowatch.com

建议看看 DistroWatch 的 Page Hit Ranking 页面 (链接: distrowatch.com/dwres.php?resource=popularity)

DistroWatch 从来没说过自己统计的是市场占有率，只是统计页面的点击次数，的确一定程度上能反应各发行版受欢迎程度，但也并不准确。

比如前一两年突然出现在第一名的 MX Linux，虽然没有确凿的证据，但很大可能是刷上第一名的。这事国内也有讨论 (链接：zhihu.com/question/307873897)。

# 硬核观察 #574 微软提案为 JavaScript 增加类型注释

### 微软提案为 JavaScript 增加类型注释

如果本周微软公布的 [一项提案](https://devblogs.microsoft.com/typescript/a-proposal-for-type-syntax-in-javascript/) 能够成功，那么 JavaScript 开发者很快就会拥有他们中许多人长期以来一直想要的东西：一个类型系统，至少是某种类型系统。该提案建议在 JavaScript 代码中添加类型注释，允许这些注释被 TypeScript、Flow 之类的外部类型检查器检查，而在运行时被忽略。虽然该提案是微软提出的，但是并没有提议将 TypeScript 的类型检查放到浏览器或运行时中。

>
> 老王点评：这也不失一种好的解决方案，其它语言已有类似的成功实践。
>
>
>

### Arch Linux 20 岁了

[2002 年 3 月 11 日宣布](https://www.neowin.net/news/btw-it039s-my-birthday---arch-linux-becomes-20-years-old-today/)，代号为 “Homer” 的 Arch Linux 0.1 版在发布时并没有大肆宣传。其发布公告非常低调：“我终于把一个可启动的 iso 镜像放到 ftp 站点上了。坏消息是，没有漂亮的交互式安装程序。但如果你想要一个这样的东西，你就会选择 RedHat，对吗？ ; )” 第一个版本的内核是 2.4.18，那时甚至连 USB 都不能自动挂载。在这个版本中，连 GNOME 和 KDE 都没有，你必须等待当年 12 月的发布 0.4 版本，或者自己构建。

>
> 老王点评：从最初的简陋发行版，到如今已经生生地在 RedHat 和 Ubuntu 之间辟出一块地，真是不容易。
>
>
>

### 2021 发现了最多的 Chrome 零日漏洞

2021 年是 Chrome 浏览器中 [零日漏洞数量](https://www.zdnet.com/article/google-more-chrome-browser-zero-day-flaws-are-being-spotted-in-the-wild-thats-not-always-a-bad-thing/) 创纪录的一年。去年有 25 个浏览器零日漏洞被修补，其中 14 个是 Chrome 浏览器，6 个是 Safari 的 WebKit 引擎，4 个是 Internet Explorer。而 2020 年，只有 14 个浏览器零日缺陷，其中一半以上是 Chrome 浏览器的。但在 2015 年至 2018 年期间，没有发现 Chrome 的零日漏洞。

>
> 老王点评：这说明对浏览器的恶意利用越来越多了，浏览器承载了太多的重要性和复杂性。
>
>
>


在 Ubuntu 上通过命令行改变 Linux 系统语言

运行 dpkg-reconfigure locales 界面是一个 TUI，虽然在终端中实现了 GUI 的味道，但不能用鼠标、没有搜索功能。而且 Locale 有近 500 个，得翻半天才能找到想要的，有些麻烦。

所以，还有一个手动编辑的方法，这样能用编辑器的搜索功能。至少 Arch Linux 上是这样做的 (查了下 Debian 的 WiKi，应该也是一样的)：

1. 编辑 /etc/locale.gen 文件，会看到一行一个 Locale，只需把需要启用的 Locale 前的注释取消即可。

2. 运行 locale-gen 命令生成 Locale 即可

例如，启用美式英语和中国简体 Locale：

...

# en_SG ISO-8859-1

en_US.UTF-8 UTF-8

# en_US ISO-8859-1

...

# zh_CN.GBK GBK

zh_CN.UTF-8 UTF-8

# zh_CN GB2312

...

这才叫命令行实现

这才叫命令行实现

没错，本文只能说是 TUI 实现。

抱歉，不小心给删除错了，把你原来的楼贴删除了。

# 在 Ubuntu 上通过命令行改变 Linux 系统语言

>
> 这是一个快速教程，展示了在 Ubuntu 和其他 Linux 发行版上从命令行改变语言的步骤。
>
>
>

事实上，我一直在写西班牙语的文章。如果你没有访问过它并且/或你是一个讲西班牙语的人，请访问 [It's FOSS en Español](https://es.itsfoss.com/) 并查看所有西班牙语的 Linux 内容。

你可能想知道我为什么要和你分享这件事，这是因为这篇文章以这个新页面为例。

在新安装 [你喜欢的 Linux 发行版](https://itsfoss.com/best-linux-beginners/) 时，系统会要求你选择一种主语言。有些人，比如说我，后来会考虑把这个语言改成新的，尽管这并不频繁。

你看，我必须同时用西班牙语和英语进行截屏。这就成了一个问题，因为我只有一台电脑，而更换用户对我来说不是一个快速的解决方案。

这就是为什么我想和你分享这个快速技巧，我将告诉你如何在终端中用两行简单的文字改变你的主系统语言。

让我们开始吧！

### 从终端改变 Linux 系统语言

假设你想把你的主语言从英语改为西班牙语。

确认你将哪种语言设置为默认语言（主语言）。为此，让我们使用 `locale` 命令。

```
locale

```

你应该看到像这样的东西：

```
team@itsfoss:~$ locale
LANG=en_US.UTF-8
LANGUAGE=
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=

```

在这里你可以看到主语言是英语。现在要改变它，请按以下方式使用 `dpkg` 命令：

```
sudo dpkg-reconfigure locales

```

当你运行之前的命令，你应该在终端看到下面的页面：

在这里，你应该**使用向上和向下的箭头移动**直到你到达所需的语言。在我的例子中，我想要西班牙语，更具体地说，是墨西哥西班牙语，因为我是墨西哥人。

不是所有的语言都有这个选项，但如果你的语言有，请选择 [UTF-8](https://en.wikipedia.org/wiki/UTF-8)。

找到你的语言后，**按空格键来标记**，然后**回车**。

最后，在最后一个窗口中，通过使用箭头键移动到该语言并按下**回车键**，选择该新语言作为你的默认语言。

完成后，你应该在你的终端看到这样的信息：

```
Generating locales (this might take a while)...
    en_US.UTF-8... done
    es_MX.UTF-8... done
Generation complete.

```

这就完成了！现在你能够直接从终端改变你的默认语言，次数不限。

如果你对这个话题有任何疑问，请在评论区告诉我们。

---

via: <https://itsfoss.com/change-locales-linux/>

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

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


我为什么从 Mac 转到 Linux

Summary: 25 年后，我转到了 Linux，简直不能更爽了。以下是我的经历。

老外转 Linux 应该很容易吧。

+ 国外很多软件都提供了 Linux 版，就算没有提供也不怎么封杀第三方开发的

+ Office 这类软件 Google 和 Microsoft 还提供了 Online 版，能直接访问

+ 不用折腾输入法

+ 不用折腾文字显示

反观国内。

+ 支持 Linux 的软件寥寥无几 (这两年稍微好了一丢丢)，第三方开发的动不就封杀

+ Office 好在还有个 WPS (点赞)

+ 得折腾输入法 (国内用户的一大拦路虎)

+ 得折腾文字显示 (国内用户的一大拦路虎)

别忘了，还有永中office

来自江西南昌的 Chrome Mobile 65.0|Android 8.1 用户

现在输入法和中文显示已经开箱即用了

啊？印象中永中不是死了吗。

去看了下，原来还活着，存在感真的太低了。

Gentoo 和 Arch Linux 这种发行版就不提了。

就说本土化做的最好的 Deepin，也算开箱即用，但也就在开箱的时侯用用，在论坛搜索 "输入法"，一大堆输入法出问题的贴子。更别说其它发行版了。

确实，国外的软件没有阉割和无缝在线访问，就算是chrome OS也可以用得非常舒服，国内很多现实问题不好解决。我们的现实世界只有黑与白，网络世界是灰色的。

再次有文章提及Enlightenment真是亲切，曾经用了很长的时间，非常优秀，效率极高，比gnome效率高而且速度快，是几乎被人遗忘却非常优秀的桌面，三星公司的开源项目，里边的compositor效率最好的。在linux桌面的领域里，堆叠桌面有gnome、kde、xfce 、mate、openbox、enlightenment、dwm、fvwm3, 平铺的桌面 awesomeWM、i3（sway)、 i3-gaps， 这个顺序陪你走完整个linux内核OR桌面，或者叫他什么，因为linux有太多的面孔。

输入法fcitx开箱即用

统信UOS做的适配现在挺不错啦， 微信QQ都有，搜狗输入法安装就能用，基本上告别了折腾，开箱即用

25 年后，我转到了 Linux，简直不能更爽了。以下是我的经历。

# 我为什么从 Mac 转到 Linux

>
> 25 年后，我转到了 Linux，简直不能更爽了。以下是我的经历。
>
>
>

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

*开源朗读者 | 淮晋阳*

1994 年，我的家人买了一台 Macintosh Performa 475 作为家用电脑。我在学校时曾使用过 Macintosh SE 电脑，并通过《[Mavis Beacon 教你打字](https://en.wikipedia.org/wiki/Mavis_Beacon_Teaches_Typing)》学会了打字，所以我成为 Mac 用户已经超过 25 年了。早在上世纪 90 年代中期，我就被 Mac 的易用性所吸引。它不是以 DOS 命令提示符开始的；它打开的是一个友好的桌面。它很有趣。尽管 Macintosh 的软件比 PC 少得多，但我认为 Mac 的生态系统更好，就凭着 KidPix 和 Hypercard，我仍然认为它们是无与伦比的、最直观的 *创意工厂*。

即便如此，我仍然感觉到，与 Windows 相比，Mac 只是个弟弟。我曾觉得这个公司或许有一天会消失。但几十年后的今天，苹果已经成为一个庞然大物，一个价值万亿美元的公司。但随着发展，它发生了重大变化。有些变化是为了更好的发展，比如更好的稳定性，更简单的硬件选择，更高的安全性，以及更多的可访问性选项。其他的变化让我恼火 —— 不是一下子，而是慢慢地不满意。最重要的是，我对苹果的封闭生态系统感到厌烦 —— 没有 iPhoto 就很难访问照片；必须使用 iTunes；即使我不想使用苹果商店的生态系统，也得强制捆绑。

随着时间的推移，我发现自己主要是在终端上工作。我使用 iTerm2 和 [Homebrew](https://brew.sh/) 软件包管理器。虽然我不能让我所有的 Linux 软件都工作，但大部分软件都工作了。我认为我拥有两个世界中最好的东西：macOS 的图形操作系统和用户界面，以及快速打开终端会话的能力。

后来，我开始使用通过 Raspbian 启动的树莓派电脑。我还收集了一些从大学的垃圾堆中抢救出来的非常旧的笔记本电脑，因此，出于需要，我决定尝试各种 Linux 发行版。虽然它们都没有成为我的主用机器，但我开始真正喜欢使用 Linux。我开始考虑尝试运行 Linux 发行版作为我的日常用机，但我认为 Macbook 的舒适性和便利性，特别是硬件的尺寸和重量，在非 Mac 笔记本电脑中很难找到。

### 是时候进行转换了？

大约两年前，我开始在工作中使用一台戴尔电脑。那是一台较大的笔记本电脑，集成了 GPU，可以双启动 Linux 和 Windows。我用它来进行游戏开发、3D 建模、一些机器学习，以及用 C# 和 Java 进行基本编程。我曾考虑把它作为我的主用机器，但我喜欢我的 Macbook Air 的便携性，所以也继续使用它。

去年秋天，我开始注意到我的 Air 运行时很热，而且风扇开得越来越频繁。我的主用机器开始显得垂垂老矣。多年来，我使用 Mac 的终端来访问类 Unix 的 Darwin 操作系统，我在终端和网页浏览器之间切换的时间越来越多。是时候进行转换了吗？

我开始探索一个类似 Macbook 的 Linux 笔记本电脑的可能性。在做了一些研究、阅读测评和留言板之后，我选择了长期以来备受赞誉的戴尔 XPS 13 开发者版 7390，选择了第十代 i7。我选择它是因为我喜欢 Macbook（尤其是超薄的 Macbook Air）的感觉，而对 XPS 13 的评论表明它似乎是类似的笔记本电脑，对其触控板和键盘的评价也真的很好。

最重要的是，它装载了 Ubuntu。虽然买一台电脑，擦掉它，然后安装一个新的 Linux 发行版是很容易的，但我被这种配合得当的操作系统和硬件所吸引，而且它允许我们进行大量的定制，就像我们在 Linux 中了解而喜爱的一样。因此，当有促销活动时，我毅然决然地购买了它。

### 每天运行 Linux 是什么感觉

如今，我使用 XPS 13 已经有三个月了，我的双启动的 Linux 工作笔记本也有两年了。起初，我以为我会花更多的时间寻找一个更像 Mac 的替代桌面环境或窗口管理器，比如 [Enlightenment](https://www.enlightenment.org/)。我试过几个，但我不得不说，我喜欢开箱即用的 [GNOME](https://opensource.com/downloads/cheat-sheet-gnome-3) 的简单性。首先，它是精简的；没有太多的 GUI 元素会吸引你的注意力。事实上，它很直观，这份 [概览](https://help.gnome.org/users/gnome-help/stable/shell-introduction.html.en) 只需要几分钟就能看完。

我可以通过应用程序仪表盘或按网格排布的按钮访问我的应用程序，从而进入应用程序视图。要访问我的文件系统，我点击仪表盘上的“文件”图标。要打开 GNOME 终端，我输入 `Ctrl+Alt+T` 或者直接按下 `Alt+Tab` 来在打开的应用程序和打开的终端之间切换。定义你自己的 [自定义热键快捷方式](https://docs.fedoraproject.org/en-US/quick-docs/proc_setting-key-shortcut/) 也很容易。

除此以外，没有太多要说的。与 Mac 的桌面不同，没有那么多的东西会让人迷失，这意味着让我从工作或我想运行的应用程序中分心的东西更少。我没有看到我在 Mac 上浏览窗口的那么多选项，也不必在导航时花费那么多时间。在 Linux 中，只有文件、应用程序和终端。

我安装了 [i3 平铺式窗口管理器](https://opensource.com/article/18/9/i3-window-manager-cheat-sheet) 来做一个测试。我在配置上遇到了一些问题，因为我是用 [德沃夏克键盘](https://en.wikipedia.org/wiki/Dvorak_keyboard_layout) 键入的，而 i3 并不适应另一种键盘配置。我想，如果再努力一点，我可以在 i3 中找出一个新的键盘映射，但我主要想找的是简单的平铺功能。

我看了 GNOME 的平铺功能，并感到非常惊喜。你按下 `Super` 键（对我来说，就是有 Windows 标志的那个键 —— 我应该用贴纸盖住它！），然后按一个修饰键。例如，按 `Super + ←` 将你当前的窗口移动到屏幕左侧的贴片上。`Super + →` 移动到右半边。`Super + ↑` 使当前窗口最大化。`Super + ↓` 则恢复到之前的大小。你可以用 `Alt+Tab` 在应用程序窗口之间移动。这些都是默认行为，可以在键盘设置中自定义。

插上耳机或连接到 HDMI 的工作方式与你预期的一样。有时，我打开声音设置，在 HDMI 声音输出或我的外部音频线之间进行切换，就像我在 Mac 或 PC 上那样。触控板的反应很灵敏，我没有注意到与 Macbook 的有什么不同。当我插入一个三键鼠标时，它可以立即工作，即使是用我的蓝牙鼠标和键盘。

#### 软件

我在几分钟内安装了 Atom、VLC、Keybase、Brave 浏览器、Krita、Blender 和 Thunderbird。我在终端用 Apt 软件包管理器安装了其他软件（和平常一样），它比 macOS 的 Homebrew 软件包管理器提供了更多软件包。

#### 音乐

我有许多种听音乐的选择。我使用 Spotify 和 [PyRadio](https://opensource.com/article/19/11/pyradio) 来串流播放音乐。[Rhythmbox](https://wiki.gnome.org/Apps/Rhythmbox) 在 Ubuntu 上是默认安装的；这个简单的音乐播放器可以立即启动，而且毫不臃肿。只需点击菜单，选择“添加音乐”，然后导航到一个音乐目录（它会递归搜索）。你也可以轻松地串流播客或在线广播。

#### 文本和 PDF

我倾向于在带有一些插件的 [Neovim](https://neovim.io/) 中用 Markdown 写作，然后用 Pandoc 将我的文档转换为任何最终需要的格式。对于一个带有预览功能的漂亮的 Markdown 编辑器，我下载了 [Ghostwriter](https://wereturtle.github.io/ghostwriter/)，一个最集中注意力的写作应用程序。

如果有人给我发了一个微软 Word 文档，我可以用默认的 LibreOffice Writer 应用程序打开它。

偶尔，我也要签署一份文件。用 macOS 的“预览”应用程序和我的 PNG 格式的签名，这很容易，我需要一个 Linux 的对应工具。我发现默认的 PDF 查看器应用程序没有我需要的注释工具。LibreOffice 绘图程序是可以接受的，但不是特别容易使用，而且它偶尔会崩溃。做了一些研究后，我安装了 [Xournal](http://xournal.sourceforge.net/)，它有我需要的简单的注释工具，可以添加日期、文字和我的签名，而且与 Mac 的预览程序相当。它完全能满足我的需要。

#### 从我的手机中导入图片

我有一个 iPhone。为了把我的图片从手机上拿下来，有很多方法可以同步和访问你的文件。如果你有一个不同的手机，你的过程可能是不同的。下面是我的方法：

1. 用 `sudo apt install gvfs-backends` 来安装 `gvfs-backends`，它是 GNOME 虚拟文件系统的一部分。
2. 获取你的手机的序列号。将你的手机插入你的电脑，在你的 iPhone 上点击“信任”。在你电脑的终端输入：

```
lsusb -v 2> /dev/null | grep -e "Apple Inc" -A 2

```

（感谢 Stack Oveflow 用户 [complistic](https://stackoverflow.com/questions/19032162/is-there-a-way-since-ios-7s-release-to-get-the-udid-without-using-itunes-on-a/21522291#21522291) 提供的这个代码技巧）。
3. 现在打开你的文件系统。
	* 按 `Ctrl+L` 打开一个位置并输入：`afc://<你的序列号>`，（请替换 `<你的序列号>`）来打开并导航到你的 DCIM 文件夹。我的照片和视频在 DCIM 文件夹的五个子文件夹内，而不是在照片文件夹内。从这里你可以手动将它们移到你的电脑上。
	* 挂载手机文件系统后，你也可以在终端中通过以下方式导航到你的文件：

	```
	cd /run/user/1001/gvfs/afc:host=<你的序列号>

	```

#### 图形、照片、建模和游戏引擎

我是一名教育工作者，教授各种新媒体课程。我的许多同事和学生都订阅了价格昂贵的专有的 Adobe Creative Suite。我喜欢让我的学生知道他们还有其他选择。

对于绘图和图形编辑，我使用 [Krita](https://opensource.com/article/19/4/design-posters)。这绝对是我的 Photoshop 替代品。对于插图工作，还有 [Inkscape](https://opensource.com/article/19/1/inkscape-cheat-sheet) 和 Scribus 的出版软件。对于自动编辑，我使用命令行 [ImageMagick](https://opensource.com/article/17/8/imagemagick) 程序，它已经预装在 Ubuntu 中。

为了管理我的图像，我使用简单的 [Shotwell](https://gitlab.gnome.org/GNOME/shotwell/) 应用程序。

对于 3D 建模，我使用并教授开源的 [Blender](https://opensource.com/article/18/4/5-best-blender-video-tutorials-beginners) 软件。在我的学校，我们教 [Unity 3d](https://unity.com/)，它有 Linux 版本。它运行良好，但我一直想试试 [Godot](https://opensource.com/article/17/12/get-started-developing-games-godot)，一个开源的替代品。

#### 开发

我的 XPS 13 安装了 Chrome 和 Chromium。我还添加了 Firefox 和 [Brave](https://brave.com/) 浏览器。所有都和你在 Mac 或 PC 上习惯的一样。大多数时候，我在 Atom 中进行开发工作，有时在 Visual Studio Code 中进行，这两种软件都很容易安装在 Linux 上。Vim 已经预装在终端，而我首选的终端文本编辑器 Neovim，也很容易安装。

几周后，我开始尝试其他终端。我目前最喜欢的是 Enlightenment 基金会的 Terminology。首先，它允许你在终端中 [查看图片](https://www.enlightenment.org/about-terminology.md)，这在 Mac 的终端中是很难做到的。

### 留在这里

我看不出自己会转回 Mac 作为我的日用电脑。现在，当我使用 Mac 时，我注意到超多的选项和运行一个应用程序或浏览某个地方所需的额外步骤。我还注意到它的运行速度有点慢，或许这只是我个人的感受？

现在我已经转到了一个开源的生态系统和 Linux，我很高兴，没有必要再转回去。

---

via: <https://opensource.com/article/20/3/mac-linux>

作者：[Lee Tusman](https://opensource.com/users/leeto) 选题：[lujun9972](https://github.com/lujun9972) 译者：[wxy](https://github.com/wxy) 校对：[wxy](https://github.com/wxy)

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


硬核观察 #575 号称“首个中文编写的操作系统”被质疑

Summary: 更多：• 福特计划销售缺少部分芯片的 SUV • 因为最近的“幽灵”漏洞，原定的 Linux 5.17 发布延迟了

中文编程，国内有一大堆魔征人。特别是那个叫吴烜的，每次中文编程话题下能看到他。

研发编程语言时，有哪些重要的问题要考虑？

+ 语法和语义 X

+ 类型系统 X

+ 形式化规范 X

+ 工具链与标准库 X

+ 高性能的运行时实现 X

+ 社区生态建设 X

+ lexer 正则表达式的关键字 √

一见中文编程，立刻想到自主研发，立刻想到技术封锁，立刻想到国际关系，立刻想到意识形态，立刻想到大是大非，一些人的想象惟在这一层能够如此跃进。

——[为什么大家都很否定中文编程？ - doodlewind的回答](zhihu.com/question/26071216/answer/1970338597)

这么明显的，有点反串的意思

那个什么宙最强的中文系统：尽管我是中国人，我也为你感到羞耻。移用他人成果不说，还牛气哄哄的。你牛个啥？我现在告诉你：图标侵权、操作方式侵犯相关专利、涉嫌虚假宣传、臭不要脸！

嗯，有理由怀疑是有民族主义意图或其他政治意图的人，刻意在通过制造事件丑化中文开源社区。

B站上还有一个五年级的小学生复制了几个Python脚本就宣称这是操作系统的，因为太过于离谱，身份证都被网暴出来了。这算个啥

来自四川达州的 Chrome Mobile 61.0|Android 8.1 用户

全宇宙，听起来就很牛批

# 硬核观察 #575 号称“首个中文编写的操作系统”被质疑

### 号称“首个中文编写的操作系统”被质疑

根据开发者 Jason.Shao 略带调侃的介绍，“[火龙操作系统](https://gitee.com/ssxos/huolongcaozuoxitong) 是全宇宙首个采用中文编写的操作系统”，使用自创的甲语言，乙语言开发，可以自举编译。支持 64 位多核多任务图形化，采用分页式内存管理，支持 x86\_64、ARMv8（仅 QEMU 测试）架构。采用 Windows 11 界面风格，支持 32 位真彩显示，分辨率可达 2560x1080。支持 300 个常用 Win API，支持部分 exe 程序。硬件方面支持 USB、声卡、网卡等，甚至支持 Intel 11 代酷睿的 Tiger Lake 核显。

但在该项目的 Gitee 页面有人指出，“这个就是日本人川合秀实《30天自制操作系统》里的‘纸娃娃操作系统’，所谓的‘甲语言’其实就是 asm 汇编语言，使用了拙劣的文本替换方式，把诸如 mov 这样的指令用蹩脚的‘移送’来替换……‘乙语言’就是 c 语言。”作者回复称，“请你仔细阅读 30 天自制操作系统的开源协议再来吐槽，作者明确说明了代码可以随意修改，修改后的代码也不必开源，拿来商用都是可以的，关于本项目之后的代码都不在开源！”

>
> 老王点评：实在槽点太多，大家请随意吐槽。
>
>
>

### 福特计划销售缺少部分芯片的 SUV

这些芯片为后排空调和加热控制提供支持。福特将在一年内向经销商运送缺失的芯片，然后他们将为购买了这些车辆的客户安装这些芯片。[福特说](https://www.theverge.com/2022/3/13/22975246/ford-ship-sell-incomplete-vehicles-missing-chips)，空调和加热仍然可以从前排座位上控制，选择购买没有后排控制的车辆的客户将获得降价。去年，福特生产出来但缺少芯片的汽车堆满了停车场，原本计划向经销商运送部分完工的、不可驾驶的车辆，但现在，缺少部分芯片的车辆将既可驾驶又可销售。而其他汽车制造商也不得不因芯片短缺而做出牺牲，通用汽车放弃了无线充电、高清收音机和使一些皮卡更有效运行的燃料管理模块。

>
> 老王点评：福特真是个鬼机灵。
>
>
>

### 因为最近的“幽灵”漏洞，原定的 Linux 5.17 发布延迟了

Linus Torvalds 在今天的 [5.17-rc8 公告](https://www.phoronix.com/scan.php?page=news_item&px=Linux-5.17-rc8-Released) 中解释说，由于新的变异的“幽灵”攻击和各种各样的其他修复，他觉得发布 -rc8 比直接发布最终版本更舒服。-rc8 补丁中大约有一半是架构更新。因此，Linux 5.17 现在计划在下周末（3 月 20 日）发布。这个新的幽灵漏洞影响到英特尔和 Arm CPU。

>
> 老王点评：这就是计划赶不上变化，新的 CPU 漏洞又得让各大操作系统忙一段时间了。
>
>
>