Arindam 发布的文章

Linus Torvalds 发布了用来测试的 Linux 内核 5.19 RC1,带来了一些重大变化。

继上个月 Linux 内核 5.18 发布之后,Linus Torvalds 宣布了 Linux 内核 5.19 系列第一个候选版本。与此同时,Linux 内核 5.19 官方合并窗口关闭,这意味着除非是关键性的,否则不会再接受任何新功能。

简单看一下 Linux 内核 5.19 的新内容,会发现 CPU、GPU、网络、存储和核心模块都有常规的更新。此外,代码清理、淘汰过时硬件和对以后芯片组的持续支持是此版本的亮点。

在进一步介绍之前,让我们简单来看一下这些新特性。

Linux 内核 5.19(RC1)的新特性

CPU

首先需要提及的是,Linux 内核 5.19 开始 初步支持 龙芯架构的 CPU 系列。龙芯由中国龙芯中科公司设计开发。龙芯架构的 CPU 是兼容 MIPS 架构的通用微处理器。不过虽然现在提供了支持,但是你仍不能在龙芯 CPU 上启动 Linux,因为一些代码还在审核中。希望在 5.20 版本中能够使用。

新的 英特尔 IFS 驱动 在该版本中落地,这有助于在部署前后发现硬件问题。它能够在早期阶段检测电路层面的 CPU 错误。

在前几个针对英特尔 CPU 的内核版本中一直在对电源管理和散热方面进行开发,这个版本 也不例外。首先,为 Raptor 和 Alder Lake 家族添加了英特尔 运行时平均功率限制 Run-Time Average Power Limiting (RAPL)的支持。其次,改进了 P-state 驱动以处理频率变化,并且基于 CPU 的缩放支持被添加到被动 devfreq 中。

虽然英特尔 CPU 主要是散热和电源管理方面的工作,但对 AMD CPU 系列来说有更多的性能更新。首先,计划在今年年底完成 ZMD Zen 4 CPU 的 基于指令的采样 Instruction-Based Sampling (IBS)模块引入了更多更新。此外,此版本引入了 PerfMonV2,提供了更多性能监视能力。

此外,该版本中移除了 a.out 支持。同样,过时的 Renesas H8/300 CPU 也被移除了。

主要 ARM 更新

终于,主线 Linux 内核能够 支持 ARM 多平台 了。在 Linus 的 RC1 开场白中可以看到,这是该版本中的巨大改变!从 Linux 3.7 开始,跨越了十多年的工作,这是多么漫长的过程。

Linux 内核 5.19 Rc1 发布公告提到了 ARM 变化

图形和存储升级

存储子系统在各种流行的文件系统中都有性能提升。最主要的变化包括苹果 M1 NVMe 控制器支持和对 XFS 文件系统的更好支持。此外,Btrfs、F2FS 以及 exFAT 文件系统也有增强。

在代码行数方面,有一个令人兴奋的指标是仅是图形驱动程序 Linux 内核 5.19 就增加了大约50 万行代码。它包括 AMD 的 RDNA、CDNA,英特尔的 Raptor Lake、DG2/Alchemist 等图形驱动更新。

重要的网络变化

鉴于数据传输大幅增长,对 Big TCP 的支持有助于支持数据中心 400 GBit 级别的流量。它还可以在高性能网络环境中降低延迟。

继续改进了 多路径 TCP Multi-Path TCP (MPTCP)。此外,高通 ath11k WiFi 驱动程序在此版本中添加了网络唤醒功能。同样增加了对瑞昱的 8852ce 芯片、联发科的 T700 调制解调器以及瑞萨科技的 RZ/V2M 的支持。

其他值得注意的功能

首先,内核中著名的随机函数生成器(RNG)在此版本中 继续 改进。

其次,著名的新兴的 Framework 模块化笔记本电脑获得了此版本 Chrome OS EC 驱动支持。Framework 笔记本现在可以作为一个非 Chromebook 设备利用 ChromeOS 的嵌入式控制器。

此外,Wacom 绘画板以及其他相关设备也有众多更新。包括 对联想 Thinkpad TrackPoint II、谷歌 Whiskers Touchpad、联想 X12 TrackPoint 等设备支持的提升。

Linux 内核 5.19 下载

如果你想要测试并尝试该候选版本,可以在 这里 下载。

预计在 2022 年 7 月左右最终版本发布前,将会有多个版本更迭。

参考自:内核邮件列表


via: https://www.debugpoint.com/2022/06/linux-kernel-5-19-rc1/

作者:Arindam 选题:lkxed 译者:Donkey-Hao 校对:wxy

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

