mirror of
https://github.com/LCTT/TranslateProject.git
synced 2025-03-03 01:10:13 +08:00
Merge branch 'master' of https://github.com/Donkey-Hao/TranslateProject
This commit is contained in:
commit
bf7450ec63
@ -0,0 +1,123 @@
|
||||
[#]: subject: (How we built an open source design system to create new community logos)
|
||||
[#]: via: (https://opensource.com/article/21/4/ansible-community-logos)
|
||||
[#]: author: (Fiona Lin https://opensource.com/users/fionalin)
|
||||
[#]: collector: (lujun9972)
|
||||
[#]: translator: (MareDevi)
|
||||
[#]: reviewer: (wxy)
|
||||
[#]: publisher: (wxy)
|
||||
[#]: url: (https://linux.cn/article-15227-1.html)
|
||||
|
||||
我们如何建立一个开源的设计系统来创造新的社区徽标
|
||||
======
|
||||
|
||||
> 了解 Ansible 的新徽标是如何根据相关人员的意见开发的,以确保整个项目的品牌一致性。
|
||||
|
||||
![UX design Mac computer with mobile and laptop][1]
|
||||
|
||||
作为红帽的用户体验(UX)设计和 Ansible 产品团队的交互设计师,我们花了大约 6 个月的时间为 Ansible 社区设计了一系列徽标。这件事其实在更早的时候就开始了,当时一位项目经理要求我们为一个幻灯片提供一个 “快速而简单” 的徽标。在收集了一些需求后,我们在几天内就向相关人员展示了一个徽标,而且没有经过太多调整。几个月后,另一个相关人员说他们也需要类似的徽标,所以我们重复了这个过程。
|
||||
|
||||
于是,我们注意到一个模式:像这样的徽标资源不仅仅代表个人的要求,而是整个 Ansible 项目的共同需要。在完成了几个徽标要求后,我们有了一系列临时的设计,但在没有意识到品牌和设计惯例的情况下,这可能给整个 Ansible 的品牌视觉造成了不一致。随着这个徽标系列的增加,我们认识到了这个迫在眉睫的问题,并需要解决它。
|
||||
|
||||
我们的解决方案是创建一个 Ansible 设计系统,这是一个针对品牌的资源,可以指导未来一致的徽标设计。
|
||||
|
||||
### 什么是设计系统?
|
||||
|
||||
设计系统是一个可重复使用的资源和指导方法的集合,有助于告知任何数字产品套件的视觉语言。设计系统创造了一些模式,将独立的产品整合在一起,并通过可扩展性和一致性提升品牌。
|
||||
|
||||
特别是在一个有多种产品的大公司里,如果没有标准化,扩展起来就不容易,因为不同的团队对每个产品都有贡献。设计系统可以作为每个团队建立新资产的基线。有了标准化的外观和感觉,产品在整个组合中被统一为一个家族。
|
||||
|
||||
### 从头构建一个设计系统
|
||||
|
||||
在收到相关人员提出的为 Ansible 开源社区(如 Ansible Builder、Ansible Runner 和Project Receptor)创建徽标的一系列要求后,我们决定为我们的工作流程设计一个结构,并创建一个单一的事实来源,为之努力。
|
||||
|
||||
首先,我们对现有的徽标进行了视觉审计,以确定我们要做的是什么。Ansible 的原始徽标系列由四个主要图像组成:代表 AWX 的 Angry Spud,代表 Ansible 核心/引擎的 Ansibull,以及代表 AWX 的带翅膀的显示器。大部分的徽标都是用一致的红色阴影和公牛的形象联系在一起的,但是笔画的宽度、笔画的颜色、线条的质量和排版复杂而多样。
|
||||
|
||||
![Original Ansible logos][2]
|
||||
|
||||
Angry Spud 使用棕褐色的轮廓和手绘风格,而 Ansibull 则是一个对称的几何矢量图。AWX 显示器是一个异类,它有细线画的翅膀,蓝色的矢量矩形,以及古英语字体(这里没有包括在内,但与家族中其他使用现代无衬线的字体相比,它是一个例外)。
|
||||
|
||||
### 确立新的设计标准
|
||||
|
||||
考虑到调色板、排版和图像,我们产生了一个一致的构图,以 Ansibull 代表所有核心的 Ansible 产品,以及大胆的线条和充满活力的颜色。
|
||||
|
||||
![Ansible design system][4]
|
||||
|
||||
新的 Ansible 社区徽标设计风格指南详细说明了 Ansible 产品徽标的调色、排版、尺寸、间距和徽标变化。
|
||||
|
||||
新的风格指南展示了一种全新的、现代的定制字体,该字体基于瑞士独立字体厂商 [Grilli Type][5] 的 GT America 字体。我们为该字体创造了一个柔和的外观,通过圆润每个字母某些角落来配合图像的圆润度。
|
||||
|
||||
我们决定通过在光谱中加入更多的颜色并以原色为基础,设计一个更生动、更饱和、更普遍的调色板。新的调色板以浅蓝色、黄色和粉红色为主色调,每种颜色都有较浅的高光和较深的阴影。这种更广泛的颜色范围使系统内有更多的灵活性,并引入了 3D 的外观和感觉。
|
||||
|
||||
![New Ansible logos][6]
|
||||
|
||||
我们还引入了新的图像,如 Receptor 和 AWX 徽标中的六边形,以保持视觉上的连续性。最后,我们确保每个徽标在浅色和深色背景上都能使用,以获得最大的灵活性。
|
||||
|
||||
### 拓展设计组合
|
||||
|
||||
一旦我们建立了核心徽标系列,我们就开始为 Ansible 服务创建徽章,如 Ansible Demo 和 Ansible Workshop。为了将服务与产品区分开来,我们决定将服务图形包围在一个圆圈中,圆圈中包含了相同的定制排版的服务名称。新的服务徽章显示了幼儿版的 Ansibull(来自 Ansible Builder 的徽标)正在完成与每个服务相关的任务,例如 Ansible Demo 指向白板,Ansible Workshop 则使用构建工具。
|
||||
|
||||
![New Ansible services logos][7]
|
||||
|
||||
### 利用开放源码进行设计决策
|
||||
|
||||
最初的 AWX 徽标受到了摇滚乐图像的影响,如翅膀和重金属字体(此处省略)。
|
||||
|
||||
![Original AWX logo][8]
|
||||
|
||||
(Fiona Lin and Taufique Rahman, [CC BY-SA 4.0][3])
|
||||
|
||||
Ansible 社区的一些成员,包括红帽多样性和包容性小组,提请我们注意,这些元素类似于仇恨团体使用的图像。
|
||||
|
||||
考虑到原徽标的社会影响,我们必须迅速与 Ansible 社区合作,设计一个替代徽标。我们没有像最初的徽标那样闭门造车,而是扩大了项目的范围,仔细考虑了更多的相关人员,包括 Ansible 社区、红帽多样性和包容性小组,以及红帽法律团队。
|
||||
|
||||
我们开始了头脑风暴,向 Ansible 开源社区征求意见。Ansible 的一位工程师 Rebeccah Hunter 在草图绘制阶段做出了贡献,后来成为我们设计团队中的一员。让一大群相关人员参与进来的挑战之一是,我们对新的徽标概念有了各种各样的想法,比如一条辅助电缆、一碗拉面等等。
|
||||
|
||||
我们勾画了五个社区贡献的徽标创意,每个徽标都有不同的品牌视觉:一个芽、一个火箭、一个显示器、一碗拉面和一个辅助电缆。
|
||||
|
||||
![AWX logo concepts][9]
|
||||
|
||||
在完成这些初步的概念草图后,我们建立了一个虚拟的投票机制,并在整个迭代过程中使用。这个投票系统使我们能够利用社区的反馈,从五个初始概念缩小到三个:火箭、一碗拉面和显示器。我们在这三个方向上进一步迭代,并通过专门的 Slack 频道进行反馈,直到我们找到一个符合社区愿景的方向,即 AWX 显示器。
|
||||
|
||||
![New AWX logo][10]
|
||||
|
||||
以社区的意见为指导,我们围绕显示器为 AWX 打造了徽标概念。我们保留了原徽标中的显示器元素,同时使其外观和感觉现代化,以配合我们更新的设计系统。我们使用了更鲜艳的色调,更简洁的无衬线字体,以及来自 Project Receptor 徽标的元素,包括六角形图案。
|
||||
|
||||
通过从一开始就与我们的社区接触,我们能够在公开场合进行设计和迭代,所有相关人员都有一种包容感。最后,我们认为这是取代一个有争议的徽标的最好方法。最终的版本被移交给了红帽法律团队,在获得批准后,我们用这个新的徽标替换了所有的现有资产。
|
||||
|
||||
### 主要收获
|
||||
|
||||
为设计系统创建一套规则和资源,使你的数字产品全面保持一致,消除品牌混乱,并实现可扩展性。
|
||||
|
||||
当你探索在自己的社区建立一个设计系统时,你可能会从我们在这条路上学到的这些关键经验中受益:
|
||||
|
||||
* 用设计系统来扩展新的徽标,比没有设计系统要容易得多。
|
||||
* 当你使用投票系统来验证结果时,杂乱无章的设计方案就会变得不那么令人生畏。
|
||||
* 将大量受众的注意力引向三套方案,可以消除决策疲劳,集中社区反馈。
|
||||
|
||||
我们希望这篇文章能够提供用于开源社区的设计系统的启示,并帮助你认识到在早期开发一个系统的好处。如果你正在创建一个新的设计系统,你有什么问题?如果你已经创建了一个,你学到了什么教训?请在评论中分享你的想法。
|
||||
|
||||
*(图像来自:Fiona Lin and Taufique Rahman, [CC BY-SA 4.0][3])*
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/21/4/ansible-community-logos
|
||||
|
||||
作者:[Fiona Lin][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[MareDevi](https://github.com/MareDEvi)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://opensource.com/users/fionalin
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://opensource.com/sites/default/files/styles/image-full-size/public/lead-images/ux-design-mac-laptop.jpg?itok=9-HKgXa9 (UX design Mac computer with mobile and laptop)
|
||||
[2]: https://opensource.com/sites/default/files/pictures/original_logos.png (Original Ansible logos)
|
||||
[3]: https://creativecommons.org/licenses/by-sa/4.0/
|
||||
[4]: https://opensource.com/sites/default/files/pictures/design_system.png (Ansible design system)
|
||||
[5]: https://www.grillitype.com/
|
||||
[6]: https://opensource.com/sites/default/files/pictures/new_logos.png (New Ansible logos)
|
||||
[7]: https://opensource.com/sites/default/files/pictures/new_service_badges.png (New Ansible services logos)
|
||||
[8]: https://opensource.com/sites/default/files/uploads/awx_original.png (Original AWX logo)
|
||||
[9]: https://opensource.com/sites/default/files/uploads/awx_concepts.png (AWX logo concepts)
|
||||
[10]: https://opensource.com/sites/default/files/uploads/awx.png (New AWX logo)
|
220
published/20210623 Parsing config files with Lua.md
Normal file
220
published/20210623 Parsing config files with Lua.md
Normal file
@ -0,0 +1,220 @@
|
||||
[#]: subject: (Parsing config files with Lua)
|
||||
[#]: via: (https://opensource.com/article/21/6/parsing-config-files-lua)
|
||||
[#]: author: (Seth Kenlon https://opensource.com/users/seth)
|
||||
[#]: collector: (lujun9972)
|
||||
[#]: translator: (hadisi1993)
|
||||
[#]: reviewer: (wxy)
|
||||
[#]: publisher: (wxy)
|
||||
[#]: url: (https://linux.cn/article-15235-1.html)
|
||||
|
||||
使用 Lua 解析配置文件
|
||||
======
|
||||
|
||||

|
||||
|
||||
> 使用 Lua 配置持久化应用设置。
|
||||
|
||||
不是所有的应用都需要配置文件;对很多应用来说,在启动时变得焕然一新对它们更有利。例如,简单的工具就极少需要偏好项和设置在使用过程中保持稳定不变。然而,当你编写一个复杂的应用程序时,如果能让用户设置与应用的交互方式,以及应用与系统交互的方式会很不错。这就是配置文件用来做的事情。本文将讨论一些利用 Lua 进行持久化配置的方法。
|
||||
|
||||
### 选择一种格式
|
||||
|
||||
关于配置文件很重要的两点是一致性和可预见性。你不会希望为了保存用户偏好项,将信息转储到文件中,然后再花几天去编码实现“逆向工程”,处理最后出现在文件里的随机信息。
|
||||
|
||||
这里用一些常用的 [配置文件格式][2]。Lua 有一些库可以处理大多数常用的配置格式;在本文中,我会采用 INI 格式。
|
||||
|
||||
### 安装库
|
||||
|
||||
Lua 库的核心仓库是 [Luarocks.org][3]。你可以在这个网站搜索库,或者你可以安装并使用 `luarocks` 终端命令。
|
||||
|
||||
Linux 环境中,你可以从发行版的软件仓库中下载它,例如:
|
||||
|
||||
```
|
||||
$ sudo dnf install luarocks
|
||||
```
|
||||
|
||||
在 macOS 上,请使用 [MacPorts][4] 或者 [Homebrew][5]。在 Windows 上,请使用 [Chocolatey][6]。
|
||||
|
||||
`luarocks` 安装后,你可以使用 `search` 子命令来搜索一个恰当的库。如果你不知道库的名字,可以通过关键词来搜索这个库,例如 `ini`、xml` 或者 `json`,这取决于你想要用这个库做什么。打个比方,你可以搜索 `inifile`, 这个库被我用来解析 INI 格式的文本文件。
|
||||
|
||||
```
|
||||
$ luarocks search inifile
|
||||
Search results:
|
||||
inifile
|
||||
1.0-2 (rockspec) - https://luarocks.org
|
||||
1.0-2 (src) - https://luarocks.org
|
||||
1.0-1 (rockspec) - https://luarocks.org
|
||||
[...]
|
||||
```
|
||||
|
||||
一个开发者容易犯的错误是在系统上安装了这个库却忘了把它和应用打包。这会给没有安装这个库的用户带来麻烦。为了防止这个问题发生,可以使用 `--tree` 选项将它安装在项目的本地文件夹中。如果你没有这个项目文件夹,那就先创建这个文件夹再安装库:
|
||||
|
||||
```
|
||||
$ mkdir demo
|
||||
$ cd demo
|
||||
$ luarocks install --tree=local inifile
|
||||
```
|
||||
|
||||
`--tree` 选项指示 `luarocks` 创建一个新文件夹并在其中安装你的库,例如这个例子中的 `local` 文件夹。 使用这个简单的技巧,你可以将所有你项目要使用的依赖项直接安装到项目文件夹中。
|
||||
|
||||
### 配置代码
|
||||
|
||||
首先,在一个名 `myconfig.ini` 的文件中创建一些 INI 数据。
|
||||
|
||||
```
|
||||
[example]
|
||||
name=Tux
|
||||
species=penguin
|
||||
enabled=false
|
||||
|
||||
[demo]
|
||||
name=Beastie
|
||||
species=demon
|
||||
enabled=false
|
||||
```
|
||||
|
||||
将这个文件保存到你的主目录下,命名为 `myconfig.ini`, _不要_ 存到项目文件夹下。你通常会希望配置文件独立于你的文件存在,这样当用户卸载你的应用时,使用应用时产生的数据可以保存在系统中。有些用户会删除不重要的配置文件,但大多数不会。最终,如果他们要重装这个应用,还会保留着所有的用户偏好项。
|
||||
|
||||
配置文件的位置以技术来说并不重要,但每一个操作系统都有存储它们的特定或者默认的路径。在 Linux 中,这个路径由 [Freedesktop 规范][7] 指定。它规定配置文件被保存在一个名为 `~/.config` 的隐藏文件夹中。为了操作时更加清晰明确,可以在主目录下存储配置文件,以便于使用和寻找。
|
||||
|
||||
创建第二个文件,命名为 `main.lua`,并在你喜欢的文本编辑器中打开它。
|
||||
|
||||
首先,你必须告诉 Lua 你将想要使用的附加库放置在哪里。`package.path` 变量决定了 Lua 到哪里去寻找这些库。你可以从终端中查看 Lua 默认的包地址:
|
||||
|
||||
```
|
||||
$ Lua
|
||||
> print(package.path)
|
||||
./?.lua;/usr/share/lua/5.3/?.lua;/usr/share/lua/5.3/?/init.lua;/usr/lib64/lua/5.3/?.lua;/usr/lib64/lua/5.3/?/init.lua
|
||||
```
|
||||
|
||||
在你的 Lua 代码中,将你本地库的路径添加到 `package.path` 中:
|
||||
|
||||
```
|
||||
package.path = package.path .. ';local/share/lua/5.3/?.lua
|
||||
```
|
||||
|
||||
### 使用 Lua 解析 INI 文件
|
||||
|
||||
当包的位置确定以后,下一件事就是引入 `inifile` 库并处理一些操作系统逻辑。即使这是一个很简单的应用,代码也需要从操作系统获取到用户主目录的路径,并建立在必要时将文件系统路径返回给操作系统的通信方式。
|
||||
|
||||
```
|
||||
package.path = package.path .. ';local/share/lua/5.3/?.lua
|
||||
inifile = require('inifile')
|
||||
|
||||
-- find home directory
|
||||
home = os.getenv('HOME')
|
||||
|
||||
-- detect path separator
|
||||
-- returns '/' for Linux and Mac
|
||||
-- and '\' for Windows
|
||||
d = package.config:sub(1,1)
|
||||
```
|
||||
|
||||
现在你可使用 `inifile` 来从配置文件解析数据到 Lua 表中。一旦这些数据被导入进表中,你可以像查询其他的 Lua 表一样查询它。
|
||||
|
||||
```
|
||||
-- parse the INI file and
|
||||
-- put values into a table called conf
|
||||
conf = inifile.parse(home .. d .. 'myconfig.ini')
|
||||
|
||||
-- print the data for review
|
||||
print(conf['example']['name'])
|
||||
print(conf['example']['species'])
|
||||
print(conf['example']['enabled'])
|
||||
```
|
||||
|
||||
在终端中运行代码可以看见结果:
|
||||
|
||||
```
|
||||
$ lua ./main.lua
|
||||
Tux
|
||||
penguin
|
||||
false
|
||||
```
|
||||
|
||||
这看起来是正确的。试试在 `demo` 块中执行同样的操作。
|
||||
|
||||
### 使用 INI 格式存储数据
|
||||
|
||||
不是所有用来解析的库都会读写数据(通常被称为 _编码 和 _解码_),但是 `inifile` 会这样做。这意味着你可以使用它对配置文件进行修改。
|
||||
|
||||
为了改变配置文件中的值,你可以对被解析的表中的变量进行设置,然后把表重写回配置文件中。
|
||||
|
||||
```
|
||||
-- set enabled to true
|
||||
conf['example']['enabled'] = true
|
||||
conf['demo']['enabled'] = true
|
||||
|
||||
-- save the change
|
||||
inifile.save(home .. d .. 'myconfig.ini', conf)
|
||||
```
|
||||
|
||||
现在再来看看配置文件:
|
||||
|
||||
```
|
||||
$ cat ~/myconfig.ini
|
||||
[example]
|
||||
name=Tux
|
||||
species=penguin
|
||||
enabled=true
|
||||
|
||||
[demo]
|
||||
name=Beastie
|
||||
species=demon
|
||||
enabled=true
|
||||
```
|
||||
|
||||
### 配置文件
|
||||
|
||||
按照用户的设想来存储数据对程序来说是至关重要的。幸运的是,这对工程师来说是一个很常规的任务,大多数工作可能早已被完成了。只要找到一个好用的库完成开放格式下编码和解码,你就能为用户提供一致且持续的体验。
|
||||
|
||||
以下是完整的演示代码,可供参考。
|
||||
|
||||
```
|
||||
package.path = package.path .. ';local/share/lua/5.3/?.lua'
|
||||
inifile = require('inifile')
|
||||
|
||||
-- find home directory
|
||||
home = os.getenv('HOME')
|
||||
|
||||
-- detect path separator
|
||||
-- returns '/' for Linux and Mac
|
||||
-- and '\' for Windows
|
||||
d = package.config:sub(1,1)
|
||||
|
||||
-- parse the INI file and
|
||||
-- put values into a table called conf
|
||||
conf = inifile.parse(home .. d .. 'myconfig.ini')
|
||||
|
||||
-- print the data for review
|
||||
print(conf['example']['name'])
|
||||
print(conf['example']['species'])
|
||||
print(conf['example']['enabled'])
|
||||
|
||||
-- enable Tux
|
||||
conf['example']['enabled'] = true
|
||||
|
||||
-- save the change
|
||||
inifile.save(home .. d .. 'myconfig.ini', conf)
|
||||
```
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/21/6/parsing-config-files-lua
|
||||
|
||||
作者:[Seth Kenlon][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[hadisi1993](https://github.com/hadisi1993)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://opensource.com/users/seth
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://opensource.com/sites/default/files/styles/image-full-size/public/lead-images/OSDC_women_computing_2.png?itok=JPlR5aCA (坐在电脑前的女人)
|
||||
[2]: https://opensource.com/article/21/6/config-files-and-their-formats
|
||||
[3]: https://opensource.com/article/19/11/getting-started-luarocks
|
||||
[4]: https://opensource.com/article/20/11/macports
|
||||
[5]: https://opensource.com/article/20/6/homebrew-mac
|
||||
[6]: https://opensource.com/article/20/3/chocolatey
|
||||
[7]: https://www.freedesktop.org/wiki/Specifications
|
||||
[8]: http://www.opengroup.org/onlinepubs/009695399/functions/getenv.html
|
77
published/20210811 My top 5 tips for setting up Terraform.md
Normal file
77
published/20210811 My top 5 tips for setting up Terraform.md
Normal file
@ -0,0 +1,77 @@
|
||||
[#]: subject: "My top 5 tips for setting up Terraform"
|
||||
[#]: via: "https://opensource.com/article/21/8/terraform-tips"
|
||||
[#]: author: "Ayush Sharma https://opensource.com/users/ayushsharma"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "cool-summer-021"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-15206-1.html"
|
||||
|
||||
关于配置 Terraform 的五条建议
|
||||
======
|
||||
|
||||
> 本文介绍我使用 Terraform 五年之后吸取到的经验。
|
||||
|
||||

|
||||
|
||||
使用 Terraform 五年的经历让我吸取到一些重要经验。无论团队大小、项目性质,有五条要点对于配置合乎逻辑且可用的 Terraform 平台至关重要。
|
||||
|
||||
### 1、了解你的目标受众
|
||||
|
||||
这一点似乎显而易见,但我也见过一些在这方面犯错的案例。当组织和规划 Terraform 的相关代码时,无论是将目录结构标准化还是确定命名规范,考虑目标受众是非常重要的。例如:你的团队是否会使用这些 Terraform 脚本和模块?你是否会向其他团队交接工作?你的团队是否会有新成员加入?你是否正在独自进行项目开发?你是否会半年或一年后仍然使用这些配置,还是会将它安排给别人?
|
||||
|
||||
这类问题会影响某些决策。理想情况下,无论如何都应该有 <ruby>[远程状态][2]<rt>Remote State</rt></ruby> 和 <ruby>[状态锁定][3]<rt>State Locking</rt></ruby> 两种状态。远程状态确保你的笔记本电脑不是你的 Terraform 唯一运行的机器,状态锁定确保同一时刻只有一个人对基础设施进行修改操作。
|
||||
|
||||
命名规范应该对项目的最终拥有者有意义,而不是只对开发团队有意义。如果项目会转交给其他团队,应该确保他们对命名规范有发言权。如果代码由非技术的利益相关者或内部安全/ GCR 团队负责审查,应该确保他们会检查命名规范。另外,对于资源名称,为了让代码审查人员更仔细地进行检查,你应该使用资源标签,把有关的数据分类/隐私需求(高、中、低)标示出来。
|
||||
|
||||
### 2、重用,重用,重用
|
||||
|
||||
[Terraform 注册表][4] 为大多数普通用例提供了现成模块类库。我已经使用过 VPC 模块和安全模块中的大量功能,这些功能只需要提供相关的参数就能使用。使用不同的参数,简单调用这些模块对于处理大部分用例已经足够了。尽可能多地重用这些公共模块,可以避免大量且重复的编码、测试、检查、修复、重构等操作。
|
||||
|
||||
我也发现,基于使用或变更的频率划分模块和资源大有好处。例如,只使用一次的基础设施手脚架,例如 VPC 相关设置、安全模块、路由表、VPC 端点等,可以放在一起。但是像私有托管域条目、自动伸缩模块、目标模块、负载均衡器等,每次部署时都会变化,所以把这些与一次性的基础设施手脚架分离开来,会令代码检查更方便,调试更快速。
|
||||
|
||||
### 3、要明确,而非隐含
|
||||
|
||||
Terraform 代码中有一些常见的模式,它会导致设计中出现错误的假设。团队可以假设用来写代码的 Terraform 版本永远保持不变,外部模块不会变化,或它们使用的提供者不会变更。当这些外部依赖不可避免地发生变化时,就会导致一些难以发现的问题。
|
||||
|
||||
无论何处(包括主要的 Terraform 组、提供者组、功能模块组)都要确保定义是明确的。事先定义版本,可以确保依赖库是固定的,因此你可以在讨论、审查、测试后,明明白白地更新依赖关系。
|
||||
|
||||
### 4、自动化每一处,包括笔记本电脑、共享虚拟机、CI/CD。
|
||||
|
||||
在部署的各个阶段使用自动化方法,可以避免可能发生的问题。
|
||||
|
||||
在你提交代码前,使用 [Git 预提交钩子][5] 运行 `terraform fmt` 和 `terraform validate`。预提交钩子的作用是确保你的代码满足最低程度的格式和语法正确。把这个预提交文件检入到仓库,对你的团队成员都有好处。项目的第一步就进行质量控制相关的操作,它虽然表面上是小事一桩,但也很重要,能为项目节省大量时间。
|
||||
|
||||
一切现代化部署工具都有 CI 流程。当你向原始仓库推送代码时,可以使用它来运行 SAST 和单元测试工具。我写过一篇 [博客][6],是关于使用 Checkov 测试 Terraform 代码的安全性和合规性,并为组织特定的惯例创建自定义检查。把这些单元测试工具加入到你的 CI 管道,可以改进代码质量和健壮性。
|
||||
|
||||
### 5、写个好的 README.md 文件
|
||||
|
||||
我们都认为 Terraform 代码是自文档化的。的确如此,但是只有当未来的团队已经了解你的公司的命名规范、开发指南、机密通信、圈内笑话,以及你的仓库内除有效的 Terraform 代码之外其他所有东西,才会如此。维护 `README.md` 文件是个好习惯,它能节省大量时间,而且团队成员要为自己向 README 文件提交的任何内容负责,这样也就确保团队成员的忠诚度。
|
||||
|
||||
你的 README 文件至少应该包含在你的工作环境下(Linux、 Windows、Mac 等等)初始化 Terraform 环境的步骤,包括 Terraform 的版本信息。它应当确定需要的依赖库(Checkov、 TerraGrunt 及其他依赖)和其版本,以及团队使用的方便的 Linux 别名(例如有人喜欢将 `terraform fmt` 简写为 `tff`)。最重要的是,需要确定分支和 PR 审核策略和流程、命名规范和资源标签的相关标准。
|
||||
|
||||
README 文件需要通过这样的检验:如果团队有新成员加入,能否告诉他们做什么以及如何正确地完成工作?如果不能,在后续的几个月内,你将面对的是无休止的标准和流程讨论会议。
|
||||
|
||||
### 结束语
|
||||
|
||||
这些就是我使用 Terraform 多年后,认为需要传授给大家的五条有用的建议。也欢迎你分享自己的最佳实践。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/21/8/terraform-tips
|
||||
|
||||
作者:[Ayush Sharma][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[cool-summer-021](https://github.com/cool-summer-021)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://opensource.com/users/ayushsharma
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://opensource.com/sites/default/files/styles/image-full-size/public/lead-images/puzzle_computer_solve_fix_tool.png?itok=U0pH1uwj (Puzzle pieces coming together to form a computer screen)
|
||||
[2]: https://www.terraform.io/docs/language/state/index.html
|
||||
[3]: https://www.terraform.io/docs/language/state/locking.html
|
||||
[4]: https://registry.terraform.io/
|
||||
[5]: https://opensource.com/life/16/8/how-construct-your-own-git-server-part-6
|
||||
[6]: https://notes.ayushsharma.in/2021/07/cloud-infrastructure-sast-terraform-checkov
|
188
published/20220524 12 essential Linux commands for beginners.md
Normal file
188
published/20220524 12 essential Linux commands for beginners.md
Normal file
@ -0,0 +1,188 @@
|
||||
[#]: subject: "12 essential Linux commands for beginners"
|
||||
[#]: via: "https://opensource.com/article/22/5/essential-linux-commands"
|
||||
[#]: author: "Don Watkins https://opensource.com/users/don-watkins"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: "chai001125"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-15215-1.html"
|
||||
|
||||
12 个对新手最重要的 Linux 命令
|
||||
======
|
||||
|
||||
> 我向所有的 Linux 初学者推荐以下这些命令。
|
||||
|
||||

|
||||
|
||||
在使用 Linux 命令行时,很容易就会迷失方向,这可能会导致灾难性的后果:我有一次使用删除命令 `rm` 删除文件,然而删除之后我才意识到我刚刚是删除了计算机的引导目录。后来,我学会了使用 `pwd` 命令,来知道当前在文件系统的哪个目录下;并且我使用了 [trashy 和 trash-cli][2] 这一命令行回收站工具(LCTT 译注:在删除文件时 `trash-cli` 会充当中间人,将文件先“删除”到桌面上的垃圾箱中,能够通过垃圾箱或通过终端的 `trash` 命令,来恢复垃圾箱中已删除的文件。)
|
||||
|
||||
当我刚开始使用 Linux 时,我有一个放在桌子上的“速查表”,它就是《101 条你应该知道的 Linux 命令》,我在管理 Linux 服务器时能参考速查表上面的这些命令。随着我越来越熟悉这些命令,我越来越精通服务器管理了。
|
||||
|
||||
以下是我认为最有用的 12 个 Linux 命令。
|
||||
|
||||
### 1、打印工作目录(pwd)
|
||||
|
||||
`pwd` 命令会打印出你的工作目录。换句话来说,它输出你当前所在目录的路径。`pwd` 命令有两种选项:`-L` 或 `--logical`(即逻辑路径)用来打印当前的目录路径(不解析符号链接),`-P` 或 `--physial`(即物理路径)会打印出解析符号链接后的物理目录。(LCTT 译注:你可以进一步阅读我们翻译的 [另一篇文章](https://linux.cn/article-4356-1.html)。)
|
||||
|
||||
### 2、创建目录(mkdir)
|
||||
|
||||
使用 `mkdir` 命令来创建一个新目录,是非常容易的。以下命令,创建了一个名为 `example` 目录(若 `example` 已存在,则无法创建):
|
||||
|
||||
```
|
||||
$ mkdir example
|
||||
```
|
||||
|
||||
你也可以在嵌套地创建目录及其子目录:
|
||||
|
||||
```
|
||||
$ mkdir -p example/one/two
|
||||
```
|
||||
|
||||
如果目录 `example` 和目录 `one` 都已存在,则仅会创建目录 `two`。如果上述目录都不存在,则会创建这三个嵌套的目录。
|
||||
|
||||
### 3、列出文件(ls)
|
||||
|
||||
我最早使用的是 MS-DOS(微软磁盘操作系统),因此我习惯于使用 `dir` 命令,来列出文件。我不记得当时是否能在 Linux 上使用 `dir` 命令,但是如今 `dir` 命令已经包含在 <ruby>GNU 核心实用程序包<rt>GNU Core Utilities package</rt></ruby> 中了。大多数人会使用 `ls` 命令,来显示目录中的文件及其所有的属性。`ls` 命令有许多选项,包括 `-l` 查看文件的长列表,显示文件所有者和权限等信息。
|
||||
|
||||
### 4、更改当前工作目录(cd)
|
||||
|
||||
在 Linux 中经常要更改当前工作目录,这就是 `cd` 命令的功能。例如,以下的示例将让你从 <ruby>主目录<rt>home</rt></ruby> 进入 `Documents` 目录:
|
||||
|
||||
```
|
||||
$ cd Documents
|
||||
```
|
||||
|
||||
你可以使用 `cd ~` 或者 `cd`,来快速转换到你的主目录。你可以使用 `cd ..` 来返回到上一级目录。
|
||||
|
||||
### 5、删除文件(rm)
|
||||
|
||||
删除文件是很危险的,因为在 Linux 终端上用 `rm` 命令会**彻底地**删除文件,并没有像桌面的垃圾桶那样依旧保存着删除的文件。许多终端用户有一个坏习惯,他们会永久地删除他们认为不再需要的文件。然而,因为没有“取消删除”命令,这个坏习惯可能会导致严重的问题:你会不小心删除了包含重要数据的目录。
|
||||
|
||||
Linux 系统为文件删除提供了 `rm` 和 `shred` 命令。要删除文件 `example.txt`,请输入以下内容:
|
||||
|
||||
```
|
||||
$ rm example.txt
|
||||
```
|
||||
|
||||
然而,使用 `trash` 命令要安全得多,例如 [trashy][3] 或者 [trash-cli][4],它会将文件先“删除”到桌面上的垃圾箱中:
|
||||
|
||||
```
|
||||
$ trash example.txt
|
||||
```
|
||||
|
||||
(LCTT 译注:关于 Trash-Cli 的更多信息可以参考我们翻译的 [另一篇文章](https://linux.cn/article-10029-1.html)。)
|
||||
|
||||
### 6、复制文件(cp)
|
||||
|
||||
使用 `cp` 命令,来复制文件。`cp` 的语法是从*旧文件*复制到*新文件*。这里有一个例子:
|
||||
|
||||
```
|
||||
$ cp file1.txt newfile1.txt
|
||||
```
|
||||
|
||||
你也可以复制整个目录:
|
||||
|
||||
```
|
||||
$ cp -r dir1 newdirectory
|
||||
```
|
||||
|
||||
### 7、移动并重命名文件(mv)
|
||||
|
||||
重命名和移动文件在功能上是相同的过程。当你移动文件时,从一个目录中取出一个文件,并将其放入一个新目录中;当你重命名文件时,将一个目录中的文件更改为新名称,并放回到同一目录或另一个目录下。无论是重命名还是移动文件,你都可以使用 `mv` 命令:
|
||||
|
||||
```
|
||||
$ mv file1.txt file_001.txt
|
||||
```
|
||||
|
||||
### 8、创建一个空文件(touch)
|
||||
|
||||
使用 `touch` 命令可以简单地创建一个空文件:
|
||||
|
||||
```
|
||||
$ touch one.txt
|
||||
|
||||
$ touch two.txt
|
||||
|
||||
$ touch three.md
|
||||
```
|
||||
|
||||
### 9、更改权限(chmod)
|
||||
|
||||
使用 `chmod` 命令,来更改文件的权限。`chmod` 最常见的用途是让文件能够执行:
|
||||
|
||||
```
|
||||
$ chmod +x myfile
|
||||
```
|
||||
|
||||
以下的示例展示了如何用 `chmod` 命令给文件赋予权限,这对于脚本来说特别方便。尝试一下这个简单的练习吧:
|
||||
|
||||
```
|
||||
$ echo 'echo Hello $USER' > hello.sh
|
||||
|
||||
$ chmod +x hello.sh
|
||||
|
||||
$ ./hello.sh
|
||||
Hello, Don
|
||||
```
|
||||
|
||||
### 10、提升为 root 权限(sudo)
|
||||
|
||||
在管理自己的 Linux 系统时,可能需要提升为超级用户(也称为 root),这就是 `sudo`(即 <ruby>以超级用户做<rt>super user do</rt></ruby>)命令的来源。假设你想要做一些只有管理员(或 root 用户)才能做的事情,只需在命令前加一个 `sudo` 即可:
|
||||
|
||||
```
|
||||
$ touch /etc/os-release && echo "Success"
|
||||
touch: cannot touch '/etc/os-release': Permission denied
|
||||
|
||||
$ sudo touch /etc/os-release && echo "Success"
|
||||
Success
|
||||
```
|
||||
|
||||
### 11、关机(poweroff)
|
||||
|
||||
`poweroff` 命令的功能和它的字面意思一样:把你的计算机关机。需要在 `poweroff` 前面加一个 `sudo` 才能成功关机。
|
||||
|
||||
实际上,还有很多方法可以关闭你的计算机,这些方法有略微的不同。例如,`shutdown` 命令会在指定的时间(例如 60 秒)后关闭计算机:
|
||||
|
||||
```
|
||||
$ sudo shutdown -h 60
|
||||
```
|
||||
|
||||
或者立即关闭计算机:
|
||||
|
||||
```
|
||||
$ sudo shutdown -h now
|
||||
```
|
||||
|
||||
你也可以用 `sudo shutdown -r now` 或者 `reboot` 来重启计算机。
|
||||
|
||||
### 12、阅读手册(man)
|
||||
|
||||
`man` 命令可能是 Linux 中最重要的命令了,你可以通过 `man` 命令查看 Linux 系统上每个命令的官方文档。例如,要阅读更多有关 `mkdir` 的信息,可以输入:
|
||||
|
||||
```
|
||||
$ man mkdir
|
||||
```
|
||||
|
||||
一个与 `man` 相关的命令是 `info` 命令,它提供了一组不同的手册,它通常会提供比简洁的 `man` 页面更详细一点的内容。
|
||||
|
||||
### 你最喜欢的 Linux 命令是什么?
|
||||
|
||||
Linux 系统上还有数百个其他命令!你最喜欢使用的 Linux 命令是什么呢?什么命令是你一直反复使用的呢?
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/22/5/essential-linux-commands
|
||||
|
||||
作者:[Don Watkins][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[chai001125](https://github.com/chai001125)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://opensource.com/users/don-watkins
|
||||
[b]: https://github.com/lkxed
|
||||
[1]: https://opensource.com/sites/default/files/lead-images/command_line_prompt.png
|
||||
[2]: https://www.redhat.com/sysadmin/recover-file-deletion-linux
|
||||
[3]: https://gitlab.com/trashy/trashy
|
||||
[4]: https://github.com/andreafrancia/trash-cli
|
343
published/20220903 Infuse your awk scripts with Groovy.md
Normal file
343
published/20220903 Infuse your awk scripts with Groovy.md
Normal file
@ -0,0 +1,343 @@
|
||||
[#]: subject: "Infuse your awk scripts with Groovy"
|
||||
[#]: via: "https://opensource.com/article/22/9/awk-groovy"
|
||||
[#]: author: "Chris Hermansen https://opensource.com/users/clhermansen"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: "lxbwolf"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-15231-1.html"
|
||||
|
||||
为你的 awk 脚本注入 Groovy
|
||||
======
|
||||
|
||||

|
||||
|
||||
> awk 和 Groovy 相辅相成,可以创建强大、有用的脚本。
|
||||
|
||||
最近我写了一个使用 Groovy 脚本来清理我的音乐文件中的标签的系列。我开发了一个 [框架][2],可以识别我的音乐目录的结构,并使用它来遍历音乐文件。在该系列的最后一篇文章中,我从框架中分离出一个实用类,我的脚本可以用它来处理文件。
|
||||
|
||||
这个独立的框架让我想起了很多 awk 的工作方式。对于那些不熟悉 awk 的人来说,你学习下这本电子书:
|
||||
|
||||
> **[《awk 实用指南》][3]**
|
||||
|
||||
我从 1984 年开始大量使用 awk,当时我们的小公司买了第一台“真正的”计算机,它运行的是 System V Unix。对我来说,awk 是非常完美的:它有<ruby>关联内存<rt>associative memory</rt></ruby>——将数组视为由字符串而不是数字来索引的。它内置了正则表达式,似乎专为处理数据而生,尤其是在处理数据列时,而且结构紧凑,易于学习。最后,它非常适合在 Unix 工作流使用,从标准输入或文件中读取数据并写入到输出,数据不需要经过其他的转换就出现在了输入流中。
|
||||
|
||||
说 awk 是我日常计算工具箱中的一个重要部分一点也不为过。然而,在我使用 awk 的过程中,有几件事让我感到不满意。
|
||||
|
||||
可能主要的问题是 awk 善于处理以分隔字段呈现的数据,但很奇怪它不善于处理 CSV 文件,因为 CSV 文件的字段被引号包围时可以嵌入逗号分隔符。另外,自 awk 发明以来,正则表达式已经有了很大的发展,我们需要记住两套正则表达式的语法规则,而这并不利于编写无 bug 的代码。[一套这样的规则已经很糟糕了][4]。
|
||||
|
||||
由于 awk 是一门简洁的语言,因此它缺少很多我认为有用的东西,比如更丰富的基础类型、结构体、`switch` 语句等等。
|
||||
|
||||
相比之下,Groovy 拥有这些能力:可以使用 [OpenCSV 库][5],它很擅长处理 CSV 文件、Java 正则表达式和强大的匹配运算符、丰富的基础类型、类、`switch` 语句等等。
|
||||
|
||||
Groovy 所缺乏的是简单的面向管道的概念,即把要处理数据作为一个传入的流,以及把处理过的数据作为一个传出的流。
|
||||
|
||||
但我的音乐目录处理框架让我想到,也许我可以创建一个 Groovy 版本的 awk “引擎”。这就是我写这篇文章的目的。
|
||||
|
||||
### 安装 Java 和 Groovy
|
||||
|
||||
Groovy 是基于 Java 的,需要先安装 Java。最新的、合适的 Java 和 Groovy 版本可能都在你的 Linux 发行版的软件库中。Groovy 也可以按照 [Groovy 主页][6] 上的说明进行安装。对于 Linux 用户来说,一个不错的选择是 [SDKMan][7],它可以用来获得多个版本的 Java、Groovy 和其他许多相关工具。在这篇文章中,我使用的是 SDK 的版本:
|
||||
|
||||
* Java:OpenJDK 11 的 11.0.12 的开源版本
|
||||
* Groovy:3.0.8
|
||||
|
||||
### 使用 Groovy 创建 awk
|
||||
|
||||
这里的基本想法是将打开一个或多个文件进行处理、将每行分割成字段、以及提供对数据流的访问等复杂情况封装在三个部分:
|
||||
|
||||
* 在处理数据之前
|
||||
* 在处理每行数据时
|
||||
* 在处理完所有数据之后
|
||||
|
||||
我并不打算用 Groovy 来取代 awk。相反,我只是在努力实现我的典型用例,那就是:
|
||||
|
||||
* 使用一个脚本文件而不是在命令行写代码
|
||||
* 处理一个或多个输入文件
|
||||
* 设置默认的分隔符为 `|`,并基于这个分隔符分割所有行
|
||||
* 使用 OpenCSV 完成分割工作(awk 做不到)
|
||||
|
||||
### 框架类
|
||||
|
||||
下面是用 Groovy 类实现的 “awk 引擎”:
|
||||
|
||||
```
|
||||
@Grab('com.opencsv:opencsv:5.6')
|
||||
import com.opencsv.CSVReader
|
||||
public class AwkEngine {
|
||||
// With admiration and respect for
|
||||
// Alfred Aho
|
||||
// Peter Weinberger
|
||||
// Brian Kernighan
|
||||
// Thank you for the enormous value
|
||||
// brought my job by the awk
|
||||
// programming language
|
||||
Closure onBegin
|
||||
Closure onEachLine
|
||||
Closure onEnd
|
||||
private String fieldSeparator
|
||||
private boolean isFirstLineHeader
|
||||
private ArrayList<String> fileNameList
|
||||
public AwkEngine(args) {
|
||||
this.fileNameList = args
|
||||
this.fieldSeparator = "|"
|
||||
this.isFirstLineHeader = false
|
||||
}
|
||||
public AwkEngine(args, fieldSeparator) {
|
||||
this.fileNameList = args
|
||||
this.fieldSeparator = fieldSeparator
|
||||
this.isFirstLineHeader = false
|
||||
}
|
||||
public AwkEngine(args, fieldSeparator, isFirstLineHeader) {
|
||||
this.fileNameList = args
|
||||
this.fieldSeparator = fieldSeparator
|
||||
this.isFirstLineHeader = isFirstLineHeader
|
||||
}
|
||||
public void go() {
|
||||
this.onBegin()
|
||||
int recordNumber = 0
|
||||
fileNameList.each { fileName ->
|
||||
int fileRecordNumber = 0
|
||||
new File(fileName).withReader { reader ->
|
||||
def csvReader = new CSVReader(reader,
|
||||
this.fieldSeparator.charAt(0))
|
||||
if (isFirstLineHeader) {
|
||||
def csvFieldNames = csvReader.readNext() as
|
||||
ArrayList<String>
|
||||
csvReader.each { fieldsByNumber ->
|
||||
def fieldsByName = csvFieldNames.
|
||||
withIndex().
|
||||
collectEntries { name, index ->
|
||||
[name, fieldsByNumber[index]]
|
||||
}
|
||||
this.onEachLine(fieldsByName,
|
||||
recordNumber, fileName,
|
||||
fileRecordNumber)
|
||||
recordNumber++
|
||||
fileRecordNumber++
|
||||
}
|
||||
} else {
|
||||
csvReader.each { fieldsByNumber ->
|
||||
this.onEachLine(fieldsByNumber,
|
||||
recordNumber, fileName,
|
||||
fileRecordNumber)
|
||||
recordNumber++
|
||||
fileRecordNumber++
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
this.onEnd()
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
虽然这看起来是相当多的代码,但许多行是因为太长换行了(例如,通常你会合并第 38 行和第 39 行,第 41 行和第 42 行,等等)。让我们逐行看一下。
|
||||
|
||||
第 1 行使用 `@Grab` 注解从 [Maven Central][8] 获取 OpenCSV 库的 5.6 本周。不需要 XML。
|
||||
|
||||
第 2 行我引入了 OpenCSV 的 `CSVReader` 类
|
||||
|
||||
第 3 行,像 Java 一样,我声明了一个 `public` 实用类 `AwkEngine`。
|
||||
|
||||
第 11-13 行定义了脚本所使用的 Groovy 闭包实例,作为该类的钩子。像任何 Groovy 类一样,它们“默认是 `public`”,但 Groovy 将这些字段创建为 `private`,并对其进行外部引用(使用 Groovy 提供的 getter 和 setter 方法)。我将在下面的示例脚本中进一步解释这个问题。
|
||||
|
||||
第 14-16 行声明了 `private` 字段 —— 字段分隔符,一个指示文件第一行是否为标题的标志,以及一个文件名的列表。
|
||||
|
||||
第 17-31 行定义了三个构造函数。第一个接收命令行参数。第二个接收字段的分隔符。第三个接收指示第一行是否为标题的标志。
|
||||
|
||||
第 31-67 行定义了引擎本身,即 `go()` 方法。
|
||||
|
||||
第 33 行调用了 `onBegin()` 闭包(等同于 awk 的 `BEGIN {}` 语句)。
|
||||
|
||||
第 34 行初始化流的 `recordNumber`(等同于 awk 的 `NR` 变量)为 0(注意我这里是从 00 而不是 1 开始的)。
|
||||
|
||||
第 35-65 行使用 `each` `{}` 来循环处理列表中的文件。
|
||||
|
||||
第 36 行初始化文件的 `fileRecordNumber`(等同于 awk 的 `FNR` 变量)为 0(从 0 而不是 1 开始)。
|
||||
|
||||
第 37-64 行获取一个文件对应的 `Reader` 实例并处理它。
|
||||
|
||||
第 38-39 行获取一个 `CSVReader` 实例。
|
||||
|
||||
第 40 行检测第一行是否为标题。
|
||||
|
||||
如果第一行是标题,那么在 41-42 行会从第一行获取字段的标题名字列表。
|
||||
|
||||
第 43-54 行处理其他的行。
|
||||
|
||||
第 44-48 行把字段的值复制到 `name:value` 的映射中。
|
||||
|
||||
第 49-51 行调用 `onEachLine()` 闭包(等同于 awk 程序 `BEGIN {}` 和 `END {}` 之间的部分,不同的是,这里不能输入执行条件),传入的参数是 `name:value` 映射、处理过的总行数、文件名和该文件处理过的行数。
|
||||
|
||||
第 52-53 行是处理过的总行数和该文件处理过的行数的自增。
|
||||
|
||||
如果第一行不是标题:
|
||||
|
||||
第 56-62 行处理每一行。
|
||||
|
||||
第 57-59 调用 `onEachLine()` 闭包,传入的参数是字段值的数组、处理过的总行数、文件名和该文件处理过的行数。
|
||||
|
||||
第 60-61 行是处理过的总行数和该文件处理过的行数的自增。
|
||||
|
||||
第 66 行调用 `onEnd()` 闭包(等同于 awk 的 `END {}`)。
|
||||
|
||||
这就是该框架的内容。现在你可以编译它:
|
||||
|
||||
```
|
||||
$ groovyc AwkEngine.groovy
|
||||
```
|
||||
|
||||
一点注释:
|
||||
|
||||
如果传入的参数不是一个文件,编译就会失败,并出现标准的 Groovy 堆栈跟踪,看起来像这样:
|
||||
|
||||
```
|
||||
Caught: java.io.FileNotFoundException: not-a-file (No such file or directory)
|
||||
java.io.FileNotFoundException: not-a-file (No such file or directory)
|
||||
at AwkEngine$_go_closure1.doCall(AwkEngine.groovy:46)
|
||||
```
|
||||
|
||||
OpenCSV 可能会返回 `String[]` 值,不像 Groovy 中的 `List` 值那样方便(例如,数组没有 `each {}`)。第 41-42 行将标题字段值数组转换为 list,因此第 57 行的 `fieldsByNumber` 可能也应该转换为 list。
|
||||
|
||||
### 在脚本中使用这个框架
|
||||
|
||||
下面是一个使用 `AwkEngine` 来处理 `/etc/group` 之类由冒号分隔并没有标题的文件的简单脚本:
|
||||
|
||||
```
|
||||
def ae = new AwkEngine(args, ':')
|
||||
int lineCount = 0
|
||||
ae.onBegin = {
|
||||
println “in begin”
|
||||
}
|
||||
ae.onEachLine = { fields, recordNumber, fileName, fileRecordNumber ->
|
||||
if (lineCount < 10)
|
||||
println “fileName $fileName fields $fields”
|
||||
lineCount++
|
||||
}
|
||||
ae.onEnd = {
|
||||
println “in end”
|
||||
println “$lineCount line(s) read”
|
||||
}
|
||||
|
||||
ae.go()
|
||||
```
|
||||
|
||||
第 1 行 调用的有两个参数的构造函数,传入了参数列表,并定义冒号为分隔符。
|
||||
|
||||
第 2 行定义一个脚本级的变量 `lineCount`,用来记录处理过的行数(注意,Groovy 闭包不要求定义在外部的变量为 `final`)。
|
||||
|
||||
第 3-5 行定义 `onBegin()` 闭包,在标准输出中打印出 “in begin” 字符串。
|
||||
|
||||
第 6-10 行定义 `onEachLine()` 闭包,打印文件名和前 10 行字段,无论是否为前 10 行,处理过的总行数 `lineCount` 都会自增。
|
||||
|
||||
第 11-14 行定义 `onEnd()` 闭包,打印 “in end” 字符串和处理过的总行数。
|
||||
|
||||
第 15 行运行脚本,使用 `AwkEngine`。
|
||||
|
||||
像下面一样运行一下脚本:
|
||||
|
||||
```
|
||||
$ groovy Test1Awk.groovy /etc/group
|
||||
in begin
|
||||
fileName /etc/group fields [root, x, 0, ]
|
||||
fileName /etc/group fields [daemon, x, 1, ]
|
||||
fileName /etc/group fields [bin, x, 2, ]
|
||||
fileName /etc/group fields [sys, x, 3, ]
|
||||
fileName /etc/group fields [adm, x, 4, syslog,clh]
|
||||
fileName /etc/group fields [tty, x, 5, ]
|
||||
fileName /etc/group fields [disk, x, 6, ]
|
||||
fileName /etc/group fields [lp, x, 7, ]
|
||||
fileName /etc/group fields [mail, x, 8, ]
|
||||
fileName /etc/group fields [news, x, 9, ]
|
||||
in end
|
||||
78 line(s) read
|
||||
$
|
||||
```
|
||||
|
||||
当然,编译框架类生成的 `.class` 文件需要在 classpath 中,这样才能正常运行。通常你可以用 `jar` 把这些 class 文件打包起来。
|
||||
|
||||
我非常喜欢 Groovy 对行为委托的支持,这在其他语言中需要各种诡异的手段。许多年来,Java 需要匿名类和相当多的额外代码。Lambda 已经在很大程度上解决了这个问题,但它们仍然不能引用其范围之外的非 final 变量。
|
||||
|
||||
下面是另一个更有趣的脚本,它很容易让人想起我对 awk 的典型使用方式:
|
||||
|
||||
```
|
||||
def ae = new AwkEngine(args, ';', true)
|
||||
ae.onBegin = {
|
||||
// nothing to do here
|
||||
}
|
||||
def regionCount = [:]
|
||||
ae.onEachLine = { fields, recordNumber, fileName, fileRecordNumber ->
|
||||
regionCount[fields.REGION] =
|
||||
(regionCount.containsKey(fields.REGION) ?
|
||||
regionCount[fields.REGION] : 0) +
|
||||
(fields.PERSONAS as Integer)
|
||||
}
|
||||
ae.onEnd = {
|
||||
regionCount.each { region, population ->
|
||||
println “Region $region population $population”
|
||||
}
|
||||
}
|
||||
|
||||
ae.go()
|
||||
```
|
||||
|
||||
第 1 行调用了三个函数的构造方法,`true` 表示这是“真正的 CSV” 文件,第一行为标题。由于它是西班牙语的文件,因此它的逗号表示数字的`点`,标准的分隔符是分号。
|
||||
|
||||
第 2-4 行定义 `onBegin()` 闭包,这里什么也不做。
|
||||
|
||||
第 5 行定义一个(空的)`LinkedHashmap`,键是 String 类型,值是 Integer 类型。数据文件来自于智利最近的人口普查,你要在这个脚本中计算出智利每个地区的人口数量。
|
||||
|
||||
第 6-11 行处理文件中的行(加上标题一共有 180,500 行)—— 请注意在这个案例中,由于你定义 第 1 行为 CSV 列的标题,因此 `fields` 参数会成为 `LinkedHashMap<String,String>` 实例。
|
||||
|
||||
第 7-10 行是 `regionCount` 映射计数增加,键是 `REGION` 字段的值,值是 `PERSONAS` 字段的值 —— 请注意,与 awk 不同,在 Groovy 中你不能在赋值操作的右边使用一个不存在的映射而期望得到空值或零值。
|
||||
|
||||
第 12-16 行,打印每个地区的人口数量。
|
||||
|
||||
第 17 行运行脚本,调用 `AwkEngine` 。
|
||||
|
||||
像下面一样运行一下脚本:
|
||||
|
||||
```
|
||||
$ groovy Test2Awk.groovy ~/Downloads/Censo2017/ManzanaEntidad_CSV/Censo*csv
|
||||
Region 1 population 330558
|
||||
Region 2 population 607534
|
||||
Region 3 population 286168
|
||||
Region 4 population 757586
|
||||
Region 5 population 1815902
|
||||
Region 6 population 914555
|
||||
Region 7 population 1044950
|
||||
Region 8 population 1556805
|
||||
Region 16 population 480609
|
||||
Region 9 population 957224
|
||||
Region 10 population 828708
|
||||
Region 11 population 103158
|
||||
Region 12 population 166533
|
||||
Region 13 population 7112808
|
||||
Region 14 population 384837
|
||||
Region 15 population 226068
|
||||
$
|
||||
```
|
||||
|
||||
以上为全部内容。对于那些喜欢 awk 但又希望得到更多的东西的人,我希望你能喜欢这种 Groovy 的方法。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/22/9/awk-groovy
|
||||
|
||||
作者:[Chris Hermansen][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[lxbwolf](https://github.com/lxbwolf)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://opensource.com/users/clhermansen
|
||||
[b]: https://github.com/lkxed
|
||||
[1]: https://opensource.com/sites/default/files/lead-images/browser_screen_windows_files.png
|
||||
[2]: https://opensource.com/article/22/8/music-tagging-framework-groovy
|
||||
[3]: https://opensource.com/downloads/awk-ebook
|
||||
[4]: http://regex.info/blog/2006-09-15/247
|
||||
[5]: http://opencsv.sourceforge.net/
|
||||
[6]: https://groovy.apache.org/download.html
|
||||
[7]: https://opensource.com/article/22/3/manage-java-versions-sdkman
|
||||
[8]: https://mvnrepository.com/artifact/com.opencsv/opencsv
|
@ -3,15 +3,18 @@
|
||||
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: "geekpi"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-15186-1.html"
|
||||
|
||||
在你的 Linux 终端中享受经典的贪吃蛇游戏
|
||||
在你的 Linux 终端中玩经典的贪吃蛇游戏
|
||||
======
|
||||
这是你在 Linux 终端中安装和玩经典贪吃蛇的方法。
|
||||
|
||||
还记得老式手机经典简单的贪吃蛇吗?我记得玩了几个小时。嘿,当时没有其他选择,对吧?智能手机仍未上市。而你所拥有的就是这个。
|
||||

|
||||
|
||||
> 这是你在 Linux 终端中安装和玩经典贪吃蛇的方法。
|
||||
|
||||
还记得老式手机经典简单的贪吃蛇吗?我记得玩了几个小时。嘿,当时没有其他选择,对吧?智能手机仍未上市。而你所拥有的只有这个。
|
||||
|
||||
![Nokia 3310 中的旧版贪吃蛇游戏][1]
|
||||
|
||||
@ -23,7 +26,7 @@
|
||||
|
||||
### 安装 nSnake – Linux 终端的贪吃蛇
|
||||
|
||||
你可以使用以下方法通过终端安装[此游戏][4]。
|
||||
你可以使用以下方法通过终端安装 [此游戏][4]。
|
||||
|
||||
对于 Ubuntu、Linux Mint 或其他相关发行版:
|
||||
|
||||
@ -37,7 +40,7 @@ sudo apt install nsnake
|
||||
sudo dnf install nsnake
|
||||
```
|
||||
|
||||
对于 Arch Linux,此游戏可在 [Arch 用户仓库][5]中获得。你可以使用以下步骤安装它。
|
||||
对于 Arch Linux,此游戏可在 [Arch 用户仓库(AUR)][5] 中获得。你可以使用以下步骤安装它。
|
||||
|
||||
* [设置 Yay AUR 助手][6]
|
||||
* 然后打开终端并运行以下命令
|
||||
@ -46,34 +49,37 @@ sudo dnf install nsnake
|
||||
yay -S nsnake
|
||||
```
|
||||
|
||||
上面的命令会安装游戏的库存库版本,它可能不是最新的。但是,如果你想要最新版本,你可能需要通过 GitHub 编译源代码。我在本页末尾添加了编译说明供你参考。
|
||||
上面的命令会安装游戏的软件仓库版本,它可能不是最新的。但是,如果你想要最新版本,你可能需要通过 GitHub 编译源代码。我在本页末尾添加了编译说明供你参考。
|
||||
|
||||
### 玩游戏
|
||||
|
||||
玩游戏非常简单。在终端中输入 nsnake,这将启动游戏。
|
||||
玩游戏非常简单。在终端中输入 `nsnake`,这将启动游戏。
|
||||
|
||||
要立即退出,请按 q。
|
||||
要立即退出,请按 `q`。
|
||||
|
||||
以下是默认键绑定。
|
||||
|
||||
* 箭头键 - 移动蛇
|
||||
* q – 退出游戏
|
||||
* p – 暂停游戏
|
||||
* `箭头键` - 移动蛇
|
||||
* `q` – 退出游戏
|
||||
* `p` – 暂停游戏
|
||||
|
||||
你还可以通过主菜单以各种方式配置游戏。
|
||||
|
||||
![nsnake Linux 终端贪吃蛇设置][7]
|
||||
|
||||
完成了,享受吧!
|
||||
完成了,玩吧!
|
||||
|
||||
##### 编译
|
||||
### 编译
|
||||
|
||||
要编译最新版本,请在所有 Linux 发行版中使用以下命令。
|
||||
|
||||
哦,确保你已经安装了 `git` 和 `ncurses-devel`,它们是编译所需的包。
|
||||
|
||||
```
|
||||
git clone https://github.com/alexdantas/nSnake.gitcd nsnakemakemake install
|
||||
git clone https://github.com/alexdantas/nSnake.git
|
||||
cd nsnake
|
||||
make
|
||||
make install
|
||||
```
|
||||
|
||||
那么,你喜欢贪吃蛇游戏吗?与其他基于终端的游戏相比,你更喜欢它吗?在下面的评论框中与其他读者分享你的观点。
|
||||
@ -85,7 +91,7 @@ via: https://www.debugpoint.com/snake-game-linux-terminal/
|
||||
作者:[Arindam][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[geekpi](https://github.com/geekpi)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
@ -3,23 +3,24 @@
|
||||
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: "chai001125"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-15189-1.html"
|
||||
|
||||
通过示例来学习 Bash base64 的编码和解码
|
||||
======
|
||||
你想了解 Base64 编码和解码的方法吗?在本教程中,我们使用 bash shell 脚本和各种示例解释了 Base64 编码和解码步骤。
|
||||
|
||||
![][1]
|
||||
> 你想了解 Base64 编码和解码的方法吗?在本教程中,我们使用 Bash shell 脚本和各种示例解释了 Base64 编码和解码步骤。
|
||||
|
||||
Base64 编码方法通过将二进制数据转换为文本,如此编码数据可以在任何通信媒体进行传输。这种编码方法主要用于电子邮件加密的过程。
|
||||

|
||||
|
||||
总体而言,Base64 编码方法是一种二进制到文本的编码方案,以 ASCII 字符串格式表示 8 字节的二进制数据。使用这种编码方法在各种媒介之间传输数据时有几个优势,尤其是对于那些能可靠支持文本内容的媒介。因此,Base64 编码方法在万维网上被广泛使用。这种编码方案最常用于电子邮件附件的编码上。
|
||||
Base64 编码方法可以将二进制数据转换为文本,如此编码数据可以在任何通信媒介进行传输。这种编码方法主要用于电子邮件加密的过程。
|
||||
|
||||
根据 Base64 编码表,二进制数据可以经 Base64 编码后可以转换为 64 个不同的 ASCII 字符,包含大写字母 A 到 Z,小写字母 a 到 Z,数字 0 到 9 ,以及符号 + 和 /,这些字符在传输和打印上十分便捷。
|
||||
总体而言,Base64 编码方法是一种二进制到文本的编码方案,以 ASCII 字符串格式表示 8 字节的二进制数据。使用这种编码方法在各种媒介之间传输数据时有几个优势,尤其是对于那些能可靠地支持文本内容的媒介。因此,Base64 编码方法在万维网上被广泛使用。这种编码方案最常用于电子邮件附件的编码上。
|
||||
|
||||
这 64 个 ASCII 字符代表着从 `000000` 到 `111111` 的二进制值。每个非末尾的 Base64 编码后的 ASCII 字符恰好代表 6 位二进制值。
|
||||
根据 Base64 编码表,二进制数据可以经 Base64 编码后可以转换为 64 个不同的 ASCII 字符,包含大写字母 `A` 到 `Z`,小写字母 `a` 到 `z`,数字 `0` 到 `9`,以及符号 `+` 和 `/`,这些字符在传输和打印上十分便捷。
|
||||
|
||||
这 64 个 ASCII 字符代表着从 `000000` 到 `111111` 的二进制值。每个非末尾的 Base64 编码字符恰好代表 6 位二进制值。
|
||||
|
||||
![Base64 Index Table][2]
|
||||
|
||||
@ -33,21 +34,21 @@ Base64 编码方法通过将二进制数据转换为文本,如此编码数据
|
||||
base64 [OPTIONs] [INFILE] [OUTFILE]
|
||||
```
|
||||
|
||||
选项(Option):参照下面的表格,你可以提供任何的选项或组合多个选项。
|
||||
输入(INFILE):你可以从标准输入(如命令行)或文件中输入。
|
||||
输出(OUTFILE):你可以将输出重定向到标准输出,如终端或文件中。
|
||||
- 选项(`Option`):参照下面的表格,你可以提供任何的选项或组合多个选项。
|
||||
- 输入(`INFILE`):你可以从标准输入(如命令行)或文件中输入。
|
||||
- 输出(`OUTFILE`):你可以将输出重定向到标准输出,如终端或文件中。
|
||||
|
||||
| 选项 | 描述 |
|
||||
| :- | :- |
|
||||
| -e 或者 –encode | 此选项用于对标准输入的数据或从文件中读入的数据进行编码。这是默认选项。 |
|
||||
| -d 或者 –decode | 此选项用于对标准输入的数据或从文件中读入的已 base64 编码数据进行解码。 |
|
||||
| -n 或者 –noerrcheck | 默认情况下,base64 在解码数据时,会自动检查是否有错误。你可以使用 –n 或 –noerrcheck 选项,在解码时忽略检查。 |
|
||||
| -i, –ignore-garbage | 此选项用于在解码时忽略非字母字符。 |
|
||||
| -u 或者 –help | 此选项用于获取有关使用此命令的信息。 |
|
||||
| `-e` 或者 `--encode` | 此选项用于对标准输入的数据或从文件中读入的数据进行编码。这是默认选项。 |
|
||||
| `-d` 或者 `--decode` | 此选项用于对标准输入的数据或从文件中读入的已 Base64 编码数据进行解码。 |
|
||||
| `-n` 或者 `--noerrcheck` | 默认情况下,Base64 在解码数据时,会自动检查是否有错误。你可以使用该选项在解码时忽略检查。 |
|
||||
| `-i` 或 `--ignore-garbage` | 此选项用于在解码时忽略非字母字符。 |
|
||||
| `-u` 或者 `--help` | 此选项用于获取有关使用此命令的信息。 |
|
||||
|
||||
#### 示例 1:基本编码
|
||||
|
||||
在 Linux 中,默认已安装好 base64 软件包。因此,你可以轻松地从命令行使用 base64。要对一个字符串或文本进行编码,你可以通过管道将其传递到命令行,并获取待编码的文本。在下面的示例中,对字符串 debugpoint.com 进行了 base64 编码。
|
||||
在 Linux 中,默认已安装好 Base64 软件包。因此,你可以轻松地从命令行使用 Base64。要对一个字符串或文本进行编码,你可以通过管道将其传递到 `base64` 命令,并获取待编码的文本。在下面的示例中,对字符串 `debugpoint.com` 进行了 Base64 编码。
|
||||
|
||||
```
|
||||
echo "debugpoint.com" | base64
|
||||
@ -55,21 +56,21 @@ echo "debugpoint.com" | base64
|
||||
|
||||
![bash base64 encode and decode - example 1][3]
|
||||
|
||||
结果是经过 base64 编码后的字符串。
|
||||
结果是经过 Base64 编码后的字符串。
|
||||
|
||||
#### 解释
|
||||
|
||||
Base64 编码方法使用下面的几个步骤来转换输入的数据。首先,每个输入字符转换为 8 位二进制值,接着,二进制字符串拆分为一组组 6 位的二进制值,然后,每个 6 位的二进制值被转换为十进制值。
|
||||
|
||||
最后,每个十进制值都通过 base64 编码索引表转换为 base64 字符。
|
||||
最后,每个十进制值都通过 Base64 编码索引表转换为 Base64 字符。
|
||||
|
||||
在上面的示例中,第一个字符 `d` 被转换为二进制 `01100100`。前 6 位是 `011001`,转换为十进制是 `25`。`25` 在 base64 编码索引表中对应着 `Z`。整个输入的文本流都像如此编码。请参阅以下编码过程的示例。
|
||||
在上面的示例中,第一个字符 `d` 被转换为二进制 `01100100`。前 6 位是 `011001`,转换为十进制是 `25`。`25` 在 Base64 编码索引表中对应着 `Z`。整个输入的文本流都像如此编码。请参阅以下编码过程的示例。
|
||||
|
||||
![Base64 Encode and Decode – inner working][4]
|
||||
|
||||
#### 示例 2:基本解码
|
||||
|
||||
要解码字符串,需要将编码值传递给 base64,选项为 `--decode`,它将输出你之前输入的字符串。
|
||||
要解码字符串,需要将编码值传递给 `base64` 命令,选项为 `--decode`,它将输出你之前输入的字符串。
|
||||
|
||||
![bash base64 encode and decode - example 2 (decode the same example)][5]
|
||||
|
||||
@ -85,7 +86,7 @@ base64 example3.txt > example3-encoded.txt
|
||||
|
||||
#### 示例 4:对文本文件进行解码
|
||||
|
||||
要解码使用 base64 编码的文本文件,只需使用 `--decode` 或 `-d` 选项,并传递文本文件名。
|
||||
要解码使用 Base64 编码的文本文件,只需使用 `--decode` 或 `-d` 选项,并传递文本文件名。
|
||||
|
||||
```
|
||||
base64 -d example3-encoded.txt
|
||||
@ -93,9 +94,9 @@ base64 -d example3-encoded.txt
|
||||
|
||||
#### 示例 5:对用户输入的数据进行编码
|
||||
|
||||
使用 bash shell 编程,你可以通过终端接收用户的输入,并对其进行 base64 编码。你需要先编写一个简单的 shell 脚本,并在授予可执行权限后执行。
|
||||
使用 Bash shell 编程,你可以通过终端接收用户的输入,并对其进行 Base64 编码。你需要先编写一个简单的 shell 脚本,并在授予可执行权限后执行。
|
||||
|
||||
以下就是一个简单的示例,它从用户那里获得输入,然后进行 base64 编码,最终显示编码的字符串。
|
||||
以下就是一个简单的示例,它从用户那里获得输入,然后进行 Base64 编码,最终显示编码的字符串。
|
||||
|
||||
```
|
||||
#!/bin/bash
|
||||
@ -109,7 +110,7 @@ echo "The Base64 Encoded text is: $output_text"
|
||||
|
||||
![Custom input - base64 encode and decode using script][7]
|
||||
|
||||
#### 示例 6:用 base64 进行简单的身份认证
|
||||
#### 示例 6:用 Base64 进行简单的身份认证
|
||||
|
||||
你可以运用上述的编码和解码方法,实现一个简单的身份验证系统。你可以让用户输入密码或密码,然后将密码存储在文件中。或者进行实时比较。
|
||||
|
||||
@ -132,7 +133,7 @@ fi
|
||||
|
||||
![A Simple Authentication using bash base64][8]
|
||||
|
||||
### 结论
|
||||
### 总结
|
||||
|
||||
我希望你能通过这些示例,学会 [Base64][9] 编码和解码的基础知识。此外,你也了解到 Base64 的内部编码方式。如果这对你很有帮助,或你还需要有关此主题的其他教程,请在下面的评论区中告诉我吧。
|
||||
|
||||
@ -143,7 +144,7 @@ via: https://www.debugpoint.com/bash-base64-encode-decode/
|
||||
作者:[Arindam][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[chai001125](https://github.com/chai001125)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
@ -3,49 +3,52 @@
|
||||
[#]: author: "Rom Adams https://opensource.com/users/romdalf"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: "geekpi"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-15193-1.html"
|
||||
|
||||
Kubernetes 能否帮助解决自动化挑战?
|
||||
======
|
||||
组织层面的自动化一直是一个难以实现的目标,但 Kubernetes 或许能够改变这一切。
|
||||
|
||||
当我在 2002 年采用 Gentoo Linux 作为我的主要操作系统时,我开始了我的自动化之旅。二十年后,自动化还没有完成。当我与客户和合作伙伴会面时,他们分享了团队内部的自动化胜利,但他们也描述了在组织层面实现类似成功所面临的挑战。
|
||||

|
||||
|
||||
大多数 IT 组织都能够端到端地配置虚拟机,从而将过去 4 周的交付周期缩短到仅 5 分钟。这种级别的自动化本身就是一个复杂的工作流程,需要网络(IP 地址管理、DNS、代理、网络区域等)、身份访问管理、[hypervisor][2]、存储、备份、更新操作系统、应用最新的配置文件、监控、安全和强化以及合规性基准测试。哇!
|
||||
> 组织层面的自动化一直是一个难以实现的目标,但 Kubernetes 或许能够改变这一切。
|
||||
|
||||
满足高速、可扩展和按需自动化的业务需求并不容易。例如,考虑使用经典的网上商店或在线政府服务来提交纳税申报表。工作负载有明确的峰值需要吸收。
|
||||
当我在 2002 年采用 Gentoo Linux 作为我的主要操作系统时,我开始了我的自动化之旅。二十年后,自动化还没有完成。当我与客户和合作伙伴会面时,他们分享了团队内部的自动化成果,但他们也描述了在组织层面实现类似成功所面临的挑战。
|
||||
|
||||
处理此类负载的一种常见方法是拥有一个超大的服务器集群,以供 IT 专业人员的特定团队使用,监控客户或公民的季节性涌入。每个人都希望及时部署整个栈。他们希望基础架构在混合云场景的上下文中运行工作负载,使用“构建-消耗-垃圾”模型来优化成本,同时从无限弹性中受益。
|
||||
大多数 IT 组织都能够端到端地提供虚拟机,从而将过去 4 周的交付周期缩短到仅 5 分钟。这种级别的自动化本身就是一个复杂的工作流程,需要网络(IP 地址管理、DNS、代理、网络区域等)、身份访问管理、[虚拟机管理程序][2]、存储、备份、更新操作系统、应用最新的配置文件、监控、安全和强化以及合规性基准测试,等等。哇,这么多!
|
||||
|
||||
满足高速、可扩展和按需自动化的业务需求并不容易。例如,来看看经典的网上商店或提交纳税申报表的在线政府服务,其工作负载有明确的峰值需要面对。
|
||||
|
||||
处理此类负载的一种常见方法是拥有一个超大的服务器集群,以供 IT 专业人员的特定团队使用,监控客户或公民的季节性涌入。每个人都希望及时部署整个栈。他们希望基础架构在混合云场景的上下文中运行工作负载,使用“<ruby>构建-消耗-回收<rt>build-consume-trash</rt></ruby>”模型来优化成本,同时从无限弹性中受益。
|
||||
|
||||
换句话说,每个人都想要乌托邦式的“云体验”。
|
||||
|
||||
### 云真的能交付吗?
|
||||
|
||||
一切都没有丢失,这主要归功于 [Kubernetes][3] 的设计方式。 Kubernetes 的指数级采用推动了创新,取代了管理平台和应用的标准传统做法。 Kubernetes 需要使用 Everything-as-Code (EaC) 来定义所有资源的期望状态,从简单的计算节点到 TLS 证书。 Kubernetes 强制使用三种主要的设计结构:
|
||||
尚有一线机会,这主要归功于 [Kubernetes][3] 的设计方式。Kubernetes 的指数级普及推动了创新,取代了管理平台和应用的标准传统做法。 Kubernetes 需要使用 “<ruby>万物皆代码<rt>Everything-as-Code</rt></ruby>”(EaC)来定义从简单的计算节点到 TLS 证书的所有资源的期望状态。Kubernetes 强制使用三种主要的设计结构:
|
||||
|
||||
* 一个标准接口,以减少内部和外部组件之间的整合问题
|
||||
* API 优先及仅 API 的方法来标准化其所有组件的 CRUD(创建、读取、更新、删除)操作
|
||||
* 使用 [YAML][4] 作为通用语言,以简单易读的方式定义这些组件的所有所需状态
|
||||
|
||||
这三个关键组成部分基本上是选择自动化平台的相同要求,至少如果你想让跨职能团队轻松采用。这也模糊了团队之间的职责分工,有助于提高跨孤岛的协作,这是一件好事!
|
||||
这三个关键组成部分基本上是选择自动化平台的相同要求,至少如果你想让跨职能团队轻松采用是这样的。这也模糊了团队之间的职责分工,有助于提高跨越孤岛的协作,这是一件好事!
|
||||
|
||||
事实上,采用 Kubernetes 的客户和合作伙伴正在加速进入超自动化状态。 Kubernetes 有机地推动团队采用多种 [DevOps 基础和实践][5],如: EaC、[使用 Git 进行版本控制][6]、同行评审、[文档即代码][7]并鼓励跨职能协作。这些实践有助于提高团队的自动化技能,并帮助团队在处理应用生命周期和基础架构的 GitOps 和 CI/CD 管道方面获得良好的开端。
|
||||
事实上,采用 Kubernetes 的客户和合作伙伴正在加速进入超自动化状态。Kubernetes 有机地推动团队采用多种 [DevOps 基础和实践][5],如:EaC、[使用 Git 进行版本控制][6]、同行评审、<ruby>[文档即代码][7]<rt>Documentation as Code</rt></ruby>,并鼓励跨职能协作。这些实践有助于提高团队的自动化技能,并帮助团队在处理应用生命周期和基础架构的 GitOps 和 CI/CD 管道方面取得良好的开端。
|
||||
|
||||
### 让自动化成为现实
|
||||
|
||||
你没看错!网络商店或政府报告等复杂系统的整个栈可以用清晰、可理解、通用的术语定义,可以在任何本地或云提供商上执行。可以定义具有自定义指标的自动伸缩器以触发所需栈的即时部署,以解决季节性高峰期间客户或市民的涌入问题。当指标恢复正常,且云计算资源不再有存在的理由时,你将它们回收并恢复常规运营,一组核心资产在本地接管业务,直到下一次激增。
|
||||
你没看错!网络商店或政府报告等复杂系统的整个栈可以用清晰、可理解、通用的术语定义,可以在任何本地或云提供商上执行。可以定义具有自定义指标的自动伸缩器以触发所需栈的即时部署,以解决季节性高峰期间客户或市民的涌入问题。当指标恢复正常,且云计算资源不再有存在的理由时,你将它们回收并恢复常规运营,而由一组核心资产在本地接管业务,直到下一次激增。
|
||||
|
||||
### 鸡和蛋的悖论
|
||||
|
||||
考虑到 Kubernetes 和云原生模式,自动化是必须的。但它提出了一个重要的问题:一个组织可以在解决自动化战略之前采用 Kubernetes 吗?
|
||||
|
||||
似乎从 Kubernetes 开始可以激发更好的自动化,但这并不是一个定局。工具不是对技能、实践和文化问题的解决方案。但是,设计良好的平台可以成为 IT 组织内学习、变革和跨职能协作的催化剂。
|
||||
似乎从 Kubernetes 开始可以激发更好的自动化,但这并不是一个一成不变的结论。工具不是对技能、实践和文化问题的解决方案。但是,设计良好的平台可以成为 IT 组织内学习、变革和跨职能协作的催化剂。
|
||||
|
||||
### 开始使用 Kubernetes
|
||||
|
||||
即使你觉得自己错过了自动化列车,也不要害怕从简单、不复杂的栈上开始使用 Kubernetes。当你[掌握了初始步骤][8],就可以拥抱这个出色的编排器的简单性,并根据更复杂的需求进行迭代。
|
||||
即使你觉得自己错过了自动化列车,也不要害怕从简单、不复杂的栈上开始使用 Kubernetes。当你 [掌握了初始步骤][8],就可以拥抱这个出色的编排系统的简单性,并根据更复杂的需求进行迭代。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
@ -54,7 +57,7 @@ via: https://opensource.com/article/22/10/kubernetes-solve-automation-challenges
|
||||
作者:[Rom Adams][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[geekpi](https://github.com/geekpi)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
@ -3,41 +3,44 @@
|
||||
[#]: author: "Abhishek Prakash https://itsfoss.com/"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: "geekpi"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-15194-1.html"
|
||||
|
||||
# 在 Ubuntu 22.10 上安装 Gedit 并将其设为默认文本编辑器
|
||||
在 Ubuntu 22.10 上安装 Gedit 并将其设为默认文本编辑器
|
||||
======
|
||||
|
||||
[GNOME 有一个全新的文本编辑器][1]来取代旧的 Gedit 编辑器。
|
||||

|
||||
|
||||
虽然 GNOME 42 已经可以使用它,但 Ubuntu 22.04 依赖于 Gedit。
|
||||
[GNOME 有了一个全新的文本编辑器][1],以取代旧的 Gedit 编辑器。
|
||||
|
||||
这在 Ubuntu 22.10 中发生了变化。 GNOME 文本编辑器是默认程序,甚至没有安装 Gedit。
|
||||
虽然 GNOME 42 已经可以使用了它,但 Ubuntu 22.04 还依赖于 Gedit。
|
||||
|
||||
这在 Ubuntu 22.10 中发生了变化。 GNOME <ruby>文本编辑器<rt>Text Editor</rt></ruby> 现在是默认程序,甚至没有安装 Gedit。
|
||||
|
||||
![搜索文本编辑器只出现 GNOME 文本编辑器][2]
|
||||
|
||||
虽然新编辑器足够好,但并不是每个人都喜欢它。如果你将 Gedit 与其他插件一起频繁使用,则尤其如此。
|
||||
|
||||
如果你属于这些人,让我向你展示如何在 Ubuntu 上安装 Gedit。我还将分享如何将其设为默认文本编辑器。
|
||||
如果你属于这类人,让我向你展示如何在 Ubuntu 上安装 Gedit。我还将分享如何将其设为默认文本编辑器。
|
||||
|
||||
### 在 Ubuntu 上安装 Gedit
|
||||
|
||||
这实际上是不费吹灰之力的。虽然默认未安装 Gedit,但它仍然可以在 Ubuntu 仓库中找到。
|
||||
|
||||
所以,你所要做的就是使用 apt 命令来安装它:
|
||||
所以,你所要做的就是使用 `apt` 命令来安装它:
|
||||
|
||||
```
|
||||
sudo apt install gedit
|
||||
```
|
||||
|
||||
Gedit 也可以在软件中心中找到,但它是 snap 包。如果你愿意,你可以安装它。
|
||||
Gedit 也可以在软件中心中找到,但它是 Snap 包。如果你愿意,你可以安装它。
|
||||
|
||||
![Gedit 也可以在 Ubuntu 的 Snap 商店中找到][3]
|
||||
|
||||
#### 安装 Gedit 插件(可选)
|
||||
|
||||
默认情况下,Gedit 为你提供访问一些插件的选项。你可以从 menu->preference->plugins 启用或禁用插件。
|
||||
默认情况下,Gedit 为你提供访问一些插件的选项。你可以从 “汉堡菜单-><ruby>偏好<rt>Preference</rt></ruby>-><ruby>插件<rt>Plugins</rt></ruby>” 启用或禁用插件。
|
||||
|
||||
![在 Gedit 中访问插件][4]
|
||||
|
||||
@ -55,15 +58,15 @@ sudo apt install gedit-plugins
|
||||
|
||||
![其他 Gedit 插件][6]
|
||||
|
||||
**提示**:如果你发现 Gedit 因缺少底角而显得有些格格不入,你可以安装一个名为 [Round Bottom Corner][7] 的 GNOME 扩展。这将为包括 Gedit 在内的所有应用强制圆底角。
|
||||
**提示**:如果你发现 Gedit 因缺少底角而显得有些格格不入,你可以安装一个名为 [Round Bottom Corner][7] 的 GNOME 扩展。这将为包括 Gedit 在内的所有应用强制添加圆底角。
|
||||
|
||||
### 使 Gedit 成为默认文本编辑器
|
||||
|
||||
好了!你已经安装了 Gedit,但文本文件仍然在双击操作后使用 GNOME 文本编辑器打开。要使用 Gedit 打开文件,你需要右键单击,然后选择“打开方式”选项。
|
||||
好了!你已经安装了 Gedit,但文本文件仍然在双击操作后使用 GNOME 文本编辑器打开。要使用 Gedit 打开文件,你需要右键单击,然后选择“<ruby>打开方式<rt>open with</rt></ruby>”选项。
|
||||
|
||||
如果你希望一直使用 Gedit 打开文本文件,你可以将其设置为默认程序。
|
||||
|
||||
右键单击文本文件并选择“打开方式”选项。在此处选择 Gedit 并从底部启用“始终用于此文件类型”选项。
|
||||
右键单击文本文件并选择“<ruby>打开方式<rt>open with</rt></ruby>”选项。在此处选择 Gedit 并从底部启用“<ruby>始终用于此文件类型<rt>Always use for this file type</rt></ruby>”选项。
|
||||
|
||||
![设置 Gedit 为默认文本编辑器][8]
|
||||
|
||||
@ -94,7 +97,7 @@ via: https://itsfoss.com/install-gedit-ubuntu/
|
||||
作者:[Abhishek Prakash][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[geekpi](https://github.com/geekpi)
|
||||
校对:[校对者 ID](https://github.com/校对者ID)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux 中国](https://linux.cn/) 荣誉推出
|
||||
|
@ -0,0 +1,80 @@
|
||||
[#]: subject: "Ubuntu but rolling but also stable That's what Rhino Linux aims to be"
|
||||
[#]: via: "https://news.itsfoss.com/rhino-linux/"
|
||||
[#]: author: "Sourav Rudra https://news.itsfoss.com/author/sourav/"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: "littlebirdnest"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-15192-1.html"
|
||||
|
||||
Rhino Linux:滚动发布但也很稳定的 Ubuntu
|
||||
======
|
||||
|
||||
> 滚动发布的 Ubuntu 发行版?等等,什么? Rhino Linux 听起来不错……
|
||||
|
||||
![Ubuntu but rolling but also stable! That's what Rhino Linux aims to be][1]
|
||||
|
||||
Rhino Linux 将成为 [Rolling Rhino Remix][2] 的继任者。这个由 http.llamaz 构建的 Linux 发行版,提供了滚动发布的**非官方的** Ubuntu 变体版本。
|
||||
|
||||
需要澄清的是,该项目从未旨在取代其他稳定的发行版,而纯粹是一个充满乐趣的激情项目。
|
||||
|
||||
而随着人们开始将其用作日常使用并对其期望更多,开发人员决定将其变成一个严肃的项目。
|
||||
|
||||
Rhino Linux 作为它的继任者。那么,你对它的期待是什么?
|
||||
|
||||
### 有请继任者 Rhino Linux
|
||||
|
||||
其主要目标是提供稳定的 Ubuntu 体验,同时仍提供滚动发布模式。
|
||||
|
||||
目标仍保持不变,但 Rhino Linux 的基础将得到彻底改变。他们有可能使它成为一个令人印象深刻的滚动发布的 Ubuntu 发行版。
|
||||
|
||||
**听起来很令人兴奋!🤯**
|
||||
|
||||
在其核心,Rhino Linux 将使用稍微修改过的 [Xfce][3] 版本作为其桌面环境;之所以选择它是因为它众所周知的稳定性和速度。
|
||||
|
||||
Rhino Linux 的创始人提到了以下几点:
|
||||
|
||||
> 滚动版 Ubuntu 仍然是我们的核心理念。Rhino Linux 并不是从 Rolling Rhino Remix 中分离出来的,而是将它重新设想为更稳定、更成熟的发行版,它原本就应该以这种方式出厂。
|
||||
|
||||
![xfce 4.14][4]
|
||||
|
||||
除此之外,[Pacstall][5] 将用作 Rhino Linux 上的默认包管理器及其存储库之一。
|
||||
|
||||
> 💡 Pacstall 是一个受 [AUR][6] 启发的 Ubuntu 包管理器。
|
||||
|
||||
Pacstall 的开发由其创始人 [Plasma][7] 领导。他还作为新开发人员之一(副项目负责人)加入,而 [Sourajyoti Basak][8] 作为另一位核心成员加入。
|
||||
|
||||
### 前进:可用性和发布
|
||||
|
||||
在撰写本文时,Rhino Linux 尚未确定任何具体的发布日期,但你可以预计它会在 **2023** 年的某个时间发布。
|
||||
|
||||
Rolling Rhino Remix 会发生什么?
|
||||
|
||||
开发者澄清说,它将在 Rhino Linux 发布后继续维护三个月。但是,在 2022 年 1 月 11 日后继发布之后,它没有新的发布镜像。
|
||||
|
||||
你可以通过访问其 [官方网站][9] 了解更多关于 Rhino Linux 的信息。
|
||||
|
||||
_💬 你觉得 Rhino Linux 怎么样?它可以成为值得尝试的官方 Ubuntu 风格的竞争者吗?_
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://news.itsfoss.com/rhino-linux/
|
||||
|
||||
作者:[Sourav Rudra][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[littlebirdnest](https://github.com/littlebirdnest)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://news.itsfoss.com/author/sourav/
|
||||
[b]: https://github.com/lkxed
|
||||
[1]: https://news.itsfoss.com/content/images/size/w1200/2022/10/rhino-linux.png
|
||||
[2]: https://github.com/rollingrhinoremix
|
||||
[3]: https://www.xfce.org/
|
||||
[4]: https://news.itsfoss.com/content/images/2022/10/XFCE_4.14.png
|
||||
[5]: https://github.com/pacstall/pacstall
|
||||
[6]: https://itsfoss.com/aur-arch-linux/
|
||||
[7]: https://github.com/Henryws
|
||||
[8]: https://github.com/wizard-28
|
||||
[9]: https://rhinolinux.org/
|
@ -0,0 +1,285 @@
|
||||
[#]: subject: "Give Your Linux Desktop a Halloween Makeover"
|
||||
[#]: via: "https://itsfoss.com/linux-halloween-makeover/"
|
||||
[#]: author: "Sreenath https://itsfoss.com/author/sreenath/"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: "chai001125"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-15190-1.html"
|
||||
|
||||
打造万圣节 Linux 桌面
|
||||
======
|
||||
|
||||
马上就到万圣节了,太棒啦!
|
||||
|
||||
我相信你已经有了一些庆祝万圣节的想法。给你的 Linux 桌面做一个像幽灵般的黑暗改造,就类似于下面的屏幕截图,你觉得怎么样?
|
||||
|
||||
![ubuntu halloween theming final looks][1]
|
||||
|
||||
可定制是 Linux 的一大优势,对 Linux 可进行的定制是多种多样且没有尽头的。之前,我们向你展示过 [如何让你的 Linux 看起来像 macOS][2] 的方法。今天,我将继续分享一些定制“万圣节”Linux 桌面的技巧。
|
||||
|
||||
可以通过主题、图标、扩展、字体、Conky 等一系列配置组合起来,来实现 Linux 桌面的定制。_虽然,你可以在任何的 Linux 发行版和桌面环境中配置这些东西,但是仅在一个教程中展示所有 Linux 发行版和桌面环境的桌面定制方法,是不太可行的。_
|
||||
|
||||
因此,在本文中,我将介绍 Ubuntu 与 GNOME 桌面环境的桌面定制方法。
|
||||
|
||||
### 安装所需工具
|
||||
|
||||
你需要一些软件包和工具。在开始定制桌面前,请确保你安装了全部(或大多数)的软件包和工具。
|
||||
|
||||
_你不必做**所有**这些桌面改变。但你做的越多,你的桌面也会美化得更好看。_
|
||||
|
||||
#### 安装 GNOME 优化工具和 GMOME 扩展管理器
|
||||
|
||||
使用以下命令,来安装 GNOME <ruby>优化<rt>Tweaks</rt></ruby> 工具和 GMOME <ruby>扩展管理器<rt>Extensions manager</rt></ruby>:
|
||||
|
||||
```
|
||||
sudo apt install gnome-tweaks gnome-extension-manager
|
||||
```
|
||||
|
||||
在基于 KDE 的 Linux 系统中,没有可以更改 Linux 桌面外观的优化工具。但是,你可以使用 Kvantum-Manager 这一应用程序来更改外观,请参考我在 [KDE 主题指南][3] 中的讨论。
|
||||
|
||||
#### 安装 Conky(可选)
|
||||
|
||||
你可以选择是否要安装 Conky ,因为现在 conky-manager 项目已经不再维护了,因此继续使用 Conky 可能会有点棘手。但无论如何,我们用它来增加万圣节外观的感觉。
|
||||
|
||||
```
|
||||
sudo apt install conky-all
|
||||
```
|
||||
|
||||
#### 安装 Neofetch 或者 Shell-color 脚本
|
||||
|
||||
这个步骤也可以由你自主选择。你可以选择使用 [neofetch][4],因为 `neofetch` 工具已经在 Ubuntu 仓库中了,你可以直接通过 `apt install` 安装,并且 `neofetch` 使用起来也很简单。
|
||||
|
||||
```
|
||||
sudo apt install neofetch
|
||||
```
|
||||
|
||||
[Shell-color 脚本][5] 是另一个不错的选择。在 Arch 用户仓库(AUR)中有该软件包,Arch Linux 用户可以从 AUR 安装 Shell-color 脚本。而在 Ubuntu 中,你则需要手动安装它。
|
||||
|
||||
```
|
||||
git clone https://gitlab.com/dwt1/shell-color-scripts.git
|
||||
cd shell-color-scripts
|
||||
sudo make install
|
||||
```
|
||||
|
||||
#### 安装主题、图标、字体和壁纸工具
|
||||
|
||||
我正在使用的是 [Sweet][6] 主题工具、[Beautiline][7] 图标软件包、[simple1e][8] 光标工具和 [Grey-Minimalistic][9] Conky 主题,下载好这些工具后,再解压包。你还要下载 [Creepster][10] 字体。
|
||||
|
||||
最后,从互联网上下载一张 [万圣节幽灵氛围的壁纸][11]。
|
||||
|
||||
> 请注意!你即将要进行大量的定制和更改。要恢复到原来普通的外观,你可以通过撤销你所做的所有更改。一个更简单的方法是:创建一个管理员权限的新用户,并使用该新用户进行所有这些更改。这样,你的原始用户帐户和外观就不会受到影响。在万圣节结束后,你可以删除这个新增的用户。
|
||||
|
||||
现在,你有了所有定制桌面的工具和资源,是时候使用它们了!
|
||||
|
||||
### 安装并使用扩展
|
||||
|
||||
打开 GMOME <ruby>扩展管理器<rt>Extensions manager</rt></ruby>。在 Ubuntu 22.04 中,你可以在<ruby>浏览<rt>Browse</rt></ruby>菜单下安装扩展。
|
||||
|
||||
![install gnome shell extensions user themes blur my shell and dash to dock][12]
|
||||
|
||||
在其他版本的 Ubuntu 和其他带有 GNOME 的发行版上,你可以通过浏览器 [安装 shell 扩展][13],来安装扩展。为了实现打造万圣节桌面的目的,请安装以下扩展程序:
|
||||
|
||||
- [User Themes][14]
|
||||
- [Dash to Dock][15]
|
||||
- [Blur my Shell][16]
|
||||
|
||||
此外,请确保所有的扩展都已启用。
|
||||
|
||||
### 配置主题、图标和字体
|
||||
|
||||
你需要将解压的主题文件夹复制,并粘贴到 `~/.themes` 目录下,将解压的图标和光标文件夹复制,并粘贴到 `~/.icons` 目录下。
|
||||
|
||||
接下来,打开 GNOME <ruby>优化<rt>Tweaks</rt></ruby> 工具,并应用主题、图标和字体等设置,如下的截图所示。
|
||||
|
||||
![set themes with gnome tweaks][17]
|
||||
|
||||
要 [在 Ubuntu 中使用自定义字体][18],请右键单击你下载和解压的字体文件,然后选择使用<ruby>字体管理器<rt>Font manager</rt></ruby>打开。我打算使用的是 [Creepster][10] 字体。
|
||||
|
||||
![right click on font file and select open with fonts][19]
|
||||
|
||||
然后,点击右上角的<ruby>安装<rt>Install</rt></ruby>按钮。
|
||||
|
||||
![install font using font manager application][20]
|
||||
|
||||
请注意:在某些系统中,点击安装按钮不会显示“<ruby>已安装<rt>installed</rt></ruby>”的提示。在这种情况下,你只需关闭界面就行了,因为一旦你点击了安装按钮,该字体就已经安装上了。
|
||||
|
||||
再重新打开 GNOME <ruby>优化<rt>Tweaks</rt></ruby> 工具,然后前往<ruby>字体<rt>Fonts</rt></ruby>边栏,在这里,你可以更改各个文件类型的字体,如下图所示。
|
||||
|
||||
![change system fonts using gnome tweaks][21]
|
||||
|
||||
请注意,对于终端,需要等宽字体。在这里,我使用了普通字体,这里可能会让你稍稍有点迷失。
|
||||
|
||||
### 应用 Dash to Dock 扩展设置
|
||||
|
||||
首先,你要使用 GNOME 扩展应用程序,来**关闭 Ubuntu Dock 扩展**。
|
||||
|
||||
![Disable Ubuntu Dock][22]
|
||||
|
||||
如果 Dash to Dock 扩展还尚未运行的话,请先运行它。
|
||||
|
||||
然后,右键单击在底部显示的 “Dash to Dock” 按钮,然后选择 “Dash to Dock Settings”。
|
||||
|
||||
![select dash to dock settings][23]
|
||||
|
||||
在设置中,你需要调整一些小东西。
|
||||
|
||||
首先,使用滑块,来缩小图标的大小。
|
||||
|
||||
![setting dash to dock icon size][24]
|
||||
|
||||
之后,你需要减少程序坞的不透明度,我更喜欢完全透明的程序坞。
|
||||
|
||||
所以,我将不透明度设置为 <ruby>固定<rt>fixed</rt></ruby>,并使用滑块将其降至零,如下图所示。
|
||||
|
||||
![opacity setting for dash to dock][25]
|
||||
|
||||
### GNOME 终端的设置
|
||||
|
||||
你想得到的 Linux 桌面的主要变化是自定义**模糊且有一定透明度**的 `neofetch` 外观(或 shell-color 脚本外观)。
|
||||
|
||||
我们之前在 GNOME <ruby>优化<rt>Tweaks</rt></ruby> 工具中应用了等宽字体,因此 GNOME 终端中的字体也会被更改。
|
||||
|
||||
首先,从 <ruby>偏好设置<rt>preferences</rt></ruby> 中创建一个新的配置文件。
|
||||
|
||||
![select preferences from hamburger menu][26]
|
||||
|
||||
单击 `+` ,来创建一个新配置文件。输入文件的名称,并点击 <ruby>创建<rt>create</rt></ruby>,如下所示:
|
||||
|
||||
![create new profile in gnome terminal][27]
|
||||
|
||||
在这个新配置文件中,更改透明度设置,将透明度的滑块放在中间,如下图所示:
|
||||
|
||||
![set transperancy to gnome terminal][28]
|
||||
|
||||
完成后,要将此配置文件设置为默认的配置文件,单击与新配置文件关联的三角形按钮,然后选择 “<ruby>设置为默认<rt>Set as Default</rt></ruby>”。
|
||||
|
||||
![set new profile as default in gnome terminal][29]
|
||||
|
||||
#### 设置模糊效果
|
||||
|
||||
上述的步骤只会将终端变成一个透明的 shell。但是,如果你还需要有利于提高可见性的模糊效果,你需要进入到 “Blur my Shell” 扩展进行设置。
|
||||
|
||||
![blur my shell extension settings][30]
|
||||
|
||||
首先,进入到 <ruby>应用程序<rt>Application</rt></ruby> 菜单。现在,确保终端已打开,并置于屏幕明显的位置。单击 <ruby>添加<rt>Add</rt></ruby> 窗口,然后选择 GNOME 终端窗口,以设置模糊效果。请注意:此功能还处于测试阶段,因此可能会出现一些小故障。
|
||||
|
||||
![applying blur effect to selected windows][31]
|
||||
|
||||
也可以对其他应用程序(例如 Nautilus 文件管理器)重复此过程,来设置模糊效果。
|
||||
|
||||
#### 定制 Neofetch
|
||||
|
||||
Neofetch 的最佳功能之一是其可定制性。你可以使用多种方法来调整 Neofetch 的外观。为了更有万圣节氛围,我选择了一个南瓜图像,来代替发行版的徽标。
|
||||
|
||||
Neofetch 提供以各种格式添加自定义图像的功能。为此,也有各种供支持的后端。在这里,我使用 jp2a 后端,它将使用 [转换成 ASCII 的图片][32]。
|
||||
|
||||
```
|
||||
neofetch --jp2a /path/to/your/image/file.png
|
||||
```
|
||||
|
||||
![neofetch with custom backend][33]
|
||||
|
||||
上述命令将创建一个带有自定义图片的 Neofetch 实例。你可以将此命令写入你的 `.bashrc` 文件,以便永久放置该图片。
|
||||
|
||||
_不幸的是,这在我的 Wayland 实例上并不起作用。_
|
||||
|
||||
#### 自定义 Shell-Color 脚本
|
||||
|
||||
如果你安装的是 Shell Color 脚本工具,则会有多种 shell 脚本。要列出可用的脚本,请使用命令:
|
||||
|
||||
```
|
||||
colorscript -l
|
||||
```
|
||||
|
||||
![ghosts shell color script][34]
|
||||
|
||||
你可以通过将 `colorscript random` 写入你的 `.bashrc` 文件,以每次都获得一个随机的颜色脚本,或者通过将`colorscript -e <name>`写入你的 `.bashrc` 文件,来得到一个特定的颜色脚本。
|
||||
|
||||
### 设置 Conky
|
||||
|
||||
我使用的是 Deviantart 的 [Grey-Minimalistic][9] conky 主题。Conky 主题的每种类型都有不同的安装方法。因此,如果你想要使用另一个 Conky 文件的话,请遵循它的 `README` 文件中描述的设置方法,进行设置。
|
||||
|
||||
解压 Conky 主题文件,里面有几个文件夹。首先,你需要安装关联的图标和字体,也就是说,使用 <ruby>字体管理器<rt>font-manager</rt></ruby> 安装给定的字体。接着,将图标文件夹拷贝,并粘贴到 `~/.icons` 文件夹。
|
||||
|
||||
![copy and paste conky files to home directory][35]
|
||||
|
||||
然后,进入 Conky 文件夹。确保你已 [启用查看隐藏文件][36],将 `.conkyrc` 文件和 `.conky-vision-icons` 文件复制到你的主目录,如上图所示。
|
||||
|
||||
现在,启动 Conky,看起来就变成下图这样了。
|
||||
|
||||
![conky theme applied][37]
|
||||
|
||||
将 Conky 添加到 [自启动应用程序列表][38] 中,以便在每次开机时都能自启动。
|
||||
|
||||
![add conky to the list of startup applications][39]
|
||||
|
||||
### 更改壁纸
|
||||
|
||||
快要完成啦。你现在唯一需要做的就是 [更改背景壁纸][40]。我相信你之前已经下载好了有万圣节幽灵气氛的壁纸,右键 “<ruby>设置为壁纸<rt>Set as Wallpaper</rt></ruby>” 就好啦。
|
||||
|
||||
![set image as wallpaper from nautilus][41]
|
||||
|
||||
### 看看最终成果吧!
|
||||
|
||||
如果你遵循上面的大多数步骤的话,你就会得到一个与以下截图相似的桌面。
|
||||
|
||||
![ubuntu halloween theme final look][42]
|
||||
|
||||
这个桌面对于万圣节来说够吓人了吗?你觉得怎么样?在评论区中告诉我吧。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://itsfoss.com/linux-halloween-makeover/
|
||||
|
||||
作者:[Sreenath][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[chai001125](https://github.com/chai001125)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://itsfoss.com/author/sreenath/
|
||||
[b]: https://github.com/lkxed
|
||||
[1]: https://itsfoss.com/wp-content/uploads/2022/10/ubuntu-halloween-theming-final-looks.jpg
|
||||
[2]: https://itsfoss.com/make-ubuntu-look-like-macos/
|
||||
[3]: https://itsfoss.com/properly-theme-kde-plasma/
|
||||
[4]: https://itsfoss.com/using-neofetch/
|
||||
[5]: https://gitlab.com/dwt1/shell-color-scripts
|
||||
[6]: https://www.gnome-look.org/p/1253385
|
||||
[7]: https://www.gnome-look.org/p/1425426
|
||||
[8]: https://www.gnome-look.org/p/1405210
|
||||
[9]: https://www.deviantart.com/bryantlloyd/art/Grey-Minimalistic-634726564
|
||||
[10]: https://fonts.google.com/specimen/Creepster?query=creepster
|
||||
[11]: https://www.wallpaperflare.com/search?wallpaper=spooky
|
||||
[12]: https://itsfoss.com/wp-content/uploads/2022/10/install-gnome-shell-extensions-user-themes-blur-my-shell-and-dash-to-dock.png
|
||||
[13]: https://itsfoss.com/gnome-shell-extensions/
|
||||
[14]: https://extensions.gnome.org/extension/19/user-themes/
|
||||
[15]: https://extensions.gnome.org/extension/307/dash-to-dock/
|
||||
[16]: https://extensions.gnome.org/extension/3193/blur-my-shell/
|
||||
[17]: https://itsfoss.com/wp-content/uploads/2022/10/set-themes-with-gnome-tweaks.png
|
||||
[18]: https://itsfoss.com/install-fonts-ubuntu/
|
||||
[19]: https://itsfoss.com/wp-content/uploads/2022/10/right-click-on-font-file-and-select-open-with-fonts.png
|
||||
[20]: https://itsfoss.com/wp-content/uploads/2022/10/install-font-using-font-manager-application.png
|
||||
[21]: https://itsfoss.com/wp-content/uploads/2022/10/change-system-fonts-using-gnome-tweaks.png
|
||||
[22]: https://itsfoss.com/wp-content/uploads/2020/06/disable-ubuntu-dock.png
|
||||
[23]: https://itsfoss.com/wp-content/uploads/2022/10/select-dash-to-dock-settings.png
|
||||
[24]: https://itsfoss.com/wp-content/uploads/2022/10/setting-dash-to-dock-icon-size.png
|
||||
[25]: https://itsfoss.com/wp-content/uploads/2022/10/opacity-setting-for-dash-to-dock.png
|
||||
[26]: https://itsfoss.com/wp-content/uploads/2022/10/select-preferences-from-hamburger-menu.png
|
||||
[27]: https://itsfoss.com/wp-content/uploads/2022/10/create-new-profile-in-gnome-terminal.png
|
||||
[28]: https://itsfoss.com/wp-content/uploads/2022/10/set-transperancy-to-gnome-terminal.png
|
||||
[29]: https://itsfoss.com/wp-content/uploads/2022/10/set-new-profile-as-default-in-gnome-terminal.png
|
||||
[30]: https://itsfoss.com/wp-content/uploads/2022/10/blur-my-shell-extension-settings.png
|
||||
[31]: https://itsfoss.com/wp-content/uploads/2022/10/applying-blur-effect-to-selected-windows.png
|
||||
[32]: https://itsfoss.com/ascii-image-converter/
|
||||
[33]: https://itsfoss.com/wp-content/uploads/2022/10/neofetch-with-custom-backend.png
|
||||
[34]: https://itsfoss.com/wp-content/uploads/2022/10/ghosts-shell-color-script.png
|
||||
[35]: https://itsfoss.com/wp-content/uploads/2022/10/copy-and-paste-conky-files-to-home-directory.png
|
||||
[36]: https://itsfoss.com/hide-folders-and-show-hidden-files-in-ubuntu-beginner-trick/
|
||||
[37]: https://itsfoss.com/wp-content/uploads/2022/10/conky-theme-applied.png
|
||||
[38]: https://itsfoss.com/manage-startup-applications-ubuntu/
|
||||
[39]: https://itsfoss.com/wp-content/uploads/2022/10/add-conky-to-the-list-of-startup-applications.png
|
||||
[40]: https://itsfoss.com/change-wallpaper-ubuntu/
|
||||
[41]: https://itsfoss.com/wp-content/uploads/2022/10/set-image-as-wallpaper-from-nautilus.png
|
||||
[42]: https://itsfoss.com/wp-content/uploads/2022/10/ubuntu-halloween-theme-final-look.jpg
|
@ -0,0 +1,134 @@
|
||||
[#]: subject: "Xubuntu 22.10 Releases With Xfce Upgrades, and Other Refinements"
|
||||
[#]: via: "https://news.itsfoss.com/xubuntu-22-10-release/"
|
||||
[#]: author: "Ankush Das https://news.itsfoss.com/author/ankush/"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: "littlebirdnest"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-15188-1.html"
|
||||
|
||||
Xubuntu 22.10 的新变化
|
||||
======
|
||||
|
||||
> Xubuntu 22.10 提供了精致的 Xfce 体验。请读此文了解详情。
|
||||
|
||||
![Xubuntu 22.10 Releases With Xfce Upgrades, and Other Refinements][1]
|
||||
|
||||
Xubuntu 是基于 Xfce 的 Ubuntu 官方版本。
|
||||
|
||||
它也是最好的轻量级 Linux 发行版之一。
|
||||
|
||||
随着最新的 Xubuntu 22.10 “Kinetic Kudu” 版本,你可以看到改进的桌面环境、添加的功能,以及全面的细化。
|
||||
|
||||
### Xubuntu 22.10 的新变化
|
||||
|
||||
![Xubuntu 22.10 home][2]
|
||||
|
||||
Xubuntu 22.10 带来了一些令人兴奋的升级。一些亮点包括:
|
||||
|
||||
- Xfce 4.16(或 Xfce 4.17 开发版)
|
||||
- Catfish 的外观进行了更新。
|
||||
- 更新了新图标,弃用了 elementary-xfce-darker 主题。
|
||||
- Mousepad 搜索历史。
|
||||
- Thundar 文件管理器的改进。
|
||||
- Xfce 任务管理器。
|
||||
|
||||
> 💡 Xubuntu 22.10 将支持九个月,直到 **2023 年 7 月**。如果你想要稳定性而不是功能,你应该首选使用 [LTS 版本][3]。
|
||||
|
||||
#### Xfce 4.17 开发版还是 Xfce 4.16?
|
||||
|
||||
Xubuntu 22.10 的发行说明说它专门提供了 Xfce 4.17 开发版本。
|
||||
|
||||
但是,当我安装 Xubuntu 22.10 的 beta 版本(并将其更新到最新版本)时,只具有 Xfce 4.16。
|
||||
|
||||
![][4]
|
||||
|
||||
不确定他们是否退出了 Xfce 4.17 开发版本,或者 Xfce 4.16 现在是否存在。
|
||||
|
||||
#### Catfish 外观
|
||||
|
||||
![xubuntu catfish][5]
|
||||
|
||||
Catfish 是 Xubuntu 上的一个文件搜索工具。通过新的升级,它具有焕然一新的外观,并做了底层的改进。
|
||||
|
||||
与你搜索的文件交互时,你还会获得一个“打开方式”上下文菜单。
|
||||
|
||||
![][6]
|
||||
|
||||
Catfish 还添加了一些细微而有用的功能。
|
||||
|
||||
#### GNOME 43 软件应用
|
||||
|
||||
在值得注意的应用程序更新中,GNOME 的最新软件中心是一个不错的选择。这是 Xubuntu 22.10 的外观:
|
||||
|
||||
![][7]
|
||||
|
||||
当然,它可能无法与 Xfce 上的其他应用程序保持一致,但我认为你应该不会介意。
|
||||
|
||||
#### 图标更新
|
||||
|
||||
随着 elementary-xfce 0.17 图标更新,有许多新图标和更简洁的选项,可提供一致的 Xubuntu 桌面体验。
|
||||
|
||||
![][8]
|
||||
|
||||
此外,elementary-xfce-darkest 主题图标包已被弃用。
|
||||
|
||||
![][9]
|
||||
|
||||
#### 任务管理器右键选项
|
||||
|
||||
![][10]
|
||||
|
||||
你现在可以将完整的进程路径复制到剪贴板。这对于需要从命令行进行故障排除或停止操作很有用。
|
||||
|
||||
### 其他增强功能
|
||||
|
||||
![][11]
|
||||
|
||||
还有其他几个值得注意的变化,包括:
|
||||
|
||||
- Linux 内核 5.19。
|
||||
- Firefox 浏览器 105。
|
||||
- `Alt-Tab` 视图通过更突出的图标进行了改进。
|
||||
- 马赛克拼图添加到 SGT 拼图系列。
|
||||
- Mousepad 文本编辑器现在包括搜索历史记录,以及更多调整。
|
||||
|
||||
要了解有关更改的更多信息,请查看 [官方发行说明][12]。
|
||||
|
||||
### 下载 Xubuntu 22.10
|
||||
|
||||
你可以从 [Ubuntu 的中央镜像库][13] 或它的 [官方网站][14] 下载最新的 ISO 文件。
|
||||
|
||||
官方网站可能需要一段时间才能提供 ISO。
|
||||
|
||||
> **[下载Xubuntu 22.10][14]**
|
||||
|
||||
💬 你觉得 Xubuntu 22.10 如何?请在评论中告诉我。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://news.itsfoss.com/xubuntu-22-10-release/
|
||||
|
||||
作者:[Ankush Das][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[littlebirdnest](https://github.com/littlebirdnest)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://news.itsfoss.com/author/ankush/
|
||||
[b]: https://github.com/lkxed
|
||||
[1]: https://news.itsfoss.com/content/images/size/w1200/2022/10/xubuntu-22-10-release.jpg
|
||||
[2]: https://news.itsfoss.com/content/images/2022/10/xubuntu-22-10.png
|
||||
[3]: https://itsfoss.com/long-term-support-lts/
|
||||
[4]: https://news.itsfoss.com/content/images/2022/10/xfce-4-16.jpg
|
||||
[5]: https://news.itsfoss.com/content/images/2022/10/catfish-xubuntu-22-10.png
|
||||
[6]: https://news.itsfoss.com/content/images/2022/10/catfish-openwith-1.jpg
|
||||
[7]: https://news.itsfoss.com/content/images/2022/10/xubuntu-gnome-43-software.jpg
|
||||
[8]: https://news.itsfoss.com/content/images/2022/10/xubuntu-22-10-icons.jpg
|
||||
[9]: https://news.itsfoss.com/content/images/2022/10/xfce-dark-theme.png
|
||||
[10]: https://news.itsfoss.com/content/images/2022/10/task-manager-copy-command-line.jpg
|
||||
[11]: https://news.itsfoss.com/content/images/2022/10/xubuntu-22-10-puzzle.png
|
||||
[12]: https://wiki.xubuntu.org/releases/22.10/release-notes
|
||||
[13]: https://cdimage.ubuntu.com/xubuntu/releases/22.10/release/
|
||||
[14]: https://xubuntu.org/download/
|
@ -3,18 +3,18 @@
|
||||
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: "chai001125"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-15185-1.html"
|
||||
|
||||
安装 Ubuntu 22.10 后要做的 10 件事
|
||||
======
|
||||
|
||||
**以下是我们安装 Ubuntu 22.10 “Kinetic Kudu”(GNOME 版)后,推荐做的 10 件事列表。**
|
||||
> 以下是我们安装 Ubuntu 22.10 “Kinetic Kudu”(GNOME 版)后,推荐做的 10 件事列表。
|
||||
|
||||
![][1]
|
||||
|
||||
Ubuntu 22.10 带来了很多令人兴奋的新功能,例如 GNOME 43、最新的内核、重新设计的托盘菜单、文件功能和 Pipewire 等 [新功能][2]。
|
||||
Ubuntu 22.10 带来了很多令人兴奋的新功能,例如 GNOME 43、最新的内核、重新设计的托盘菜单、文件应用的功能和 Pipewire 等 [新功能][2]。
|
||||
|
||||
我相信你已经迫不及待地想尝试 Ubuntu 22.10 上的这些新功能了。
|
||||
|
||||
@ -36,19 +36,19 @@ sudo apt update && sudo apt upgrade
|
||||
|
||||
#### 2、删除 Firefox Snap,并安装 Flatpak 或者 deb 版本的 Firefox
|
||||
|
||||
自去年发布的 Ubuntu 21.10 版本以来,默认的网页浏览器 Firefox 开始以 Snap 软件包的形式出现。如果你是普通用户,这可能不是一个问题或者需要担心的事情。但是出于几个原因,例如 Snap 软件包的 Firefox 启动时间较长、且当 Firefox 有后端更新时,会有不必要的 Snap 更新通知等等原因,导致许多用户不太喜欢 Firefox 的 Snap 软件包。
|
||||
自去年发布的 Ubuntu 21.10 版本以来,默认的网页浏览器 Firefox 开始以 Snap 软件包的形式出现。如果你是普通用户,这可能不是一个问题或者需要担心的事情。但是出于几个原因,例如 Snap 软件包的 Firefox 启动时间较长、且当 Firefox 有后台更新时,会有不必要的 Snap 更新通知等等原因,导致许多用户不太喜欢 Firefox 的 Snap 软件包。
|
||||
|
||||
因此,你可以按照 [我写的另一篇操作指南][3],来完全删除 Firefox 的 Snap 软件包。这一过程有点复杂,需要花费一点时间。删除完成后,再从个人软件包存档(PPA)安装 deb 版本的 Firefox,或者使用 [Flatpak 版本][4] 的 Firefox。
|
||||
因此,你可以按照 [我写的另一篇操作指南][3],来完全删除 Firefox 的 Snap 软件包。这一过程有点复杂,需要花费一点时间。删除完成后,再从个人软件包存档(PPA)安装 deb 版本的 Firefox,或者使用 [Flatpak 版本][4] 的 Firefox。
|
||||
|
||||
这是一个可选的动作,你也可以跳过这一步骤。
|
||||
|
||||
#### 3、安装并启用 Flatpak
|
||||
|
||||
虽然,几乎所有最近的 linux 发行版都会默认安装 Flatpak,但是 Ubuntu 并没有默认安装 Flatpak,这是因为 Ubuntu 使用了它自己的沙箱技术 Snap。
|
||||
虽然,几乎所有最新的 Linux 发行版都会默认安装 Flatpak,但是 Ubuntu 并没有默认安装 Flatpak,这是因为 Ubuntu 使用了它自己的沙箱技术 Snap。
|
||||
|
||||
但 Flatpak 这一应用程序还是最适合于每个人。Flatpak 能够帮助你快速安装多个应用程序,并在使用过程中无需担心依赖性和其他事情。
|
||||
|
||||
大多数 Flatpak 应用程序都在集中的仓库 @ Flathub 中。
|
||||
大多数 Flatpak 应用程序都在集中的仓库 Flathub 中。
|
||||
|
||||
要在 Ubuntu 22.10 中启用 Flatpak 应用程序,请按照以下命令进行操作。
|
||||
|
||||
@ -62,9 +62,9 @@ sudo apt install flatpakflatpak remote-add --if-not-exists flathub https://flath
|
||||
|
||||
我建议你在安装 Ubuntu 后,手动退出任何数据收集项。大家都知道,无论怎么努力尝试,在互联网上保护自己的隐私都很困难。因此,这些小步骤很重要。
|
||||
|
||||
要配置隐私项,请打开设置并选择**隐私**。然后查看隐私菜单下列出的项目。
|
||||
要配置隐私项,请打开“<ruby>设置<rt>Settings</rt></ruby>”并选择“<ruby>隐私<rt>Privacy</rt></ruby>”。然后查看隐私菜单下列出的项目。
|
||||
|
||||
此外,请确保禁用对 Ubuntu 服务器的后端报告。需要运行以下命令来手动禁用,因为在设置中没有禁用它的选项。
|
||||
此外,请确保禁用对 Ubuntu 服务器的后台报告。需要运行以下命令来手动禁用,因为在设置中没有禁用它的选项。
|
||||
|
||||
```
|
||||
sudo ubuntu-report -f send no
|
||||
@ -74,13 +74,13 @@ sudo ubuntu-report -f send no
|
||||
|
||||
#### 5、探索 GNOME 43 的功能
|
||||
|
||||
在 Ubuntu 22.10 版本中,最具视觉和功能性的变化是 GNOME 43。因为 GNOME 43 有一些根本性和核心变化,所以它会影响每个人和他们的工作。GNOME 43 带来了一个新的药丸形状的托盘菜单,并更新了具有文件和 GNOME Web 等新功能的原生应用程序。
|
||||
在 Ubuntu 22.10 版本中,最具视觉和功能性的变化是 GNOME 43。因为 GNOME 43 有一些根本性和核心变化,所以它会影响每个人和他们的工作。GNOME 43 带来了一个新的药丸形状的托盘菜单,并更新了文件应用和 GNOME Web 等原生应用程序的功能。
|
||||
|
||||
请查看更为详细的 [GNOME 43 功能][7] 一文,以了解更多信息,或者你也可以自己探索 GNOME 43。
|
||||
|
||||
![Quick Settings Demo in GNOME 43][8]
|
||||
|
||||
#### 6、确保音频与 Pipewire 配合使用
|
||||
#### 6、确保音频可以与 Pipewire 配合使用
|
||||
|
||||
如果你经常使用音频,或者你的工作范围涉及到声音捕获、播放等内容,请确保在 Ubuntu 22.10 中,你的音频在有线或蓝牙情况下都能正常工作。
|
||||
|
||||
@ -88,7 +88,7 @@ sudo ubuntu-report -f send no
|
||||
|
||||
#### 7、安装其他软件包
|
||||
|
||||
确保你可以在 Ubuntu 桌面上,播放所有视频和音频格式是很重要的。如果你在设置期间跳过了额外的软件包安装,可以通过以下命令进行安装。
|
||||
确保你可以在 Ubuntu 桌面上播放所有视频和音频格式是很重要的。如果你在设置期间跳过了额外的软件包安装,可以通过以下命令进行安装。
|
||||
|
||||
```
|
||||
sudo apt install ubuntu-restricted-extras
|
||||
@ -98,7 +98,7 @@ sudo apt install ubuntu-restricted-extras
|
||||
|
||||
#### 8、安装基本的应用程序
|
||||
|
||||
带有 GNOME 的基础 Ubuntu 版本只有非常基本的应用程序。因此,在你使用 Ubuntu 之前,你需要安装一些其他必要的应用程序。
|
||||
带有 GNOME 的 Ubuntu 基础版本只有非常基本的应用程序。因此,在你使用 Ubuntu 之前,你需要安装一些其他必要的应用程序。
|
||||
|
||||
由于每个人的工作范围不同,每个人所需的应用程序也都不同。因此,在这里我仅提供一个通用的应用程序的列表,我认为你可以把这些应用程序都安装上,因为这些应用程序对所有人来说都很常用。
|
||||
|
||||
@ -141,9 +141,9 @@ flatpak install flathub com.mattjakeman.ExtensionManager
|
||||
sudo add-apt-repository -y ppa:teejee2008/ppasudo apt-get updatesudo apt-get install timeshift
|
||||
```
|
||||
|
||||
### 额外小贴士
|
||||
### 额外小技巧
|
||||
|
||||
如果你想进一步定制你新安装的 Ubuntu 系统,以下是一些额外的小贴士。
|
||||
如果你想进一步定制你新安装的 Ubuntu 系统,以下是一些额外的小技巧。
|
||||
|
||||
#### 安装漂亮的字体
|
||||
|
@ -3,38 +3,40 @@
|
||||
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: "geekpi"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-15195-1.html"
|
||||
|
||||
如何在 Ubuntu 和其他相关 Linux 中安装 Python 3.10
|
||||
======
|
||||
|
||||
**计划为工作安装 Python 3.10?以下是在 Ubuntu 和相关发行版中安装 Python 3.10 的方法。**
|
||||

|
||||
|
||||
Python 3.10 于 2021 年 10 月 25 日发布,具有附加功能和更新。此版本带来了更好的错误消息处理、新的模式匹配功能、TypeAlias、用户定义的类型保护等。你可以在[此处][1]阅读发布亮点。
|
||||
> 计划为工作安装 Python 3.10?以下是在 Ubuntu 和相关发行版中安装 Python 3.10 的方法。
|
||||
|
||||
Python 3.10 于 2021 年 10 月 25 日发布,具有附加功能和更新。此版本带来了更好的错误消息处理、新的模式匹配功能、<ruby>类型别名<rt>TypeAlias</rt></ruby>、用户定义的类型保护等。你可以在 [此处][1] 阅读发布重点。
|
||||
|
||||
在编写本指南时,大多数当前发行版都采用 Python 3.10。例如,Ubuntu 22.04 LTS 和 Fedora 36 默认都有 Python 3.10。
|
||||
|
||||
也就是说,如果你现在需要任何不支持的版本中的 Python 3.10,你可以使用[下面的可靠 PPA][2]在 Ubuntu 中安装最新的 Python 3.10。下面是方法。
|
||||
也就是说,如果你现在在任何不支持的版本中需要 Python 3.10,你可以使用 [下面的可靠 PPA][2] 在 Ubuntu 中安装最新的 Python 3.10。下面是方法。
|
||||
|
||||
### 如何在 Ubuntu 上安装 Python 3.10
|
||||
|
||||
此 PPA 可用于 Ubuntu 21.10、Ubuntu 21.04、Ubuntu 20.04 LTS、Ubuntu 18.04 LTS 和 Linux Mint 20.x、Elementary OS 6 和其他相关的基于 Ubuntu 的发行版。大多数默认情况下不支持 3.10。
|
||||
此 PPA 可用于 Ubuntu 21.10、Ubuntu 21.04、Ubuntu 20.04 LTS、Ubuntu 18.04 LTS 和 Linux Mint 20.x、Elementary OS 6 和其他相关的基于 Ubuntu 的发行版。这些发行版大多数默认情况下不支持 3.10。
|
||||
|
||||
- 打开终端并添加以下 PPA。
|
||||
打开终端并添加以下 PPA:
|
||||
|
||||
```
|
||||
sudo add-apt-repository ppa:deadsnakes/ppa
|
||||
```
|
||||
|
||||
- 使用以下命令刷新缓存。
|
||||
使用以下命令刷新缓存:
|
||||
|
||||
```
|
||||
sudo apt update
|
||||
```
|
||||
|
||||
- 并使用以下命令安装 Python 3.10。
|
||||
并使用以下命令安装 Python 3.10:
|
||||
|
||||
```
|
||||
sudo apt install python3.10
|
||||
@ -42,9 +44,9 @@ sudo apt install python3.10
|
||||
|
||||
### 设置 Python 版本
|
||||
|
||||
将 Python 3.10 设置为默认值需要一些额外的步骤。请跟上。
|
||||
将 Python 3.10 设置为默认值需要一些额外的步骤。如下。
|
||||
|
||||
**警告**:你的 Ubuntu 系统中的许多应用程序依赖于 Python 3.9 的库存版本。因此,请确保你的工作应用(例如 GIMP、GNOME 终端等)与 Python 3.10 兼容。所以,要小心。
|
||||
> **警告**:你的 Ubuntu 系统中的许多应用程序依赖于 Python 3.9 的库存版本。因此,请确保你的工作应用(例如 GIMP、GNOME 终端等)与 Python 3.10 兼容。所以,要小心。
|
||||
|
||||
**快速提示:** 如果要检查已安装的系统包中的哪些依赖于特定版本,请使用 `apt-cache` 命令的 `rdepends` 开关。在下面的示例中,我检查哪些已安装的包依赖于 Python 3.8。
|
||||
|
||||
@ -100,13 +102,13 @@ gedit
|
||||
|
||||
#### 使用 Python 3.10 作为默认 Python3
|
||||
|
||||
- 首先,使用终端中的以下命令检查当前默认版本。
|
||||
首先,使用终端中的以下命令检查当前默认版本。
|
||||
|
||||
```
|
||||
python3 --version
|
||||
```
|
||||
|
||||
- 使用 `update-alternatives` 创建指向 python3 的符号链接。
|
||||
使用 `update-alternatives` 创建指向 `python3` 的符号链接。
|
||||
|
||||
```
|
||||
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.9 1
|
||||
@ -116,7 +118,7 @@ sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.9 1
|
||||
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.10 2
|
||||
```
|
||||
|
||||
- 并通过以下命令选择使用哪一个作为 Python3:
|
||||
并通过以下命令选择使用哪一个作为 `python3`:
|
||||
|
||||
```
|
||||
sudo update-alternatives --config python3
|
||||
@ -133,7 +135,7 @@ via: https://www.debugpoint.com/install-python-3-10-ubuntu/
|
||||
作者:[Arindam][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[geekpi](https://github.com/geekpi)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
103
published/20221013 What you need to know about compiling code.md
Normal file
103
published/20221013 What you need to know about compiling code.md
Normal file
@ -0,0 +1,103 @@
|
||||
[#]: subject: "What you need to know about compiling code"
|
||||
[#]: via: "https://opensource.com/article/22/10/compiling-code"
|
||||
[#]: author: "Alan Smithee https://opensource.com/users/alansmithee"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: "Donkey-Hao"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-15213-1.html"
|
||||
|
||||
关于编译代码你应该知道的
|
||||
======
|
||||
|
||||

|
||||
|
||||
> 用这个方便的捕鼠器比喻来理解编译代码。
|
||||
|
||||
源代码必须要经过编译才能够运行程序,而对于开源软件,每个人都可以获取源代码。无论你是自己编写了代码,想要编译和运行它,还是下载了某人的项目来尝试它,了解如何通过 [编译器][2] 处理源代码,以及编译器如何处理这些代码,这都很有用。
|
||||
|
||||
### 创建一个更好的捕鼠器
|
||||
|
||||
一般情况我们不会将一个捕鼠器比作电脑,但不管你信不信,它确实与你正在使用的设备(手机或电脑)的 CPU 有一些相似之处。经典的捕鼠器(我说的不是 🐈)有两种状态:打开或者释放。你可以认为 *打开* 是将捕鼠器设置好准备捕获老鼠,以及 *释放* 是捕鼠器被老鼠触发。某种意义上来说,捕鼠器就像是一台有鼠标的电脑。你可以想象一下这个代码,用一种虚构的语言来描述这个过程:
|
||||
|
||||
```
|
||||
if mousetrap == 0 then
|
||||
There's a mouse!
|
||||
else
|
||||
There's no mouse yet.
|
||||
end
|
||||
```
|
||||
|
||||
换句话说,你可以基于捕鼠器的状态发现是否有老鼠(数据)。当然,捕鼠器不是万无一失的,有可能有一只老鼠在捕鼠器旁边,由于老鼠还没有触发捕鼠器,所以它的状态还是 *打开* 的。因此该程序可以进行改进,这都是非常典型的。
|
||||
|
||||
### 开关
|
||||
|
||||
总的来说,捕鼠器就是一个开关。你会在家里使用开关打开灯。可以从开关中获得许多信息。比如,人们会从你家灯的状态了解到你是否在家。
|
||||
|
||||
你可以根据邻居家灯的状态来改变行为。如果邻居家所有的灯都熄灭了,那么请关掉你大声的音乐,因为人们可能已经上床睡觉了。
|
||||
|
||||
CPU 也使用这样的逻辑,只不过乘以几个数量级,缩小到了微观级别。当 CPU 在特定寄存器上接收到电信号时,可以触发其他一些寄存器,然后触发另一个,以此类推。如果这些寄存器有特定的意义,那么就可以通信。也许激活同一主板上某处的芯片,或者使 LED 亮起,或者改变屏幕上的像素颜色。
|
||||
|
||||
种瓜得瓜,种豆得豆。如果你真的想在多个位置而不是仅限于一处发现老鼠,但是你只有一个捕鼠器,那你应该开发一个应用才行。使用网络摄像头和一些基本的图像识别软件,你可以建立空厨房的模型,然后扫描变化。当老鼠进入厨房,在原先没有老鼠的图像上会有像素的变化。记录下这些数据,如果有无人机可以追踪老鼠并捕获会更好,这样就可以将老鼠赶出厨房了。这时,你通过打开和关闭信号的魔法,创造了一个更好的捕鼠器。
|
||||
|
||||
### 编译器
|
||||
|
||||
代码编译器将人们可阅读的代码转换成 CPU 可以理解的机器语言。这是非常复杂的过程,因为 CPU 非常复杂(甚至比捕鼠器更加复杂),同时因为该过程比严格“需要”的更加灵活。并不是所有的编译器都很灵活。有一些编译器只有一个目标,它们只会处理特定格式的代码文件,处理过程也因此而简单明了。
|
||||
|
||||
幸运的是,现代的通用编译器并不简单。它们允许你编写不同语言的代码,也允许你用不同的方式链接库文件,并且可以生成运行在不同架构上的文件。[GNU 编译器集合][4](GCC)的 `gcc` 编译器 `--help` 会输出超过 50 行的选项,LLVM 的 `clang` 编译器的 `--help` 输出超过 1000 行。GCC 指导手册的字数超过 10 万。
|
||||
|
||||
当你在编译代码时会有很多选项。
|
||||
|
||||
当然,大多数人并不需要知道所有的选项。我从未读过 GCC 的手册页,因为它们是针对 Objective-C、Fortran 以及我从未听说过的芯片架构的。不过我重视它将代码编译为不同的架构 —— 64 位或者 32 位 —— 的能力,以及在其他行业已经落后的计算机上运行开源软件的能力。
|
||||
|
||||
### 编译生命周期
|
||||
|
||||
同样重要的是,理解编译代码的不同阶段。这是一个简单的 C 语言程序的生命周期:
|
||||
|
||||
1. 带有宏定义的 C 源代码 `.c` 文件,用 `cpp` 预处理为 `.i` 文件。
|
||||
2. 扩展了宏定义的 C 源代码 `.i` 文件,会被 `gcc` 转译成 `.s` 文件。
|
||||
3. 以汇编语言写的文本文件 `.s` 文件被汇编为目标 `.o` 文件。
|
||||
4. 带有 CPU 指令的二进制目标代码,以及其他目标文件和库 `*.o` 文件,以内存区域无关的偏移量,使用 `ld` 链接以生成可执行文件。
|
||||
5. 最终的二进制文件要么包含所有需要的目标,要么设置以动态链接库 `*.so` 文件加载。
|
||||
|
||||
你可以试试这个简单示例(可能需要对库路径做一些调整):
|
||||
|
||||
```
|
||||
$ cat << EOF >> hello.c
|
||||
#include
|
||||
int main(void)
|
||||
{ printf("hello world\n");
|
||||
return 0; }
|
||||
EOF
|
||||
$ cpp hello.c > hello.i
|
||||
$ gcc -S hello.i
|
||||
$ as -o hello.o hello.s
|
||||
$ ld -static -o hello \
|
||||
-L/usr/lib64/gcc/x86_64-slackware-linux/5.5.0/ \
|
||||
/usr/lib64/crt1.o /usr/lib64/crti.o hello.o \
|
||||
/usr/lib64/crtn.o --start-group -lc -lgcc \
|
||||
-lgcc_eh --end-group
|
||||
$ ./hello
|
||||
hello world
|
||||
```
|
||||
|
||||
### 可获得的知识
|
||||
|
||||
计算机已经变得非常强大,并且用户友好。请不要走向这两种可能的极端中的任何一种:计算机不像捕鼠器和电灯开关那么简单,但它们也不是无法理解的。你可以了解编译代码、如何链接以及针对不同架构进行编译。一旦你知道了,你就可以更好地调试代码。你可以理解你下载的代码,甚至可以修复其中的一两个错误。同时从理论上来讲,你可以建造一个更好的捕鼠器,或者用捕鼠器造一个 CPU。由你决定。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/22/10/compiling-code
|
||||
|
||||
作者:[Alan Smithee][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[Donkey-Hao](https://github.com/Donkey-Hao)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://opensource.com/users/alansmithee
|
||||
[b]: https://github.com/lkxed
|
||||
[2]: https://opensource.com/article/19/5/primer-assemblers-compilers-interpreters
|
||||
[3]: https://opensource.com/article/22/9/python-interpreters-2022
|
||||
[4]: https://opensource.com/article/22/5/gnu-c-compiler
|
@ -0,0 +1,92 @@
|
||||
[#]: subject: "How to Install Viber in Ubuntu and Other Linux"
|
||||
[#]: via: "https://www.debugpoint.com/install-viber-linux/"
|
||||
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: "geekpi"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-15205-1.html"
|
||||
|
||||
如何在 Ubuntu 中安装 Viber
|
||||
======
|
||||
|
||||

|
||||
|
||||
> 这是在 Ubuntu 和其他 Linux 系统中安装 Viber 的快速指南。
|
||||
|
||||
[Viber][1] 是一个免费、安全的通话和聊天程序,适用于所有流行的移动平台和操作系统。
|
||||
|
||||
它具有丰富的功能,例如语音/视频通话、支持 GIF 的文本消息、贴纸、照片和视频。此外,Viber 还具有群聊、群呼和消失消息功能。
|
||||
|
||||
Viber 是一个闭源程序,但有免费的 Linux 原生可执行客户端。
|
||||
|
||||
下面是安装它的方法。
|
||||
|
||||
### 在 Linux 上安装 Viber
|
||||
|
||||
它以 AppImage 可执行文件、deb 和 rpm 包的形式提供。按照下面的相应按钮直接下载。平均可执行文件大小约为 180MB。
|
||||
|
||||
> **[下载适用于所有 Linux 发行版的 Appimage][2]**
|
||||
|
||||
> **[适用于 Ubuntu 的 Deb 可执行文件][3]**
|
||||
|
||||
> **[Fedora 的 RPM 包][8]**
|
||||
|
||||
如果你已下载 AppImage,只需从任意文件管理器将权限更改为可执行文件即可。然后运行。
|
||||
|
||||
对于 Ubuntu、Linux Mint、Debian 和相关发行版,你可以通过[多种方法][4]安装 deb 包。
|
||||
|
||||
你可以通过已安装的软件管理器双击打开。或者通过 `dpkg` 命令安装,如下所示。
|
||||
|
||||
```
|
||||
sudo dpkg -i viber.deb
|
||||
```
|
||||
|
||||
对于 Fedora 和基于 RPM 的软件包,你可以通过以下命令安装。
|
||||
|
||||
```
|
||||
sudo dnf localinstall viber.rpm
|
||||
```
|
||||
|
||||
对于 Arch Linux 和其他发行版,你可以使用我上面提到的 Appimage。
|
||||
|
||||
### 使用
|
||||
|
||||
完成安装 Viber 后,通过应用菜单打开它。以下是你需要记住的几件事。
|
||||
|
||||
在从笔记本电脑/台式机开始使用 Viber 之前,你需要在手机上进行设置。从以下链接为你的移动平台下载并安装 Viber。
|
||||
|
||||
- [谷歌应用商店][5]
|
||||
- [苹果应用商店][6]
|
||||
|
||||
安装后,设置 Viber。请记住,它需要你的手机号码才能注册。
|
||||
|
||||
设置完成后,在 Linux 桌面上打开应用。你应该会看到如下页面。
|
||||
|
||||
![Viber 在 Linux 中运行][7]
|
||||
|
||||
从你的手机应用扫描二维码,你应该可以在 Linux 桌面上使用 Viber。
|
||||
|
||||
**注意:** 由于它是一个闭源应用,请确保你在使用 Viber 时了解此应用的条款和与隐私相关的情况。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://www.debugpoint.com/install-viber-linux/
|
||||
|
||||
作者:[Arindam][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[geekpi](https://github.com/geekpi)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://www.debugpoint.com/author/admin1/
|
||||
[b]: https://github.com/lkxed
|
||||
[1]: https://www.viber.com/
|
||||
[2]: https://download.cdn.viber.com/desktop/Linux/viber.AppImage
|
||||
[3]: https://download.cdn.viber.com/cdn/desktop/Linux/viber.deb
|
||||
[4]: https://www.debugpoint.com/install-deb-files/
|
||||
[5]: https://play.google.com/store/apps/details?id=com.viber.voip&hl=en_IN&gl=US
|
||||
[6]: https://apps.apple.com/us/app/viber-messenger-chats-calls/id382617920
|
||||
[7]: https://www.debugpoint.com/wp-content/uploads/2022/10/Viber-is-Running-in-Linux-1.jpg
|
||||
[8]: https://download.cdn.viber.com/desktop/Linux/viber.rpm
|
@ -0,0 +1,108 @@
|
||||
[#]: subject: "How to Clean Up Snap Versions to Free Up Disk Space"
|
||||
[#]: via: "https://www.debugpoint.com/clean-up-snap/"
|
||||
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: "geekpi"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-15219-1.html"
|
||||
|
||||
如何清理 Snap 版本以释放磁盘空间
|
||||
======
|
||||
|
||||

|
||||
|
||||
> 这个带有脚本的快速指南有助于清理旧的 Snap 版本并释放 Ubuntu 系统中的一些磁盘空间。
|
||||
|
||||
我正在使用的 Ubuntu 测试系统中的磁盘空间不足。因此,我通过 GNOME 的磁盘使用分析器进行调查,以找出哪个包正在消耗宝贵的 SSD 空间。除了通常的缓存和主目录,令我惊讶的是,我发现 Snap 和 Flatpak 消耗了大量的存储空间。
|
||||
|
||||
![Snap 大小 - 清理前][1]
|
||||
|
||||
尽管如此,我始终坚持一个规则:除非必要,否则不要使用 Snap 或 Flatpak。这主要是因为它们的安装尺寸和其他问题。我更喜欢原生 deb 和 rpm 包。多年来,我在这个测试系统中安装和移除了一定数量的 Snap 包。
|
||||
|
||||
但卸载后还有问题。Snap 在系统中保留了一些残留文件,一般用户不知道。
|
||||
|
||||
所以我打开了 Snap 文件夹 `/var/lib/snapd/snaps`,发现 Snap 保留了以前安装/卸载的软件包的旧版本。
|
||||
|
||||
例如,在下图中,你可以看到 GNOME 3.28、3.34 和 Wine 都被删除了。但它们还在那里。发生这种情况是因为 Snap 的设计,它在正确卸载后保留已卸载软件包的版本。
|
||||
|
||||
![snaps 目录下的文件][2]
|
||||
|
||||
或者,你可以在终端中使用:
|
||||
|
||||
```
|
||||
snap list --all
|
||||
```
|
||||
|
||||
![snap 列出全部][3]
|
||||
|
||||
对于保留的版本,默认值为 3。这意味着 Snap 会保留每个软件包的三个旧版本,包括活动版本。如果你对磁盘空间没有限制,这是可以的。
|
||||
|
||||
但是对于服务器和其他情况,这很容易遇到成本问题,它会消耗你的磁盘空间。
|
||||
|
||||
但是,你可以使用以下命令轻松修改计数。该值可以在 2 到 20 之间。
|
||||
|
||||
```
|
||||
sudo snap set system refresh.retain=2
|
||||
```
|
||||
|
||||
### 清理 Snap 版本
|
||||
|
||||
在 SuperUser 的一篇文章中,Canonical 的前工程经理 Popey [提供了一个简单的脚本][4],它可以清理旧版本的 Snaps 并保留最新版本。
|
||||
|
||||
这是我们将用来清理 Snap 的脚本。
|
||||
|
||||
```
|
||||
#!/bin/bash
|
||||
#Removes old revisions of snaps
|
||||
#CLOSE ALL SNAPS BEFORE RUNNING THIS
|
||||
set -eu
|
||||
LANG=en_US.UTF-8 snap list --all | awk '/disabled/{print $1, $3}' |
|
||||
while read snapname revision; do
|
||||
snap remove "$snapname" --revision="$revision"
|
||||
done
|
||||
```
|
||||
|
||||
将上面的脚本以 `.sh` 扩展名保存在一个目录中(例如 `clean_snap.sh`),赋予它可执行权限并运行。
|
||||
|
||||
```
|
||||
chmod +x clean_snap.sh
|
||||
```
|
||||
|
||||
当我运行脚本后,它减少了很多磁盘空间。该脚本还将显示要删除的包的名称。
|
||||
|
||||
![执行脚本][5]
|
||||
|
||||
![清理后的 Snap 大小][6]
|
||||
|
||||
### 结束语
|
||||
|
||||
对于 Snap 的设计效率如何,人们总是争论不休。许多人说,它的设计是坏的,是臃肿的,是消耗系统资源的。这种说法的某些部分是真实的,我不会否认它。如果实施和加强得当,整个沙盒应用的概念是很好的。但我相信,与 Snap 相比,Flatpak 工作做得更好。
|
||||
|
||||
也就是说,我希望这可以帮助你清理一些磁盘空间。尽管它只在 Ubuntu 中进行了测试,但它应该适用于所有支持 Snap 的 Linux 发行版。
|
||||
|
||||
此外,请查看我们关于 [如何清理 Ubuntu][7] 的指南以及其他步骤。
|
||||
|
||||
最后,如果你要清理 **Flatpak** 应用,请参阅 [这篇指南][8]。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://www.debugpoint.com/clean-up-snap/
|
||||
|
||||
作者:[Arindam][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[geekpi](https://github.com/geekpi)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://www.debugpoint.com/author/admin1/
|
||||
[b]: https://github.com/lkxed
|
||||
[1]: https://www.debugpoint.com/wp-content/uploads/2021/03/Snap-size-before-cleanup.jpg
|
||||
[2]: https://www.debugpoint.com/wp-content/uploads/2021/03/Files-under-snaps-directory.jpg
|
||||
[3]: https://www.debugpoint.com/wp-content/uploads/2021/03/snap-list-all.jpg
|
||||
[4]: https://superuser.com/a/1330590
|
||||
[5]: https://www.debugpoint.com/wp-content/uploads/2021/03/Executing-the-script.jpg
|
||||
[6]: https://www.debugpoint.com/wp-content/uploads/2021/03/Snaps-size-after-cleanup.jpg
|
||||
[7]: https://www.debugpoint.com/2018/07/4-simple-steps-clean-ubuntu-system-linux/
|
||||
[8]: https://www.debugpoint.com/clean-up-flatpak/
|
@ -0,0 +1,93 @@
|
||||
[#]: subject: "How to Check: Xorg or Wayland Display Server?"
|
||||
[#]: via: "https://www.debugpoint.com/check-wayland-or-xorg/"
|
||||
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: "geekpi"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-15216-1.html"
|
||||
|
||||
如何检查: 是 Xorg 还是 Wayland 显示服务器?
|
||||
======
|
||||
|
||||

|
||||
|
||||
> 以下是快速检查在运行 Xorg 还是 Wayland 显示服务器的方法。
|
||||
|
||||
随着时间的推移,现代 Wayland 显示服务器正在进入所有 Linux 发行版。尽管老旧的 Xorg 仍然能用并且会继续存在,但 Wayland 无疑在安全性和其他性能方面更好。
|
||||
|
||||
但是,Xorg 不会很快完全淘汰。可能永远不会。
|
||||
|
||||
如果你在运行任何 Linux 发行版,如何检查运行的是 Xorg 还是 Wayland?下面是方法。
|
||||
|
||||
### Wayland 或 Xorg:你在运行哪一个?
|
||||
|
||||
在你的 Linux 发行版(例如 Ubuntu、Fedora、Arch 等)中打开一个终端窗口(`CTRL+ALT+T`)。
|
||||
|
||||
然后输入以下命令并回车:
|
||||
|
||||
```
|
||||
echo $XDG_SESSION_TYPE
|
||||
```
|
||||
|
||||
命令输出会告诉你当前会话是 Wayland 还是 Xorg(X11)。
|
||||
|
||||
```
|
||||
[debugpoint@fedora ~]$ echo $XDG_SESSION_TYPEwayland
|
||||
```
|
||||
|
||||
![此命令可以为你提供有关 Xorg 或 Wayland 的详细信息][1]
|
||||
|
||||
这很简单。但是,还有其他方法。
|
||||
|
||||
### 其他方法
|
||||
|
||||
#### 使用设置
|
||||
|
||||
如果你需要图形方法,请打开你的 Linux 发行版的设置应用。在关于部分,你应该看到某个标签下中的 Wayland/X11。
|
||||
|
||||
例如,在 GNOME 设置中,你可以在 “<ruby>窗口子系统<rt>Windowing system</rt></ruby>” 下找到它,如下图所示:
|
||||
|
||||
![在 GNOME 设置中可以找到它][2]
|
||||
|
||||
#### 使用会话值
|
||||
|
||||
你还可以使用 [systemd][3] 登录管理器 `loginctl` 找到它。请记住,它仅适用于基于 systemd 的系统。
|
||||
|
||||
打开终端并运行以下命令。你可以看到会话 id 值。在此示例中为 `c2`:
|
||||
|
||||
```
|
||||
loginctl
|
||||
```
|
||||
|
||||
现在,将会话 ID 传递给以下命令以获取显示服务器类型。确保将 c2 更改为你的系统规格。
|
||||
|
||||
```
|
||||
loginctl show-session c2 -p Type
|
||||
```
|
||||
|
||||
![使用 loginctl 查找][4]
|
||||
|
||||
### 总结
|
||||
|
||||
这些是你可以确定在 Linux 系统中运行的是 Systemd 还是 Xorg 的一些方法。你还可以在 shell 脚本中使用上述命令来实现进一步的流程自动化。
|
||||
|
||||
祝好。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://www.debugpoint.com/check-wayland-or-xorg/
|
||||
|
||||
作者:[Arindam][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[geekpi](https://github.com/geekpi)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://www.debugpoint.com/author/admin1/
|
||||
[b]: https://github.com/lkxed
|
||||
[1]: https://www.debugpoint.com/wp-content/uploads/2022/10/This-command-can-give-you-details-about-Xorg-or-Wayland-1024x612.jpg
|
||||
[2]: https://www.debugpoint.com/wp-content/uploads/2022/10/In-GNOME-Settings-you-can-find-it.jpg
|
||||
[3]: https://www.debugpoint.com/tag/systemd/
|
||||
[4]: https://www.debugpoint.com/wp-content/uploads/2022/10/Using-loginctl-to-find-out.jpg
|
@ -0,0 +1,115 @@
|
||||
[#]: subject: "How to Upgrade to Ubuntu 22.10 From 22.04 LTS (Jammy to Kinetic)"
|
||||
[#]: via: "https://www.debugpoint.com/upgrade-ubuntu-22-04-22-10/"
|
||||
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: "robsean"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-15199-1.html"
|
||||
|
||||
如何从 Ubuntu 22.04 LTS 升级到 22.10
|
||||
======
|
||||
|
||||
> 这里是如何将你当前的 Ubuntu 22.04 LTS Jammy Jellyfish 升级到 Ubuntu 22.10 Kinetic Kudu 的步骤。
|
||||
|
||||
始终停留在长期支持的发布版本,这是金科玉律。因为,先前的 [Ubuntu 22.04 LTS][1] Jammy Jellyfish 将被支持到 2027 年 4 月。这是一段很长的时间。
|
||||
|
||||
此外,LTS 版本超级稳定。它们很少损坏并变得不稳定。因此,如果你在笔记本电脑/台式机电脑或服务器上安装使用 LTS 版本,保持使用它。
|
||||
|
||||
然而,如果你想要最新的内核、GNOME 43 和 Pipewire 之类的最新技术 – 你可能会想完成版本跳级,并升级到 [Ubuntu 22.10 Kinetic Kudu][2]。
|
||||
|
||||
这里是如何做的方法。
|
||||
|
||||
### 升级 Ubuntu 22.04 LTS 到 Ubuntu 22.10
|
||||
|
||||
**注意**:我希望你没有运行去年 10 月份发布的 Ubuntu 21.10 Impish Indri 。因为它已经不被支持。但是鉴于某些原因,你正在运行它,我建议你直接重新安装 22.10 。或者,先升级到 22.04 ,再升级到 22.10 。
|
||||
|
||||
#### 在你升级前
|
||||
|
||||
在你升级前,做一些内务整理。这是非常重要的。
|
||||
|
||||
- 备份你的 `/home`、/`downloads` 和其它的文件到 USB 驱动器或任意独立的分区,以防升级失败。
|
||||
- 如果你随着时间的流逝而添加了一些额外的 PPA ,确保将它们记录下来。虽然,在升级过程开始前,升级过程将禁用 PPA 。而在升级完成后,确保手动启用 PPA 。
|
||||
- 记录并禁用所有的 GNOME 扩展。如果开发人员没有按照 GNOME 版本进行更新,那么扩展在升级后将会损坏。
|
||||
- 家中常备一个现场 USB 磁盘。
|
||||
|
||||
#### 升级步骤
|
||||
|
||||
打开 “<ruby>软件包和更新<rt>Software & Update</rt></ruby>” 。
|
||||
|
||||
转到 “<ruby>更新<rt>Updates</rt></ruby>” 标签页。
|
||||
|
||||
转到 “<ruby>通知我新的 Ubuntu 版本<rt>Notify me of a new Ubuntu version</rt></ruby>”,选择并将其更改为 “<ruby>任意新的版本<rt>For any new version</rt></ruby>”。
|
||||
|
||||
这将告诉软件包管理器来查找 Ubuntu 22.10 发布版本的详细信息。
|
||||
|
||||
![Make sure to change the option for new Ubuntu 22.10 release][3]
|
||||
|
||||
打开一个终端,并运行下面的命令:
|
||||
|
||||
```
|
||||
sudo apt update
|
||||
sudo apt upgrade
|
||||
```
|
||||
|
||||
或者,你也可以打开软件包更新程序。安装所有的准备就绪的软件包。
|
||||
|
||||
在两个命令完成后,打开软件包更新。你将会看到一个升级到 Ubuntu 22.10 的提示(如下图所示)。
|
||||
|
||||
![New version update prompt from the GUI method][4]
|
||||
|
||||
现在,单击 “<ruby>升级<rt>Upgrade</rt></ruby>” 按钮,并按照屏幕上的说明进行操作。升级过程需要一些时间,因此,要耐心等待,直至升级完成。确保在整个升级过程中有稳定的互联网链接。
|
||||
|
||||
如果你尚未获得更新,请等待一、两天后再次尝试。
|
||||
|
||||
如果你没有看到上述提示,手动重新启动一次系统。并再次添加尝试。
|
||||
|
||||
#### 通过终端
|
||||
|
||||
在终端中通过 nano 文件编辑器打开下面的文件。
|
||||
|
||||
```
|
||||
nano /etc/update-manager/release-upgrades
|
||||
```
|
||||
|
||||
将 `Prompt=LTS` 更改为 `Prompt=normal` 。注意:如果你已经如上所述将更新标签页更改为 “<ruby>任意新的版本<rt>For any new version</rt></ruby>” ,那么这个文件应该已经更新了。但是,要验证它一次。
|
||||
|
||||
![Change the release upgrade file][5]
|
||||
|
||||
分别按下组合键 `CTRL+O` 和组合键 `CTRL+X` 来保存和退出。
|
||||
|
||||
最后,你也可以运行下面的命令来从终端中强制升级过程。
|
||||
|
||||
```
|
||||
sudo do-release-upgrade -c
|
||||
```
|
||||
|
||||
![New version update prompt from the terminal method][6]
|
||||
|
||||
升级过程需要花费一些时间(最少半个小时,上不封顶),这主要取决于你的互联网连接和硬件。直至等到其完成。在完成后,重新启动并享受 Ubuntu 22.10 Kinetic Kudu.
|
||||
|
||||
![Upgrade is in progress][7]
|
||||
|
||||
在升级过程进行时,看看我们 [不久前发布的关于 Ubuntu 22.10][8] 的精彩文章。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://www.debugpoint.com/upgrade-ubuntu-22-04-22-10/
|
||||
|
||||
作者:[Arindam][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[robsean](https://github.com/robsean)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://www.debugpoint.com/author/admin1/
|
||||
[b]: https://github.com/lkxed
|
||||
[1]: https://www.debugpoint.com/ubuntu-22-04-review/
|
||||
[2]: https://www.debugpoint.com/ubuntu-22-10/
|
||||
[3]: https://www.debugpoint.com/wp-content/uploads/2022/10/Make-sure-to-change-the-option-for-new-Ubuntu-22.10-release.jpg
|
||||
[4]: https://www.debugpoint.com/wp-content/uploads/2022/10/New-version-update-prompt-from-the-GUI-method2.jpg
|
||||
[5]: https://www.debugpoint.com/wp-content/uploads/2022/10/Change-the-release-upgrade-file.jpg
|
||||
[6]: https://www.debugpoint.com/wp-content/uploads/2022/10/New-version-update-prompt-from-the-terminal-method.jpg
|
||||
[7]: https://www.debugpoint.com/wp-content/uploads/2022/10/Upgrade-is-in-progress.jpg
|
||||
[8]: https://www.debugpoint.com/tag/ubuntu-22-10
|
@ -0,0 +1,88 @@
|
||||
[#]: subject: "Use open source commands in Powershell"
|
||||
[#]: via: "https://opensource.com/article/22/10/set-path-powershell"
|
||||
[#]: author: "Alan Smithee https://opensource.com/users/alansmithee"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: "qfzy1233"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-15200-1.html"
|
||||
|
||||
设置路径在 Powershell 中使用开源命令
|
||||
======
|
||||
|
||||

|
||||
|
||||
> 在 Windows 上设置你的路径,这样你就可以使用开源的命令。
|
||||
|
||||
当你在操作系统上启动应用程序时,操作系统需要使用某些代码库和实用程序来运行该应用程序。你的操作系统知道如何找到这些库和实用程序,因为它有一个 _系统路径_,这是一个通往许多应用程序需要的共同共享数据的地图。所有操作系统都有这一点,但用户通常不会意识到这一点,因为他们通常不需要在意它。然而,当你需要编程或使用特殊的网络实用程序或命令时,你可能需要关心你自己的 `PATH` 变量配置。
|
||||
|
||||
`PATH` 变量使你可以将命令保存到一致的位置,并使用命令提示符或更强大(而开源的)[Powershell][1] 从系统上的任何位置调用它们。
|
||||
|
||||
例如,假设你想安装开源应用程序 `pscp.exe`,它是 Windows 上著名的 PuTTY OpenSSH 客户端的命令行界面。你可以将它下载到你的硬盘,但是你的命令行如何知道它的存在呢?其实一开始,它并不知道:
|
||||
|
||||
```
|
||||
PS> pscp
|
||||
pscp: 命令 “pscp” 不能被识别为 cmdlet、脚本文件或可操作程序的名称。
|
||||
检查名称的拼写,或者如果包含了路径,则检查路径是否正确,然后再试一次。
|
||||
```
|
||||
|
||||
如果你正在使用一个开源命令行,例如 Powershell 或 [Cmder][2],那么你将得到一个有用的错误提示,提示这可能是你的路径有问题(或缺少路径)。下面是解决这个问题的方法。
|
||||
|
||||
### 设置 PATH
|
||||
|
||||
首先,在桌面上创建一个名为 `App` 的文件夹。
|
||||
|
||||
接下来,右键单击屏幕左下角的 Windows 菜单,然后选择 “<ruby>系统<rt>System</rt></ruby>”。
|
||||
|
||||
![Image of the Windows menu system.][3]
|
||||
|
||||
在弹出的 “<ruby>系统<rt>System</rt></ruby>” 窗口中,单击窗口左侧的 “<ruby>高级系统设置<rt>Advanced system settings</rt></ruby>” 链接。
|
||||
|
||||
在出现的 “<ruby>系统属性<rt>System properties</rt></ruby>” 窗口中,单击窗口底部的 “<ruby>环境变量<rt>Environment variables</rt></ruby>” 按钮。
|
||||
|
||||
![Image Windows system enviroment variables.][4]
|
||||
|
||||
在 “<ruby>环境变量<rt>Environment variables</rt></ruby>” 窗口中,单击 “<ruby>用户变量<rt>User variables</rt></ruby>” 面板下的 “<ruby>新建<rt>New</rt></ruby>” 按钮。
|
||||
|
||||
![Image of new Windows enviroment variables.][5]
|
||||
|
||||
在弹出的对话框中,为 “<ruby>变量名<rt>Variable name</rt></ruby>” 字段输入 `PATH`,为 “<ruby>变量值<rt>Variable value</rt></ruby>” 字段输入 `%USERPROFILE\Desktop\App` 。单击 “<ruby>确定<rt>OK</rt></ruby>” 按钮保存更改。
|
||||
|
||||
![Image of Windows path set.][6]
|
||||
|
||||
在 `Desktop/Apps` 中放置你想从命令提示符中访问的命令和应用程序,Powershell、Cmder 甚至 Cmd 都能找到它们。
|
||||
|
||||
|
||||
```
|
||||
PS> pscp –version
|
||||
pscp: Release 0.XY
|
||||
Build platform: 64-bit x86 Windows
|
||||
PS>
|
||||
```
|
||||
|
||||
### 自动设置路径
|
||||
|
||||
许多应用程序会在安装过程中自动添加到系统路径中。然而,并不是所有的程序都如此,要么是因为你在安装过程中遗漏了一个复选框,要么是因为应用程序开发人员希望你自己添加它。当自动路径失败时,你现在知道如何自己设置路径。
|
||||
|
||||
*(图像来自:Alan Smithee, CC BY-SA 4.0)*
|
||||
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/22/10/set-path-powershell
|
||||
|
||||
作者:[Alan Smithee][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[qfzy1222](https://github.com/qfzy1233)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://opensource.com/users/alansmithee
|
||||
[b]: https://github.com/lkxed
|
||||
[1]: https://opensource.com/article/18/2/powershell-people
|
||||
[2]: http://cmder.app/
|
||||
[3]: https://opensource.com/sites/default/files/2022-10/windows-menu-system.png
|
||||
[4]: https://opensource.com/sites/default/files/2022-10/windows-system-environment-variables.png
|
||||
[5]: https://opensource.com/sites/default/files/2022-10/windows-environment-variables-new.png
|
||||
[6]: https://opensource.com/sites/default/files/2022-10/windows-path-set.png
|
@ -0,0 +1,112 @@
|
||||
[#]: subject: "How to Recover Arch Linux Install via chroot"
|
||||
[#]: via: "https://www.debugpoint.com/recover-arch-linux/"
|
||||
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: "robsean"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-15202-1.html"
|
||||
|
||||
如何通过 chroot 恢复 Arch Linux 安装
|
||||
======
|
||||
|
||||

|
||||
|
||||
> 这篇速成指南诠释了一些步骤,它对于恢复一个 Arch Linux 安装很有帮助。
|
||||
|
||||
作为一个滚动发布版本,Arch Linux 有时会崩溃。那不是你自身的问题,而是因为数百个其它的原因,例如一个新内核与你的硬件或软件的兼容性。但是,即使如此,Arch Linux 仍然是比较优秀的,并且提供最新的软件包和应用程序。
|
||||
|
||||
但是,有些时候,它会给你带来麻烦,最后你只会看到一个闪烁的光标。
|
||||
|
||||
因此,在这种情况下,在你放弃希望前,你可能希望尝试恢复系统的安装以及数据,而不是重新格式化或重新安装。这篇指南在这些方面概述了一些步骤。
|
||||
|
||||
### 恢复 Arch Linux 安装
|
||||
|
||||
第一步是创建一个可启动的 Arch Linux 的<ruby>现场<rt>Live</rt></ruby> USB 。从下面的链接中下载 ISO 镜像文件,并创建一个可启动的 ISO 的启动盘。你可以查看 [这篇](https://linux.cn/article-15020-1.html) 关于如何使用 Etcher 创建可启动的 ISO 的启动盘的指南。记住,这一步骤需要在另一个工作稳定的系统上完成,很明显,这是因为你当前系统是不可用的。
|
||||
|
||||
> **[下载 arch linux][1]**
|
||||
|
||||
你需要知道在 **你的 Arch Linux 安装在哪个分区上**。这是关键的一步。如果你不知道,你可以使用 GParted 来找出来。或者在你的 Grub 菜单中查看,或者也可以运行下面的命令来找出来。这将列出你所有的磁盘分区、大小和标签。
|
||||
|
||||
```
|
||||
sudo lsblk -o name,mountpoint,label,size,uuid
|
||||
```
|
||||
|
||||
在完成后,插入 USB 设备,并从中启动。你应该会在现场 USB 启动后看到 Arch Linux 提示符。
|
||||
|
||||
现在,使用下面的命令挂载 Arch Linux 分区。将 `/dev/sda3` 更改为你实际对应的分区。
|
||||
|
||||
```
|
||||
mount /dev/sda3 /mnt
|
||||
arch-chroot /mnt
|
||||
```
|
||||
|
||||
`arch-chroot` 命令将在终端中挂载你的 Arch Linux 分区,然后,使用你的 Arch 用户名和密码来登录系统。现在,取决于你在这个阶段的需要,你可能有下面的一些选项。
|
||||
|
||||
- 你可以前往 `/home` 文件夹来备份你的数据。为防止排错手段不能解决问题。你可以复制这些文件到一块外部的 USB 磁盘或其它的分区。
|
||||
- 检查日志文件,尤其是 pacman 日志,因为升级一些软件包可能会导致系统不稳定工作,例如,图形驱动程序或其它一些驱动程序。依据日志的记载,如果你有需要的话,你可以降级一些具体指定的软件包。
|
||||
|
||||
你可以使用下面的命令来查看 pacman 日志文件的最新的 200 行日志,来找出一些引起失败的项或依赖项的缺失。
|
||||
|
||||
```
|
||||
tail -n 200 /var/log/pacman.log | less
|
||||
```
|
||||
|
||||
上面的命令给出 `pacman.log` 文件的末尾处的 200 行来用于查对。现在,仔细检查自你上次成功启动以来更新了哪些软件包。
|
||||
|
||||
在某个地方记录下软件包的名称和版本。你可以尝试逐个降级软件包,或者,如果你认为是某个特定的软件包造成的问题的话,你可以使用 `pacman` 命令的 `-U` 开关选项来降级它。
|
||||
|
||||
```
|
||||
pacman -U <package name>
|
||||
```
|
||||
|
||||
在降级后(如果有一些软件包进行降级的话),你可以运行下面的命令来启动你的 Arch 系统。
|
||||
|
||||
```
|
||||
exec /sbin/init
|
||||
```
|
||||
|
||||
检查你的显示管理器的状态,并检查其是否有一些错误。有时,显示管理器会产生不能与 <ruby>X 服务器<rt>X Server</rt></ruby> 通信的问题。例如,如果你正在使用 Lightdm ,那么你可以通过下面的命令来检查它的状态。
|
||||
|
||||
```
|
||||
systemctl status lightdm
|
||||
```
|
||||
|
||||
或者,你可能希望通过下面的命令来启动它并检查错误。
|
||||
|
||||
```
|
||||
lightdm --test-mode --debug
|
||||
```
|
||||
|
||||
这里是一个 Lightdm 故障的示例,它导致了 Arch 系统不稳定工作。
|
||||
|
||||
![lightdm - test mode][2]
|
||||
|
||||
或者,使用 `startx` 来启动 X 服务器进行检查。
|
||||
|
||||
根据我的经验,如果你在上面的命令中看到这些错误,尝试安装另外一个显示管理器(例如 sddm)并启动它可以消除错误。
|
||||
|
||||
- 根据你的系统的实际状态来尝试上面的步骤并解决问题。针对特定的显示管理器 Lightdm 的错误,我们有一份 [指南][3],你可能会想查看它。
|
||||
- 如果你正在使用 sddm ,那么,试试 [这些排错步骤][4] 看看是否工作。
|
||||
|
||||
### 结语
|
||||
|
||||
每个系统环境都是不同的。上面的步骤不一定适合你。但是,它值得一试,根据我的经验,它是可行的。如果它可行,那么恭喜你。否则,在下面的评论区让我知晓你是如何进行的。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://www.debugpoint.com/recover-arch-linux/
|
||||
|
||||
作者:[Arindam][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[robsean](https://github.com/robsean)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://www.debugpoint.com/author/admin1/
|
||||
[b]: https://github.com/lkxed
|
||||
[1]: https://archlinux.org/download/
|
||||
[2]: https://www.debugpoint.com/wp-content/uploads/2021/03/lightdm-test-mode.jpg
|
||||
[3]: https://www.debugpoint.com/2021/03/failed-to-start-lightdm/
|
||||
[4]: https://wiki.archlinux.org/title/SDDM#Troubleshooting
|
@ -0,0 +1,121 @@
|
||||
[#]: subject: "How to Check CPU and HDD Temperature in Ubuntu and Other Linux"
|
||||
[#]: via: "https://www.debugpoint.com/cpu-hdd-temperature-ubuntu/"
|
||||
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: "geekpi"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-15223-1.html"
|
||||
|
||||
如何在 Ubuntu 和其他 Linux 中检查 CPU 和硬盘温度
|
||||
======
|
||||
|
||||

|
||||
|
||||
> 想知道如何在台式机或笔记本电脑上检查 Ubuntu 和其他 Linux 中的 CPU 和硬盘温度?这是一个快速指南。
|
||||
|
||||
如果你是普通用户,那么实际上不需要检查 CPU 或 HDD 温度。但是,如果你使用的是非常旧的硬件或轻薄型的硬件,你可能会遇到过热问题。因为这些薄的硬件内部紧密耦合在一起,无论做了多少传热机制,它都会升温。因此,必须监控硬件的温度。然而,现代 Linux 发行版能够通过软件传感器很好地处理过热情况。
|
||||
|
||||
### 在 Ubuntu 上监控 CPU 和硬盘温度的步骤
|
||||
|
||||
#### 使用终端
|
||||
|
||||
我们将使用几个包来实现相同的目的。在基于 Ubuntu 的系统中打开一个终端并安装以下内容。
|
||||
|
||||
```
|
||||
sudo apt install hddtemp
|
||||
sudo apt install lm-sensors
|
||||
```
|
||||
|
||||
[hddtemp][1] 程序为你提供硬盘和 SSD (根据我的测试)的温度。 [lm-sensors][2] 包为你提供来自 CPU 和其他通过 PCI 端口访问的传感器的温度详细信息。
|
||||
|
||||
安装后,从终端运行以下命令。你需要知道你的磁盘标识符,例如 `/dev/sda` 或 `/dev/sdb` 等。
|
||||
|
||||
要找出磁盘标识符,你可以使用 `fdisk`。
|
||||
|
||||
```
|
||||
sudo fdisk -l
|
||||
```
|
||||
|
||||
然后运行以下命令检查 HDD 或 SSD 温度。
|
||||
|
||||
```
|
||||
sudo hddtemp
|
||||
```
|
||||
|
||||
![HDD or SSD Temperature from terminal][3]
|
||||
|
||||
*来自终端的 HDD 或 SSD 温度*
|
||||
|
||||
检查 CPU 温度和其他信息需要额外的步骤。
|
||||
|
||||
首先,运行以下命令,以便传感器程序可以检测到系统中的传感器。
|
||||
|
||||
```
|
||||
sudo sensors-detect
|
||||
```
|
||||
|
||||
上面的命令可能会问你一些是/否的问题。继续按回车选择默认选项。
|
||||
|
||||
完成后,运行以下命令查看 CPU 和其他接口温度。
|
||||
|
||||
```
|
||||
sensors
|
||||
```
|
||||
|
||||
![using sensors][4]
|
||||
|
||||
*使用传感器*
|
||||
|
||||
#### 使用 GUI 工具
|
||||
|
||||
如果你更喜欢能完成上述所有操作的漂亮 GUI,你可以安装 [psensor][5]。该程序适用于 Linux 系统,例如 Ubuntu、Fedora、[Arch][6] 和其他变体。它为你提供了漂亮的图形和表格视图:
|
||||
|
||||
Ubuntu 及其衍生版:
|
||||
|
||||
```
|
||||
sudo apt install psensor
|
||||
```
|
||||
|
||||
Fedora 和基于 RPM 的衍生版:
|
||||
|
||||
```
|
||||
sudo dnf install psensor
|
||||
```
|
||||
|
||||
Arch、Manjaro 和类似的衍生版:
|
||||
|
||||
```
|
||||
pacman -S psensor
|
||||
```
|
||||
|
||||
安装后,从终端运行 `psensor` 或从应用菜单启动它。
|
||||
|
||||
正如你在下面的截图中所见,它通过漂亮的图表让你可以很好地了解 CPU、GPU 和 HDD 的所有重要温度。使用它的首选项,你可以根据需要对其进行调整。这个轻量级的程序在很多情况下都会很有帮助。
|
||||
|
||||
![psensor running][7]
|
||||
|
||||
*psensor 运行*
|
||||
|
||||
因此,这些是你可以在 Ubuntu 和其他 Linux 系统中监控 CPU、GPU 或 HDD 温度的一些方法。如果你知道其他方法,请通过下面的评论栏告诉我。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://www.debugpoint.com/cpu-hdd-temperature-ubuntu/
|
||||
|
||||
作者:[Arindam][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[geekpi](https://github.com/geekpi)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://www.debugpoint.com/author/admin1/
|
||||
[b]: https://github.com/lkxed
|
||||
[1]: https://wiki.archlinux.org/title/Hddtemp
|
||||
[2]: https://github.com/lm-sensors/lm-sensors
|
||||
[3]: https://www.debugpoint.com/wp-content/uploads/2021/09/HDD-or-SSD-Temperature-from-terminal.png
|
||||
[4]: https://www.debugpoint.com/wp-content/uploads/2021/09/psensor.png
|
||||
[5]: https://wpitchoune.net/psensor/
|
||||
[6]: https://www.debugpoint.com/tag/arch-linux
|
||||
[7]: https://www.debugpoint.com/wp-content/uploads/2021/09/psensor-running-1024x465.png
|
@ -0,0 +1,68 @@
|
||||
[#]: subject: "How to display commits created on a specific day with the git log command"
|
||||
[#]: via: "https://opensource.com/article/22/10/git-log-command"
|
||||
[#]: author: "Agil Antony https://opensource.com/users/agantony"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: "chai001125"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-15220-1.html"
|
||||
|
||||
用 git log 命令显示在特定日期的提交记录
|
||||
======
|
||||
|
||||

|
||||
|
||||
> `git log` 命令是 Git 中一个很重要的查看提交记录的工具,它也是人们喜欢使用 Git 的原因之一。
|
||||
|
||||
`git log` 命令能够让你了解到更多关于贡献者 <ruby>提交<rt>commit</rt></ruby> 的记录。使用 `git log` 的一种方式是按日期查看提交记录 。要查看**在指定日期或日期范围内**创建的 Git 存储库中的提交记录,请使用带有选项 `--since` 或 `--until` 或者同时使用以上两个选项的 `git log` 命令。
|
||||
|
||||
首先,进入你要查看的分支(例如,`main` 分支):
|
||||
|
||||
```
|
||||
$ git checkout main
|
||||
```
|
||||
|
||||
接下来,你可以使用以下命令,来显示当前日期(即今天)的提交记录:
|
||||
|
||||
```
|
||||
$ git log --oneline --since="yesterday"
|
||||
```
|
||||
|
||||
仅显示某一特定用户(例如,用户 `Agil`)在今天的提交记录:
|
||||
|
||||
```
|
||||
$ git log --oneline --since="yesterday" --author="Agil"
|
||||
```
|
||||
|
||||
还可以显示在某一日期范围内的提交记录。使用以下命令,显示在任意两个日期之间(例如,2022 年 4 月 22 日至 2022 年 4 月 24 日)的提交记录:
|
||||
|
||||
```
|
||||
$ git log --oneline --since="2022-04-22" --until="2022-04-24"
|
||||
```
|
||||
|
||||
在上面这个例子中,会输出 2022 年 4 月 22 日至 2022 年 4 月 24 日期间,不包括 2022 年 4 月 22 日的所有提交记录。如果你想要包括 2022 年 4 月 22 日的提交记录,请将命令中的 `2022-04-22` 替换为 `2022-04-21`。
|
||||
|
||||
运行以下命令,能够显示某一特定用户(例如,用户 `Agil`)在两个指定的日期之间的提交记录:
|
||||
|
||||
```
|
||||
$ git log --oneline --since="2022-04-22" --until="2022-04-24" --author="Agil"
|
||||
```
|
||||
|
||||
### 总结
|
||||
|
||||
Git 有很多优点,其中一个优点就是 Git 让你能够收集你项目的相关数据。`git log` 命令是一个重要的查看提交记录的工具,也是人们喜欢使用 Git 的原因之一!
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/22/10/git-log-command
|
||||
|
||||
作者:[Agil Antony][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[chai001125](https://github.com/chai001125)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://opensource.com/users/agantony
|
||||
[b]: https://github.com/lkxed
|
||||
|
@ -0,0 +1,144 @@
|
||||
[#]: subject: "Transfer files and folders from Windows to Linux with PSCP"
|
||||
[#]: via: "https://opensource.com/article/22/10/transfer-files-windows-linux-pscp"
|
||||
[#]: author: "Paul https://opensource.com/users/plaubscher"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: "geekpi"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-15234-1.html"
|
||||
|
||||
使用 PSCP 将文件和文件夹从 Windows 传输到 Linux
|
||||
======
|
||||
|
||||

|
||||
|
||||
> 开源的 PSCP 程序可以轻松地在 Windows 和 Linux 计算机之间传输文件和文件夹。
|
||||
|
||||
你是否正在寻找一种将文件从 Windows 计算机快速传输到 Linux 计算机并再次传输回来的方法?开源的 PSCP 程序可以轻松传输文件和文件夹,当然它是开源的。
|
||||
|
||||
### 在 Windows 中设置 PATH
|
||||
|
||||
了解如何在 Windows 中设置命令路径可以更轻松地使用 PSCP 等方便的程序。如果你不熟悉该过程,请阅读 [如何在 Windows 上设置 PATH][1]。
|
||||
|
||||
### 使用 PSCP
|
||||
|
||||
PSCP(PuTTY 安全复制协议)是一个命令行工具,用于将文件和文件夹从 Windows 计算机传输到 Linux 计算机。
|
||||
|
||||
- 从 [网站][2] 下载 `pscp.exe`。
|
||||
- 将 `pscp.exe` 移动到 `PATH` 中的文件夹(例如,如果你按照 [Opensource.com][3] 上的 PATH 教程进行操作,则为 `Desktop\App`)。如果你没有设置 `PATH` 变量,你也可以将 `pscp.exe` 移动到保存要传输的文件的文件夹中。
|
||||
- 使用 Windows 任务栏中的搜索栏在 Windows 计算机上打开 Powershell(在搜索栏中输入 `powershell`。)
|
||||
- 输入 `pscp -version` 以确认你的计算机可以找到该命令。
|
||||
|
||||
### IP 地址
|
||||
|
||||
在进行传输之前,你必须知道目标计算机的 IP 地址或完全限定域名。假设它是同一网络上的计算机,并且你没有运行 DNS 服务器来解析计算机名称,你可以在 Linux 机器上使用 `ip` 命令找到目标 IP 地址:
|
||||
|
||||
```
|
||||
[linux]$ ip addr show |grep 'inet '
|
||||
inet 127.0.0.1/8 scope host lo
|
||||
inet 192.168.1.23/24 brd 10.0.1.255 scope global noprefixroute eth0
|
||||
```
|
||||
|
||||
在所有情况下,127.0.0.1 都是计算机仅用于与自身通信的环回地址,因此在此示例中,正确的地址是 192.168.1.23。在你的系统上,IP 地址可能不同。如果你不确定哪个是哪个,你可以连续尝试每个,直到找到正确的(然后在某处写下来!)
|
||||
|
||||
或者,你可以查看路由器的设置,其中列出了通过 DHCP 分配的所有地址。
|
||||
|
||||
### 防火墙和服务器
|
||||
|
||||
`pscp` 命令使用 OpenSSH 协议,因此你的 Linux 计算机必须运行 OpenSSH 服务器软件,并且防火墙必须允许 SSH 流量。
|
||||
|
||||
如果你不确定你的 Linux 机器是否正在运行 SSH,请在 Linux 机器上运行以下命令:
|
||||
|
||||
```
|
||||
[linux]$ sudo systemctl enable --now sshd
|
||||
```
|
||||
|
||||
要确保你的防火墙允许 SSH 流量,请运行以下命令:
|
||||
|
||||
```
|
||||
[linux]$ sudo firewall-cmd --add-servicessh --permanent
|
||||
```
|
||||
|
||||
有关 Linux 上的防火墙的更多信息,请阅读 [使用防火墙使 Linux 更强大][4]。
|
||||
|
||||
### 传输文件
|
||||
|
||||
在这个例子中,我有一个名为 `pscp-test.txt` 的文件,我想将它从我的 Windows 计算机上的 `C:\Users\paul\Documents` 传输到我的目标 Linux 计算机主目录 `/home/paul`。
|
||||
|
||||
现在你已经有了 `pscp` 命令和目标地址,你可以传输测试文件 `pscp-test.txt`。打开 Powershell 并使用 `dir` 命令切换到示例文件所在的 `Documents` 文件夹:
|
||||
|
||||
```
|
||||
PS> dir %USERPROFILE%\Documents\
|
||||
```
|
||||
|
||||
现在执行传输:
|
||||
|
||||
```
|
||||
PS> pscp pscp-test.txt paul@192.168.1.23:/home/paul
|
||||
| Password:
|
||||
End of keyboard-interactive prompts from server
|
||||
pscp-test.txt | 0 kb | 0.0 kB/s | ETA: 00:00:00 | 100%
|
||||
```
|
||||
|
||||
这是语法,逐字逐句来:
|
||||
|
||||
- `pscp`:用于传输文件的命令。
|
||||
- `pscp-test.txt` 是你要从 Windows 传输的文件的名称。
|
||||
- `paul@192.168.1.23` 是我在 Linux 计算机上的用户名,以及 Linux 计算机的 IP 地址。你必须将其替换为你自己的用户和目的地信息。请注意,`pscp` 需要目标计算机上的目标路径,而 IP 地址末尾的 `:/home/paul` 指定我希望将文件复制到我的主文件夹。
|
||||
|
||||
对 Linux 计算机进行身份验证后,`pscp-test.txt` 文件将传输到 Linux 计算机。
|
||||
|
||||
### 验证已传输
|
||||
|
||||
在你的 Linux 计算机上,打开终端并使用 `ls` 命令验证文件 `pscp-test.txt` 是否出现在你的主目录中。
|
||||
|
||||
```
|
||||
[linux]$ ls
|
||||
Documents
|
||||
Downloads
|
||||
Music
|
||||
Pictures
|
||||
pscp-test.txt
|
||||
```
|
||||
|
||||
### 从 Linux 系统复制文件
|
||||
|
||||
你不仅限于将文件复制到 Linux 系统。使用 `pscp`,你还可以将文件从 Linux 复制到 Windows。语法是一样的,只是反过来:
|
||||
|
||||
```
|
||||
PS> pscp paul@192.168.1.23:/home/paul/pscp-test.txt %USERPROFILE%\Documents\pscp-win.txt
|
||||
```
|
||||
|
||||
这是语法:
|
||||
|
||||
- `pscp`:用于传输文件的命令。
|
||||
- `paul@192.168.1.23:/home/paul/pscp-test.txt` 是我在 Linux 计算机上的用户名、Linux 计算机的 IP 地址,以及我要复制的文件的路径。
|
||||
- `%USERPROFILE%\Documents` 是我的 Windows 计算机上我要保存文件的位置。 请注意,在将文件复制回我的 Windows 计算机时,我可以给它一个新名称,例如 `pscp-win.txt`,以区别于原始文件。 当然,你不必重命名文件,但对于本演示来说,它是一个有用的快捷方式。
|
||||
|
||||
打开文件管理器以验证 `pscp-win.txt` 文件是否已从 Linux 计算机复制到 Windows `C:\Users\paul\Documents` 下。
|
||||
|
||||
![Image of a file manager.][5]
|
||||
|
||||
### 远程复制
|
||||
|
||||
借助开源 `pscp` 命令的强大功能,你可以访问家中的任何计算机、拥有帐户的服务器,甚至是移动设备和 [边缘设备][6]。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/22/10/transfer-files-windows-linux-pscp
|
||||
|
||||
作者:[Paul][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[geekpi](https://github.com/geekpi)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://opensource.com/users/plaubscher
|
||||
[b]: https://github.com/lkxed
|
||||
[1]: https://opensource.com/article/22/10/set-path-powershell
|
||||
[2]: https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
|
||||
[3]: http://Opensource.com
|
||||
[4]: https://opensource.com/article/19/7/make-linux-stronger-firewalls
|
||||
[5]: https://opensource.com/sites/default/files/2022-10/Filemanager.pscp_.png
|
||||
[6]: https://opensource.com/tags/edge-computing
|
@ -0,0 +1,142 @@
|
||||
[#]: subject: "How to Install Python 3.11 in Ubuntu and Other Related Linux"
|
||||
[#]: via: "https://www.debugpoint.com/install-python-3-11-ubuntu/"
|
||||
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: "wxy"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-15230-1.html"
|
||||
|
||||
如何在 Ubuntu 等 Linux 中安装 Python 3.11
|
||||
======
|
||||
|
||||
> 打算为你的项目开发工作安装 Python 3.11?下面是如何在 Ubuntu 等发行版中安装 Python 3.11 的方法。
|
||||
|
||||
![][1]
|
||||
|
||||
Python 3.11 于 2022 年 10 月 25 日发布,并声称比之前的 [Python 3.10][2] 版本快 10% - 60%。
|
||||
|
||||
一如既往,3.11 中的功能和改进列表明显较多。下面是一个简介:
|
||||
|
||||
- 错误回溯更明确,可以指出导致错误的确切语句。
|
||||
- 引入异常组和新的 except* 语法。
|
||||
- 你可以在基础表达式中添加自定义文本,以便在你的代码中更好地处理错误。
|
||||
- 引入 Variadic 泛型,允许在 Python 数值库(如 NumPy)中使用类似数组的结构。
|
||||
- 字典类型 TypedDict 得到了改进,现在你可以指定个别字典项目是必须的还是可选的。
|
||||
- 引入了 Self 注解,允许类返回它们自己的类型实例。
|
||||
|
||||
还有很多,你可以在官方的 [3.11 亮点页面][3] 上详细了解。
|
||||
|
||||
### Linux 发行版中的当前 Python 版本
|
||||
|
||||
[Ubuntu 22.04 LTS][4] 带有 Python 3.10,而最近发布的 [Ubuntu 22.10 Kinetic Kudu][5] 也是同样的版本。然而, Kinetick Kudu 可能会在几周内采用 3.11。
|
||||
|
||||
另外,[Fedora 37][6] 已经有了 Python 3.11 RC2,并将提供该版本。
|
||||
|
||||
所以,如果你正在运行 Ubuntu 22.04 LTS、[Linux Mint 21][7] 或任何基于 Ubuntu-LTS 的发行版,这里是你如何通过 PPA 安装 Python 3.11 的方法。
|
||||
|
||||
**注意**:谨慎地使用这个方法。确保你知道你在做什么,因为替换 Linux 发行版的基础 Python 版本可能会导致系统不稳定。许多默认的应用程序和软件包都依赖于 3.10 版本。
|
||||
|
||||
### 如何在 Ubuntu 和相关发行版中安装 Python 3.11
|
||||
|
||||
打开终端提示,添加以下 PPA:
|
||||
|
||||
```
|
||||
sudo add-apt-repository ppa:deadsnakes/ppa
|
||||
```
|
||||
|
||||
使用下面的命令刷新缓存:
|
||||
|
||||
```
|
||||
sudo apt update
|
||||
```
|
||||
|
||||
并使用下面的命令安装 Python 3.11:
|
||||
|
||||
```
|
||||
sudo apt install python3.11
|
||||
```
|
||||
|
||||
![在 Ubuntu 22.04 LTS 中安装 Python 3.11][8]
|
||||
|
||||
### 设置默认的 Python 版本
|
||||
|
||||
理论上,你可以在 Linux 发行版中安装多个版本的 Python,但只能默认一个版本。将 Python 3.11 设置为默认版本需要一些额外的步骤。请跟我做。
|
||||
|
||||
然而,在这之前,请确保你知道哪些应用程序依赖于 Python 3.10。你可以使用 `apt-cache rdepends` 命令轻松地找到它,如下所示:
|
||||
|
||||
```
|
||||
debugpoint@debugpoint-22-04:~$ apt-cache rdepends python3.10
|
||||
python3.10
|
||||
Reverse Depends:
|
||||
python3.10-dbg
|
||||
python3.10-venv
|
||||
python3.10-full
|
||||
libpython3.10-testsuite
|
||||
idle-python3.10
|
||||
idle-python3.10
|
||||
python3.10-minimal
|
||||
python3.10-doc
|
||||
python3.10-dev
|
||||
python3
|
||||
[截断]
|
||||
python3
|
||||
python3-uno
|
||||
python3-all
|
||||
gedit
|
||||
```
|
||||
|
||||
#### 使用 Python 3.11 作为默认的 Python3
|
||||
|
||||
首先,从终端使用以下命令检查当前的默认版本:
|
||||
|
||||
```
|
||||
python3 --version
|
||||
```
|
||||
|
||||
使用 `update-alternatives` 来创建 `python3` 的符号链接:
|
||||
|
||||
```
|
||||
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.10 1
|
||||
```
|
||||
|
||||
```
|
||||
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.11 2
|
||||
```
|
||||
|
||||
并通过命令选择哪一个作为 Python3 使用:
|
||||
|
||||
```
|
||||
sudo update-alternatives --config python3
|
||||
```
|
||||
|
||||
![设置默认的 Python 版本为 3.11][9]
|
||||
|
||||
现在你可以开始在你当前的 Ubuntu 版本中使用最新的 Python 来进行工作/学习了。你可以使用上述命令切换到库存版本,并随时改变版本。
|
||||
|
||||
如果你使用上述安装方法切换到 3.11,那么请确保你检查所有必要的应用程序,看它们是否工作正常。
|
||||
|
||||
最后,如果你遇到问题,请在评论区告诉我。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://www.debugpoint.com/install-python-3-11-ubuntu/
|
||||
|
||||
作者:[Arindam][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[wxy](https://github.com/wxy)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://www.debugpoint.com/author/admin1/
|
||||
[b]: https://github.com/lkxed
|
||||
[1]: https://www.debugpoint.com/wp-content/uploads/2022/10/py3112204-1024x576.jpg
|
||||
[2]: https://www.debugpoint.com/install-python-3-10-ubuntu/
|
||||
[3]: https://docs.python.org/3.11/whatsnew/3.11.html
|
||||
[4]: https://www.debugpoint.com/ubuntu-22-04-review/
|
||||
[5]: https://www.debugpoint.com/ubuntu-22-10/
|
||||
[6]: https://www.debugpoint.com/fedora-37/
|
||||
[7]: https://www.debugpoint.com/linux-mint-21-review/
|
||||
[8]: https://www.debugpoint.com/wp-content/uploads/2022/10/Install-Python-3.11-in-Ubuntu-22.04-LTS.jpg
|
||||
[9]: https://www.debugpoint.com/wp-content/uploads/2022/10/Setting-up-default-python-version-to-3.11.jpg
|
@ -0,0 +1,136 @@
|
||||
[#]: subject: "Vanilla OS: More Than Just Vanilla GNOME With Ubuntu"
|
||||
[#]: via: "https://news.itsfoss.com/vanilla-os-beta/"
|
||||
[#]: author: "Ankush Das https://news.itsfoss.com/author/ankush/"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: "wxy"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-15203-1.html"
|
||||
|
||||
Vanilla OS:不只是原味 GNOME 的 Ubuntu
|
||||
======
|
||||
|
||||
> Vanilla OS 是建立在 GNOME 上的、具有按需不变性和软件包选择自由的 Ubuntu。听起来很有趣?在这里阅读更多信息。
|
||||
|
||||
![Vanilla OS:不仅仅是原味 GNOME 的 Ubuntu][1]
|
||||
|
||||
这正是我第一次接触 Vanilla OS 时的想法。
|
||||
|
||||
当 [Bottles][2] 的创建者 **Mirko Brombin** 在 Twitter 上宣布它时,让我对它产生了兴趣 😎。
|
||||
|
||||
我加入了他们的 Discord 频道并成为了一名测试者。虽然我没有做出什么贡献,但关注项目发展是很有趣的。
|
||||
|
||||
回到至关重要的问题上:**什么是 Vanilla OS?**
|
||||
|
||||
**Vanilla OS 的目标是提供一个干净、原味的 GNOME 体验,并具有按需不变性的能力。**
|
||||
|
||||
听起来很有趣?让我告诉你我试了试它的第一个开放测试版本后的一些细节。
|
||||
|
||||
> 💡 Vanilla OS 计划在 11 月有一个稳定的版本。
|
||||
>
|
||||
> 它将跟随 Ubuntu 的小版本发布。
|
||||
>
|
||||
> 因此,你可以期待每年发布**两个版本**。例如,你可以从 Ubuntu 22.04 升级到 Ubuntu 22.10 甚至更之后的版本。
|
||||
>
|
||||
> 除非你知道自己在做什么,否则你不应该把它作为日常系统来使用。
|
||||
|
||||
### Vanilla OS:又一个基于 Ubuntu 的发行版?
|
||||
|
||||
![vanilla os home][3]
|
||||
|
||||
**是,也不是**。
|
||||
|
||||
对于初学者来说,我认为有以下独特的理由可以尝试一下:
|
||||
|
||||
- 在 Ubuntu 之上获得 **原装 GNOME 体验**。(Fedora 也是一个很好的选择,但并不适合所有人!)
|
||||
- 在其安装后的首次设置时,**允许你选择并启用 Flatpak/Snap/AppImage**。
|
||||
- **按需不变性**,意味着你可以使系统变成只读,以防止来自第三方应用程序和更新的关键变化。
|
||||
- **一个新的软件包管理器**(apx)允许你默认在管理的容器内安装软件包。
|
||||
|
||||
首次设置过程的体验很轻松。
|
||||
|
||||
> ℹ️ 目前,它使用 Calamares 安装程序。他们打算用 Crystal Linux 中使用的 Jade 取代它。
|
||||
|
||||
![Vanilla OS 安装程序][4]
|
||||
|
||||
越来越多的发行版投身于此;我相信更多的用户会乐意加入到 Linux 中来。
|
||||
|
||||
![][5]
|
||||
|
||||
*Vanilla OS 对软件包管理器的选择*
|
||||
|
||||
当然,像 Ubuntu MATE 和 Pop!_OS 这样的发行版已经付出了巨大的努力,而 Vanilla OS 也为此增加了一些改进。
|
||||
|
||||
![Vanilla OS 颜色选择][6]
|
||||
|
||||
这看起来是一种漂亮的体验!😊
|
||||
|
||||
一旦你完成了首次设置,你就没有什么可担心的了。你会得到通常的 GNOME 桌面,以及由 **Patrik Kramolis** 制作的漂亮的壁纸。
|
||||
|
||||
![Vanilla OS 主页][7]
|
||||
|
||||
接下来,我试着检查了按需不变性,你可以用以下命令查看和调整:
|
||||
|
||||
![Vanilla OS 终端][8]
|
||||
|
||||
你可以在 [GitHub][9] 上了解更多这个(基本上)使之成为可能的工具。
|
||||
|
||||
接下来,看看新的软件包管理器,我喜欢 Distrobox 的底层概念,使其与 apx 成为可能。
|
||||
|
||||
Distrobox 的创建者 **Luca di Maio** 也参与了 Vanilla OS 的开发。
|
||||
|
||||
不过,当用 apx 安装一个软件包时,你需要用命令来初始化容器:
|
||||
|
||||
```
|
||||
apx init
|
||||
```
|
||||
|
||||
如果它能自动完成,那就更直观了。
|
||||
|
||||
![Vanilla OS apx][10]
|
||||
|
||||
当然,我不知道技术上的限制。但是,对于用户端来说会感觉更顺滑!
|
||||
|
||||
总的来说,一个利用容器安装应用程序的软件包管理器、获得选择你的软件包管理器的能力、按需不变性,以及原味的 GNOME 使它看起来是一个值得关注的好东西。
|
||||
|
||||
### 前面的路:第一印象
|
||||
|
||||
我觉得,一旦它进入稳定版,它就会成为我的日常使用系统。
|
||||
|
||||
**原因是**:我总是喜欢原装的 GNOME 体验,而且不需要处理 Fedora 的定期升级。
|
||||
|
||||
当然,等我使用了稳定版之后,我可以给你写一篇整体的用户体验评判。
|
||||
|
||||
在那之前,我想说这是一个我相信很多用户都会喜欢的项目 👏。
|
||||
|
||||
目前,你可以通过加入其 Discord 频道来下载 ISO。该 ISO 还没有公开向所有人提供。如果你感兴趣,可以看看它的 [文档][11]。
|
||||
|
||||
> **[Vanilla OS][12]**
|
||||
|
||||
然而,按照路线图,他们计划很快就会有一个候选版本。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://news.itsfoss.com/vanilla-os-beta/
|
||||
|
||||
作者:[Ankush Das][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[wxy](https://github.com/wxy)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://news.itsfoss.com/author/ankush/
|
||||
[b]: https://github.com/lkxed
|
||||
[1]: https://news.itsfoss.com/content/images/size/w1200/2022/10/first-look-at-vanilla-os.jpg
|
||||
[2]: https://usebottles.com
|
||||
[3]: https://news.itsfoss.com/content/images/2022/10/vanillaos.jpg
|
||||
[4]: https://news.itsfoss.com/content/images/2022/10/vanillaos-installer.jpg
|
||||
[5]: https://news.itsfoss.com/content/images/2022/10/choosing-package-vanillaos.png
|
||||
[6]: https://news.itsfoss.com/content/images/2022/10/vanilla-os-first-setup.png
|
||||
[7]: https://news.itsfoss.com/content/images/2022/10/vanillaos-wallpaper.jpg
|
||||
[8]: https://news.itsfoss.com/content/images/2022/10/Screenshot-from-2022-10-25-12-54-29.png
|
||||
[9]: https://github.com/Vanilla-OS/almost
|
||||
[10]: https://news.itsfoss.com/content/images/2022/10/apx-install.jpg
|
||||
[11]: https://documentation.vanillaos.org
|
||||
[12]: https://vanillaos.org/roadmap
|
@ -0,0 +1,110 @@
|
||||
[#]: subject: "How to Upgrade Python Packages with Pip"
|
||||
[#]: via: "https://itsfoss.com/upgrade-pip-packages/"
|
||||
[#]: author: "Sagar Sharma https://itsfoss.com/author/sagar/"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: "chai001125"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-15224-1.html"
|
||||
|
||||
使用 Pip 升级 Python 软件包
|
||||
======
|
||||
|
||||

|
||||
|
||||
你上次更新通过 Pip 安装的 Python 软件包是什么时候?大多数用户往往会忘记这些 Python 软件包也需要手动更新,因为仅仅更新系统存储库对于软件包来说是不起作用的。
|
||||
|
||||
因此,让我们花点时间看看如何使用 Pip,来更新旧的 Python 软件包吧。
|
||||
|
||||
### 如何使用 Pip 升级 Python 软件包
|
||||
|
||||
[Pip(Pip Installs Packages)][1] 是一个用于管理 Python 软件包的 <ruby>命令行实用程序 <rt> command line utility </rt></ruby> 。你可以将 Pip 安装 Python 软件包,类比为在 Ubuntu 和 Debian 中使用 `apt` 管理软件包那样。
|
||||
|
||||
因此,接下来就让我们深入了解如何使用这个极好的工具 Pip,来管理与 Python 软件包相关的内容吧。
|
||||
|
||||
#### 1、列出过时的 Python 软件包
|
||||
|
||||
在计划更新什么软件包之前,我们先要列出有哪些过时的软件包,你可以在其中选择想要更新的软件包,因为大多数人不会想一下子更新整个软件包库。
|
||||
|
||||
要列出过时的 Python 软件包,你只需将 `pip` 命令与 `list` 选项、`--outdated` 标志一同使用即可,如下图所示:
|
||||
|
||||
```
|
||||
pip list --outdated
|
||||
```
|
||||
|
||||
![outdated packages][2]
|
||||
|
||||
#### 2、升级特定的软件包
|
||||
|
||||
获得可更新的软件包列表后,你可以像我之前提到的那样,选择你要更新的那个特定的软件包,pip 升级软件包命令的语法如下:
|
||||
|
||||
```
|
||||
pip install package_name -U
|
||||
```
|
||||
|
||||
例如,我想将名为 `anime-api` 的软件包升级到最新版本,所以我将使用下面的命令来升级:
|
||||
|
||||
```
|
||||
pip install anime-api -U
|
||||
```
|
||||
|
||||
![update anime api][3]
|
||||
|
||||
#### 3、将软件包升级到特定的版本
|
||||
|
||||
没有必要总是使用软件的最新版本,如果你想将软件包升级到不是最新的某个特定版本,参考如下的命令语法:
|
||||
|
||||
```
|
||||
pip install --upgrade <package>==<version>
|
||||
```
|
||||
|
||||
例如,我想将名为 `xdg` 的软件包更新到 5.1 版本,5.1 版本是最新版本的前一个版本,所以可以使用以下命令:
|
||||
|
||||
```
|
||||
pip install --upgrade xdg==5.1
|
||||
```
|
||||
|
||||
![upgrade xdg to specific iteration][5]
|
||||
|
||||
#### 4、使用 Pip 一次性升级所有软件包
|
||||
|
||||
**请注意:我不建议你一次性升级所以软件包,因为 Python 软件包的依赖项太复杂了,一次性的升级无法处理相互依赖项。**
|
||||
|
||||
要一次性升级所有 python 软件包,你可以使用以下命令:
|
||||
|
||||
```
|
||||
pip3 list --outdated --format=freeze | grep -v '^\-e' | cut -d = -f 1 | xargs -n1 pip3 install -U
|
||||
```
|
||||
|
||||
![upgrade everything][6]
|
||||
|
||||
上面的命令使用了 [xargs][7]。首先,会得到所有需要更新的软件包,然后对每个软件包执行 `pip3 install -U` 命令。
|
||||
|
||||
我在这里使用的是 `pip3`,而不是 `pip`。在 Ubuntu 22.04 及更高的版本中,`pip` 和 `pip3` 命令都可以使用。
|
||||
|
||||
### 总结
|
||||
|
||||
使用 Pip 一次性更新所有 Python 软件包并不是一个好主意。我发现一次性更新后,软件包之间的依赖关系被破坏了,所以请确保只更新你想要更新的软件包。
|
||||
|
||||
如果你还有其他的疑问,就请在评论区中留言吧。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://itsfoss.com/upgrade-pip-packages/
|
||||
|
||||
作者:[Sagar Sharma][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[chai001125](https://github.com/chai001125)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://itsfoss.com/author/sagar/
|
||||
[b]: https://github.com/lkxed
|
||||
[1]: https://itsfoss.com/install-pip-ubuntu/
|
||||
[2]: https://itsfoss.com/wp-content/uploads/2022/09/outdated-packages.png
|
||||
[3]: https://itsfoss.com/wp-content/uploads/2022/09/update-anime-api.png
|
||||
[4]: https://www.debian.org/
|
||||
[5]: https://itsfoss.com/wp-content/uploads/2022/09/upgrade-xdg-to-specific-iteration.png
|
||||
[6]: https://itsfoss.com/wp-content/uploads/2022/09/upgrade-everything.png
|
||||
[7]: https://linuxhandbook.com/xargs-command/
|
@ -0,0 +1,104 @@
|
||||
[#]: subject: "How to Enable Dark Mode in Web Browser"
|
||||
[#]: via: "https://www.debugpoint.com/dark-mode-browser/"
|
||||
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: "geekpi"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-15226-1.html"
|
||||
|
||||
如何在 Web 浏览器中启用深色模式
|
||||
======
|
||||
|
||||

|
||||
|
||||
> 本指南旨在帮助你在 Firefox、Chrome、Chromium 和 Edge 等流行的网页浏览器中启用深色模式。
|
||||
|
||||
我们都喜欢深色模式。与标准浅色模式相比,许多人更喜欢它。许多桌面应用原生提供深色模式,而一些应用则是通过桌面环境的底层模式适应深色模式。
|
||||
|
||||
不可否认,我们都在网页浏览器上花费了很多时间。我们很少使用桌面应用(除非你从事专门的工作,例如视频编辑等)。因此,当你花费大量时间在浏览器中阅读和学习时,你始终可以选择深色模式。不过,对于网页浏览器,启用深色模式的方法略有不同。
|
||||
|
||||
本指南为你提供了在 Firefox、Chromium、Chrome 和 Edge 浏览器中启用深色模式的简单步骤。
|
||||
|
||||
### 在网页浏览器中启用深色模式
|
||||
|
||||
#### 在 Firefox 中启用深色模式
|
||||
|
||||
打开 Firefox 并点击右上角的菜单。
|
||||
|
||||
单击 “<ruby>设置<rt>Settings</rt></ruby> > <ruby>扩展和主题<rt>Extension and Themes</rt></ruby>”。
|
||||
|
||||
选择 “<ruby>深色主题<rt>Dark Theme</rt></ruby>” 并点击 “<ruby>启用<rt>enable</rt></ruby>”。你应该会看到深色模式已应用于 Firefox。
|
||||
|
||||
![Enable dark mode in Firefox][1]
|
||||
|
||||
*在 Firefox 浏览器中启用深色模式*
|
||||
|
||||
![Firefox in Dark Mode][2]
|
||||
|
||||
*深色模式下的 Firefox*
|
||||
|
||||
要将其还原,请按照相同的步骤并选择浅色主题。
|
||||
|
||||
#### Chromium 和 Chrome 中的深色模式
|
||||
|
||||
默认情况下,Chromium 或 Chrome 不会预安装任何深色主题。因此,你需要前往 Chrome 应用商店并下载你想要的深色主题。对于本指南,我会推荐超过一百万用户使用的 “Morpheon Dark” 主题。
|
||||
|
||||
从 Chromium 浏览器打开 Morpheon Dark 主题页面(以下链接)。
|
||||
|
||||
> **[Chrome 应用商店中的 Morpheon Dark 主题][3]**
|
||||
|
||||
点击 “<ruby>添加到 Chrome<rt>Add To Chrome</rt></ruby>” 按钮。它应该会在 Chrome 中启用。
|
||||
|
||||
你可能想探索 Chrome 应用店中提供的其他深色或浅色主题。 [访问此页面获取所有深色主题的集合][4]。
|
||||
|
||||
但是,你应该要记住的一件事是:此主题不会更改设置或上下文菜单,这是显而易见的。因为它只是改变了浏览器窗口,而这些菜单(有时)是操作系统本身的一部分。
|
||||
|
||||
![Chromium Dark Theme][5]
|
||||
|
||||
*Chromium 深色主题*
|
||||
|
||||
对 Chrome 浏览器也遵循相同的步骤。
|
||||
|
||||
#### Edge 浏览器 – 深色模式
|
||||
|
||||
但是,[Edge 浏览器][6] 默认带有更好的深色主题。它允许你从设置中使用 GTK+、浅色和深色模式。
|
||||
|
||||
打开 Edge 浏览器,点击右上角的三个小点。
|
||||
|
||||
转到 “<ruby>外观<rt>Appearance</rt></ruby>” 并选择 “<ruby>深色<rt>Dark</rt></ruby>”。这样应该就好了。
|
||||
|
||||
Edge 的这种深色主题实现更好,因为它改变了上下文菜单和地址栏。
|
||||
|
||||
![Edge in Dark Theme][7]
|
||||
|
||||
*深色主题的 Edge*
|
||||
|
||||
### 总结
|
||||
|
||||
如果你是高级用户,你可能不需要本指南。你可以自己弄清楚。
|
||||
|
||||
但我们为所有读者涵盖了所有基础到高级教程。许多新的 Linux 用户可能不知道如何在浏览器中启用深色模式。
|
||||
|
||||
所以,就是说,我希望这对你和其他人有帮助。如果你遇到任何问题,请在下面的评论框中告诉我。
|
||||
|
||||
---
|
||||
|
||||
via: https://www.debugpoint.com/dark-mode-browser/
|
||||
|
||||
作者:[Arindam][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[geekpi](https://github.com/geekpi)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux 中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://www.debugpoint.com/author/admin1/
|
||||
[b]: https://github.com/lkxed
|
||||
[1]: https://www.debugpoint.com/wp-content/uploads/2021/10/Enable-dark-mode-in-Firefox.jpg
|
||||
[2]: https://www.debugpoint.com/wp-content/uploads/2021/10/Firefox-in-Dark-Mode-1024x423.jpg
|
||||
[3]: https://chrome.google.com/webstore/detail/morpheon-dark/mafbdhjdkjnoafhfelkjpchpaepjknad?hl=en-GB
|
||||
[4]: https://chrome.google.com/webstore/category/collection/dark_themes
|
||||
[5]: https://www.debugpoint.com/wp-content/uploads/2021/10/Chromium-Dark-Theme-1024x463.jpg
|
||||
[6]: https://www.debugpoint.com/2020/10/how-to-install-edge-ubuntu-linux/
|
||||
[7]: https://www.debugpoint.com/wp-content/uploads/2021/10/Edge-in-Dark-Theme-1024x541.jpg
|
@ -0,0 +1,190 @@
|
||||
[#]: subject: "Install WoeUSB on Ubuntu to Create a Bootable Windows USB"
|
||||
[#]: via: "https://itsfoss.com/install-woeusb-ubuntu/"
|
||||
[#]: author: "Sreenath https://itsfoss.com/author/sreenath/"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: "robsean"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-15217-1.html"
|
||||
|
||||
在 Ubuntu 上安装 WoeUSB 来创建一个可启动 Windows USB
|
||||
======
|
||||
|
||||
> 想在 Linux 上创建一个可启动 Windows USB ?Ventoy 是一个很好的选择。
|
||||
|
||||
但是,在 Ventoy 出道之前,WoeUSB 是用于创建可启动 Windows USB 的首选工具。原版 WoeUSB 工程在 2014 年左右香消玉损。
|
||||
|
||||
鉴于其流行程度,一位新的开发者接过了将其起死回生的任务。因此,WoeUSB-ng 诞生了。在这里,“ng” 是 <ruby>新生代<rt>new generation</rt></ruby> 的缩写。换句话说,[WoeUSB-ng][1] 是新生代的 WoeUSB 。但是,因为原版的工具已经不存在了,我将 WoeUSB-ng 描述为 WoeUSB 。
|
||||
|
||||
在这篇教程中,我将向你展示如何在 Ubuntu Linux 上安装 WoeUSB 。我也将分享使用 WoeUSB 来创建可启动 Windows USB 的步骤。
|
||||
|
||||
但是,在此之前,让我们快速查看这个令人惊叹的工具的特色。
|
||||
|
||||
### WoeUSB
|
||||
|
||||
![install woeusb ubuntu][2]
|
||||
|
||||
WoeUSB 是一个简单的工具,其唯一的目的是 [在 Linux 上创建可启动 Windows USB][3] 。
|
||||
|
||||
原版 WoeUSB 是一个 shell 脚本。这个原版 WoeUSB 被使用 Python 重写为 WoeUSB-ng ,它可以安装在你的系统上,并且通过命令行或 GUI 界面。
|
||||
|
||||
特色:
|
||||
|
||||
- 支持老式 PC 启动或 UEFI 启动
|
||||
- 支持 FAT32 和 NTFS 文件系统
|
||||
- 支持使用物理安装盘或磁盘镜像作为源
|
||||
- 它可以用于 Windows Vista 及其更高版本的任意语言或变体版本
|
||||
- 老式的 MBR/IBM PC 兼容启动模式
|
||||
- 本机 UEFI 启动支持 Windows 7 及其更高版本的镜像(仅限于将 FAT 文件系统作为目标的情况)
|
||||
|
||||
### 在 Ubuntu 和其它的 Linux 发行版上安装 WoeUSB
|
||||
|
||||
Arch Linux 用户可以从 AUR 安装 WoeUSB-ng 。
|
||||
|
||||
对于其它的发行版,可以使用 PIP 来安装 WoeUSB 。毕竟,它是一个 Python 应用程序。在这里,我将为 Ubuntu/Debian 提供一些命令。
|
||||
|
||||
为安装 WoeUSB-ng ,你首先需要 [安装 PIP][4] 和其它必要的依赖项。
|
||||
|
||||
```
|
||||
sudo apt install git p7zip-full python3-pip python3-wxgtk4.0 grub2-common grub-pc-bin
|
||||
```
|
||||
|
||||
在这之后,你可以安装 WoeUSB-ng ,通过运行:
|
||||
|
||||
```
|
||||
sudo pip3 install WoeUSB-ng
|
||||
```
|
||||
|
||||
对于所有的其它安装,你可以参考其 [操作指南][5] 。
|
||||
|
||||
> **[WoeUSB-ng][1]**
|
||||
|
||||
### 前提条件: 获取 Windows 的 ISO 文件和一个兼容的 USB 磁盘
|
||||
|
||||
这一点没有什么需要说的。你需要有一个你将要安装的 Windows 版本的 ISO 文件。
|
||||
|
||||
从微软的网站,你应该能够获取 Windows 10 和 11 的ISO 文件。
|
||||
|
||||
> **[下载 Windows][6]**
|
||||
|
||||
如果你有较旧的 Windows 版本的 ISO 文件,也可以使用它们。
|
||||
|
||||
除此之外,你需要有一个至少 8 GB 大小的 USB 驱动器磁盘。你应该使用 NTFS 的文件系统来格式化它filesystem.
|
||||
|
||||
### 方法 1: 使用图形用户界面化的 WoeUSB 来创建一个可启动的 Windows USB(推荐)
|
||||
|
||||
从 <ruby>活动概述<rt>activity overview</rt></ruby> 或菜单中打开 woeusb-gui 。
|
||||
|
||||
![woeusb in ubuntu activities overview][7]
|
||||
|
||||
在应用程序窗口中,选择下载的 Windows ISO 和所希望的 USB 驱动器,如截屏所示,然后按下 <ruby>安装<rt>Install</rt></ruby> 按钮。
|
||||
|
||||
![woeusb gui setup][8]
|
||||
|
||||
在应用程序中也其它可用的调整,可以通过顶部的菜单栏来访问使用。
|
||||
|
||||
在按下“安装”按钮后,woeUSB 将开始格式化和复制文件。你需要等待一些时间,因为这里有大约 6 GB 的文件需要复制。
|
||||
|
||||
![woeusb writing windows iso to the usb drive][9]
|
||||
|
||||
在复制完成后,WoeUSB 将会提示一个成功的对话框。你现在可以安全地弹出 USB 驱动器,并将其作为一个可启动 USB 驱动器来使用。
|
||||
|
||||
![woeusb completed writing and gives a success message][10]
|
||||
|
||||
### 方法 2: 从终端中使用 WoeUSB(针对专家)
|
||||
|
||||
WoeUSB-ng 软件包也提供一个名称为 `woeusb` 的命令行实用程序。
|
||||
|
||||
为使用 WoeUSb 来创建一个可启动的 Windows USB ,你需要运行下面的命令:
|
||||
|
||||
```
|
||||
sudo woeusb --device <path/to/Windows/ISO> <name/of/the/USB/device> --target-filesystem ntfs
|
||||
```
|
||||
|
||||
在这里,`--device` 标识用于擦除 USB 和从零开始创建一个可启动 USB 驱动器。同样,`--target-filesystem` 标识用于设置为 NTFS ,来避免将要复制的文件大小超过 FAT 文件系统的限制。
|
||||
|
||||
![woeusb commandline][11]
|
||||
|
||||
该过程将花费一些时间来完成复制。在完成复制后,它将显示一条成功的信息。
|
||||
|
||||
![woeusb commandline success message][12]
|
||||
|
||||
此时,你可以安全地弹出 USB 驱动器,并在其它的个人电脑上将其作为一个 Windows 可启动 USB 来使用。
|
||||
|
||||
### 超值: 使用 WoeUSB 的 Bash Shell 脚本(针对专家)
|
||||
|
||||
WoeUSB 也提供一个 Bash Shell 脚本,在你的系统上,它不需要安装任何东西就可以使用。
|
||||
|
||||
首先,你需要从 [该工程的发布版本页面][13] 下载 Shell 脚本。
|
||||
|
||||
在 [执行 Shell 文件][14] 之前,你需要获取所需要的依赖项。为安装它,运行:
|
||||
|
||||
```
|
||||
sudo apt install wimtools
|
||||
```
|
||||
|
||||
现在,通过文件管理器或通过命令行来使它可执行。
|
||||
|
||||
![make woeusb script executable][15]
|
||||
|
||||
或者,你可以运行 `chmod +x <path/to/script>` 来使它可执行。现在,运行已下载目录中的 `./woeusb-5.2.4.bash -h` 来获取帮助。
|
||||
|
||||
为创建一个现场 USB ,该进程类似于 woeusb-ng 的命令行部分,但是你没有安装任何东西。
|
||||
|
||||
因此,在一个终端中,运行:
|
||||
|
||||
```
|
||||
sudo <path/to/downloaded/script/file> --device <path/to/windows/ISO> <name-of-USB-device> --target-filesystem ntfs
|
||||
```
|
||||
|
||||
这将开始将 ISO 写入 USB 驱动器,如下面的截屏所示:
|
||||
|
||||
![woeusb bash script running without installation][16]
|
||||
|
||||
在完成后,你可以安全地弹出 USB 驱动器,并将其作为可启动 USB 使用。
|
||||
|
||||
### 移除 WoeUSB
|
||||
|
||||
如果你使用 PIP 安装 WoeUSB ,你也可以类似地移除它:
|
||||
|
||||
```
|
||||
pip3 uninstall WoeUSB-ng
|
||||
```
|
||||
|
||||
你可以在你的系统上保留或移除已安装的依赖项。这完全取决于你。我建议保留它们。
|
||||
|
||||
### 总结
|
||||
|
||||
大约 10 年前,WoeUSB 是一个非常流行的工具。其他人以另外一种形式将其复活是很好的,这就是开源的艺术。
|
||||
|
||||
我希望这篇教程会帮助你。如果通过 WoeUSB 创建的 Windows USB 不能按部就班地工作,你可以 [尝试使用 Ventoy][3] 。享受它。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://itsfoss.com/install-woeusb-ubuntu/
|
||||
|
||||
作者:[Sreenath][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[robsean](https://github.com/robsean)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://itsfoss.com/author/sreenath/
|
||||
[b]: https://github.com/lkxed
|
||||
[1]: https://github.com/WoeUSB/WoeUSB-ng
|
||||
[2]: https://itsfoss.com/wp-content/uploads/2022/10/install-woeusb-ubuntu.png
|
||||
[3]: https://itsfoss.com/bootable-windows-usb-linux/
|
||||
[4]: https://itsfoss.com/install-pip-ubuntu/
|
||||
[5]: https://github.com/WoeUSB/WoeUSB-ng#installation
|
||||
[6]: https://www.microsoft.com/en-in/software-download/
|
||||
[7]: https://itsfoss.com/wp-content/uploads/2022/10/woeusb-in-ubuntu-activities-overview.png
|
||||
[8]: https://itsfoss.com/wp-content/uploads/2022/10/woeusb-gui-setup.png
|
||||
[9]: https://itsfoss.com/wp-content/uploads/2022/10/woeusb-writing-windows-iso-to-the-usb-drive.png
|
||||
[10]: https://itsfoss.com/wp-content/uploads/2022/10/woeusb-completed-writing-and-gives-a-success-message.png
|
||||
[11]: https://itsfoss.com/wp-content/uploads/2022/10/woeusb-commandline.png
|
||||
[12]: https://itsfoss.com/wp-content/uploads/2022/10/woeusb-commandline-success-message.png
|
||||
[13]: https://github.com/WoeUSB/WoeUSB/releases/tag/v5.2.4
|
||||
[14]: https://itsfoss.com/run-shell-script-linux/
|
||||
[15]: https://itsfoss.com/wp-content/uploads/2022/10/make-woeusb-script-executable.png
|
||||
[16]: https://itsfoss.com/wp-content/uploads/2022/10/woeusb-bash-script-running-without-installation.png
|
@ -0,0 +1,38 @@
|
||||
[#]: subject: "The Android Open Source Project Is Now RISC-V Compatible"
|
||||
[#]: via: "https://www.opensourceforu.com/2022/11/the-android-open-source-project-is-now-risc-v-compatible/"
|
||||
[#]: author: "Laveesh Kocher https://www.opensourceforu.com/author/laveesh-kocher/"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: "wxy"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-15221-1.html"
|
||||
|
||||
安卓开源项目(AOSP)现在兼容 RISC-V 了
|
||||
======
|
||||
|
||||

|
||||
|
||||
> 安卓的一个重要进展是将<ruby>安卓开源项目<rt>Android Open Source Project</rt></ruby>(AOSP)移植到 RISC-V 处理器架构。
|
||||
|
||||
AOSP 已经开始在上游启用 RISC-V,这将促进 RISC-V CPU 在可穿戴设备、物联网,以及最终在智能手机和笔记本电脑中的使用。
|
||||
|
||||
为了开放生态系统,中国科学院 PLCT 实验室的工程师和软件开发人员在 2020 年开始将 Android 10 移植到 RISC-V 架构上。阿里巴巴的云计算部门和平头哥芯片子公司一起努力保持开发与最新的安卓版本同步。
|
||||
|
||||
“我们很高兴看到谷歌对构建针对 RISC-V 的 AOSP 的更多支持!阿里云一直致力于通过一系列的创新来支持 RISC-V 社区的发展,比如将安卓的基本功能移植到 RISC-V 上,这证明了在从多媒体到信号处理、设备互联和人工智能等场景中使用基于 RISC-V 的设备的可行性。”阿里云生态系统总监、RISC-V 国际组织的应用与工具水平委员会副主席 David Chen 博士说:“我们期待着与安卓团队合作,为繁荣的 RISC-V 社区做出贡献。”
|
||||
|
||||
通过增强 RISC-V 上的安卓系统的基本功能,在 2021 年,阿里云的专家们付出了巨大的努力,积极推动了软件生态系统的发展。 RISC-V on Android 的工作集中在 RISC-V Android 工作组和软件库中进行。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://www.opensourceforu.com/2022/11/the-android-open-source-project-is-now-risc-v-compatible/
|
||||
|
||||
作者:[Laveesh Kocher][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[wxy](https://github.com/wxy)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://www.opensourceforu.com/author/laveesh-kocher/
|
||||
[b]: https://github.com/lkxed
|
||||
[1]: https://www.opensourceforu.com/wp-content/uploads/2022/11/android-696x364.jpg
|
108
published/20221101.5 ⭐️ Linux Lite 6.2 Released.md
Normal file
108
published/20221101.5 ⭐️ Linux Lite 6.2 Released.md
Normal file
@ -0,0 +1,108 @@
|
||||
[#]: subject: "Linux Lite 6.2 Released"
|
||||
[#]: via: "https://news.itsfoss.com/linux-lite-6-2-release/"
|
||||
[#]: author: "Sourav Rudra https://news.itsfoss.com/author/sourav/"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: "littlebirdnest"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-15212-1.html"
|
||||
|
||||
Linux Lite 6.2 发布
|
||||
======
|
||||
|
||||
> Linux Lite 6.2 是一个理想的升级,带来一些有用的变化,没什么太花哨的东西。
|
||||
|
||||
![Linux Lite 6.2 Released][1]
|
||||
|
||||
Linux Lite 是一种流行的轻量级的类 Windows 发行版,为用户提供了一个熟悉的操作系统感受。
|
||||
|
||||
最新版本 Linux Lite 6.2 基于 Ubuntu 22.04 LTS,对 UI 进行了各种更改以及各种错误的修复。
|
||||
|
||||
### Linux Lite 6.2:有什么新功能?
|
||||
|
||||
![linux lite 6.2 desktop][2]
|
||||
|
||||
此版本的 Linux Lite 侧重于用户界面调整和错误修复,并对一些应用程序进行了更改。
|
||||
|
||||
一些主要亮点包括:
|
||||
|
||||
- 更新的图标
|
||||
- 新壁纸
|
||||
- Shotcut 视频编辑器
|
||||
- 删除微软 Teams
|
||||
- LibreOffice 7.3.6.2
|
||||
- Linux 内核 5.15
|
||||
|
||||
#### Shotcut 取代 OpenShot
|
||||
|
||||
![linux lite 6.2 shotcut video editor][3]
|
||||
|
||||
是的,[Shotcut][4] 现在取代了 [OpenShot][5],成为 Linux Lite 6.2 上的默认视频编辑器。
|
||||
|
||||
OpenShot 之所以被删除,是因为它不能很好地与 Ubuntu 22.04 配合使用,而如果没有一个好用的视频编辑器,用户将不得不自己寻找一个。
|
||||
|
||||
Shotcut 无疑是一款出色的视频编辑器。所以,应该是一个不错的选择。
|
||||
|
||||
#### 微软 Teams 已删除
|
||||
|
||||
另一个重大变化是微软 Teams 不再包含在发行版中。
|
||||
|
||||
其原因是微软停止了 Linux 应用程序,转而支持一个渐进式 Web 应用程序版本。
|
||||
|
||||
我们之前的报道可以让你更深入地了解:
|
||||
|
||||
> **[微软决定放弃 Teams 的 Linux 应用,代之以渐进式Web应用](https://news.itsfoss.com/microsoft-linux-app-retire/)**
|
||||
|
||||
#### 更新的图标和新壁纸
|
||||
|
||||
![linux lite 6.2 new wallpapers][6]
|
||||
|
||||
Linux Lite 6.2 具有最新的 [Papirus][7] 图标集以及一系列新的 Linux Lite 主题壁纸。
|
||||
|
||||
这应该会给发行版带来用户可能喜欢的焕然一新的外观。
|
||||
|
||||
#### 🛠️ 其他更改和改进
|
||||
|
||||
![][8]
|
||||
|
||||
其他值得注意的变化包括:
|
||||
|
||||
- 任务管理器的更新
|
||||
- 改进了 Lite 升级应用程序中的结束对话。
|
||||
- 各种应用程序的最新更新、错误修复等。
|
||||
|
||||
你可以阅读完整的发行说明以 [了解更多信息][9]。
|
||||
|
||||
Linux Lite 6.2 看起来是对以前版本的令人满意的升级,有许多重大的变化和补充。
|
||||
|
||||
### 📥 下载 Linux Lite 6.2
|
||||
|
||||
你可以从其官方网站下载最新的 ISO 或使用 Lite 升级工具升级到它。
|
||||
|
||||
> [Linux Lite 6.2][10]
|
||||
|
||||
💬 你如何看待 Linux Lite 6.2?愿意试一试吗?
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://news.itsfoss.com/linux-lite-6-2-release/
|
||||
|
||||
作者:[Sourav Rudra][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[littlebirdnest](https://github.com/littlebirdnest)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://news.itsfoss.com/author/sourav/
|
||||
[b]: https://github.com/lkxed
|
||||
[1]: https://news.itsfoss.com/content/images/size/w1200/2022/10/linux-lite-6.2.png
|
||||
[2]: https://news.itsfoss.com/content/images/2022/10/Linux_Lite_6.2_Desktop.png
|
||||
[3]: https://news.itsfoss.com/content/images/2022/10/Linux_Lite_6.2_Shotcut.png
|
||||
[4]: https://shotcut.org/
|
||||
[5]: https://www.openshot.org/
|
||||
[6]: https://news.itsfoss.com/content/images/2022/10/Linux_Lite_6.2_Wallpapers.png
|
||||
[7]: https://github.com/PapirusDevelopmentTeam/papirus-icon-theme
|
||||
[8]: https://news.itsfoss.com/content/images/2022/11/lite-upgrade.png
|
||||
[9]: https://www.linuxliteos.com/forums/release-announcements/linux-lite-6-2-final-released/
|
||||
[10]: https://www.linuxliteos.com/download.php
|
@ -0,0 +1,163 @@
|
||||
[#]: subject: "Xfce 4.18: Top New Features & Release Guide"
|
||||
[#]: via: "https://www.debugpoint.com/xfce-4-18-features/"
|
||||
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: "wxy"
|
||||
[#]: reviewer: "wxy"
|
||||
[#]: publisher: "wxy"
|
||||
[#]: url: "https://linux.cn/article-15228-1.html"
|
||||
|
||||
前瞻:Xfce 4.18 主要新功能
|
||||
======
|
||||
|
||||
> 有关 Xfce 4.18 的核心和原生应用程序的功能的全面介绍。
|
||||
|
||||
经过近两年的开发,Xfce 4.18 将在 2022 年圣诞节期间发布。作为 [Xfce 4.16][1] 以来的重要的版本,其一直在开发标签 4.17 下进行开发,以增强这个轻量级桌面。
|
||||
|
||||
考虑到 GTK4 的更新、初步的 Wayland 支持,以及核心和本地应用程序的改进,Xfce 4.18 是一个重要的里程碑版本,其带来了大量更新。
|
||||
|
||||
从发布时间来看,第一个 Xfce 4.18 预发布版(pre1)已经发布。2022 年 12 月的第一周会有另一个预发布版。而 Xfce 4.18 的最终版本预计将在 2022 年 12 月 15 日至 12 月 29 日之间发布。
|
||||
|
||||
由于目前还没有官方的详细介绍,我在这篇文章中总结了 Xfce 4.18 的基本和主要功能。
|
||||
|
||||
请继续阅读。
|
||||
|
||||
![Xfce 4.18 pre1 (compiled in Arch)][2]
|
||||
|
||||
### Xfce 4.18 的新功能
|
||||
|
||||
#### 1、核心库更新
|
||||
|
||||
Xfce 4.18 的依赖关系有所改变,并使用以下版本进行编译:
|
||||
|
||||
- glib-2.0 >= 2.66
|
||||
- gtk >= 3.24
|
||||
- libcairo >= 1.16
|
||||
- gdk-pixbuf-2.0 >= 2.40
|
||||
- gobject-introspection >= 1.66
|
||||
|
||||
#### 2、桌面和面板
|
||||
|
||||
顶部的主面板带来了新的设置和调整。但整体外观仍与以前的 4.16 版本中的一样。一些默认的面板小程序在这个版本中也有变化。桌面图标、右键上下文菜单和项目保持不变。
|
||||
|
||||
面板的首选项设置有两个新的选项。首先,面板的长度现在以**像素**设置,而不是百分比。其次,一个新的选项,“<ruby>保持面板在窗口上方<rt>Keep panel above windows</rt></ruby>” ,可以让你将窗口对话放到面板后面。之前,应用程序的窗口只能达到面板的边缘。
|
||||
|
||||
![Xfce 4.18 中的面板首选项][3]
|
||||
|
||||
彻底修改了时钟小程序的设置。是的,你终于可以改变 Xfce 时钟小程序的字体风格。与此同时,它提供了四种时钟布局:
|
||||
|
||||
- 只有日期
|
||||
- 只有时间
|
||||
- 日期和时间
|
||||
- 时间和日期
|
||||
|
||||
此外,你还可以向日历中添加命令。
|
||||
|
||||
![终于你可以改变 Xfce 时钟小程序的字体了][4]
|
||||
|
||||
#### 3、Thunar 文件管理器
|
||||
|
||||
也许这个版本中最令人兴奋的变化是 Thunar 文件管理器的功能。首先,一个新的“搜索”图标取代了工具栏上的“重新加载”按钮。当点击时,它会在地址栏上出现搜索,可以使用你的搜索关键词进行递归搜索。重新加载按钮被放到了 “<ruby>查看<rt>View</rt></ruby>” 菜单中。
|
||||
|
||||
其次,在左边的导航栏上增加了一个的新项目,“<ruby>最近<rt>Recent</rt></ruby>”。在底部,元数据更有条理(从逗号分隔改为竖线分隔),还有一个新的上下文菜单项可以选择你想要显示的元数据。
|
||||
|
||||
![Thunar 4.18 的视觉变化][5]
|
||||
|
||||
Thunar 的主菜单有很多变化。下面列出了主要的变化。在下面的图片中还标注了自 4.16 以来的变化。
|
||||
|
||||
- 引入了一个**新的书签菜单**,可以将当前文件夹作为快捷方式添加到侧边栏。
|
||||
- “<ruby>编辑<rt>Edit</rt></ruby>”菜单有了 “<ruby>撤销<rt>undo</rt></ruby>” 和 “<ruby>重做<rt>redo</rt></ruby>” 选项。
|
||||
- “<ruby>前往<rt>Go</rt></ruby>” 菜单有了 “<ruby>最近<rt>Recent</rt></ruby>” 和 “<ruby>搜索<rt>Search</rt></ruby>” 的选项。
|
||||
|
||||
Thunar 首次通过 “<ruby>视图<rt>View</rt></ruby>”菜单项有了“<ruby>分割视图<rt>Split view</rt></ruby>”! 是的,你现在可以在视图面板中拖放项目。
|
||||
|
||||
前不久,我 [报道][6] 说图像预览即将在 Thunar 中出现。而它终于来了。作为谷歌代码之夏 2022 的部分开发成果,你现在可以嵌入在侧边栏中看到图片预览。或者在右边的一个独立的新面板上查看。它可以通过偏好设置来改变。
|
||||
|
||||
下面是它的外观。
|
||||
|
||||
![带有独立图像预览的 Thunar 分割视图][7]
|
||||
|
||||
![嵌入图像预览的 Thunar 分割视图][8]
|
||||
|
||||
#### 4、Thunar 的首选项
|
||||
|
||||
Thunar 设置中出现了大量调整。首先,一个新的选项卡可以为 Thunar 定制你的键盘快捷键。你可以直接指定新的快捷键组合,并从这个选项卡中改变现有的快捷键组合。
|
||||
|
||||
![Thunar 的新快捷键标签][9]
|
||||
|
||||
“<ruby>显示<rt>Display</rt></ruby>” 设置中新增了一个缩略图部分,你现在可以指定缩略图的文件大小。缩略图的具体设置也被归为一组。
|
||||
|
||||
![4.18 版的 Thunar 显示设置][10]
|
||||
|
||||
“<ruby>侧面板<rt>Side Pane</rt></ruby>” 选项卡有了一个新的图像预览选项,你在上面看到过。你可以设置为嵌入式或独立式预览。此外,“<ruby>行为<rt> Behaviour</rt></ruby>” 选项卡增加了 “<ruby>启动时恢复选项卡<rt>restore tabs on startup</rt></ruby>” 和在选项卡标题中显示 “<ruby>完整的目录路径<rt>full directory path</rt></ruby>” 的选项,这将有很大帮助。
|
||||
|
||||
“<ruby>高级<rt>Advanced</rt></ruby>” 选项卡为 “<ruby>文件传输<rt>File Transfer</rt></ruby>” 提供了一个新的设置部分,有两个新的选项:“<ruby>中间文件复制<rt>Intermediate file copy</rt></ruby>”和“<ruby>验证校验和<rt>Verify checksum</rt></ruby>”。此外,在这个选项卡中还增加了一个新的递归搜索的选项。你还可以通过以下选项将 Thunar 设置为直接 “<ruby>执行 Shell 脚本<rt>Execute Shell script</rt></ruby>”。
|
||||
|
||||
![Thunar 4.18 的高级选项][11]
|
||||
|
||||
除了上述变化外,文件夹属性对话框现在可以显示文件和文件夹的数量。另外,一个新的高亮选项使你能够为你的文件夹图标背景和前景选择任何自定义颜色。如果你有一个复杂的文件夹结构,这将使你能够快速导航。
|
||||
|
||||
下面是它的外观。
|
||||
|
||||
![文件夹高亮演示][12]
|
||||
|
||||
#### 设置
|
||||
|
||||
“<ruby>外观<rt>Appearances</rt></ruby>” 设置现在允许你打开和关闭对话框的标题栏。
|
||||
|
||||
“<ruby>桌面<rt>Desktop</rt></ruby>” 设置允许文件上下文菜单中的删除选项(打开或关闭)。
|
||||
|
||||
“<ruby>显示<rt>Display</rt></ruby>” 设置现在允许你为多种显示情况设置默认值:镜像、扩展显示还是什么都不做。早些时候,这些选项在显示器被连接时才可用。
|
||||
|
||||
#### Wayland 和其他更新
|
||||
|
||||
除了上述 Xfce 4.18 的功能外,窗口管理器和桌面还有许多额外的错误修复和性能改进。这些都是在底层的,你应该能感受到一个更精良的 Xfce 桌面体验。
|
||||
|
||||
Xfce 桌面核心和原生应用程序的 Wayland 迁移工作开始了。离它完全准备好还有很长的路要走。在这个版本中,你可能不会看到很多 Wayland 的更新。然而,许多应用程序在 Wayland 下已经可以正常工作了。你可以在 [本页][13] 了解更多关于迁移状态的信息。
|
||||
|
||||
### 下载及什么时候出现在发行版
|
||||
|
||||
Xfce 4.18 应该会在 2023 年 4 月进入 Ubuntu 23.04 Lunar Lobster,并在 Fedora 38 中出现。基于滚动发布的发行版,如 Arch Linux、Manjaro 和 OpenSUSE Tumbleweed 应该会在 2022 年 12 月发布后的几天内得到它。轻量级的流行发行版 [MX Linux][14] 应该在 2023 年采用这个版本,这个时候也是 Debian Bookworm 更新的时候。
|
||||
|
||||
Xfce 4.18 的第一个预发布版本 [现已发布][15]。你可以从下面的页面下载源码压缩包,并编译它们。请参考官方的 [编译指南][16]。
|
||||
|
||||
> **[下载 Xfce 4.18 源代码(pre1)][17]**
|
||||
|
||||
### 总结
|
||||
|
||||
总的来说,变化的数量巨大。许多核心变化和需要的变化都进入了这个版本。Thunar 文件管理器的更新是早该进行的,对于 Xfce 的爱好者来说应该是完美的。
|
||||
|
||||
随着 Wayland 的支持,未来的 Xfce 版本可能会带来一个可行的 Xfce 版本。Wayland 的支持仍在进行中,每个组件都有许多决定有待作出。许多发行版和关键部署仍然喜欢 Xfce 而不是 KDE Plasma 或 GNOME。考虑到这些用例和未来的路线图,Xfce 4.18 是下一个版本之前的一个重要的里程碑。
|
||||
|
||||
列表中你最喜欢的功能是什么?请在评论栏里告诉我。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://www.debugpoint.com/xfce-4-18-features/
|
||||
|
||||
作者:[Arindam][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[wxy](https://github.com/wxy)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://www.debugpoint.com/author/admin1/
|
||||
[b]: https://github.com/lkxed
|
||||
[1]: https://www.debugpoint.com/xfce-4-16-review/
|
||||
[2]: https://www.debugpoint.com/wp-content/uploads/2022/11/Xfce-4.18-pre1-compiled-in-Arch-1024x594.jpg
|
||||
[3]: https://www.debugpoint.com/wp-content/uploads/2022/11/Panel-preferences-in-Xfce-4.18.jpg
|
||||
[4]: https://www.debugpoint.com/wp-content/uploads/2022/11/Finally-you-can-change-the-font-of-Xfce-Clock-applet.jpg
|
||||
[5]: https://www.debugpoint.com/wp-content/uploads/2022/11/Thunar-4.18-visual-changes.jpg
|
||||
[6]: https://debugpointnews.com/thunar-image-preview/
|
||||
[7]: https://www.debugpoint.com/wp-content/uploads/2022/11/Thunar-split-view-with-embedded-image-preview.jpg
|
||||
[8]: https://www.debugpoint.com/wp-content/uploads/2022/11/Thunar-split-view-with-sidebar-image-preview.jpg
|
||||
[9]: https://www.debugpoint.com/wp-content/uploads/2022/11/New-shortcut-tab-in-Thunar.jpg
|
||||
[10]: https://www.debugpoint.com/wp-content/uploads/2022/11/Thunar-Display-Settings-in-4.18.jpg
|
||||
[11]: https://www.debugpoint.com/wp-content/uploads/2022/11/Advanced-options-of-Thunar-4.18.jpg
|
||||
[12]: https://www.debugpoint.com/wp-content/uploads/2022/11/Folder-highlight-demo.jpg
|
||||
[13]: https://wiki.xfce.org/releng/wayland_roadmap
|
||||
[14]: https://www.debugpoint.com/tag/mx-linux
|
||||
[15]: https://www.reddit.com/r/xfce/comments/yjiwwv/announce_xfce_418pre1_released/
|
||||
[16]: https://docs.xfce.org/xfce/building
|
||||
[17]: https://archive.xfce.org/xfce/4.18pre1/fat_tarballs
|
@ -1,80 +0,0 @@
|
||||
[#]: subject: "Ubuntu but rolling but also stable That's what Rhino Linux aims to be"
|
||||
[#]: via: "https://news.itsfoss.com/rhino-linux/"
|
||||
[#]: author: "Sourav Rudra https://news.itsfoss.com/author/sourav/"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: " "
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
Ubuntu but rolling but also stable That's what Rhino Linux aims to be
|
||||
======
|
||||
|
||||
A rolling-release Ubuntu distribution? Wait, what? Rhino Linux sounds fascinating..
|
||||
|
||||
![Ubuntu but rolling but also stable! That's what Rhino Linux aims to be][1]
|
||||
|
||||
Rhino Linux will be the successor of [Rolling Rhino Remix][2]. A Linux distro built by http.llamaz that offered a rolling-release **unofficial** variant of Ubuntu.
|
||||
|
||||
To clarify, the project was never aimed to replace other stable distributions and was purely a passion project made for fun.
|
||||
|
||||
Considering people started using it as a daily driver and expected more from it, the developer has decided to turn this into a serious project.
|
||||
|
||||
Rhino Linux is its next step for it. So, what can you expect?
|
||||
|
||||
### Meet Rhino Linux: The Successor
|
||||
|
||||
The main goal is to provide a stable Ubuntu experience while still providing a rolling-release model.
|
||||
|
||||
The aim remains the same, but the fundamentals for Rhino Linux will receive a complete overhaul. They are potentially making it an impressive rolling-release Ubuntu distribution.
|
||||
|
||||
**Sounds exciting! 🤯**
|
||||
|
||||
At its core, Rhino Linux will be using a slightly modified version of [XFCE][3] as its desktop environment; it was chosen due to its well-known stability and speed.
|
||||
|
||||
The founder of Rhino Linux mentioned the following:
|
||||
|
||||
> Ubuntu as a rolling release is still at the very core of our concept. Rhino Linux is not a depature from Rolling Rhino Remix, but rather re-imagines it as the more stable, mature distribution it should have shipped as originally.
|
||||
|
||||
![xfce 4.14][4]
|
||||
|
||||
Alongside that, [Pacstall][5] will be used as the default package manager on Rhino Linux with one of their repositories.
|
||||
|
||||
> 💡Pacstall is an [AUR][6]-inspired package manager for Ubuntu.
|
||||
|
||||
The development of which is headed by the founder of Pacstall, [_Plasma_][7]. He has also joined as one of the new developers (Deputy Project Lead), and [Sourajyoti Basak][8] as another core member.
|
||||
|
||||
### Moving Forward: Availability and Release
|
||||
|
||||
As of writing, Rhino Linux has not received any specific release date, but you can expect it to release sometime in **2023**.
|
||||
|
||||
What happens to Rolling Rhino Remix?
|
||||
|
||||
The developer clarified that it would continue to be maintained for three months after the release of Rhino Linux. However, it won't have a new release image after its subsequent release on **11.01.2022**.
|
||||
|
||||
You can find out more about Rhino Linux by visiting its [official website][9].
|
||||
|
||||
_💬 What do you think of Rhino Linux? Can it be a contender for official Ubuntu flavors worth trying?_
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://news.itsfoss.com/rhino-linux/
|
||||
|
||||
作者:[Sourav Rudra][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[译者ID](https://github.com/译者ID)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://news.itsfoss.com/author/sourav/
|
||||
[b]: https://github.com/lkxed
|
||||
[1]: https://news.itsfoss.com/content/images/size/w1200/2022/10/rhino-linux.png
|
||||
[2]: https://github.com/rollingrhinoremix
|
||||
[3]: https://www.xfce.org/
|
||||
[4]: https://news.itsfoss.com/content/images/2022/10/XFCE_4.14.png
|
||||
[5]: https://github.com/pacstall/pacstall
|
||||
[6]: https://itsfoss.com/aur-arch-linux/
|
||||
[7]: https://github.com/Henryws
|
||||
[8]: https://github.com/wizard-28
|
||||
[9]: https://rhinolinux.org/
|
@ -1,100 +0,0 @@
|
||||
[#]: subject: "Ardour 7.0 Release Marks the end of 32-bit builds; Adds Clip Launching and Apple Silicon Support"
|
||||
[#]: via: "https://news.itsfoss.com/ardour-7-0-release/"
|
||||
[#]: author: "Sourav Rudra https://news.itsfoss.com/author/sourav/"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: " "
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
Ardour 7.0 Release Marks the end of 32-bit builds; Adds Clip Launching and Apple Silicon Support
|
||||
======
|
||||
|
||||
Ardour 7.0 is a major upgrade with much-needed improvements.
|
||||
|
||||
![Ardour 7.0 Release Marks the end of 32-bit builds; Adds Clip Launching and Apple Silicon Support][1]
|
||||
|
||||
[Ardour][2] is a popular open-source digital audio workstation software that audio professionals use.
|
||||
|
||||
Ardour 7.0 has been in development for a little more than a year since the release of 6.9 and has come a long way since Ardour 5.0.
|
||||
|
||||
Let's take a look at the highlights of this release.
|
||||
|
||||
### 🆕 Ardour 7.0: What's New?
|
||||
|
||||
![ardour 7.0][3]
|
||||
|
||||
This release introduces a variety of changes and feature additions, some of the highlights are:
|
||||
|
||||
- **Discontinuation of 32-bit Builds.**
|
||||
- **Clip Launching feature (similar to what other DAWs provide).**
|
||||
- **Support for Apple Silicon.**
|
||||
- **Integration of Loop Library.**
|
||||
- **Audio sample library support by Freesound.**
|
||||
|
||||
#### Clip Launching
|
||||
|
||||
![ardour 7.0 clip launching][4]
|
||||
|
||||
Similar to many mainstream DAWs like Ableton Live, Ardour now has support for clip launching.
|
||||
|
||||
Users can now play/stop audio clips and adjust the timing to fit the tempo map of a session. Pretty useful for live performances.
|
||||
|
||||
#### Loop Library
|
||||
|
||||
![ardour 7.0 loop library][5]
|
||||
|
||||
In addition to Clip Launching, users can also take advantage of a vast collection of loops sourced from a few hand-picked creators of [looperman][6].
|
||||
|
||||
Users can choose from any of the royalty-free loops, with more to be added in the near future.
|
||||
|
||||
#### End of 32-bit Builds
|
||||
|
||||
There won't be any further 32-bit builds of Ardour, only a few will remain available on the nightly build channels for now.
|
||||
|
||||
You may want to look around at some of the DAWs available for Linux to see what else might offer a 32-bit build.
|
||||
|
||||
#### Sound Samples Available by Freesound
|
||||
|
||||
![ardour 7.0 freesound integration][7]
|
||||
|
||||
Another feature that complements the Loop Library is the integration with [Freesound][8].
|
||||
|
||||
With this, users can make use of over 600,000 samples of audio. To do this, users must have a Freesound account linked to their Ardour installation.
|
||||
|
||||
#### 🛠️ Other Changes
|
||||
|
||||
Other notable changes include:
|
||||
|
||||
- **New Themes.**
|
||||
- **Ripple Editing Modes.**
|
||||
- **Mixer Scenes.**
|
||||
- **Improvements to MIDI Editing.**
|
||||
- **Support for I/O Plugins.**
|
||||
|
||||
You can go through the official [release notes][9] for more details of the release.
|
||||
|
||||
_💬 Are you going to try out Ardour 7.0? Satisfied with the DAW you currently use?_
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://news.itsfoss.com/ardour-7-0-release/
|
||||
|
||||
作者:[Sourav Rudra][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[译者ID](https://github.com/译者ID)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://news.itsfoss.com/author/sourav/
|
||||
[b]: https://github.com/lkxed
|
||||
[1]: https://news.itsfoss.com/content/images/size/w1200/2022/10/ardour-7-0-release.jpg
|
||||
[2]: https://ardour.org/
|
||||
[3]: https://news.itsfoss.com/content/images/2022/10/Ardour_7.0.png
|
||||
[4]: https://news.itsfoss.com/content/images/2022/10/Ardour_7.0_Clip_Launching.png
|
||||
[5]: https://news.itsfoss.com/content/images/2022/10/Ardour_7.0_Loop_Library.png
|
||||
[6]: https://www.looperman.com/
|
||||
[7]: https://news.itsfoss.com/content/images/2022/10/Ardour_7.0_Freesound_Integration.png
|
||||
[8]: https://freesound.org/
|
||||
[9]: https://ardour.org/whatsnew.html
|
@ -1,135 +0,0 @@
|
||||
[#]: subject: "Xubuntu 22.10 Releases With Xfce Upgrades, and Other Refinements"
|
||||
[#]: via: "https://news.itsfoss.com/xubuntu-22-10-release/"
|
||||
[#]: author: "Ankush Das https://news.itsfoss.com/author/ankush/"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: " "
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
Xubuntu 22.10 Releases With Xfce Upgrades, and Other Refinements
|
||||
======
|
||||
|
||||
Xubuntu 22.10 provides a refined XFCE experience. Learn more about it here.
|
||||
|
||||
![Xubuntu 22.10 Releases With Xfce Upgrades, and Other Refinements][1]
|
||||
|
||||
Xubuntu is an XFCE-powered official Ubuntu flavour.
|
||||
|
||||
It is also one of the best lightweight Linux distributions available.
|
||||
|
||||
With the latest Xubuntu 22.10 "**Kinetic Kudu**" release, you can expect desktop environment improvements, feature additions, and several refinements across the board.
|
||||
|
||||
### Xubuntu 22.10: What's New?
|
||||
|
||||
![Xubuntu 22.10 home][2]
|
||||
|
||||
Xubuntu 22.10 brings in some exciting upgrades. Some of the highlights include:
|
||||
|
||||
- **Xfce 4.16 (or Xfce 4.17 dev)**
|
||||
- **Catfish appearance update.**
|
||||
- **New icon refresh and deprecated elementary-xfce-darker-theme.**
|
||||
- **Mousepad search history.**
|
||||
- **Thundar file manager improvements.**
|
||||
- **Xfce task manager.**
|
||||
|
||||
> 💡Xubuntu 22.10 will be supported for nine months until **July 2023**. If you want stability over features, you should prefer using an [LTS version][3].
|
||||
|
||||
#### XFCE 4.17 Development Version or XFCE 4.16?
|
||||
|
||||
The release notes for Xubuntu 22.10 say it features the Xfce 4.17 development version.
|
||||
|
||||
However, when I installed the beta version for Xubuntu 22.10 (and updated it to the latest), it said it features Xfce 4.16.
|
||||
|
||||
![][4]
|
||||
|
||||
Not sure if they pulled out Xfce 4.17 development version or if Xfce 4.16 is here for now.
|
||||
|
||||
#### Catfish Appearance
|
||||
|
||||
![xubuntu catfish][5]
|
||||
|
||||
Catfish is a file search utility on Xubuntu. With the new upgrade, it has a refreshed appearance with tweaks under the hood.
|
||||
|
||||
You also get an "**Open With**" context menu when interacting with the files you searched for.
|
||||
|
||||
![][6]
|
||||
|
||||
A pretty subtle but valuable feature addition for catfish.
|
||||
|
||||
#### GNOME 43 Software
|
||||
|
||||
Among notable app updates, GNOME's latest Software Center is a nice thing to have. This is how it looks with Xubuntu 22.10:
|
||||
|
||||
![][7]
|
||||
|
||||
Of course, it may not give you a consistent look with other applications on Xfce, but I think you can give it an excuse.
|
||||
|
||||
#### Icon Updates
|
||||
|
||||
With elementary-xfce 0.17 icon update, there are many new icons and cleaner options that provide a consistent Xubuntu desktop experience.
|
||||
|
||||
![][8]
|
||||
|
||||
Additionally, the **elementary-xfce-darkest theme** icon pack has been deprecated.
|
||||
|
||||
![][9]
|
||||
|
||||
#### Task Manager Right-Click Option
|
||||
|
||||
![][10]
|
||||
|
||||
You can now copy the full process path to the clipboard. This could be useful to troubleshoot or stop things from the command line when required.
|
||||
|
||||
### Other Enhancements
|
||||
|
||||
![][11]
|
||||
|
||||
There are several other notable changes that include:
|
||||
|
||||
- **Linux Kernel 5.19**
|
||||
- **Mozilla Firefox 105.**
|
||||
- **Alt-Tab view improved with more prominent icons.**
|
||||
- **Mosaic puzzle added to SGT Puzzles collection.**
|
||||
- **Thunar archive plugin now supports compressing zip files.**
|
||||
- **Mousepad text editor now includes a search history and a few more tweaks.**
|
||||
|
||||
To learn more about the changes, check out the [official release notes][12].
|
||||
|
||||
### Download Xubuntu 22.10
|
||||
|
||||
You can download the latest ISO from [Ubuntu's central image repository][13] or its [official website][14].
|
||||
|
||||
It might take a while for its official website to make the ISO available.
|
||||
|
||||
[Download Xubuntu 22.10][14]
|
||||
|
||||
💬 _What do you think about Xubuntu 22.10? Let me know your thoughts in the comments._
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://news.itsfoss.com/xubuntu-22-10-release/
|
||||
|
||||
作者:[Ankush Das][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[译者ID](https://github.com/译者ID)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://news.itsfoss.com/author/ankush/
|
||||
[b]: https://github.com/lkxed
|
||||
[1]: https://news.itsfoss.com/content/images/size/w1200/2022/10/xubuntu-22-10-release.jpg
|
||||
[2]: https://news.itsfoss.com/content/images/2022/10/xubuntu-22-10.png
|
||||
[3]: https://itsfoss.com/long-term-support-lts/
|
||||
[4]: https://news.itsfoss.com/content/images/2022/10/xfce-4-16.jpg
|
||||
[5]: https://news.itsfoss.com/content/images/2022/10/catfish-xubuntu-22-10.png
|
||||
[6]: https://news.itsfoss.com/content/images/2022/10/catfish-openwith-1.jpg
|
||||
[7]: https://news.itsfoss.com/content/images/2022/10/xubuntu-gnome-43-software.jpg
|
||||
[8]: https://news.itsfoss.com/content/images/2022/10/xubuntu-22-10-icons.jpg
|
||||
[9]: https://news.itsfoss.com/content/images/2022/10/xfce-dark-theme.png
|
||||
[10]: https://news.itsfoss.com/content/images/2022/10/task-manager-copy-command-line.jpg
|
||||
[11]: https://news.itsfoss.com/content/images/2022/10/xubuntu-22-10-puzzle.png
|
||||
[12]: https://wiki.xubuntu.org/releases/22.10/release-notes
|
||||
[13]: https://cdimage.ubuntu.com/xubuntu/releases/22.10/release/
|
||||
[14]: https://xubuntu.org/download/
|
@ -0,0 +1,114 @@
|
||||
[#]: subject: "Kate Editor is Getting Four New Awesome Features"
|
||||
[#]: via: "https://news.itsfoss.com/kate-editor-22-12-features/"
|
||||
[#]: author: "Sourav Rudra https://news.itsfoss.com/author/sourav/"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: "Cubik65536"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
Kate Editor is Getting Four New Awesome Features
|
||||
======
|
||||
|
||||
KDE's feature-packed text editor is getting better and more useful!
|
||||
|
||||
![Kate Editor is Getting Four New Awesome Features][1]
|
||||
|
||||
[Kate Editor][2] is a constantly evolving and powerful open-source text editor that acts as a viable alternative to Microsoft's proprietary Visual Studio Code application.
|
||||
|
||||
It is available for Linux, Windows, and macOS.
|
||||
|
||||
The code editor received a significant upgrade in 2021 potentially making it KDE's answer to Microsoft's offering.
|
||||
|
||||
With the upcoming Kate and KWrite 22.12 release, they aim to add a number of much-needed features.
|
||||
|
||||
Let's take a brief look at what we can expect from Kate.
|
||||
|
||||
### 🆕 Kate Editor: New Feature Additions
|
||||
|
||||
If you have been reading [Nate's blog][3] for KDE improvements, you probably know all about the upgrades coming to KDE Plasma and the applications.
|
||||
|
||||
However, some exciting additions are coming to Kate 22.12 that I wanted to highlight:
|
||||
|
||||
- **Support for Qt Widgets**
|
||||
- **Updated Welcome Page**
|
||||
- **Git Diff Viewer**
|
||||
- **Configuration Tab**
|
||||
- **Clipboard History**
|
||||
|
||||
#### Welcome Page
|
||||
|
||||
![kate 22.12 welcome page][4]
|
||||
|
||||
Image Credits: KDE
|
||||
|
||||
Like many other [KDE apps][5], Kate will now show a welcome page that will greet users with a welcome screen and include options like creating or opening a file, starting a new session, viewing recent documents, and more.
|
||||
|
||||
For users who might not like this, an option will be provided on the welcome page to disable this behavior for a new window.
|
||||
|
||||
#### Git Diff Viewer
|
||||
|
||||
![kate 22.12 git diff support][6]
|
||||
|
||||
Image Credits: KDE
|
||||
|
||||
Kate will finally get support for viewing git-diff; users will be able to compare their code to check for differences and find those pesky bugs that are causing their application not to run correctly.
|
||||
|
||||
Users will also be able to choose from a variety of views, such as unified, side-by-side, and raw.
|
||||
|
||||
#### New Clipboard History Paste Dialog
|
||||
|
||||
![kate 22.12 clipboard history][7]
|
||||
|
||||
Image Credits: KDE
|
||||
|
||||
A new dialog has been added to Kate, showing users a list of previous clipboard content while pasting.
|
||||
|
||||
This can be helpful if you are juggling between multiple lines of code and don't want to lose track of the essential bits.
|
||||
|
||||
#### Configuration Tab
|
||||
|
||||
![kate 22.12 configuration tab][8]
|
||||
|
||||
Image Credits: KDE
|
||||
|
||||
Kate will also feature a configuration tab that lets users change significant settings and a search bar to quickly find specific settings.
|
||||
|
||||
#### 🛠️ Other Changes and Improvements
|
||||
|
||||
Some other notable improvements to be featured on Kate 22.12 are:
|
||||
|
||||
- **Optimized Status Bar**
|
||||
- **Improvements to the Build Plugin**
|
||||
- **Moveable Sidebar Buttons**
|
||||
- **Improvements to Window Handling**
|
||||
|
||||
Kate is shaping to be a suitable alternative to Microsoft's [Visual Studio Code][9] and has come a long way since its major revamp in 2021.
|
||||
|
||||
In Kate's [official blog post][10], you can learn more about these changes and watch them in action.
|
||||
|
||||
💬 Are you looking forward to the release of Kate 22.12? Or do you prefer VS Code?
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://news.itsfoss.com/kate-editor-22-12-features/
|
||||
|
||||
作者:[Sourav Rudra][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[Cubik65536](https://github.com/Cubik65536)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://news.itsfoss.com/author/sourav/
|
||||
[b]: https://github.com/lkxed
|
||||
[1]: https://news.itsfoss.com/content/images/size/w1200/2022/11/kate-4-new-features.jpg
|
||||
[2]: https://kate-editor.org/
|
||||
[3]: https://pointieststick.com
|
||||
[4]: https://news.itsfoss.com/content/images/2022/11/Kate_22.12_Welcome.png
|
||||
[5]: https://apps.kde.org/
|
||||
[6]: https://news.itsfoss.com/content/images/2022/11/Kate_22.12_GitDiff-1.png
|
||||
[7]: https://news.itsfoss.com/content/images/2022/11/Kate_22.12_Clipboard_Hist-1.png
|
||||
[8]: https://news.itsfoss.com/content/images/2022/11/Kate_22.12_Config-1.png
|
||||
[9]: https://code.visualstudio.com/
|
||||
[10]: https://kate-editor.org/post/2022/2022-10-31-treats-for-kate/
|
@ -0,0 +1,98 @@
|
||||
[#]: subject: "Linux Mint's Update Manager Now Supports Flatpak"
|
||||
[#]: via: "https://news.itsfoss.com/linux-mint-update-manager/"
|
||||
[#]: author: "Sourav Rudra https://news.itsfoss.com/author/sourav/"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: "qfzy1233"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
Linux Mint's Update Manager Now Supports Flatpak
|
||||
======
|
||||
|
||||
Linux Mint's Update Manager just got more helpful!
|
||||
|
||||
![Linux Mint's Update Manager Now Supports Flatpak][1]
|
||||
|
||||
Linux Mint's Update Manager is an essential part of the distro that makes the experience easier for new users.
|
||||
|
||||
A recent update has pushed many improvements to Linux Mint 21, including Flatpak support with the update manager.
|
||||
|
||||
**You just need to update your system to get these refinements.**
|
||||
|
||||
### ⭐ Flatpak Support In Update Manager
|
||||
|
||||
![linux mint 21 flatpak support in update manager][2]
|
||||
|
||||
Image Credits: The Linux Mint Blog
|
||||
|
||||
Yes, you read that right. It is finally happening.
|
||||
|
||||
Flatpak support has been added to the Update Manager, letting users update Flatpak applications and runtimes in a few clicks.
|
||||
|
||||
This should make way for a unified update experience that further improves the user experience.
|
||||
|
||||
It is beneficial for new users who need not be familiar with terminal commands to update Flatpak. Also, you do not require to integrate Flatpak with the software center (for GNOME).
|
||||
|
||||
In other words, the Linux Mint team enhanced your experience with Flatpak apps.
|
||||
|
||||
**Alongside Flatpak support, the update includes a few more enhancements to Linux Mint 21, which is immediately available as an update.**
|
||||
|
||||
Some of the refinements include:
|
||||
|
||||
### Improvements To Corner Bar
|
||||
|
||||
![linux mint 21 updated corner bar][3]
|
||||
|
||||
Image Credits: The Linux Mint Blog
|
||||
|
||||
The corner bar on Linux Mint 21 has received two new additions:
|
||||
|
||||
- **Ability to set left click and middle click actions to the corner bar; you can configure it to show the desktop, the workspace selector, or the desklets.**
|
||||
- **A new option lets you hover your mouse on the corner bar to show the desktop.**
|
||||
|
||||
### Updates To Nemo
|
||||
|
||||
![linux mint 21 updated nemo file manager][4]
|
||||
|
||||
Image Credits: The Linux Mint Blog
|
||||
|
||||
The Nemo file manager has received a few tweaks; now, when files are selected, only the file names will be highlighted instead of the icon and file name.
|
||||
|
||||
**If you did not know**, you could enhance the Nemo file manager experience with some of our suggested tweaks as well:
|
||||
|
||||
Furthermore, the desktop icon has been flipped vertically, and a new shortcut has been added to the desktop's context menu to give quick access to the display settings.
|
||||
|
||||
### Fewer Password Prompts
|
||||
|
||||
This is another user experience tweak that many of you might like.
|
||||
|
||||
When removing a Flatpak or any shortcut or local application, it will no longer ask you for a password.
|
||||
|
||||
Similarly, in the case of Synaptic and the Update Manager, pkexec will be used to remember the password.
|
||||
|
||||
This way, users do not have to enter the password every time they perform multiple operations.
|
||||
|
||||
You can refer to [Linux Mint's monthly blog post][5] to learn about other changes.
|
||||
|
||||
**Via: [DebugPointNews][6]**
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://news.itsfoss.com/linux-mint-update-manager/
|
||||
|
||||
作者:[Sourav Rudra][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[qfzy1233](https://github.com/qfzy1233)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://news.itsfoss.com/author/sourav/
|
||||
[b]: https://github.com/lkxed
|
||||
[1]: https://news.itsfoss.com/content/images/size/w1200/2022/11/mint-updater-tool-flatpak-support.png
|
||||
[2]: https://news.itsfoss.com/content/images/2022/11/Linux_Mint_21_UM_FlatpakSupport.png
|
||||
[3]: https://news.itsfoss.com/content/images/2022/11/Linux_Mint_21_CornerBar_Update.png
|
||||
[4]: https://news.itsfoss.com/content/images/2022/11/Linux_Mint_21_Nemo_Updates.png
|
||||
[5]: https://blog.linuxmint.com/?p=4424
|
||||
[6]: https://debugpointnews.com/linux-mint-update-flatpak/
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user