标签 arch 下的文章

现在上网已经很方便了,但技术上会有限制。看到技术的发展,我很惊讶,但与此同时,各种地方也都会出现衰退。

当你搜索有关其他 Linux 发行版的某些东西时,大多数时候你会得到的是一个第三方的链接,但是对于 Arch Linux 来说,每次你都会得到 Arch Wiki 页面的结果。

因为 Arch Wiki 提供了除第三方网站以外的大多数解决方案。

到目前为止,你也许可以使用 Web 浏览器为你的 Arch Linux 系统找到一个解决方案,但现在你可以不用这么做了。

一个名为 arch-wiki-man 的工具提供了一个在命令行中更快地执行这个操作的方案。如果你是一个 Arch Linux 爱好者,我建议你阅读 Arch Linux 安装后指南,它可以帮助你调整你的系统以供日常使用。

arch-wiki-man 是什么?

arch-wiki-man 工具允许用户从命令行(CLI)中离线搜索 Arch Wiki 页面。它允许用户以 Linux Man 手册样式访问和搜索整个 Wiki 页面。

而且,你无需切换到 GUI。更新将每两天自动推送一次,因此,你的 Arch Wiki 本地副本页面将是最新的。这个工具的名字是 awmanawman 是 “Arch Wiki Man” 的缩写。

我们之前写过一篇类似工具 Arch Wiki 命令行实用程序(arch-wiki-cli)的文章。这个工具允许用户从互联网上搜索 Arch Wiki。但你需要在线使用这个实用程序。

如何安装 arch-wiki-man 工具?

arch-wiki-man 工具可以在 AUR 仓库(LCTT 译注:AUR 即 Arch 用户软件仓库 Arch User Repository )中获得,因此,我们需要使用 AUR 工具来安装它。有许多 AUR 工具可用,而且我们曾写了一篇关于流行的 AUR 辅助工具: Yaourt AUR helperPacker AUR helper 的文章。

$ yaourt -S arch-wiki-man

$ packer -S arch-wiki-man

或者,我们可以使用 npm 包管理器来安装它,确保你已经在你的系统上安装了 NodeJS。然后运行以下命令来安装它。

$ npm install -g arch-wiki-man

如何更新 Arch Wiki 本地副本?

正如前面更新的那样,更新每两天自动推送一次,也可以通过运行以下命令来完成更新。

$ sudo awman-update
[sudo] password for daygeek:
[email protected] /usr/lib/node_modules/arch-wiki-man
└── [email protected]

arch-wiki-md-repo has been successfully updated or reinstalled.

awman-update 是一种更快、更方便的更新方法。但是,你也可以通过运行以下命令重新安装 arch-wiki-man 来获取更新。

$ yaourt -S arch-wiki-man

$ packer -S arch-wiki-man

如何在终端中使用 Arch Wiki ?

它有着简易的接口且易于使用。想要搜索,只需要运行 awman 加搜索项目。一般语法如下所示。

$ awman Search-Term

如何搜索多个匹配项?

如果希望列出包含 “installation” 字符串的所有结果的标题,运行以下格式的命令,如果输出有多个结果,那么你将会获得一个选择菜单来浏览每个项目。

$ awman installation

详细页面的截屏:

在标题和描述中搜索给定的字符串

-d--desc-search 选项允许用户在标题和描述中搜索给定的字符串。

$ awman -d mirrors

$ awman --desc-search mirrors
? Select an article: (Use arrow keys)
❯ [1/3] Mirrors: Related articles
  [2/3] DeveloperWiki-NewMirrors: Contents
  [3/3] Powerpill: Powerpill is a pac

在内容中搜索给定的字符串

-k--apropos 选项也允许用户在内容中搜索给定的字符串。但须注意,此选项会显著降低搜索速度,因为此选项会扫描整个 Wiki 页面的内容。

$ awman -k openjdk

