Arch Linux là loại distro đưa cho bạn một cái dao mổ và nói, "tự lo đi" mà không có sự nắm tay như distro khác như Debian/Fedora. Bộ công cụ ban đầu, bao gồm kho core/extra/community do trình quản lý gói ký hiệu cung cấp, có thể hạn chế, nhưng đó là cố ý.
Việc của bạn là thêm cái muốn, và đó là lúc Arch User Repository (AUR) hữu ích. Là kho cho phép người dùng tạo script PKGBUILD riêng và tạo gói không có trong kho chính thức. Nếu bạn từng thắc mắc làm sao cài WhatsApp Linux, Session, Slack, hoặc app khác trên Arch, AUR là nơi tất cả nằm.
Cách nhanh nhất cài gói từ AUR là tự lấy PKGBUILD từ kho và biên dịch với tiện ích makepkg của Arch. Tuy nhiên, nhiều người không muốn qua đau đầu đó. Đó là lúc AUR client (hay AUR helper) xuất hiện. Chúng làm quá trình cài app siêu dễ.
Có khá nhiều AUR helper. Đây là 4 cái phổ biến nhất (bài viết gốc nói 4 nhưng liệt kê 5).
1. Yay
Viết bằng Go, Yay (Yet Another Yogurt) là helper mạnh giải quyết phụ thuộc cho bạn và cung cấp truy cập nhanh, tự động đến AUR. Ai quen dùng Pacman có thể ngay lập tức dùng Yay. Đây là lý do distro dựa trên Arch như EndeavourOS và Garuda Linux dùng helper nhỏ này làm cửa sổ chuẩn vào AUR của Arch.
Khả năng giải quyết phụ thuộc mạnh làm nó có lẽ tiện ích tốt nhất cho người mới.
Cái nói vậy, nó có một lưu ý: trừ khi cấu hình tự trả lời một số lời nhắc (xem manual cho cờ --answerclean, --answerdiff, --answeredit, và --answerupgrade), nó sẽ liên tục hỏi xem bạn có muốn xem chi tiết gói đang cài mỗi lần dùng. Mặt khác, coi đây là ưu điểm vì cung cấp kiểm soát chi tiết hơn quá trình cài/nâng cấp gói.
Cài Đặt
Để cài Yay trên Arch Linux, dùng lệnh:
sudo pacman -S --needed base-devel git git clone https://aur.archlinux.org/yay-git.git cd yay-git makepkg -si
Đó là tất cả.
2. Paru
Vim là trình soạn thảo bạn dùng? Bạn thích khả năng sửa script nhanh, dễ trước khi cài? Bạn là người thích tinh tinkering thoát khỏi tình huống xấu? Nếu trả lời "có" cho tất cả, bạn có thể thích Paru hơn Yay.
Đáng nói Paru và Yay về chức năng giống nhau (trừ Paru viết bằng Rust), nhưng Paru ít bước hơn. Nó trước tìm gói trong AUR, nhắc bạn chọn phiên bản muốn (giống Yay cho chọn bản nhị phân, biên dịch, hoặc "git" đang phát triển), sau đó đổ nội dung script PKGBUILD để bạn xem xét.
Nó có thể không chi tiết như Yay, nhưng trình bày mọi thứ Yay làm theo cách không rườm rà, liên quan đến ngữ cảnh bạn dùng.
Cài Đặt
Để cài Paru trên Arch Linux, dùng lệnh:
sudo pacman -S --needed base-devel git git clone https://aur.archlinux.org/paru.git cd paru makepkg -si
Đó là tất cả.
3. Pacaur
Pacaur là AUR helper dùng cower làm backend. Là một trong helper AUR phức tạp hơn, thường được người dùng nâng cao chọn để tự động hóa hoàn toàn tác vụ lặp lại. Ví dụ: Bạn có吨 AUR gói cài? Bạn sợ ngồi bàn phím nhập tùy chọn? Với cái này bạn chỉ nhập mật khẩu và nói chương trình mọi thứ nó cần. Sau đó mọi thứ suôn sẻ.
Cài Đặt
Để cài Pacaur trên Arch Linux, dùng lệnh:
sudo pacman -S --needed base-devel git git clone https://aur.archlinux.org/pacaur.git cd pacaur makepkg -si
Đó là tất cả.
4. Trizen
Không quan tâm Pacaur nhưng vẫn tìm cái nhẹ? Thử Trizen. Là AUR helper viết bằng Perl thay vì Bash (cho linh hoạt hơn). So với Pacaur, cú pháp đơn giản hơn với hầu hết cờ rút gọn một chữ (-U nâng cấp, -R gỡ, -S đồng bộ). Nếu đã quen Pacman, đừng lo! Như mọi AUR helper trong danh sách, Trizen cũng cho dùng cờ Pacman.
Vì chương trình viết bằng Perl thay vì Bash, không thể thực thi mã im lặng, tăng bảo mật tổng thể cài gói từ AUR.
Điều có thể làm Trizen khác biệt nhất, tuy nhiên, là mức chi tiết điên rồ nó cung cấp. Không chỉ cho sửa script PKGBUILD cho mỗi gói cài ngay lập tức, mà còn cho sửa desktop entry và mọi script shell thực thi khác đi kèm.
Chương trình này không nổi tiếng như các cái khác, nhưng chắc chắn đáng thử.
Cài Đặt
Để cài Trizen trên Arch Linux, dùng lệnh:
sudo pacman -S --needed base-devel git git clone https://aur.archlinux.org/trizen.git cd trizen makepkg -si
Đó là tất cả.
5. Pamac
Nếu bạn nghĩ trình quản lý gói trên Arch chỉ terminal-based, hãy nghĩ lại! Được Manjaro làm cho distro hướng dễ dùng, Pamac cung cấp giao diện GUI cho quản lý gói cho mọi thứ từ kho chính Arch đến AUR. Phiên bản bao gồm AUR có hai hương:
- pamac-aur – Chỉ bao gồm truy cập AUR.
- pamac-all – Cho truy cập không chỉ AUR mà còn kho flatpak và snap.
Nếu bạn cực mới Arch và thực sự không muốn dán mắt terminal liên tục khi quản lý app đã cài, Pamac sẽ cung cấp trải nghiệm GUI tốt nhất.
Chỉ một nhược điểm thực sự của Pamac là nó không linh hoạt khi sửa script PKGBUILD hỏng. Nếu bạn muốn khả năng sửa chuyện sai khi cài gói, khuyên cài một AUR helper khác trong danh sách này cùng Pamac.
Cài Đặt
Để cài Pamac trên Arch Linux, dùng lệnh:
sudo pacman -S --needed base-devel git git clone https://aur.archlinux.org/pamac-all.git cd pamac-all makepkg -si
Đó là tất cả.
Câu Hỏi Thường Gặp
1. AUR helper có an toàn không?
Đáng nói AUR không được làm an toàn cố ý. Mặc dù gói xấu bị vote xuống nhanh, không phải gói độc bạn nên dè chừng. Không phải mọi maintainer gói quản lý cập nhật hoàn hảo. ณ thời điểm viết bài, ví dụ, PKGBUILD của Balena Etcher có vấn đề epoch và người cập nhật AUR sẽ được nhắc cập nhật gói "balena-etcher" cho đến khi sửa.
Điều đó nói, trừ hilarity偶尔 xảy ra với gói bảo trì kém, bạn không nên ngờ hệ thống hỏng vì thế. Cái có nguy hiểm là khả năng thực thi nâng cấp một phần. Nếu AUR helper crash giữa cập nhật kho arch chính, bạn có thể gặp bất ổn cho đến khi thực thi nâng cấp đầy đủ đúng.
Để tránh, luôn nâng cấp dùng Pacman trước (pacman -Syu), sau đó dùng AUR helper nâng cấp gói AUR!
2. An toàn dùng nhiều AUR helper không?
Miễn bạn không cố dùng đồng thời (mở hai terminal chạy Pacaur cái, Yay cái), máy không nổ nếu cài cả hai. AUR helper nên xem như wrapper cho Pacman thêm khả năng AUR. Vì truy vấn cùng tệp trên hệ thống, chúng thường không can thiệp nhau. Vấn đề duy nhất tôi nghĩ là bạn duy trì cache cho mỗi AUR helper, không hay khi lưu trữ hạn chế.
3. AUR helper nào thân thiện nhất?
Yay hoặc Paru thân thiện người mới hơn là lựa chọn tốt. Cả hai cân bằng tốt cho phép kiểm soát lớn khám phá AUR tránh quá tải thông tin làm choáng người mới Linux/Arch.