[pacman-dev] [PATCH] etc: remove Arch-specific mirrorlist from repo
We shouldn't have the stock config be Arch specific for a few reasons: * Although it is our package, others should be able to use it * Keeping the mirrorlist coupled to the pacman package makes it hard to push updates to users without releasing a new copy of the pacman source Signed-off-by: Dan McGee <dan@archlinux.org> --- In all our other removals of things before 3.1.0, I probably should have done this too. I'm debating whether to queue this up for 3.1.1 or 3.2.0. I'd appreciate any input you guys have on this. This is the last thing in the code that is still tied tightly to Arch. I think a seperate 'core/mirrorlist' package would make a lot more sense here, or at least bundle it with filesystem or something. However, being its own package would be ideal becuase it could be version bumped at any time. etc/Makefile.am | 2 - etc/pacman.conf.in | 22 +++-------- etc/pacman.d/.gitignore | 1 - etc/pacman.d/Makefile.am | 17 --------- etc/pacman.d/mirrorlist.in | 84 -------------------------------------------- 5 files changed, 6 insertions(+), 120 deletions(-) delete mode 100644 etc/pacman.d/.gitignore delete mode 100644 etc/pacman.d/Makefile.am delete mode 100644 etc/pacman.d/mirrorlist.in diff --git a/etc/Makefile.am b/etc/Makefile.am index 6fa7d98..b4f4972 100644 --- a/etc/Makefile.am +++ b/etc/Makefile.am @@ -1,5 +1,3 @@ -SUBDIRS = pacman.d - dist_sysconf_DATA = makepkg.conf pacman.conf EXTRA_DIST = makepkg.conf.in pacman.conf.in diff --git a/etc/pacman.conf.in b/etc/pacman.conf.in index a072db1..8dfde08 100644 --- a/etc/pacman.conf.in +++ b/etc/pacman.conf.in @@ -1,7 +1,7 @@ # # @sysconfdir@/pacman.conf # -# See the pacman manpage for option directives +# See the pacman.conf(5) manpage for option and repository directives # # GENERAL OPTIONS @@ -23,24 +23,14 @@ HoldPkg = pacman glibc # - local/custom mirrors can be added here or in separate files # - repositories listed first will take precedence when packages # have identical names, regardless of version number +# - URLs will have $repo replaced by the name of the current repo # -#[testing] -#Include = @sysconfdir@/pacman.d/mirrorlist - -[core] -# Add your preferred servers here, they will be used first -Include = @sysconfdir@/pacman.d/mirrorlist - -[extra] -# Add your preferred servers here, they will be used first -Include = @sysconfdir@/pacman.d/mirrorlist - -[community] -# Add your preferred servers here, they will be used first -Include = @sysconfdir@/pacman.d/mirrorlist -#[unstable] +# An example of a remote package repository with multiple servers available. +#[core] # Add your preferred servers here, they will be used first +#Server = ftp://ftp.example.com/foobar/$repo/os/i686/ +# The file referenced here should contain a list of 'Server = ' lines. #Include = @sysconfdir@/pacman.d/mirrorlist # An example of a custom package repository. See the pacman manpage for diff --git a/etc/pacman.d/.gitignore b/etc/pacman.d/.gitignore deleted file mode 100644 index b47959b..0000000 --- a/etc/pacman.d/.gitignore +++ /dev/null @@ -1 +0,0 @@ -mirrorlist diff --git a/etc/pacman.d/Makefile.am b/etc/pacman.d/Makefile.am deleted file mode 100644 index e1f33c7..0000000 --- a/etc/pacman.d/Makefile.am +++ /dev/null @@ -1,17 +0,0 @@ -pkgsysconfdir = ${sysconfdir}/pacman.d -dist_pkgsysconf_DATA = mirrorlist -EXTRA_DIST = mirrorlist.in -# -# Files that should be removed, but which Automake does not know. -MOSTLYCLEANFILES = $(dist_pkgsysconf_DATA) - -$(dist_pkgsysconf_DATA): Makefile - rm -f $@ $@.tmp - sed \ - -e 's|@CARCH[@]|$(CARCH)|g' \ - $(srcdir)/mirrorlist.in >$@.tmp - mv $@.tmp $@ - -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 deleted file mode 100644 index fd2e41c..0000000 --- a/etc/pacman.d/mirrorlist.in +++ /dev/null @@ -1,84 +0,0 @@ -# -# $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 = http://holmes.umflint.edu/archlinux/$repo/os/@CARCH@ - -# South America -# - Brazil -Server = http://archlinux.c3sl.ufpr.br/$repo/os/@CARCH@ -Server = ftp://archlinux.c3sl.ufpr.br/archlinux/$repo/os/@CARCH@ - -# Europe -# - Austria -Server = ftp://gd.tuwien.ac.at/opsys/linux/archlinux/$repo/os/@CARCH@ -# - Belgium -Server = ftp://ftp.belnet.be/mirror/archlinux.org/$repo/os/@CARCH@ -# - Czech Republic -Server = ftp://ftp.sh.cvut.cz/MIRRORS/arch/$repo/os/@CARCH@ -# - Estonia -Server = ftp://ftp.estpak.ee/pub/archlinux/$repo/os/@CARCH@ -# - Finland -Server = ftp://ftp.sixnix.net/pub/archlinux/$repo/os/@CARCH@ -# - France -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 = http://mir.archlinux.fr/$repo/os/@CARCH@ -Server = ftp://ftp.free.fr/mirrors/ftp.archlinux.org/$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@ -# - Great Britain -Server = http://www.mirrorservice.org/sites/ftp.archlinux.org/$repo/os/@CARCH@ -# - Greece -Server = ftp://ftp.ntua.gr/pub/linux/archlinux/$repo/os/@CARCH@ -# - Hungary -Server = ftp://ftp.mfa.kfki.hu/pub/mirrors/ftp.archlinux.org/$repo/os/@CARCH@ -# - Ireland -Server = ftp://ftp.heanet.ie/mirrors/ftp.archlinux.org/$repo/os/@CARCH@ -# - Italy -Server = ftp://mi.mirror.garr.it/mirrors/archlinux/$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@ -# - Poland -Server = ftp://ftp.icm.edu.pl/pub/Linux/sunsite/distributions/archlinux/$repo/os/@CARCH@ -Server = ftp://mirror.icis.pcz.pl/archlinux/$repo/os/@CARCH@ -# - Portugal -Server = ftp://cesium.di.uminho.pt/pub/archlinux/$repo/os/@CARCH@ -# - Romania -Server = ftp://ftp.iasi.roedu.net/mirrors/archlinux.org/$repo/os/@CARCH@ -# - Russia -Server = ftp://archlinux.org.ru/pub/archlinux/$repo/os/@CARCH@ -Server = ftp://mirror.yandex.ru/archlinux/$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@ -# - Switzerland -Server = ftp://archlinux.puzzle.ch/$repo/os/@CARCH@ -# - Turkey -Server = http://server.elsistech.com/archlinux/$repo/os/@CARCH@ -# - Ukraine -Server = ftp://hell.org.ua/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@ - -# Australia -Server = ftp://mirror.pacific.net.au/linux/archlinux/$repo/os/@CARCH@ -Server = ftp://mirror.aarnet.edu.au/pub/archlinux/$repo/os/@CARCH@ - -- 1.5.4.rc2
2008/1/11, Dan McGee <dan@archlinux.org>:
We shouldn't have the stock config be Arch specific for a few reasons:
* Although it is our package, others should be able to use it * Keeping the mirrorlist coupled to the pacman package makes it hard to push updates to users without releasing a new copy of the pacman source
Signed-off-by: Dan McGee <dan@archlinux.org> --- In all our other removals of things before 3.1.0, I probably should have done this too. I'm debating whether to queue this up for 3.1.1 or 3.2.0. I'd appreciate any input you guys have on this.
This is the last thing in the code that is still tied tightly to Arch. I think a seperate 'core/mirrorlist' package would make a lot more sense here, or at least bundle it with filesystem or something. However, being its own package would be ideal becuase it could be version bumped at any time.
I think we can close FS#5885 after this (which means "yeah, bring it on!"). ;-) I think separate mirrorlist package is better than merging it with filesystem package - it will be more clear to users what pacman is trying to update. Of course, mirrorlist should be in a backup array. If user is satisfied with his/her (sorted) mirrorlist - he/she can just delete mirrorlist.pacnew. And 3.1.1 is perfectly fine for this, no need to wait for 3.2. -- Roman Kyrylych (Роман Кирилич)
2008/1/11, Roman Kyrylych <roman.kyrylych@gmail.com>:
2008/1/11, Dan McGee <dan@archlinux.org>:
We shouldn't have the stock config be Arch specific for a few reasons:
* Although it is our package, others should be able to use it * Keeping the mirrorlist coupled to the pacman package makes it hard to push updates to users without releasing a new copy of the pacman source
Signed-off-by: Dan McGee <dan@archlinux.org> --- In all our other removals of things before 3.1.0, I probably should have done this too. I'm debating whether to queue this up for 3.1.1 or 3.2.0. I'd appreciate any input you guys have on this.
This is the last thing in the code that is still tied tightly to Arch. I think a seperate 'core/mirrorlist' package would make a lot more sense here, or at least bundle it with filesystem or something. However, being its own package would be ideal becuase it could be version bumped at any time.
I think we can close FS#5885 after this (which means "yeah, bring it on!"). ;-) I think separate mirrorlist package is better than merging it with filesystem package - it will be more clear to users what pacman is trying to update. Of course, mirrorlist should be in a backup array. If user is satisfied with his/her (sorted) mirrorlist - he/she can just delete mirrorlist.pacnew. And 3.1.1 is perfectly fine for this, no need to wait for 3.2.
Emmm... I've just noticed you've removed Arch-specific changes from pacman.conf too. This is good, but I think we need to have pacman.conf useable by default. So I suggest just adding our current pacman.conf to CVS and replace distro-independent pacman.conf during the packaging stage. Having pacman.conf in mirrorlist package is not a good idea IMO. -- Roman Kyrylych (Роман Кирилич)
On Jan 11, 2008 12:32 PM, Roman Kyrylych <roman.kyrylych@gmail.com> wrote:
Emmm... I've just noticed you've removed Arch-specific changes from pacman.conf too. This is good, but I think we need to have pacman.conf useable by default. So I suggest just adding our current pacman.conf to CVS and replace distro-independent pacman.conf during the packaging stage. Having pacman.conf in mirrorlist package is not a good idea IMO.
Funny, I missed that part too. I am also curious how pacman.conf would be handled then.
2008/1/11, Xavier <shiningxc@gmail.com>:
On Jan 11, 2008 12:32 PM, Roman Kyrylych <roman.kyrylych@gmail.com> wrote:
Emmm... I've just noticed you've removed Arch-specific changes from pacman.conf too. This is good, but I think we need to have pacman.conf useable by default. So I suggest just adding our current pacman.conf to CVS and replace distro-independent pacman.conf during the packaging stage. Having pacman.conf in mirrorlist package is not a good idea IMO.
Funny, I missed that part too. I am also curious how pacman.conf would be handled then.
I guess pacman.conf in CVS and this in pacman's PKGBUILD: install -Dm644 pacman.conf $startdir/pkg/etc/pacman.conf -- Roman Kyrylych (Роман Кирилич)
On Jan 11, 2008 6:25 AM, Roman Kyrylych <roman.kyrylych@gmail.com> wrote:
2008/1/11, Xavier <shiningxc@gmail.com>:
On Jan 11, 2008 12:32 PM, Roman Kyrylych <roman.kyrylych@gmail.com> wrote:
Emmm... I've just noticed you've removed Arch-specific changes from pacman.conf too. This is good, but I think we need to have pacman.conf useable by default. So I suggest just adding our current pacman.conf to CVS and replace distro-independent pacman.conf during the packaging stage. Having pacman.conf in mirrorlist package is not a good idea IMO.
Funny, I missed that part too. I am also curious how pacman.conf would be handled then.
I guess pacman.conf in CVS and this in pacman's PKGBUILD: install -Dm644 pacman.conf $startdir/pkg/etc/pacman.conf
Yes. Step back for a second and look at it this way. With any package, we normally install our own conf file if the out-of-box one is not usable or does not have sane defaults for Arch Linux. Pacman should be no different. Having a pacman.conf in CVS is absolutely fine, and this wouldn't require a whole new release of pacman just to satisfy the addition or removal of repositories. There should be *no* Arch Linux specifics in the code that are not reasonable defaults for everyone. -Dan
Dan McGee wrote:
Step back for a second and look at it this way. With any package, we normally install our own conf file if the out-of-box one is not usable or does not have sane defaults for Arch Linux. Pacman should be no different.
Having a pacman.conf in CVS is absolutely fine, and this wouldn't require a whole new release of pacman just to satisfy the addition or removal of repositories. There should be *no* Arch Linux specifics in the code that are not reasonable defaults for everyone.
Ok, I don't know why, I didn't understand what putting it in CVS meant in the beginning. I get it now, and it looks fine to me.
On 1/11/08, Dan McGee <dpmcgee@gmail.com> wrote:
On Jan 11, 2008 6:25 AM, Roman Kyrylych <roman.kyrylych@gmail.com> wrote:
2008/1/11, Xavier <shiningxc@gmail.com>:
On Jan 11, 2008 12:32 PM, Roman Kyrylych <roman.kyrylych@gmail.com> wrote:
Emmm... I've just noticed you've removed Arch-specific changes from pacman.conf too. This is good, but I think we need to have pacman.conf useable by default. So I suggest just adding our current pacman.conf to CVS and replace distro-independent pacman.conf during the packaging stage. Having pacman.conf in mirrorlist package is not a good idea IMO.
Funny, I missed that part too. I am also curious how pacman.conf would be handled then.
I guess pacman.conf in CVS and this in pacman's PKGBUILD: install -Dm644 pacman.conf $startdir/pkg/etc/pacman.conf
Yes.
Step back for a second and look at it this way. With any package, we normally install our own conf file if the out-of-box one is not usable or does not have sane defaults for Arch Linux. Pacman should be no different.
Having a pacman.conf in CVS is absolutely fine, and this wouldn't require a whole new release of pacman just to satisfy the addition or removal of repositories. There should be *no* Arch Linux specifics in the code that are not reasonable defaults for everyone.
Just to clarify, do you mean "no arch specific code" in the pacman release tarballs, not the archlinux pacman package. Correct? I agree. The pacman project is an arch 'sponsored' project, but it isn't designed soley for arch. These types of changes should make it easier for other distributions, like frugalware for example, to package it up and use it -- I would think. In theory, at some time in the future, I imagine the pacman devs wouldn't even need to be the ones to own the arch pacman package. It just works out well that way right now.
On Jan 11, 2008 10:48 AM, eliott <eliott@cactuswax.net> wrote:
I agree. The pacman project is an arch 'sponsored' project, but it isn't designed soley for arch. These types of changes should make it easier for other distributions, like frugalware for example, to package it up and use it -- I would think.
That's correct. A large chunk of recent changes have been made with this in mind. Dan, I agree here, as long as the default pacman.conf has SOMETHING by way of example, we can just replace it in the package like everything else.
On Jan 11, 2008 11:27 AM, Aaron Griffin <aaronmgriffin@gmail.com> wrote:
On Jan 11, 2008 10:48 AM, eliott <eliott@cactuswax.net> wrote:
I agree. The pacman project is an arch 'sponsored' project, but it isn't designed soley for arch. These types of changes should make it easier for other distributions, like frugalware for example, to package it up and use it -- I would think.
That's correct. A large chunk of recent changes have been made with this in mind.
Dan, I agree here, as long as the default pacman.conf has SOMETHING by way of example, we can just replace it in the package like everything else.
So in reference to the original patch, what should I do? Add an example sync repository section, all commented out? -Dan
On Jan 11, 2008 11:30 AM, Dan McGee <dpmcgee@gmail.com> wrote:
On Jan 11, 2008 11:27 AM, Aaron Griffin <aaronmgriffin@gmail.com> wrote:
On Jan 11, 2008 10:48 AM, eliott <eliott@cactuswax.net> wrote:
I agree. The pacman project is an arch 'sponsored' project, but it isn't designed soley for arch. These types of changes should make it easier for other distributions, like frugalware for example, to package it up and use it -- I would think.
That's correct. A large chunk of recent changes have been made with this in mind.
Dan, I agree here, as long as the default pacman.conf has SOMETHING by way of example, we can just replace it in the package like everything else.
So in reference to the original patch, what should I do? Add an example sync repository section, all commented out?
I'd add a few examples. servers listed, some using $repo, some not and add an Include directive... not a real section but some comments describing them (see /etc/mkinitcpio.conf for how I like to do this stuff)
participants (6)
-
Aaron Griffin
-
Dan McGee
-
Dan McGee
-
eliott
-
Roman Kyrylych
-
Xavier