$ awman --apropos openjdk
? Select an article: (Use arrow keys)
❯ [1/26] Hadoop: Related articles
 [2/26] XDG Base Directory support: Related articles
 [3/26] Steam-Game-specific troubleshooting: See Steam/Troubleshooting first.
 [4/26] Android: Related articles
 [5/26] Elasticsearch: Elasticsearch is a search engine based on Lucene. It provides a distributed, mul..
 [6/26] LibreOffice: Related articles
 [7/26] Browser plugins: Related articles
(Move up and down to reveal more choices)

在浏览器中打开搜索结果

-w--web 选项允许用户在 Web 浏览器中打开搜索结果。

$ awman -w AUR helper

$ awman --web AUR helper

以其他语言搜索

想要查看支持的语言列表,请运行以下命令。

$ awman --list-languages
arabic
bulgarian
catalan
chinesesim
chinesetrad
croatian
czech
danish
dutch
english
esperanto
finnish
greek
hebrew
hungarian
indonesian
italian
korean
lithuanian
norwegian
polish
portuguese
russian
serbian
slovak
spanish
swedish
thai
ukrainian

使用你的首选语言运行 awman 命令以查看除英语以外的其他语言的结果。

$ awman -l chinesesim deepin


via: https://www.2daygeek.com/arch-wiki-man-a-tool-to-browse-the-arch-wiki-pages-as-linux-man-page-from-offline/

作者:Prakash Subramanian 选题:lujun9972 译者:Auk7F7 校对:wxy

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

Arch Linux 镜像列表管理器是一个简单的图形化程序,它让你可以方便地管理 Arch Linux 中的镜像。

对于 Linux 用户来说,保持镜像列表规整非常重要。今天我们来介绍一个用来管理 Arch 镜像列表的应用程序。

Arch Linux Mirrorlist Manager

Arch Linux Mirrorlist Manager

什么是镜像?

给新手的话,Linux 操作系统有赖于分布全球的的一系列服务器。这些服务器包含了特定发行版的所有可用的软件包的一样的副本。这就是为什么它们被称为“镜像”。

这些服务器的最终目标时让每个国家都有多个镜像。这样就能让当地的用户可以快速升级系统。然而,这并不绝对。有时别国的镜像反而更快。

ArchLinux 镜像列表管理器让在 Arch Linux 中管理镜像更简单

Arch Linux Mirrorlist Manager

主界面

在 Arch 中管理并对有效镜像进行排序 不是个简单的事情。它需要用到很长的命令。还好,有人想出了一个解决方案。

去年,RizwanHasan 用 Python 编写了一个名为 Arch Linux 镜像列表管理器 的 Qt 应用程序。你可能对 Rizwan 这个名字感到眼熟,因为这不是第一次我们在本站介绍他做的玩意了。一年多前,我介绍过一个名为 MagpieOS 的基于 Arch 的新 Linux 发行版就是 Rizwan 创造的。我想 Rizwan 创造 MagpieOS 的经历激励了他创建了这个程序。

Arch Linux 镜像列表管理器的功能并不多。它让你根据回应速度对镜像进行排序,并可以根据数量和国家进行过滤。

也就是说,若你在德国,你可以限制只保留在位于德国的最快的 3 个镜像。

安装 Arch Linux 镜像列表管理器

它仅适用于 Arch Linux 用户

注意! Arch Linux 镜像列表管理器只能应用于 Arch linux 发行版. 不要在其他基于 Arch 的发行版中使用它,除非你能确定该发行版使用的是 Arch 镜像。否则,你将会遇到我在 Manjaro 中遇到的问题(在下面章节解释).


Manjaro 中的镜像管理器替代品

当使用类 Arch 的系统时, 我选择了 Manjaro。在开始本文之前,我在 Manjaro 及其上安装了 Arch Linux 镜像列表管理器。它很快就对有效镜像进行了排序并保存到我的镜像列表中。

