Skip to content

只推荐 pacman 安装还是同时提供 pacman 和 AUR 安装方式? #63

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
CyrusYip opened this issue Oct 11, 2021 · 7 comments
Closed

Comments

@CyrusYip
Copy link
Contributor

办公日常为例,这里有不少 AUR 软件 archlinuxcn 仓库或官方仓库都有,比如:

  • weechat
  • slack-desktop
  • onlyoffice-bin
  • joplin
  • joplin-desktop
  • zotero
  • megasync

教程只写了 yay 安装方式或链接。对于同时存在于 AUR 和软件仓库的软件包,本教程应该推荐什么安装方式呢?这里有三种可能:

  • 只推荐 yay
  • 只推荐 pacman
  • 两者都推荐

我个人倾向「只推荐 pacman」,「两者都推荐」也行。理由是「用 pacman 安装二进制包更快,还不需要安装打包软件需要的依赖」。

@ghost
Copy link

ghost commented Oct 11, 2021

I am not very clear what you want to express.

@CyrusYip
Copy link
Contributor Author

如果一个软件在仓库里,就把 yay 安装改为 pacman 安装。例如把yay -S onlyoffice-bin 替换为 sudo pacman -S onlyoffice-bin

@crafter-z
Copy link

如果一个软件在仓库里,就把 yay 安装改为 pacman 安装。例如把yay -S onlyoffice-bin 替换为 sudo pacman -S onlyoffice-bin

这issue可以关了,请你先了解一下,yay会优先使用pacman搜索和安装软件包,pacman找不到才会去aur找,如果一个包同时存在于pacman和aur,用yay和用pacman的效果是一模一样的,不存在你说的情况

@teaper
Copy link

teaper commented Oct 11, 2021

看到你们的回答,我真是替你们捉急!如果一个软件在 AUR 仓库和官方仓库都有,不管你使用 yay 还是 pacman 它都会优先安装官方仓库的,除非你使用 yay 时指定选项。因为运行 yay 的时候,默认优先查找官方仓库,而后查询 AUR,所以你需要知道的其实是一个优先级关系。官方仓库 > AUR 仓库。所以其实你根本没得选,官方仓库有的软件,你使用 pacman 或 yay 安装结果都是一样的,都是官方仓库的那个软件,只有你使用 pacman 安装,发现找不到这个软件的时候,那么就表示 pacman 不能用了,这时候才是只能使用 yay 的时候,当然如果 AUR 中也没有,yay 也不一定有效!

另外一个就是,pacman 作为 archlinux 默认的包管理器,它对系统的支持非常好。所以如果你希望自己系统软件生态稳固的话,尽量使用 pacman 来安装,特别是涉及系统底层的包。一些 github 上的杂七杂八的开源项目,你可以用 yay 来安装。所以根据这个道理,你不希望自己系统被滚挂的话, 请使用 pacman

@crafter-z
Copy link

看到你们的回答,我真是替你们捉急!如果一个软件在 AUR 仓库和官方仓库都有,不管你使用 yay 还是 pacman 它都会优先安装官方仓库的,除非你使用 yay 时指定选项。因为运行 yay 的时候,默认优先查找官方仓库,而后查询 AUR,所以你需要知道的其实是一个优先级关系。官方仓库 > AUR 仓库。所以其实你根本没得选,官方仓库有的软件,你使用 pacman 或 yay 安装结果都是一样的,都是官方仓库的那个软件,只有你使用 pacman 安装,发现找不到这个软件的时候,那么就表示 pacman 不能用了,这时候才是只能使用 yay 的时候,当然如果 AUR 中也没有,yay 也不一定有效!

另外一个就是,pacman 作为 archlinux 默认的包管理器,它对系统的支持非常好。所以如果你希望自己系统软件生态稳固的话,尽量使用 pacman 来安装,特别是涉及系统底层的包。一些 github 上的杂七杂八的开源项目,你可以用 yay 来安装。所以根据这个道理,你不希望自己系统被滚挂的话, 请使用 pacman

这方面我觉得你还是过度担忧了。既然yay会优先搜索并安装pacman源里有的软件(这个过程是直接调用pacman完成的,而不是yay自己模拟pacman),那么用yay来安装pacman源里有的软件和用pacman来安装并没有任何区别。
而至于非pacman的软件,那也自然是用yay装。
既然如此,直接使用yay并无不妥。
你所担心的问题是源自于aur的包的质量问题,当需要安装这个包时,不论是clone下来再make,还是直接yay,效果都是一样的。
滚挂源自于安装的包有问题,这需要用户滚前斟酌更新的包是否可能出问题,这个锅不应该由yay来背。

@CyrusYip
Copy link
Contributor Author

CyrusYip commented Oct 11, 2021

@teaper @crafter695565 谢谢两位指正,我之前以为 yay 只安装 AUR 的包,原来 yay 默认优先安装仓库的包,学习了。我刚刚查了下 yay 的帮助界面,原来可以指定软件源为仓库或 AUR。

总结一下 yay 安装软件的方式:

yay -S onlyoffice-bin              # 如果仓库有就安装,没有才从 AUR 安装
yay -S onlyoffice-bin --repo  # 只从仓库安装
yay -S onlyoffice-bin --aur    # 只从 AUR 安装,--aur 可简写为 -a

那么教程用 yay 安装软件就是先从仓库安装的,和我期待的一样,那我就关闭这个 Issue 了。希望大家不要吵起来啦,可以友好讨论。

@starsareintherose
Copy link
Contributor

@CyrusYip 不是所有人都愿意用Archlinuxcn的源

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants