-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Kent Fredric wrote:
> 
> Ok, I've re-thought some of my ideas and tried to come up with a more
> concise explanation
> with some practical example syntax. The basic concept of 'check' was
> 'this will work even if the package aint installed yet' and info was
> 'for working but bust packages only', but that can be superceded with
> a CHECKLIST and a conditional driven INFO function.
> 
> 
> 
> CHECKLIST="
>    a? ( some-cat/a-lib )
>    b? ( some-cat/b-lib )
> "
> 
> That would make building a checklist for lazy people as simple as
> 
> CHECKLIST="${RDEPEND}"
> 

This seems to be quite a heavy solution just to get a little more
information.  Info seems much more simple and flexible.  If you're
having to encode information in the ebuild about "what dependencies to
check when you break" then how will you diagnose missing dependencies?
  From Mike's idea, I envisaged something more along the lines of:

Bug:
"Compilation failed as followed:

  Package X failed to install
  ...stuff...
  X.c: ../Y.h not found
  X.c: ../Z.h not found
  ...stuff..."

Response:
"Could you please run emerge --info --verbose Y Z and paste the output here"

Counter-Response:
" Lots of useful standard info
  Y was compiled with USE flags blah
  Y was compiled from overlay BLAH
  Y's manifest was not signed
  Y's internal env included myconf='--disable-something-critical'
  Z wasn't emerged"

Speedy response:
"Ah, your problem is that for some reason, something-critical was
disabled in package Y, and Z wasn't included in the dependencies.
Please try this to solve it..."

It's difficult to think of situations where you'd ask for information
from an uninstalled ebuild that you couldn't ask for from installed
dependencies, but I'd rather do that manually than try encoding it into
the ebuilds and then still have to ask the user to do it manually in
some circumstances.

Most of this could be in a default pkg_info, but it allows for
overriding by an eclass, and on a per package basis, without requiring
each package writing custom error-locating code.  This is, after all,
just giving more information, it's not guaranteed to find the error.

I hope that makes some sense?

Mike  5:)
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.4 (GNU/Linux)

iD8DBQFGkMBIu7rWomwgFXoRAghUAJ0a/EP6wRQlT2j+GcND5LZoNoqWMwCbBhbR
WwvnMHqEgmlz/auL00YvhIQ=
=kmNa
-----END PGP SIGNATURE-----
-- 
[EMAIL PROTECTED] mailing list

Reply via email to