[pacman-dev] Interesting side-effect of IgnorePkg
So I tried to install base-devel on my slice today so I could build a package: $ pacS base-devel Password: base-devel package not found, searching for group... :: group base-devel (including ignored packages): autoconf automake bin86 bison ed fakeroot flex gcc libtool m4 make patch pkgconfig :: Install whole content? [Y/n] y warning: autoconf-2.63-1 is up to date -- reinstalling warning: bison-2.4.1-1 is up to date -- reinstalling :: gcc is in IgnorePkg/IgnoreGroup. Install anyway? [Y/n] n gcc package not found, searching for group... error: 'gcc': not found in sync db I said no to GCC becuase I have most of the toolchain/libc held back because the Xen kernel running there is older. However, I already have GCC installed, but it still caused the group install to fail. -Dan
So I tried to install base-devel on my slice today so I could build a package:
$ pacS base-devel Password: base-devel package not found, searching for group... :: group base-devel (including ignored packages): autoconf automake bin86 bison ed fakeroot flex gcc libtool m4 make patch pkgconfig :: Install whole content? [Y/n] y warning: autoconf-2.63-1 is up to date -- reinstalling warning: bison-2.4.1-1 is up to date -- reinstalling :: gcc is in IgnorePkg/IgnoreGroup. Install anyway? [Y/n] n gcc package not found, searching for group... error: 'gcc': not found in sync db
I said no to GCC becuase I have most of the toolchain/libc held back because the Xen kernel running there is older. However, I already have GCC installed, but it still caused the group install to fail.
-Dan
Did you try with pacman-git? This should be fixed, see FS#12059. Bye ------------------------------------------------------ SZTE Egyetemi Konyvtar - http://www.bibl.u-szeged.hu This message was sent using IMP: http://horde.org/imp/
On Mon, Jun 29, 2009 at 8:22 AM, Nagy Gabor<ngaba@bibl.u-szeged.hu> wrote:
So I tried to install base-devel on my slice today so I could build a package:
$ pacS base-devel Password: base-devel package not found, searching for group... :: group base-devel (including ignored packages): autoconf automake bin86 bison ed fakeroot flex gcc libtool m4 make patch pkgconfig :: Install whole content? [Y/n] y warning: autoconf-2.63-1 is up to date -- reinstalling warning: bison-2.4.1-1 is up to date -- reinstalling :: gcc is in IgnorePkg/IgnoreGroup. Install anyway? [Y/n] n gcc package not found, searching for group... error: 'gcc': not found in sync db
I said no to GCC becuase I have most of the toolchain/libc held back because the Xen kernel running there is older. However, I already have GCC installed, but it still caused the group install to fail.
-Dan
Did you try with pacman-git? This should be fixed, see FS#12059.
Haha, of course not. I probably should have dug a bit first, whoops. I just built pacman-git on that box and it seems to have done what I expected now, so thanks for letting me know I don't even know what we've done in 3.3. On a side note, I *really* need to make time for 3.3 release planning and the actual release. Hopefully everyone on the list will be ready for the barrage of activity needed to get this thing out the door, so start formulating any thoughts for last minute things that we need to fix or do. -Dan
Did you try with pacman-git? This should be fixed, see FS#12059.
Haha, of course not. I probably should have dug a bit first, whoops. I just built pacman-git on that box and it seems to have done what I expected now, so thanks for letting me know I don't even know what we've done in 3.3.
It is good that you bring this up, because that part of pacman is still ugly. And now I realized that the bug is not completely fixed. Why? Pacman calls alpm_grp_get_pkgs(), then the _names_ of the packages in the groups are added to the target list (-S pkg1 pkg2...). This is not perfect, because it is not guaranteed that we indeed add the expected package: 1. First of all, we should use repo/pkg1 to be sure that pacman won't add an other package named pkg1. 2. Alpm handles provisions. If we have a gcc provider in sync repos, pacman will select that package and will not return with PM_ERR_PKG_IGNORED. We can change this behavior but then probably we have to reimplement _alpm_resolvedep() in sync_addtarget. (Maybe that would be nicer, because we have an ugly prompt param already.) Personally I vote for cleaning up this part: Either introduce trans_addtarget_pmpkg(pmpkg_t *pkg) function to easily add group packages or move "-S group" handling to the back-end. But then we should also do that for -R and probably we want to add flags to enable/disable provision/group handling with trans_addtarget. Too much work :-( Alternatively, we can disable provision handling in sync_addtarget, then it should be also moved to front-end (we need more public functions) or introduce trans_addtarget_provision().
On a side note, I *really* need to make time for 3.3 release planning and the actual release. Hopefully everyone on the list will be ready for the barrage of activity needed to get this thing out the door, so start formulating any thoughts for last minute things that we need to fix or do.
See above. ;-) I have one more TODO: resolvedeps. Bye ------------------------------------------------------ SZTE Egyetemi Konyvtar - http://www.bibl.u-szeged.hu This message was sent using IMP: http://horde.org/imp/
participants (2)
-
Dan McGee
-
Nagy Gabor