[pacman-dev] Mirror lists

Xavier shiningxc at gmail.com
Mon Jul 16 15:33:28 EDT 2007


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 at 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 at 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/@CARCH@
+Server = http://ftp.parrswood.manchester.sch.uk/Mirrors/ftp.archlinux.org/$repo/os/@CARCH@
 # - 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





More information about the pacman-dev mailing list