1 |
-----BEGIN PGP SIGNED MESSAGE----- |
2 |
Hash: SHA1 |
3 |
|
4 |
Kent Fredric wrote: |
5 |
> |
6 |
> Ok, I've re-thought some of my ideas and tried to come up with a more |
7 |
> concise explanation |
8 |
> with some practical example syntax. The basic concept of 'check' was |
9 |
> 'this will work even if the package aint installed yet' and info was |
10 |
> 'for working but bust packages only', but that can be superceded with |
11 |
> a CHECKLIST and a conditional driven INFO function. |
12 |
> |
13 |
> |
14 |
> |
15 |
> CHECKLIST=" |
16 |
> a? ( some-cat/a-lib ) |
17 |
> b? ( some-cat/b-lib ) |
18 |
> " |
19 |
> |
20 |
> That would make building a checklist for lazy people as simple as |
21 |
> |
22 |
> CHECKLIST="${RDEPEND}" |
23 |
> |
24 |
|
25 |
This seems to be quite a heavy solution just to get a little more |
26 |
information. Info seems much more simple and flexible. If you're |
27 |
having to encode information in the ebuild about "what dependencies to |
28 |
check when you break" then how will you diagnose missing dependencies? |
29 |
From Mike's idea, I envisaged something more along the lines of: |
30 |
|
31 |
Bug: |
32 |
"Compilation failed as followed: |
33 |
|
34 |
Package X failed to install |
35 |
...stuff... |
36 |
X.c: ../Y.h not found |
37 |
X.c: ../Z.h not found |
38 |
...stuff..." |
39 |
|
40 |
Response: |
41 |
"Could you please run emerge --info --verbose Y Z and paste the output here" |
42 |
|
43 |
Counter-Response: |
44 |
" Lots of useful standard info |
45 |
Y was compiled with USE flags blah |
46 |
Y was compiled from overlay BLAH |
47 |
Y's manifest was not signed |
48 |
Y's internal env included myconf='--disable-something-critical' |
49 |
Z wasn't emerged" |
50 |
|
51 |
Speedy response: |
52 |
"Ah, your problem is that for some reason, something-critical was |
53 |
disabled in package Y, and Z wasn't included in the dependencies. |
54 |
Please try this to solve it..." |
55 |
|
56 |
It's difficult to think of situations where you'd ask for information |
57 |
from an uninstalled ebuild that you couldn't ask for from installed |
58 |
dependencies, but I'd rather do that manually than try encoding it into |
59 |
the ebuilds and then still have to ask the user to do it manually in |
60 |
some circumstances. |
61 |
|
62 |
Most of this could be in a default pkg_info, but it allows for |
63 |
overriding by an eclass, and on a per package basis, without requiring |
64 |
each package writing custom error-locating code. This is, after all, |
65 |
just giving more information, it's not guaranteed to find the error. |
66 |
|
67 |
I hope that makes some sense? |
68 |
|
69 |
Mike 5:) |
70 |
-----BEGIN PGP SIGNATURE----- |
71 |
Version: GnuPG v2.0.4 (GNU/Linux) |
72 |
|
73 |
iD8DBQFGkMBIu7rWomwgFXoRAghUAJ0a/EP6wRQlT2j+GcND5LZoNoqWMwCbBhbR |
74 |
WwvnMHqEgmlz/auL00YvhIQ= |
75 |
=kmNa |
76 |
-----END PGP SIGNATURE----- |
77 |
-- |
78 |
gentoo-dev@g.o mailing list |