然后我尝试进行系统更新却立即遇到了问题。当 ArchLinux 镜像列表管理器对我系统使用的镜像进行排序时,它使用普通的 Arch 镜像替换了我的 Manjaro 镜像。(Manjaro 基于 Arch,但却有着自己的镜像,这是因为开发团队会在推送软件包之前对所有这些软件包进行测试以保证不会出现系统崩溃的 BUG。)还好,Manjaro 论坛帮我修复了这个错误。

若你是 Manjaro 用户,请不要重蹈我的覆辙。Arch Linux 镜像列表管理器 仅适用于 Arch 以及使用 Arch 镜像的衍生版本。

幸运的是,manjaro 有一个简单易用的终端程序来管理镜像列表。那就是 Pacman-mirrors。跟 ArchLinux 镜像列表管理器一样,你可以根据回应速度进行排序。只需要运行 sudo pacman-mirrors --fasttrack 即可。若你像将结果局限在最快的 5 个镜像,可以运行 sudo pacman-mirrors --fasttrack 5。要像将结果局限在某个或某几个国家,运行 sudo pacman-mirrors --country Germany,Spain,Austria。你可以通过运行 sudo pacman-mirrors --geoip 来将结果局限在自己国家。更多关于 Pacman-mirrors 的信息请参见 Manjaro wiki

运行 Pacman-mirrors 后,你还需要运行 sudo pacman -Syyu 来同步软件包数据库并升级系统。

注意:Pacman-mirrors 仅仅适用于 Manjaro

Arch Linux 镜像列表管理器包含在 ArchUserRepository 中。高级 Arch 用户可以直接从 theGitHubpage 下载 PKGBUILD。

对 Arch Linux Mirrorlist Manager 的最后思考

虽然 Arch Linux 镜像列表管理器 对我不太有用,我很高兴有它的存在。这说明 Linux 用户正在努力让 Linux 更加易于使用。正如我之前说过的,在 Arch 中管理镜像并不容易。Rizwan 的小工具可以让 Arch 对新手更加友好。

你有用过 Arch Linux 镜像列表管理器吗?你是怎么管理 Arch 镜像的?请在下面的评论告诉我。

如果你觉的本文有趣的话,请花点时间将它分享到社交媒体中去。


via: https://itsfoss.com/archlinux-mirrorlist-manager

作者:John Paul 选题:lujun9972 译者:lujun9972 校对:wxy

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

我们必须经常更新我们的系统以减少宕机时间和问题。每月给系统打一次补丁,60 天一次或者最多 90 天一次,这是 Linux 管理员的例行任务之一。这是忙碌的工作计划,我们不能在不到一个月内做到这一点,因为它涉及到多种活动和环境。

基本上,基础设施会一同提供测试、开发、 QA 环境(即各个分段和产品)。

最初,我们会在测试环境中部署补丁,相应的团队将监视系统一周,然后他们将给出一份或好或坏的状态的报告。如果成功的话,我们将会在其他环境中继续测试,若正常运行,那么最后我们会给生产服务器打上补丁。

许多组织会对整个系统打上补丁,我的意思是全系统更新,对于典型基础设施这是一种常规修补计划。

某些基础设施中可能只有生产环境,因此,我们不应该做全系统更新,而是应该使用安全修补程序来使系统更加稳定和安全。

由于 Arch Linux 及其衍生的发行版属于滚动更新版本,因此可以认为它们始终是最新的,因为它使用上游软件包的最新版本。

在某些情况下,如果要单独更新安全修补程序,则必须使用 arch-audit 工具来标识和修复安全修补程序。

漏洞是什么?

漏洞是软件程序或硬件组件(固件)中的安全漏洞。这是一个可以让它容易受到攻击的缺陷。

为了缓解这种情况,我们需要相应地修补漏洞,就像应用程序/硬件一样,它可能是代码更改或配置更改或参数更改。

Arch-Audit 工具是什么?

