So Aaron made a patch a while ago that allows to use only one file for mirrors : http://bugs.archlinux.org/task/6389#comment16438 any chance the pacman git tree could take advantage of this feature ? I think the whole pacman.d/ could be removed. Maybe with something like this:
From 9e4f79548b27f2de60d510b715bebd68bcb3992a Mon Sep 17 00:00:00 2001 From: Chantry Xavier <shiningxc@gmail.com> Date: Mon, 16 Jul 2007 21:31:54 +0200 Subject: [PATCH] Uses only one mirror list for all repos.
Signed-off-by: Chantry Xavier <shiningxc@gmail.com> --- etc/pacman.conf.in | 10 ++-- etc/pacman.d/Makefile.am | 10 +---- etc/pacman.d/mirrorlist.in | 90 ++++++++++++++++++++++---------------------- 3 files changed, 52 insertions(+), 58 deletions(-) diff --git a/etc/pacman.conf.in b/etc/pacman.conf.in index 33ef181..5c518ea 100644 --- a/etc/pacman.conf.in +++ b/etc/pacman.conf.in @@ -23,23 +23,23 @@ HoldPkg = pacman glibc # have identical names, regardless of version number # #[testing] -#Include = @sysconfdir@/pacman.d/testing +#Include = @sysconfdir@/pacman.d/mirrorlist [current] # Add your preferred servers here, they will be used first -Include = @sysconfdir@/pacman.d/current +Include = @sysconfdir@/pacman.d/mirrorlist [extra] # Add your preferred servers here, they will be used first -Include = @sysconfdir@/pacman.d/extra +Include = @sysconfdir@/pacman.d/mirrorlist [community] # Add your preferred servers here, they will be used first -Include = @sysconfdir@/pacman.d/community +Include = @sysconfdir@/pacman.d/mirrorlist #[unstable] # Add your preferred servers here, they will be used first -#Include = @sysconfdir@/pacman.d/unstable +#Include = @sysconfdir@/pacman.d/mirrorlist # An example of a custom package repository. See the pacman manpage for # tips on creating your own repositories. diff --git a/etc/pacman.d/Makefile.am b/etc/pacman.d/Makefile.am index 940282d..e1f33c7 100644 --- a/etc/pacman.d/Makefile.am +++ b/etc/pacman.d/Makefile.am @@ -1,5 +1,5 @@ pkgsysconfdir = ${sysconfdir}/pacman.d -dist_pkgsysconf_DATA = community current extra release testing unstable +dist_pkgsysconf_DATA = mirrorlist EXTRA_DIST = mirrorlist.in # # Files that should be removed, but which Automake does not know. @@ -8,16 +8,10 @@ MOSTLYCLEANFILES = $(dist_pkgsysconf_DATA) $(dist_pkgsysconf_DATA): Makefile rm -f $@ $@.tmp sed \ - -e "s|@REPO[@]|$@|g" \ -e 's|@CARCH[@]|$(CARCH)|g' \ $(srcdir)/mirrorlist.in >$@.tmp mv $@.tmp $@ -community: $(srcdir)/mirrorlist.in -current: $(srcdir)/mirrorlist.in -extra: $(srcdir)/mirrorlist.in -release: $(srcdir)/mirrorlist.in -testing: $(srcdir)/mirrorlist.in -unstable: $(srcdir)/mirrorlist.in +mirrorlist: $(srcdir)/mirrorlist.in # vim:set ts=2 sw=2 noet: diff --git a/etc/pacman.d/mirrorlist.in b/etc/pacman.d/mirrorlist.in index 2889537..3e5e514 100644 --- a/etc/pacman.d/mirrorlist.in +++ b/etc/pacman.d/mirrorlist.in @@ -1,82 +1,82 @@ # -# @REPO@: Arch Linux @REPO@ repository +# $repo: Arch Linux @REPO@ repository # # United States -Server = ftp://ftp.archlinux.org/@REPO@/os/@CARCH@ -Server = ftp://ftp.nethat.com/pub/linux/archlinux/@REPO@/os/@CARCH@ -Server = ftp://locke.suu.edu/linux/dist/archlinux/@REPO@/os/@CARCH@ -Server = ftp://mirrors.unixheads.org/archlinux/@REPO@/os/@CARCH@ -Server = ftp://ftp-linux.cc.gatech.edu/pub/linux/distributions/archlinux/@REPO@/os/@CARCH@ -Server = ftp://mirror.cs.vt.edu/pub/ArchLinux/@REPO@/os/@CARCH@ -Server = http://mirrors.easynews.com/linux/archlinux/@REPO@/os/@CARCH@ -Server = ftp://ftp.ibiblio.org/pub/linux/distributions/archlinux/@REPO@/os/@CARCH@ +Server = ftp://ftp.archlinux.org/$repo/os/@CARCH@ +Server = ftp://ftp.nethat.com/pub/linux/archlinux/$repo/os/@CARCH@ +Server = ftp://locke.suu.edu/linux/dist/archlinux/$repo/os/@CARCH@ +Server = ftp://mirrors.unixheads.org/archlinux/$repo/os/@CARCH@ +Server = ftp://ftp-linux.cc.gatech.edu/pub/linux/distributions/archlinux/$repo/os/@CARCH@ +Server = ftp://mirror.cs.vt.edu/pub/ArchLinux/$repo/os/@CARCH@ +Server = http://mirrors.easynews.com/linux/archlinux/$repo/os/@CARCH@ +Server = ftp://ftp.ibiblio.org/pub/linux/distributions/archlinux/$repo/os/@CARCH@ # South America # - Brazil -Server = http://archlinux.c3sl.ufpr.br/@REPO@/os/@CARCH@ +Server = http://archlinux.c3sl.ufpr.br/$repo/os/@CARCH@ # Europe # - Austria -Server = ftp://gd.tuwien.ac.at/opsys/linux/archlinux/@REPO@/os/@CARCH@ +Server = ftp://gd.tuwien.ac.at/opsys/linux/archlinux/$repo/os/@CARCH@ # - Belgium -Server = ftp://ftp.belnet.be/packages/archlinux/@REPO@/os/@CARCH@ +Server = ftp://ftp.belnet.be/packages/archlinux/$repo/os/@CARCH@ # - Czech Republic -Server = ftp://ftp.sh.cvut.cz/MIRRORS/arch/@REPO@/os/@CARCH@ +Server = ftp://ftp.sh.cvut.cz/MIRRORS/arch/$repo/os/@CARCH@ # - Estonia -Server = ftp://ftp.estpak.ee/pub/archlinux/@REPO@/os/@CARCH@ +Server = ftp://ftp.estpak.ee/pub/archlinux/$repo/os/@CARCH@ # - Finland -Server = ftp://ftp.sixnix.net/pub/archlinux/@REPO@/os/@CARCH@ +Server = ftp://ftp.sixnix.net/pub/archlinux/$repo/os/@CARCH@ # - France -Server = ftp://ftp.rez-gif.supelec.fr/pub/Linux/distrib/archlinux/@REPO@/os/@CARCH@ -Server = ftp://mir1.archlinuxfr.org/archlinux/@REPO@/os/@CARCH@ -Server = ftp://mir2.archlinuxfr.org/archlinux/@REPO@/os/@CARCH@ -Server = ftp://distrib-coffee.ipsl.jussieu.fr/pub/linux/archlinux/@REPO@/os/@CARCH@ +Server = ftp://ftp.rez-gif.supelec.fr/pub/Linux/distrib/archlinux/$repo/os/@CARCH@ +Server = ftp://mir1.archlinuxfr.org/archlinux/$repo/os/@CARCH@ +Server = ftp://mir2.archlinuxfr.org/archlinux/$repo/os/@CARCH@ +Server = ftp://distrib-coffee.ipsl.jussieu.fr/pub/linux/archlinux/$repo/os/@CARCH@ # - Germany -Server = ftp://ftp.tu-chemnitz.de/pub/linux/sunsite.unc-mirror/distributions/archlinux/@REPO@/os/@CARCH@ -Server = ftp://ftp.hosteurope.de/mirror/ftp.archlinux.org/@REPO@/os/@CARCH@ -Server = ftp://ftp.archlinuxppc.org/i686/@REPO@/os/@CARCH@ -Server = http://mirror.archlinux.de/@REPO@/os/@CARCH@ +Server = ftp://ftp.tu-chemnitz.de/pub/linux/sunsite.unc-mirror/distributions/archlinux/$repo/os/@CARCH@ +Server = ftp://ftp.hosteurope.de/mirror/ftp.archlinux.org/$repo/os/@CARCH@ +Server = ftp://ftp.archlinuxppc.org/i686/$repo/os/@CARCH@ +Server = http://mirror.archlinux.de/$repo/os/@CARCH@ # - Great Britain -Server = http://ftp.parrswood.manchester.sch.uk/Mirrors/ftp.archlinux.org/@REPO@/os/@... +Server = http://ftp.parrswood.manchester.sch.uk/Mirrors/ftp.archlinux.org/$repo/os/@C... # - Greece -Server = ftp://ftp.ntua.gr/pub/linux/archlinux/@REPO@/os/@CARCH@ +Server = ftp://ftp.ntua.gr/pub/linux/archlinux/$repo/os/@CARCH@ # - Ireland -Server = ftp://ftp.heanet.ie/mirrors/ftp.archlinux.org/@REPO@/os/@CARCH@ +Server = ftp://ftp.heanet.ie/mirrors/ftp.archlinux.org/$repo/os/@CARCH@ # - Italy -Server = ftp://mi.mirror.garr.it/mirrors/archlinux/@REPO@/os/@CARCH@ +Server = ftp://mi.mirror.garr.it/mirrors/archlinux/$repo/os/@CARCH@ # - Lithuania -Server = ftp://saule.mintis.lt/pub/linux/@REPO@/os/@CARCH@ +Server = ftp://saule.mintis.lt/pub/linux/$repo/os/@CARCH@ # - Netherlands -Server = ftp://ftp.nluug.nl/pub/metalab/distributions/archlinux/@REPO@/os/@CARCH@ -Server = ftp://ftp.surfnet.nl/pub/os/Linux/distr/archlinux/@REPO@/os/@CARCH@ +Server = ftp://ftp.nluug.nl/pub/metalab/distributions/archlinux/$repo/os/@CARCH@ +Server = ftp://ftp.surfnet.nl/pub/os/Linux/distr/archlinux/$repo/os/@CARCH@ # - Norway -Server = ftp://mirror.djzradio.net/archlinux/@REPO@/os/@CARCH@ +Server = ftp://mirror.djzradio.net/archlinux/$repo/os/@CARCH@ # - Poland -Server = ftp://sunsite.icm.edu.pl/site/linux-sunsite/distributions/archlinux/@REPO@/os/@CARCH@ -Server = ftp://mirror.icis.pcz.pl/archlinux/@REPO@/os/@CARCH@ +Server = ftp://sunsite.icm.edu.pl/site/linux-sunsite/distributions/archlinux/$repo/os/@CARCH@ +Server = ftp://mirror.icis.pcz.pl/archlinux/$repo/os/@CARCH@ # - Portugal -Server = ftp://gul.est.ips.pt/repos/archlinux/@REPO@/os/@CARCH@ -Server = ftp://cesium.di.uminho.pt/pub/archlinux/@REPO@/os/@CARCH@ -Server = ftp://darkstar.ist.utl.pt/pub/archlinux/@REPO@/os/@CARCH@ +Server = ftp://gul.est.ips.pt/repos/archlinux/$repo/os/@CARCH@ +Server = ftp://cesium.di.uminho.pt/pub/archlinux/$repo/os/@CARCH@ +Server = ftp://darkstar.ist.utl.pt/pub/archlinux/$repo/os/@CARCH@ # - Romania -Server = ftp://ftp.iasi.roedu.net/mirrors/archlinux.org/@REPO@/os/@CARCH@ +Server = ftp://ftp.iasi.roedu.net/mirrors/archlinux.org/$repo/os/@CARCH@ # - Russia -Server = http://archlinux.freeside.ru/@REPO@/os/@CARCH@ +Server = http://archlinux.freeside.ru/$repo/os/@CARCH@ # - Sweden -Server = ftp://ftp.ds.hj.se/pub/os/linux/archlinux/@REPO@/os/@CARCH@ -Server = ftp://ftp.gigabit.nu/@REPO@/os/@CARCH@ +Server = ftp://ftp.ds.hj.se/pub/os/linux/archlinux/$repo/os/@CARCH@ +Server = ftp://ftp.gigabit.nu/$repo/os/@CARCH@ # - Switzerland -Server = ftp://archlinux.puzzle.ch/@REPO@/os/@CARCH@ +Server = ftp://archlinux.puzzle.ch/$repo/os/@CARCH@ # - Turkey -Server = ftp://ftp.linux.org.tr/pub/archlinux/@REPO@/os/@CARCH@ +Server = ftp://ftp.linux.org.tr/pub/archlinux/$repo/os/@CARCH@ # - Ukraine -Server = ftp://ftp.linux.kiev.ua/pub/Linux/ArchLinux/@REPO@/os/@CARCH@ +Server = ftp://ftp.linux.kiev.ua/pub/Linux/ArchLinux/$repo/os/@CARCH@ # Asia # - Israel -Server = http://mirror.isoc.org.il/pub/archlinux/@REPO@/os/@CARCH@ +Server = http://mirror.isoc.org.il/pub/archlinux/$repo/os/@CARCH@ # Australia -Server = ftp://mirror.pacific.net.au/linux/archlinux/@REPO@/os/@CARCH@ +Server = ftp://mirror.pacific.net.au/linux/archlinux/$repo/os/@CARCH@ -- 1.5.2.2