当前位置: 首页 > 科技观察

什么是ArchUserRepository(AUR)以及如何使用它?

时间:2023-03-14 16:25:29 科技观察

如果您一直在使用ArchLinux或其他基于Arch的发行版,例如Manjaro,那么您可能遇到过AUR。你尝试安装新软件,有人建议从AUR安装它。这让你很困惑。什么是AUR?为什么要使用它?如何使用AUR?我将在本文中回答这些问题。什么是AUR?AUR代表Arch用户存储库。它是面向基于Arch的Linux发行版用户的社区驱动存储库。它包含称为PKGBUILD的包描述,它允许您使用makepkg从源代码编译包,然后通过pacman(ArchLinux中的包管理器)安装它们。AUR的创建是为了在社区中组织和共享新包,并帮助加速将流行的包合并到社区存储库中。大量进入官方仓库的新包都是从AUR开始的。在AUR中,用户可以贡献自己的包构建(PKGBUILD和相关文件)。AUR社区可以对AUR中的包进行投票。如果一个包变得足够流行(假设它有兼容的许可证和良好的打包技术),它可以被添加到pacman直接访问的社区存储库。简而言之,AUR是开发人员在正式包含在Arch存储库中之前向ArchLinux用户提供新软件的一种方式。你应该使用AUR吗?有什么风险?使用AUR就像过马路一样。如果你谨慎行事,你应该没事。如果您是Linux新手,建议您在建立有关Arch/Manjaro和Linux的基本知识之前不要使用AUR。的确,任何人都可以将包上传到AUR,但受信任的用户(TU)负责监控上传。尽管TU对上传的包进行了质量控制,但它不能保证AUR中的包是格式正确的还是恶意的。实际上,AUR似乎是安全的,但理论上它会造成一些损害,但前提是您不小心。SmartArch用户在从AUR构建包时总是检查PKGBUILD和*.install文件。此外,TU(可信用户)删除了AUR中core/extra/community中包含的包,因此它们之间应该没有命名冲突。AUR通常包含包的开发版本(cvs/svn/git等),但带有诸如foo-git之类的错位名称。对于AUR包,pacman会处理依赖关系并检测文件冲突,因此除非您默认使用--force选项,否则您不必担心用另一个包的文件覆盖另一个包的文件。如果这样做,您可能会遇到比文件冲突更严重的问题。如何使用AUR?使用AUR最简单的方法是通过AUR助手。AURHelper是一个命令行工具(有些也有GUI),它允许你搜索发布在AUR上的包并安装它们。在ArchLinux上安装AUR助手假设你想使用YayAUR助手。确保在Linux上安装了git。然后克隆存储库,cd进入目录并构建包。依次使用以下命令:sudopacman-Sgitsudogitclonehttps://aur.archlinux.org/yay-git.gitcdyaymakepkg-si安装完成后可以使用yay命令安装包:yay-Spackage_name不需要AUR助手来从AUR安装包。从以下文章中了解如何在没有AUR助手的情况下使用AUR。在没有AURHelper的情况下安装AUR包如果你不想使用AUR助手,你也可以自己从AUR安装包。在AUR页面上找到要安装的包后,建议确认“许可证”、“流行度”、“最新更新”、“依赖项”等作为额外的质量控制步骤。gitclone[packageURL]cd[packagename]makepkg-si例如。假设你想安装电报桌面包:gitclonehttps://aur.archlinux.org/telegram-desktop-git.gitcdtelegram-desktop-gitmakepkg-sienableAURsupportinManjaroLinux它默认情况下不启用AUR,你必须通过pamac启用它。我的笔记本电脑运行ManjaroCinnamon,但所有Manjaro变体的步骤都是相同的。打开Pamac(显示为“添加/删除软件”):进入Pamac后,转到如下所示的首选项。在Preferences对话框中,转到AUR选项卡,启用AUR支持,启用CheckforUpdates,然后关闭对话框。您现在可以搜索包,您可以通过包描述下的标签识别属于AUR的包。希望这篇文章对你有用,并留意社交媒体上即将发布的与Arch相关的话题。