Arch-audit 是一个类似于 Arch Linux 的 pkg-audit 工具。它使用了令人称赞的 Arch 安全小组收集的数据。它不会扫描以发现系统中易受攻击的包(就像 yum –security check-update & yum updateinfo 一样列出可用的软件包),它只需解析 https://security.archlinux.org/ 页面并在终端中显示结果,因此,它将显示准确的数据。(LCTT 译注:此处原作者叙述不清晰。该功能虽然不会像病毒扫描软件一样扫描系统上的文件,但是会读取已安装的软件列表,并据此查询上述网址列出风险报告。)

Arch 安全小组是一群以跟踪 Arch Linux 软件包的安全问题为目的的志愿者。所有问题都在 Arch 安全追踪者的监视下。

该小组以前被称为 Arch CVE 监测小组,Arch 安全小组的使命是为提高 Arch Linux 的安全性做出贡献。

如何在 Arch Linux 上安装 Arch-Audit 工具

Arch-audit 工具已经存在社区的仓库中,所以你可以使用 Pacman 包管理器来安装它。

$ sudo pacman -S arch-audit

运行 arch-audit 工具以查找在基于 Arch 的发行版本上的存在缺陷的包。

$ arch-audit
Package cairo is affected by CVE-2017-7475. Low risk!
Package exiv2 is affected by CVE-2017-11592, CVE-2017-11591, CVE-2017-11553, CVE-2017-17725, CVE-2017-17724, CVE-2017-17723, CVE-2017-17722. Medium risk!
Package libtiff is affected by CVE-2018-18661, CVE-2018-18557, CVE-2017-9935, CVE-2017-11613. High risk!. Update to 4.0.10-1!
Package openssl is affected by CVE-2018-0735, CVE-2018-0734. Low risk!
Package openssl-1.0 is affected by CVE-2018-5407, CVE-2018-0734. Low risk!
Package patch is affected by CVE-2018-6952, CVE-2018-1000156. High risk!. Update to 2.7.6-7!
Package pcre is affected by CVE-2017-11164. Low risk!
Package systemd is affected by CVE-2018-6954, CVE-2018-15688, CVE-2018-15687, CVE-2018-15686. Critical risk!. Update to 239.300-1!
Package unzip is affected by CVE-2018-1000035. Medium risk!
Package webkit2gtk is affected by CVE-2018-4372. Critical risk!. Update to 2.22.4-1!

上述结果显示了系统的脆弱性风险状况,比如:低、中和严重三种情况。

若要仅显示易受攻击的包及其版本,请执行以下操作。

$ arch-audit -q
cairo
exiv2
libtiff>=4.0.10-1
openssl
openssl-1.0
patch>=2.7.6-7
pcre
systemd>=239.300-1
unzip
webkit2gtk>=2.22.4-1

仅显示已修复的包。

$ arch-audit --upgradable --quiet
libtiff>=4.0.10-1
patch>=2.7.6-7
systemd>=239.300-1
webkit2gtk>=2.22.4-1

为了交叉检查上述结果,我将测试在 https://www.archlinux.org/packages/ 列出的一个包以确认漏洞是否仍处于开放状态或已修复。是的,它已经被修复了,并于昨天在社区仓库中发布了更新后的包。

仅打印包名称和其相关的 CVE。

$ arch-audit -uf "%n|%c"
libtiff|CVE-2018-18661,CVE-2018-18557,CVE-2017-9935,CVE-2017-11613
patch|CVE-2018-6952,CVE-2018-1000156
systemd|CVE-2018-6954,CVE-2018-15688,CVE-2018-15687,CVE-2018-15686
webkit2gtk|CVE-2018-4372

via: https://www.2daygeek.com/arch-audit-a-tool-to-check-vulnerable-packages-in-arch-linux/

作者:Prakash Subramanian 选题:lujun9972 译者:Auk7F7 校对:wxy

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

