archlinuxfr / yaourt

[unmaintained] A Pacman frontend with more features and AUR support
599 stars 98 forks source link

Arbitrary mappings [repository] -> download URL? Currently only Arch Linux' official repository hardcoded, but good to honour other repositories. #364

Open dreirund opened 6 years ago

dreirund commented 6 years ago

When fetching package sources from packages that are available in repositories and not (only) in the AUR, currently only the official Arch Linux repositories are supported (and no possibility to support unoffical user repositories, or Artix Linux, or such):

Currently, in usr/lib/yaourt/abs.sh, in the function abs_get_pkgbuild(), it is hardcoded that if the package is from [core] or [extra] or [testing], yaourt will download https://git.archlinux.org/svntogit/packages.git/snapshot/packages/$pkgbase.tar.gz, otherwise it will download https://git.archlinux.org/svntogit/community.git/snapshot/community-packages/$pkgbase.tar.gz.

That obviously fails if a package is present in some other repository (if it is also in the AUR, the user can still force the AUR variant, but if it is not in the AUR, no look). It also fails for Artix Linux users, because they have the Artix repositories first, and after them optionally [extra], [community] and [multilib] from official Arch Linux, and yaourt will try the first hit if the user does not force a specific repository.

Using customizepkg for some packages this is a real issue, since there is no automated download/build/install anymore. (See for example this Forum post.)

So, can it be possible to add configuration file options where the user can specify arbitrary mappings from a [repository] to an "abs" download URL (pattern)?