skip to content
鰭狀漏斗

在 Arch Linux 安裝 yay

/ 閱讀時間 4 分鐘

目次

這篇文章就來介紹如何在 Arch Linux 安裝 yay 吧。yay 是一個 AUR Helper,就是讓安裝 AUR 套件的流程更簡單的工具。而 AUR 是 Arch User Repository 的簡稱,任何人都可以在 AUR 上提交套件的 PKGBUILD 檔,讓有需要的人用 PKGBUILD 建置並安裝套件。從 AUR 可以得到官方沒提供的套件這點也是 Arch Linux 的優點之一。

這篇文章假設你安裝了 Arch Linux,但沒有裝過 AUR Helper,也就是說我們要用最原始的方式安裝你電腦的第一個 AUR 套件——yay。

安裝相依性

首先我們要先安裝要建置 AUR 套件需要的程式:

Terminal window
sudo pacman -S git base-devel

AUR 是由 git 管理的,如果要更新 AUR 套件的話,用 git pull 更新原始碼比較省事,這也是 yay 的相依性之一。

base-devel 則是建置 Arch Linux 套件需要的的一些套件,如果要建置套件一定要安裝。

下載 yay

說是下載,但是我們要用 git clone 從 AUR repository 複製下來。選一個你喜歡的地方,執行這個指令:

Terminal window
git clone https://aur.archlinux.org/yay.git

repository 複製下來會在 yay 資料夾,所以記得進入 yay 資料夾:

Terminal window
cd yay

建置並安裝 yay 套件

只要執行這個指令,就會建置 yay 套件並安裝:

Terminal window
makepkg -si

或是如果想要分開做的話,我們可以先建置 yay 套件:

Terminal window
makepkg

建置完成會產生名字像 yay-<版本>-<架構>.pkg.tar.zst 的檔案,例如我的是 yay-12.4.2-1-x86_64.pkg.tar.zst,將這個檔案用 pacman 安裝:

Terminal window
sudo pacman -U yay-12.4.2-1-x86_64.pkg.tar.zst

yay 的常用指令

因為 yay 的指令完全仿造 pacman,所以基本上可以完全取代 pacman。最常用的指令跟 pacman 一樣,就三個:

  • 安裝:yay -S <套件>
  • 移除:yay -R <套件>
  • 更新:yay -Syu --devel

這邊列出的安裝跟移除指令是最基本的。用 yay -S <套件> 安裝可能因為官方套件庫更新而找不到套件,此時應該用 yay -Syu <套件> 順便做全機更新。用 yay -R <套件> 移除不會移除該套件的相依性,雖然清不乾淨,但是是最安全的,加上其他 flag 可能會有風險,所以不列出來。

yay 跟 pacman 的差別在於你不能用 pacman 指令安裝 AUR 套件,但可以用 yay 指令安裝:

Terminal window
yay -S yay

執行 yay 指令時它會問你兩個問題:

==> 清理哪些套件的編譯檔案?
==> [N]沒有 [A]全部 [Ab]中止 [I]已安裝 [No]未安裝 或 (1 2 3, 1-3, ^4)

有選擇的話,yay 會將該套件建置過程下載或建置的檔案刪除。

==> 顯示差異?
==> [N]沒有 [A]全部 [Ab]中止 [I]已安裝 [No]未安裝 或 (1 2 3, 1-3, ^4)

這邊則是可以看 PKGBUILD 的差異。因為任何人都能提交 PKGBUILD 到 AUR,因此看看有沒有怪怪的地方比較安全。

參考資料