Arch 用户你们好!今天,我偶然发现了一个叫做 “ArchI0” 的实用工具,它是基于命令行菜单的 Arch Linux 应用自动安装脚本。使用此脚本是为基于 Arch 的发行版安装所有必要的应用最简易的方式。请注意此脚本仅适用于菜鸟级使用者。中高级使用者可以轻松掌握如何使用 pacman来完成这件事。如果你想学习如何使用 Arch Linux,我建议你一个个手动安装所有的软件。对那些仍是菜鸟并且希望为自己基于 Arch 的系统快速安装所有必要应用的用户,可以使用此脚本。

ArchI0 – Arch Linux 应用自动安装脚本

此脚本的开发者已经制作了 ArchI0liveArchI0 两个脚本。你可以通过 ArchI0live 测试应用,无需安装。这可能有助于在将脚本安装到系统之前了解其实际内容。

安装 ArchI0

要安装此脚本,使用如下命令通过 Git 克隆 ArchI0 脚本仓库:

$ git clone https://github.com/SifoHamlaoui/ArchI0.git

上面的命令会克隆 ArchI0 的 Github 仓库内容,在你当前目录的一个名为 ArchI0 的文件夹里。使用如下命令进入此目录:

$ cd ArchI0/

使用如下命令赋予脚本可执行权限:

$ chmod +x ArchI0live.sh

使用如下命令执行脚本:

$ sudo ./ArchI0live.sh

此脚本需要以 root 或 sudo 用户身份执行,因为安装应用需要 root 权限。

注意: 有些人想知道此脚本中开头的那些命令是做什么的,第一个命令是下载 figlet,因为此脚本的 logo 是使用 figlet 显示的。第二个命令是安装用来打开并查看许可协议文件的 Leafpad。第三个命令是安装用于从 sourceforge 下载文件的 wget。第四和第五个命令是下载许可协议文件并用 leafpad 打开。此外,最后的第 6 条命令是在阅读许可协议文件之后关闭它。

输入你的 Arch Linux 系统架构然后按回车键。当其请求安装此脚本时,键入 y 然后按回车键。

一旦开始安装,将会重定向至主菜单。

正如前面的截图, ArchI0 包含有 13 类、90 个容易安装的程序。这 90 个程序刚好足够配置一个完整的 Arch Linux 桌面,可执行日常活动。键入 a 可查看关于此脚本的信息,键入 q 可退出此脚本。

安装后无需执行 ArchI0live 脚本。可以直接使用如下命令启动:

$ sudo ArchI0

它会每次询问你选择 Arch Linux 发行版的架构。

This script Is under GPLv3 License

Preparing To Run Script
 Checking For ROOT: PASSED
 What Is Your OS Architecture? {32/64} 64

从现在开始,你可以从主菜单列出的类别选择要安装的程序。要查看特定类别下的可用程序列表,输入类别号即可。举个例子,要查看文本编辑器分类下的可用程序列表,输入 1 然后按回车键。

This script Is under GPLv3 License

[ R00T MENU ]
Make A Choice
 1) Text Editors
 2) FTP/Torrent Applications
 3) Download Managers
 4) Network managers
 5) VPN clients
 6) Chat Applications
 7) Image Editors
 8) Video editors/Record
 9) Archive Handlers
 10) Audio Applications
 11) Other Applications
 12) Development Environments
 13) Browser/Web Plugins
 14) Dotfiles
 15) Usefull Links
 ------------------------
 a) About ArchI0 Script
 q) Leave ArchI0 Script

Choose An Option: 1

接下来,选择你想安装的程序。要返回至主菜单,输入 q 然后按回车键。

我想安装 Emacs,所以我输入 3

This script Is under GPLv3 License

[ TEXT EDITORS ]
 [ Option ] [ Description ]
 1) GEdit
 2) Geany
 3) Emacs
 4) VIM
 5) Kate
 ---------------------------
 q) Return To Main Menu

Choose An Option: 3

现在,Emacs 将会安装至你的 Arch Linux 系统。

所选择的应用安装完成后,你可以按回车键返回主菜单。

结论

毫无疑问,此脚本让 Arch Linux 用户使用起来更加容易,特别是刚开始使用的人。如果你正寻找快速简单无需使用 pacman 安装应用的方法,此脚本是一个不错的选择。试用一下并在下面的评论区让我们知道你对此脚本的看法。