这篇快速指南是为了帮助你修复 “yay error: while loading shared libraries: libalpm.so.12” 错误。

如果你在系统中运行 Arch Linux 的时间比较长,那么由于其滚动发布性质以及你的硬件支持,程序可能会损坏。 如果你使用 AUR 助手 Yay,那么有时,由于其他软件包的多次安装升级,Yay 可能会损坏。

Yay 助手一般是非常稳定的,但有时它会被搞乱,在修复好之前,你不能使用它安装任何程序。而其中一个令人头疼的错误是这样的:

yay: error while loading shared libraries: libalpm.so.12: cannot open shared object file: No such file or directory

这个错误特别是在升级到 pacman 6.0 后出现的,因为共享库不兼容。

error while loading shared libraries - yay

如何解决 “yay: error while loading shared libraries: libalpm.so.12”

这个错误只能通过完全卸载 yay 来解决,包括它的依赖。然后重新安装 yay

没有其他方法来解决这个错误。

我们已经有一个 如何安装 Yay 的指南,然而,以下是修复的步骤。

从 AUR 克隆 yay 仓库并构建。在终端窗口中依次运行以下命令。

cd /tmp
git clone 'https://aur.archlinux.org/yay.git'
cd /tmp/yay
makepkg -si
cd ~
rm -rf /tmp/yay/

安装完成后,你可以尝试运行给你带来这个错误的命令。然后就好了。如果你仍然有这个错误,请在下面的评论区告诉我。

很多人都遇到了这个问题,网络上有 几个讨论。以上是解决这个错误的唯一办法。而且我在任何地方都找不到这个问题的确切根源,除了它是在 pacman 6.0 更新后开始的。


via: https://www.debugpoint.com/2021/07/yay-error-libalpm-so-12/

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

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

GNOME Shell 在一台 Pinephone 原型机上运行

GNOME 开发人员在最近的一篇博文中提出了将 GNOME Shell 完全移植到手机上的想法。下面是我对这个项目的一些看法。

移动版 GNOME Shell

作为一个桌面环境,GNOME 在过去的十年中发展成为了 GNOME 40。GNOME 40 是一个重要的版本,它以一种现代的方式改变了完整的用户界面设计。

看着 GNOME 40 的设计方式,你可能会觉得 Shell 和它的底层技术已经为小屏幕做好了准备。手势驱动的工作区、图标网格和停靠区 —— 在某种程度上感觉更接近于像安卓这样的移动操作系统,而不是桌面环境。

此外,系统托盘、日历、通知和原生的应用程序,可以有效地在较小尺寸的设备上工作。得益于 GTK4 和 libadwaita,其设计是响应式的,应用程序和控件的外观与移动平台很匹配。

在 GNOME 40 之后,GNOME 开发者为较小尺寸的设备(如平板电脑和手机)设计了几个 GNOME Shell 的概念验证。

为什么是现在?

任何项目的开发和研究工作都要花费时间和金钱。虽然有来自主要科技公司对 GNOME 的捐赠,但这次有一个 “ 原型基金 Prototype Fund ” 帮助该团队继续进行这项努力。原型基金 是德国教育部(BMBF)支持公共利益软件的资助项目。

包括什么?

设计一个完整的移动用户界面,并将其与移动操作系统整合是一个非常复杂的项目。它需要一个精心设计的愿景来支持成千上万的移动硬件和用户支持。更不用说,用户在移动设备上的隐私和安全问题了。

因此,有了这个基金,团队可以集中精力进行概念验证,以满足 GNOME Shell 中一些基本的用户互动。

  • 启动器
  • 应用程序网格
  • 轻扫、手势和导航
  • 用手机键盘搜索
  • 检测屏幕大小和支持屏幕旋转
  • 工作空间和多任务
  • 设置
  • 屏幕键盘

GNOME Shell 移动版模拟图

始终要记住的是,移动体验远不止用户界面这么简单。另外,GNOME 本身并不是一个操作系统。它由底层的稳定的操作系统组成,它提供了非常需要的隐私和安全。另外,“应用商店”的概念也是如此。手机制造商需要与 GNOME 开发者合作,让他们的产品采用这个概念。

进展如何?

在写这篇文章时,团队给我们快速演示了取得的进展。在下面的视频中可以看到:

Phone

复杂的任务是识别触摸屏手机中的各种手势。例如,你可能会使用长触摸、短触摸、双指轻扫和拖动,以及许多只有在小尺寸设备中才可行的可能性。这需要在各自的 GNOME Shell 组件中推倒重构。

而完全在现有的 GNOME Shell 基础上开发它们是很有挑战性的工作。

