On Dec 10, 2007 9:08 AM, Nagy Gabor <ngaba@bibl.u-szeged.hu> wrote:
Oh no, I have to start everything again. Seriously, how practical is that? Personally, I never used it, and I don't see the point of this interactivity. I just do pacman -S group, I have a look at all the targets it wants to pull. And then, either I accept, or I refuse, and I run pacman -S again by picking the few targets I want manually. But if instead of only picking a few targets, you just want to exclude a few ones, then IgnorePkg should probably apply here.
What do you think? There might be some important and common use cases I'm forgetting, which is why I bring this up here for discussion.
You are right, this is not practical. However, currently group adding is handled in front-end (which is right imho), so the front-end decides which packages it will add, and it does a 'pacman -S selected_packages'. Currently "pacman -S foo" ignores[;-)] --ignore foo (note: IgnorePkg can also be defined in pacman.conf) to avoid needless "Do you want to install to foo?" <- in this explicit case user _wants_ to install foo. So you may want to 1. change this behavior or 2. do IgnorePkg check in front-end or 3. move group adding to libalpm or 4. or implement new sync_addtarget (or add ignorepkg parameter to the current one)
Well, I don't really like none of them (but if you have no other ideas, I would prefer (add parameter...) from 4.)
Hmm, it almost makes sense to do something of the sort: int alpm_add_target(pmtrans_t *trans, const char *pkgname) { ... if(is_ignored(pkgname)) { return PM_ERR_PKG_IGNORED; } ... } if(alpm_add_target(trans, "xorg-video-something") == PM_ERR_PKG_IGNORED) { puts("omg the package was ignored, panic panic!"); } At least, that is how I'd think it through.