就这些。希望这个工具能帮到你。我们每天都会推送实用的指南。如果你觉得我们的指南挺实用,请分享至你的社交网络,专业圈子并支持我们。

干杯!


via: https://www.ostechnix.com/archi0-arch-linux-applications-automatic-installation-script/

作者:SK 选题:lujun9972 译者:fuowang 校对:wxy

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

Arch Linux2002 年发布,由 Aaron Grifin 领头,是当下最热门的 Linux 发行版之一。从设计上说,Arch Linux 试图给用户提供简单、最小化且优雅的体验,但它的目标用户群可不是怕事儿多的用户。Arch 鼓励参与社区建设,并且从设计上期待用户自己有学习操作系统的能力。

很多 Linux 老鸟对于 Arch Linux 会更了解,但电脑前的你可能只是刚开始打算把 Arch 当作日常操作系统来使用。虽然我也不是权威人士,但下面几点优劣是我认为你总会在使用中慢慢发现的。

1、优点: 定制属于你自己的 Linux 操作系统

大多数热门的 Linux 发行版(比如 UbuntuFedora)很像一般我们会看到的预装系统,和 Windows 或者 MacOS 一样。但 Arch 则会更鼓励你去把操作系统配置的符合你的品味。如果你能顺利做到这点的话,你会得到一个每一个细节都如你所想的操作系统。

缺点: 安装过程让人头疼

Arch Linux 的安装 别辟蹊径——因为你要花些时间来微调你的操作系统。你会在过程中了解到不少终端命令和组成你系统的各种软件模块——毕竟你要自己挑选安装什么。当然,你也知道这个过程少不了阅读一些文档/教程。

2、优点: 没有预装垃圾

鉴于 Arch 允许你在安装时选择你想要的系统部件,你再也不用烦恼怎么处理你不想要的一堆预装软件。作为对比,Ubuntu 会预装大量的软件和桌面应用——很多你不需要、甚至卸载之前都不知道它们存在的东西。

总而言之,Arch Linux* 能省去大量的系统安装后时间。Pacman**,是 Arch Linux 默认使用的优秀包管理组件。或者你也可以选择 Pamac 作为替代。

3、优点: 无需繁琐系统升级

Arch Linux 采用滚动升级模型,简直妙极了。这意味着你不需要操心升级了。一旦你用上了 Arch,持续的更新体验会让你和一会儿一个版本的升级说再见。只要你记得‘滚’更新(Arch 用语),你就一直会使用最新的软件包们。

缺点: 一些升级可能会滚坏你的系统

虽然升级过程是完全连续的,你有时得留意一下你在更新什么。没人能知道所有软件的细节配置,也没人能替你来测试你的情况。所以如果你盲目更新,有时候你会滚坏你的系统。(LCTT 译注:别担心,你可以‘滚’回来 ;D )

4、优点: Arch 有一个社区基因

所有 Linux 用户通常有一个共同点:对独立自由的追求。虽然大多数 Linux 发行版和公司企业等挂钩极少,但也并非没有。比如 基于 Ubuntu 的衍生版本们不得不受到 Canonical 公司决策的影响。

如果你想让你的电脑更独立,那么 Arch Linux 是你的伙伴。不像大多数操作系统,Arch 完全没有商业集团的影响,完全由社区驱动。

5、优点: Arch Wiki 无敌

Arch Wiki 是一个无敌文档库,几乎涵盖了所有关于安装和维护 Arch 以及关于操作系统本身的知识。Arch Wiki 最厉害的一点可能是,不管你在用什么发行版,你多多少少可能都在 Arch Wiki 的页面里找到有用信息。这是因为 Arch 用户也会用别的发行版用户会用的东西,所以一些技巧和知识得以泛化。

6、优点: 别忘了 Arch 用户软件库 (AUR)

