Featured image of post [译] 什么是AUR,如何在Arch和Manjaro中使用AUR

[译] 什么是AUR,如何在Arch和Manjaro中使用AUR

如果你用过 Arch Linux 或者其他基于 Arch 的 Linux 发行版(比如 Manjaro),那么可能曾遇到过 `AUR` 这个术语。在你尝试安装一个软件的时候,也许有人会建议你从 `AUR` 来安装它,然后你满脸问号。什么是 `AUR`?为啥要用它?又要咋用?接下来,我将回答这些问题。

原文: What is Arch User Repository (AUR)? How to Use AUR on Arch and Manjaro Linux?

最近更新: 2020/9/18 - Dimitrios Savvopoulos

如果你用过 Arch Linux 或者其他 基于 Arch 的 Linux 发行版(比如 Manjaro),那么可能曾遇到过 AUR 这个术语。在你尝试安装一个软件的时候,也许有人会建议你从 AUR 来安装它,然后你满脸问号。

什么是 AUR?为啥要用它?又要咋用?接下来,我将回答这些问题。

whatisaur

什么是 AUR

AURArch User Repository (Arch 用户资料库) 的缩写。这是一个 社区驱动的资料库,它专注于服务那些使用 Arch 或者 Arch-base Linux 发行版的用户。AUR 包含一个名叫 PKGBULIDs 的软件包说明(package descriptions),它可以让你通过 makepkg 来编译你所需的软件包,然后使用 pacman(Arch Linux 的软件包管理器)来安装这个软件包。

AUR 的创立是为了组织和分享那些来自社区的新软件包,以便于加速受欢迎的软件包被纳入社区资料库

有相当一部分进入官方资料库的新软件包开始时都是来源于 AUR。在 AUR,用户可以建设他们自己的软件包建设器(package builds,PKGBUILD 和相关文件)。

AUR 社区支持为社区中的软件包投票,如果某一个包足够受欢迎(假设它有兼容的许可证和良好的包装技术),那么它可能可以直接进入社区资料库,这样就可以直接由 pacman 直接访问了。

简而言之,AUR 就是一种特殊的软件安装途径,它允许开发人员在软件未正式纳入 Arch 资料库时,将该软件提供给 Arch Linux 用户以供安装使用。

应该使用 AUR 么?有什么风险?

使用 AUR 就像横穿马路,如果小心谨慎,那就没什么问题。

如果你是一个 Linux 新手,建议还是不要轻易使用 AUR,直到你已经全面的了解了 Arch/ManjaroLinux 的基础知识。(译者注: 个人感觉 AUR 类似 GitHub)

的确,任何人都可以向 AUR 上传软件包,但是 Trusted Users(TUs) 会负责密切关注上传的内容。尽管 TUs 会对上传的文件进行质量管控,但是仍无法保证 AUR 中的软件包格式正确或者无危胁。

在实践过程中,AUR 看起来仿佛很安全,但是理论上它是可以造成一些损害的,当然,这只会发生在你疏忽大意的时候。毕竟,从 AUR 安装软件时,机智的 Arch 使用者们应该每次都会检查 PKGBUILDs*.install 文件。

另外,如果 AUR 中的软件包被纳入了 core/extra/community,那么 TUs(Trusted Users)会将 AUR 中删除该包,因此它们之间不应存在命名冲突。AUR 中经常包含着开发中的软件包(cvs/svn/git/etc),他们将会被重命名,比如 foo-git。

对于 AUR 中的软件包,pacman 会处理其依赖关系并检测文件冲突,因此不必担心某个包中的文件会将另外一个包的文件覆盖掉。除非你在默认情况里添加了 -force 选项,如果你真这么做了,可能会遇到一堆比文件冲突更严重的问题。

如何使用 AUR

使用 AUR 最简单的方法就是通过一个 AUR helper。大部分的 AUR helper 是命令行工具,有些也支持 GUI 图形化操作。这种工具支持搜索和安装那些发布在 AUR 上的软件包。

在 Arch Linux 上安装一个 AUR helper

假设你想使用的是 Yay AUR helper 这款工具。首先需要确保你的 Linux 上已经安装了 git。然后 clone 这个仓库,随后进入该文件夹,最后执行安装。

$ sudo pacman -S git
$ git clone https://aur.archlinux.org/yay.git
$ cd yay
$ makepkg -si

安装完毕后,就可以像下面这样使用 yay 命令安装软件了~

$ yay -S package_name

当然,也不是说只有使用 AUR helper 才可以从 AUR 安装软件,下一部分你将看到如何不用 AUR helper 使用 AUR。

不用 AUR helper 安装 AUR 软件包

如果你不想使用 AUR helper,你也可以自行从 AUR 安装软件包。

建议,在 AUR page 中找到想安装的软件包之后,请参照该软件的 LicencePopularityLast UpdatedDependencies 等指标,判断其内容质量。

$ git clone [package URL]
$ cd [package name]
$ makepkg -si

假设,你想安装 telegram desktop 这个软件:

$ git clone https://aur.archlinux.org/telegram-desktop-git.git
$ cd telegram-desktop-git
$ makepkg -si

在 Manjaro Linux 中启用 AUR 支持

Manjaro Linux 默认不启用 AUR,需要使用 pamac 来启用这一功能,我的笔记本使用的是 Manjaro Cinnamon,但下面的步骤适用于所有版本的 Manjaro。

打开 Pamac 也就是 Add/Remove Software打开Pamac

打开 Pamac 之后,进入属性 Preferences打开属性

打开属性对话框,进入 AUR 页签,启用 AUR 支持,启用检测更新,然后关闭对话框。

启用AUR

现在,搜索软件的时候可以搜到源自 AUR 的软件包了,可以通过软件描述下面的标签来区分。

区分源自AUR的软件

AUR 是大家 热爱 Arch Linux 的众多原因 之一,你可以看到它为什么如此流行。

希望本文对你有用。

希望能看到各大社交媒体上即将出现的 Arch 主题~

Licensed under CC BY-NC-SA 4.0
最好开心,不开心也行❤️
Built with Hugo
Theme Stack designed by Jimmy