yay: AUR Helper for Arch Linux
Go-based AUR helper for Arch Linux that manages packages with dependency resolution and PKGBUILD support.
Learn more about yay
yay is an AUR (Arch User Repository) helper that extends pacman's functionality to handle user-contributed packages from the AUR. It downloads PKGBUILDs from both the AUR and ABS (Arch Build System), resolves dependencies across official repositories and the AUR, and automates the package building process using makepkg. The tool handles complex dependency chains, supports development package tracking through hash caching, and provides interactive package selection menus. It serves as a replacement for discontinued AUR helpers like yaourt and pacaur, offering similar workflow integration with pacman.
Advanced Dependency Resolution
Resolves dependencies across both official repositories and AUR packages before building. Queries users upfront for all required input and removes make dependencies after build completion.
Development Package Tracking
Maintains a hash-based cache system for tracking updates to development packages like *-git packages. Supports time-based update detection using PKGBUILD modification timestamps.
Go Implementation
Written in Go for improved performance and reliability compared to shell-based AUR helpers. Provides cross-platform compatibility and efficient concurrent operations.
# Install prerequisites and build yay from AUR
sudo pacman -S --needed git base-devel
git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -si
# Or as a one-liner:
sudo pacman -S --needed git base-devel && git clone https://aur.archlinux.org/yay.git && cd yay && makepkg -siAll of these version's binaries are compiled against pacman's 7.1 libalpm, unlike previous build which lacked ARM binaries (mirrors didn't update as f
- –chore(mod): dependency update by @Jguer in
v12.5.6
- –ci(yay): fix missing user by @Jguer in
this release coincides with the release of pacman 7.1.0.r7.gb9f7d4a-1 which changes libalpm.so to 16-64. Previous versions are compatible with this re
- –Fix ordering of msgfmt flag in Makefile to ensure compatibility by @jdholtz in
- –chore(completion): refactor and increase coverage by @Jguer in
- –Use custom http client in runtime, loosen timeouts by @Jguer in
- –chore(deps): bump golang.org/x/sys from 0.38.0 to 0.39.0 in the go-all group by @dependabot[bot] in
Top in Developer Tools
Related Repositories
Discover similar tools and frameworks used by developers
redoc
React component rendering OpenAPI specifications as interactive HTML documentation.
corepack
Enforces package manager versions specified in package.json.
Selenium
Browser automation framework implementing W3C WebDriver with multi-language support.
CXX
Safe FFI library for calling C++ from Rust and vice versa with zero-overhead bindings via code generation.
nvm
Per-user Node.js version manager for switching between installed versions via command line on POSIX-compliant shells.