Arch 用户软件库 Arch User Repository (AUR)是一个来自社区的超大软件仓库。如果你找了一个还没有 Arch 的官方仓库里出现的软件,那你肯定能在 AUR 里找到社区为你准备好的包。

AUR 是由用户自发编译和维护的。Arch 用户也可以给每个包投票,这样后来者就能找到最有用的那些软件包了。

最后: Arch Linux 适合你吗?

Arch Linux 优点多于缺点,也有很多优缺点我无法在此一一叙述。安装过程很长,对非 Linux 用户来说也可能偏有些技术,但只要你投入一些时间和善用 Wiki,你肯定能迈过这道坎。

Arch Linux 是一个非常优秀的发行版——尽管它有一些复杂性。同时它也很受那些知道自己想要什么的用户的欢迎——只要你肯做点功课,有些耐心。

当你从零开始搭建完 Arch 的时候,你会掌握很多 GNU/Linux 的内部细节,也再也不会对你的电脑内部运作方式一无所知了。

欢迎读者们在评论区讨论你使用 Arch Linux 的优缺点?以及你曾经遇到过的一些挑战。


via: https://www.fossmint.com/why-is-arch-linux-so-challenging-what-are-pros-cons/

作者:Martins D. Okoi 选题:lujun9972 译者:Moelf 校对:wxy

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

我们已经学会了如何为多个平台构建包,以及如何从源代码构建包。 今天,我们将学习如何将 DEB 包转换为 Arch Linux 包。 您可能会问,AUR 是这个星球上的大型软件存储库,几乎所有的软件都可以在其中使用。 为什么我需要将 DEB 软件包转换为 Arch Linux 软件包? 这的确没错! 但是,由于某些软件包无法编译(封闭源代码软件包),或者由于各种原因(如编译时出错或文件不可用)而无法从 AUR 生成。 或者,开发人员懒得在 AUR 中构建一个包,或者他/她不想创建 AUR 包。 在这种情况下,我们可以使用这种快速但有点粗糙的方法将 DEB 包转换成 Arch Linux 包。

Debtap - 将 DEB 包转换成 Arch Linux 包

为此,我们将使用名为 “Debtap” 的实用程序。 它代表了 DEB T o A rch (Linux) P ackage。 Debtap 在 AUR 中可以使用,因此您可以使用 AUR 辅助工具(如 PacaurPackerYaourt )来安装它。

使用 pacaur 安装 debtap 运行:

pacaur -S debtap

使用 Packer 安装:

packer -S debtap

使用 Yaourt 安装:

yaourt -S debtap

同时,你的 Arch 系统也应该已经安装好了 bashbinutilspkgfilefakeroot 包。

在安装 Debtap 和所有上述依赖关系之后,运行以下命令来创建/更新 pkgfile 和 debtap 数据库。

sudo debtap -u

示例输出是:

==> Synchronizing pkgfile database...
:: Updating 6 repos...
 download complete: archlinuxfr [ 151.7 KiB 67.5K/s 5 remaining]
 download complete: multilib [ 319.5 KiB 36.2K/s 4 remaining]
 download complete: core [ 707.7 KiB 49.5K/s 3 remaining]
 download complete: testing [ 1716.3 KiB 58.2K/s 2 remaining]
 download complete: extra [ 7.4 MiB 109K/s 1 remaining]
 download complete: community [ 16.9 MiB 131K/s 0 remaining]
:: download complete in 131.47s < 27.1 MiB 211K/s 6 files >
:: waiting for 1 process to finish repacking repos...
==> Synchronizing debtap database...
 % Total % Received % Xferd Average Speed Time Time Time Current
 Dload Upload Total Spent Left Speed
100 34.1M 100 34.1M 0 0 206k 0 0:02:49 0:02:49 --:--:-- 180k
 % Total % Received % Xferd Average Speed Time Time Time Current
 Dload Upload Total Spent Left Speed
100 814k 100 814k 0 0 101k 0 0:00:08 0:00:08 --:--:-- 113k
 % Total % Received % Xferd Average Speed Time Time Time Current
 Dload Upload Total Spent Left Speed