此外,该团队使用著名的 Pinephone Pro 进行开发和测试。Pinephone 已经是一个商业产品,装有 “友商” KDE Plasma 手机和其他 Linux 操作系统。

Tablet

结语

如果一切按计划进行,我们可能在一个完整的开源手机中获得原生的 GNOME 体验。而你可以重新拥有你的隐私!

另外,我不确定 Phosh(它也是基于 GNOME 的)会发生什么。虽然 Phosh 是由 Purism 开发和管理的,但看看 GNOME Shell 在移动设备上的努力和 PHosh 在未来一段日子的发展方向将是很有趣的。

那么,你对这个项目的前景怎么看?请在下面的评论栏里告诉我。

图片和视频来源:GNOME 开发者 博客


via: https://www.debugpoint.com/2022/06/gnome-shell-mobile-announcement/

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

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

本教程概述了 Collision 的功能和使用指南。它是一个基于 GUI 且易于使用的程序,可让你使用加密哈希函数验证文件。

为什么需要验证文件?

人们每天都通过互联网下载文件。但许多用户从不费心去验证他们的完整性或真实性。这意味着不知道该文件是否合法且未被任何恶意代码篡改。

以作为标准安装镜像的 Linux 发行版 的 ISO 文件为例。所有流行的发行版制造商在 ISO 文件还提供哈希文件。使用该文件,你可以轻松比较下载文件的哈希值。让你可以放心你的文件是正确的并且没有以任何方式损坏。

此外,如果你通过不稳定的互联网连接下载大文件,该文件可能会损坏。在这些情况下,它也有需要验证。

Collision – 功能和使用方法

Collision 使用加密哈希函数来帮助你验证文件。加密哈希函数是一种流行的算法,它通过多种加密算法将文件数据生成为固定长度的数据流。最受欢迎的是 MD5、SHA-1、SHA-256 和 SHA-512。所有这些 Collision 都支持。

除此之外,Collision 还提供了一个简洁的用户界面,它对每个 Linux 用户都简单易用。这是它的外观。

Collision – First Screen

首先,它有两个主要特点。 a、上传文件以获取校验和和或哈希值;b、将校验和与上传的文件进行比较。

例如,如果你有一个简单的文件,你可以通过“ 打开文件 Open a File ”按钮上传一个文件,或“ 打开 Open ”按钮重新上传另一个文件。

如下图所示,该文本文件具有以下各种哈希函数的校验和。现在你可以通过互联网/与任何人共享该文件,以及用于验证的校验和值。

Hash values of a test file

此外,如果有人篡改文件(即使是单个字节)或文件在分发过程中被破坏,那么哈希值就会完全改变。

其次,如果要验证已下载文件的完整性,请点击“ 验证 Verify ”选项卡。然后上传文件,输入你收到的上传文件的哈希值。

如果匹配,你应该会看到一个绿色勾号,显示其真实性。

Collision verifies a sample file with SHA-256

此外,这是另一个示例,我修改了测试文件并保持大小相同。这个场景清楚地表明它对该文件无效。

Collision showing that a file is not valid

重要说明

这里值得一提的是,哈希方法不会验证文件元属性,如修改时间、修改日期等。如果有人篡改了文件并将其还原为原始内容,这种哈希方式将其称为有效文件。

现在,让我们看一个验证 ISO 文件的典型示例。

使用 Collision 验证 Ubuntu Linux 的示例 ISO 文件

我相信你在使用 Linux 时通常会下载许多 ISO 文件。为了说明,我从官方 Ubuntu 下载页面下载了流行的 Ubuntu ISO 服务器镜像。

Ubuntu server ISO file and checksums

SHA256SUMS 文件带有上面的该安装程序的以下校验和值:

SHA-256 value of Ubuntu server ISO image

下载后,打开 Collision 应用并通过“ 验证 Verify ”选项卡上传 ISO 文件。然后复制 SHA-256 值并将其粘贴到左侧的校验和框中。

如果你已正确下载并按照步骤操作,你应该会看到该文件是真实有效的。

Ubuntu server ISO image verified

如何安装 Collision

使用 Flatpak 可以轻松安装 Collision 应用。你需要为你的 Linux 发行版 设置 Flatpak,并单击以下链接以安装 Collision。

通过 Flathub 安装 Collision

安装后,你应该通过发行版的应用菜单找到它。

有没有其他方法可以在没有任何应用的情况下验证文件?

是的,所有 Linux 发行版中都有一些内置程序,你还可以使用它们来使用终端验证文件及其完整性。

