[pacman-dev] Dynamic repository updates?
As it currently stands, in order to update the files in pacman.d are only updated on a pacman rel bump. This requires pacman to update its version to push any mirror list changes out. My proposal is to have a pacman-mirrors.pkg.tar.gz package. This way, pacman can get more dynamic mirror list updates, without having to version bump pacman itself (or rel bump). pacman-mirrors would take ownership of the /etc/pacman.d/ directory and the associated mirror files in there. This would allow people to keep their own mirrors at the top of the list, while proving new .pacnew files that people can merge across if they want. pacman would need pacman-mirrors as a dep I suppose. Anyway, it is just an idea, and would require minimal changes to pacman itself, while still giving the ability for dynamic repository updates without version bumping pacman itself.
Idézés eliott <eliott@cactuswax.net>:
As it currently stands, in order to update the files in pacman.d are only updated on a pacman rel bump.
This requires pacman to update its version to push any mirror list changes out.
My proposal is to have a pacman-mirrors.pkg.tar.gz package.
This way, pacman can get more dynamic mirror list updates, without having to version bump pacman itself (or rel bump).
pacman-mirrors would take ownership of the /etc/pacman.d/ directory and the associated mirror files in there. This would allow people to keep their own mirrors at the top of the list, while proving new .pacnew files that people can merge across if they want.
pacman would need pacman-mirrors as a dep I suppose.
Anyway, it is just an idea, and would require minimal changes to pacman itself, while still giving the ability for dynamic repository updates without version bumping pacman itself. I like the idea; but I'd prefer if pacman (or a script) could download a fresh mirrorlist from the net (and then may rank them). Bye, ngaba
---------------------------------------------------- SZTE Egyetemi Könyvtár - http://www.bibl.u-szeged.hu This mail sent through IMP: http://horde.org/imp/
On Fri, Sep 07, 2007 at 08:03:43PM +0200, Nagy Gabor wrote:
I like the idea; but I'd prefer if pacman (or a script) could download a fresh mirrorlist from the net (and then may rank them).
I realize this is probably not ideal, but you can always do : wget "http://projects.archlinux.org/git/?p=pacman.git;a=blob_plain;f=etc/pacman.d/..." -O mirrorlist sed -i "s/@CARCH@/i686/" mirrorlist
On Fri, Sep 07, 2007 at 09:24:48PM +0200, Xavier wrote:
On Fri, Sep 07, 2007 at 08:03:43PM +0200, Nagy Gabor wrote:
I like the idea; but I'd prefer if pacman (or a script) could download a fresh mirrorlist from the net (and then may rank them).
I realize this is probably not ideal, but you can always do : wget "http://projects.archlinux.org/git/?p=pacman.git;a=blob_plain;f=etc/pacman.d/..." -O mirrorlist sed -i "s/@CARCH@/i686/" mirrorlist
What if we just posted an up to date mirror list as a file and had an update-mirrors.sh script included in pacman that would update them? Jason
2007/9/7, eliott <eliott@cactuswax.net>:
As it currently stands, in order to update the files in pacman.d are only updated on a pacman rel bump.
This requires pacman to update its version to push any mirror list changes out.
My proposal is to have a pacman-mirrors.pkg.tar.gz package.
This way, pacman can get more dynamic mirror list updates, without having to version bump pacman itself (or rel bump).
pacman-mirrors would take ownership of the /etc/pacman.d/ directory and the associated mirror files in there. This would allow people to keep their own mirrors at the top of the list, while proving new .pacnew files that people can merge across if they want.
pacman would need pacman-mirrors as a dep I suppose.
Anyway, it is just an idea, and would require minimal changes to pacman itself, while still giving the ability for dynamic repository updates without version bumping pacman itself.
This was requested in bugtracker long time ago (probably more than once). See http://bugs.archlinux.org/task/5885 for example. Anyway since users are recommended to run rankmirrors script they will get new mirrorlist as .pacnew file and then they'll have to rename it and run rankmirrors script again or modify mirrorlist again. I don't see any difference between fetching new pacman-mirrors package version and updating pacman package. This essentially just moves package update procedure from one package name to another. -- Roman Kyrylych (Роман Кирилич)
On Fri, Sep 07, 2007 at 10:56:44PM +0300, Roman Kyrylych wrote:
I don't see any difference between fetching new pacman-mirrors package version and updating pacman package. This essentially just moves package update procedure from one package name to another.
I think eliott clearly stated it, having mirrors in another package makes the mirror list independent of pacman. This would allow to update the mirror list more frequently, without having to wait for a new pacman version each time. A new pacman version is generally only made after a certain number of changes is made. And it also needs to be stable enough. But well, I don't know if this is really needed. I personally only need to find one good mirror. So as soon as I find one, I stick with it. So I don't see a slightly outdated mirror list as a big issue. Also, does it change as fast as that? Besides, as I previously stated, its always possible to get it directly from the git repo. And there is also http://wiki.archlinux.org/index.php/Mirrors .
On 9/7/07, Xavier <shiningxc@gmail.com> wrote:
But well, I don't know if this is really needed. I personally only need to find one good mirror. So as soon as I find one, I stick with it. So I don't see a slightly outdated mirror list as a big issue. Also, does it change as fast as that?
Well there's a few neat things we can do with this. Firstly, a new faster mirror might pop up next to you, that's obvious. But also, we could add additional repos into this dir for 'on-the-fly' repos. Think about it this way. If we did some qt4 rebuilds or whatever, and needed time to test, we throw a qt4 file in /etc/pacman.d/ with one or two mirrors in it, and an install message or some such. Bam, easy and clean way, with no extra code, to distribute random repositories if and when we need them - this is something we discussed for a while in devland.
On 9/7/07, Xavier <shiningxc@gmail.com> wrote:
On Fri, Sep 07, 2007 at 10:56:44PM +0300, Roman Kyrylych wrote:
I don't see any difference between fetching new pacman-mirrors package version and updating pacman package. This essentially just moves package update procedure from one package name to another.
I think eliott clearly stated it, having mirrors in another package makes the mirror list independent of pacman. This would allow to update the mirror list more frequently, without having to wait for a new pacman version each time. A new pacman version is generally only made after a certain number of changes is made. And it also needs to be stable enough.
But well, I don't know if this is really needed. I personally only need to find one good mirror. So as soon as I find one, I stick with it. So I don't see a slightly outdated mirror list as a big issue. Also, does it change as fast as that?
Besides, as I previously stated, its always possible to get it directly from the git repo. And there is also http://wiki.archlinux.org/index.php/Mirrors .
My main issue with rel bumping pacman each time is... you are fetching way more data than just the mirror list. Arguably not much.. I don't think I would want some script, because that isn't really integrated well with pacman. - Pacman, with a mirror list package, can manage its own repositories. - The overhead for change is low. No need to change pacman itself really, just a dependency and a packaging change. - A repo addition/removal is automatable on -Syu. It was just an idea I was toying with myself, because it allows for dynamic mirror additions (for internal testing at a company for instance), can be handled by pacman itself (just another package), and has a low overhead for integration.
2007/9/7, Xavier <shiningxc@gmail.com>:
On Fri, Sep 07, 2007 at 10:56:44PM +0300, Roman Kyrylych wrote:
I don't see any difference between fetching new pacman-mirrors package version and updating pacman package. This essentially just moves package update procedure from one package name to another.
I think eliott clearly stated it, having mirrors in another package makes the mirror list independent of pacman. This would allow to update the mirror list more frequently, without having to wait for a new pacman version each time. A new pacman version is generally only made after a certain number of changes is made. And it also needs to be stable enough.
We don't have to wait for a stable pacman release. Just do not include mirrorlist in pacman tarball, but instead put it in CVS and add it to sources=() in PKGBUILD. Then when mirrorlist is updated - just bump pkgrel. That was what I meant. But now I find this solution worse than separate pacman-mirrors packageco due to this simple reason: it would be annoying to see "Install pacman first [Y/n]?" on every update of mirror list. :-P So yes, I started to like Eliott's idea. :-) -- Roman Kyrylych (Роман Кирилич)
participants (6)
-
Aaron Griffin
-
eliott
-
Jason Chu
-
Nagy Gabor
-
Roman Kyrylych
-
Xavier