100 120k 100 120k 0 0 61575 0 0:00:02 0:00:02 --:--:-- 52381
 % Total % Received % Xferd Average Speed Time Time Time Current
 Dload Upload Total Spent Left Speed
100 35.4M 100 35.4M 0 0 175k 0 0:03:27 0:03:27 --:--:-- 257k
==> Downloading latest virtual packages list...
 % Total % Received % Xferd Average Speed Time Time Time Current
 Dload Upload Total Spent Left Speed
100 149 0 149 0 0 49 0 --:--:-- 0:00:03 --:--:-- 44
100 11890 0 11890 0 0 2378 0 --:--:-- 0:00:05 --:--:-- 8456
==> Downloading latest AUR packages list...
 % Total % Received % Xferd Average Speed Time Time Time Current
 Dload Upload Total Spent Left Speed
100 264k 0 264k 0 0 30128 0 --:--:-- 0:00:09 --:--:-- 74410
==> Generating base group packages list...
==> All steps successfully completed!

你至少需要运行上述命令一次。

现在是时候开始转换包了。

比如说要使用 debtap 转换包 Quadrapassel,你可以这样做:

debtap quadrapassel_3.22.0-1.1_arm64.deb

上述的命令会将 DEB 包文件转换为 Arch Linux 包。你需要输入包的维护者和许可证,输入他们,然后按下回车键就可以开始转换了。

包转换的过程可能依赖于你的 CPU 的速度从几秒到几分钟不等。喝一杯咖啡等一等。

示例输出:

==> Extracting package data...
==> Fixing possible directories structure differencies...
==> Generating .PKGINFO file...

:: Enter Packager name:
quadrapassel

:: Enter package license (you can enter multiple licenses comma separated):
GPL

*** Creation of .PKGINFO file in progress. It may take a few minutes, please wait...

Warning: These dependencies (depend = fields) could not be translated into Arch Linux packages names:
gsettings-backend

==> Checking and generating .INSTALL file (if necessary)...

:: If you want to edit .PKGINFO and .INSTALL files (in this order), press (1) For vi (2) For nano (3) For default editor (4) For a custom editor or any other key to continue:

==> Generating .MTREE file...

==> Creating final package...
==> Package successfully created!
==> Removing leftover files...

:Quadrapassel 在 Arch Linux 官方的软件库中早已可用,我只是用它来说明一下。

如果在包转化的过程中,你不想回答任何问题,使用 -q 略过除了编辑元数据之外的所有问题。

debtap -q quadrapassel_3.22.0-1.1_arm64.deb

为了略过所有的问题(不推荐),使用 -Q

debtap -Q quadrapassel_3.22.0-1.1_arm64.deb

转换完成后,您可以使用 pacman 在 Arch 系统中安装新转换的软件包,如下所示。

sudo pacman -U <package-name>

显示帮助文档,使用 -h

$ debtap -h
Syntax: debtap [options] package_filename

Options:

 -h --h -help --help Prints this help message
 -u --u -update --update Update debtap database
 -q --q -quiet --quiet Bypass all questions, except for editing metadata file(s)
 -Q --Q -Quiet --Quiet Bypass all questions (not recommended)
 -s --s -pseudo --pseudo Create a pseudo-64-bit package from a 32-bit .deb package
 -w --w -wipeout --wipeout Wipeout versions from all dependencies, conflicts etc.
 -p --p -pkgbuild --pkgbuild Additionally generate a PKGBUILD file
 -P --P -Pkgbuild --Pkgbuild Generate a PKGBUILD file only

这就是现在要讲的。希望这个工具有所帮助。如果你发现我们的指南有用,请花一点时间在你的社交、专业网络分享并支持我们!

更多的好东西来了。请继续关注!

干杯!


via: https://www.ostechnix.com/convert-deb-packages-arch-linux-packages/

作者:SK 译者:amwps290 校对:wxy

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