下面的终端程序可用于确定任何文件的哈希值。它们默认安装在所有发行版中,你甚至可以将它们用于你的 shell 脚本以实现自动化。

md5sum <文件名>
sha1sum <文件名>
sha256sum <文件名>

使用上述程序,你可以找出哈希值。但是你需要比较它们以手动验证。

Verify files via command-line utilities

结束语

我希望本指南可以帮助你使用 Collision GTK 应用验证你的文件。它使用起来很简单。此外,你可以在终端中使用命令行方法来验证您想要的任何文件。尽可能始终检查文件完整性总是应该的。


via: https://www.debugpoint.com/2022/05/collision/

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

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

这是一篇如何从源码编译 GNOME 的快速指南,包括 Shell、mutter 和一些原生应用。

在编译之前,你需要确保一些事情,因为以下编译直接来自 Gitlab 的主分支,其中包含一些开发包。

通常,你可以选择在任何 Linux 发行版中编译。但是我建议使用 Fedora Rawhide(Fedora 的开发分支,用于将来的发布)。

另外,请勿在稳定系统中尝试此操作。因为操作可能出错,所以你可能最终得到损坏的系统。

总而言之,你需要以下内容来从源码编译 GNOME。

  • 测试环境(虚拟机 或测试系统)。
  • Fedora Rawhide 发行版(推荐,从此处下载)。
  • 确保你的发行版是最新的。
  • 你已登录 X.org 会话。

我不建议你在 Wayland 会话中进行编译,因为你会遇到问题。

从源码编译 GNOME

GNOME 桌面是一个基于其功能的软件包集合。Linux 发行版的桌面组件工作于窗口管理器和 shell 之下。

因此,对于 GNOME,我将首先编译 mutter – 它是 GNOME Shell 的窗口管理器。然后进行 GNOME Shell 的编译。最后,我将编译一些原生应用。

我将使用 meson 构建系统进行编译。meson 是一个漂亮的构建系统,快速且用户友好。

编译 mutter

打开终端并安装 GNOME Shell 和 mutter 所需的软件包。

sudo dnf build-dep mutter gnome-shell

在主目录(或你想要的任何地方)中创建演示目录。

cd ~
mkdir demo
cd demo

从 Gitlab 克隆 mutter 的主分支。

git clone https://gitlab.gnome.org/GNOME/mutter

进入克隆目录,然后使用以下 meson 命令来准备构建文件。默认情况下,meson 使用 /usr/local 用于构建文件。但是,你也可以使用前缀开关将输出重定向到特定文件夹(如下所示)。

cd mutter
meson _build --prefix=/usr

Compile Mutter for GNOME

使用以下命令在构建完成时,将 mutter 安装在到系统中。

sudo ninja install -C _build

编译 GNOME Shell

GNOME Shell 和其他软件包的编译方法类似。首先,从 GitLab 克隆 GNOME Shell 主仓库,然后进行编译和安装。你可以按照下面的命令依次进行。

在 GNOME Shell 中,你需要两个依赖项。它们是 asciidocsassc 。请在构建 GNOME Shell 之前安装它们。

sudo dnf install asciidoc
sudo dnf install sassc

安装完这些依赖项后,按照下面的命令来构建和安装 GNOME Shell。在运行这个命令之前,请确保你回到 demo 文件夹(我在第一步创建的)。

git clone https://gitlab.gnome.org/GNOME/gnome-shellcd gnome-shellmeson _build --prefix=/usrsudo ninja install -C _build

运行 GNOME Shell

编译完成后,你可以尝试重新启动 GNOME Shell 来查看来自主分支的变化。

在重启之前,正如我之前提到的,确保你处于 X.Org 会话中。按 ALT+F2 并输入 r。然后按回车键。这个命令将重启 GNOME Shell。

Restart GNOME Shell (X11)

恭喜你! 你已经成功地编译了 GNOME Shell 和 Mutter。

现在,是时候编译一些 GNOME 原生应用了。

编译 GNOME 原生应用

这些步骤对于 GNOME 或任何应用的所有源码都是一样的。你需要改变仓库的名字。因此,这里有一些编译必要的 GNOME 原生应用的命令示例。

Files(Nautilus)

git clone https://gitlab.gnome.org/GNOME/nautilus/cd gnome-shellmeson _build --prefix=/usrsudo ninja install -C _build

GNOME 软件商店

git clone https://gitlab.gnome.org/GNOME/gnome-software/cd gnome-shellmeson _build --prefix=/usrsudo ninja install -C _build

GNOME 控制中心

git clone https://gitlab.gnome.org/GNOME/gnome-control-center/cd gnome-shellmeson _build --prefix=/usrsudo ninja install -C _build

