fetch_pkgbuild_sync

Function fetch_pkgbuild_sync 

Source
pub fn fetch_pkgbuild_sync(name: &str) -> Result<String, String>
Expand description

What: Fetch PKGBUILD content synchronously (blocking).

Inputs:

  • name: Package name.

Output:

  • Returns PKGBUILD content as a string, or an error if fetch fails.

§Errors

  • Returns Err when network request fails (curl execution error)
  • Returns Err when PKGBUILD cannot be fetched from AUR or official repositories
  • Returns Err when rate limiting mutex is poisoned

§Panics

  • Panics if the rate limiting mutex is poisoned

Details:

  • First tries offline methods (yay/paru cache, yay -G, paru -G).
  • Then tries AUR with rate limiting (500ms between requests).
  • Falls back to official GitLab repos for official packages.
  • Uses curl to fetch PKGBUILD from AUR or official GitLab repos.