FAQ

  1. 使用上述步骤,你可以编译任何源码分支。不仅仅是 GNOME。
  2. GitLab 服务器有时很慢,克隆一个仓库可能需要较长的时间。如果 git clone 失败,我建议你再试一次。

结束语

我希望这个小小的高级教程能够帮助你在新的 GNOME 功能出现在 GNOME 每日构建系统之前尝试它。既然你编译了,你也可以为测试新的 GNOME 功能做出贡献,并在 GitLab 问题页面上报告任何特定包的 bug 或问题。

这篇文章是开源应用编译系列的第一篇文章。请继续关注更多开源应用的编译文章。

另外,请让我在下面的评论栏中知道你的评论、建议,或者你在使用这些说明时遇到的任何错误。

干杯。


via: https://www.debugpoint.com/2022/05/compile-gnome-source/

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

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

在 5 分钟内将你最喜欢的 GNOME 桌面打磨得更精致。

你可以使用图标、主题、光标和壁纸等多种方式来定制你最喜爱的 GNOME 桌面。本文向你展示了如何使你的 GNOME 42 桌面看起来更精致。在最近发布的 Ubuntu 22.04 LTS 和 Fedora 36 上提供了 GNOME 42 桌面环境。

在你进一步阅读之前,先看看调整之前和之后的外观比较。

GNOME before customisation

GNOME after customisation

我将把本教程分为两个部分。

第一部分涉及设置和安装所需的软件包。然后第二部分是如何应用各种设置来获得你想要的外观。

本教程主要在 Ubuntu 22.04 LTS 上测试。但是,它应该适用于 Ubuntu 和 Fedora 的其他变体。

将 GNOME 42 定制得更精致

设置

首先,为你的系统启用 Flatpak,因为我们需要安装扩展管理器来下载本教程所需的 GNOME Shell 扩展。

因此,要做到这一点,请打开一个终端并运行以下命令:

sudo apt install flatpak gnome-software-plugin-flatpak
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo

完成后重启计算机。

然后从终端运行以下命令,来安装扩展管理器应用以下载 GNOME Shell 扩展:

flatpak install flathub com.mattjakeman.ExtensionManager

打开扩展管理器应用,并安装两个扩展。第一个是 “ 浮动停靠区 Floating Dock ”,它提供了超酷的停靠区,你可以在桌面上的任何位置移动它。第二个,安装 “ 用户主题 User themes ” 扩展来帮助你在 Ubuntu Linux 中安装外部 GTK 主题。

User Themes Extension

Floating Dock Extension

接着,使用以下命令安装 Materia 主题。你必须构建它,因为它没有任何可执行文件。在 Ubuntu 中依次运行以下命令进行安装:

git clone https://github.com/ckissane/materia-theme-transparent.git
cd materia-theme-transparent
meson _build
meson install -C _build

此外,请从 这里 下载 Kora 图标主题。下载后解压文件,将以下四个文件夹复制到 /home/<用户名>/.icons 路径下。如果 .icons 文件夹不存在,请创建它。

Kora Icon Theme

除了上述更改,从 这里 下载 Bibata 光标主题。下载后,解压文件夹并将其复制到相同的 /home/<用户名>/.icons 文件夹中。

除了上述之外,如果你想要一个与上述主题相匹配的漂亮字体,请从谷歌字体 下载 Robot 字体,并将它们复制到 /home/<user name>/.fonts 文件夹。

最后,再次重启系统。

配置

打开扩展管理器,启用 “ 浮动停靠区 Floating Dock ” 和 “ 用户主题 User themes ”,并禁用 “Ubuntu Dock”。

Changes to Extensions

此外,打开 “ 浮动停靠区 Floating Dock ” 设置并进行以下更改:

Floating Dock Settings

此外,打开 GNOME 优化工具 GNOME Tweak Tool ,然后转到 外观 Appearance 选项卡。设置以下内容:

  • 光标:Bibata-Original-Ice
  • Shell 主题:Materia
  • 图标:Kora

除此之外,你可能还想更改字体。为此,请转到 字体 Fonts 选项卡并将文档和界面更改为 “Robot 10pt”。

或者,你也可以从 Ubuntu 22.04 的默认设置中更改强调色和样式。

最后,根据你的喜好下载漂亮的壁纸。对于本教程,我从 这里 下载了一个示例壁纸。

如果一切顺利,你应该有一个漂亮的桌面,如下图所示:

Customize GNOME 42 – Final Look

享受你的精致的 GNOME 42!干杯。


via: https://www.debugpoint.com/2022/05/customize-gnome-42-look-1/

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

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