1 |
On Mon, Jul 03, 2006 at 07:13:35PM -0700, Donnie Berkholz wrote: |
2 |
> Robin H. Johnson wrote: |
3 |
> > If you have an ebuild with a non-standard pkg_nofetch, please ensure |
4 |
> > that you use $SRC_URI instead of $A! |
5 |
> > |
6 |
> > This is because if you have FEATURES=mirror or FEATURES=cvs, attempts to |
7 |
> > download all of the source files for digesting or verification will hit |
8 |
> > pkg_nofetch and $A is only the subset of $SRC_URI, causing misleading |
9 |
> > messages to be displayed about what needs to be downloaded still. |
10 |
> > |
11 |
> > Plasmaroo: could you perhaps change this in the devmanual? |
12 |
> > |
13 |
> > I'll be looking through the tree to fix any existing occurrences of this. |
14 |
> Displaying $SRC_URI is worse for the user, because it displays this |
15 |
> weird dependency tree containing USE flags that they should not need to |
16 |
> decipher. |
17 |
> |
18 |
> I don't consider this something that should be "fixed." |
19 |
In that case, neither behavior is correct. |
20 |
|
21 |
Additionally, you should talk to the portage team and get the master |
22 |
ebuild.sh changed, because the stock pkg_nofetch there uses SRC_URI. |
23 |
|
24 |
This is the existing default pkg_nofetch from ebuild.sh: |
25 |
pkg_nofetch() { |
26 |
[ -z "${SRC_URI}" ] && return |
27 |
echo "!!! The following are listed in SRC_URI for ${PN}:" |
28 |
local x |
29 |
for x in $(echo ${SRC_URI}); do |
30 |
echo "!!! ${x}" |
31 |
done |
32 |
} |
33 |
|
34 |
When FEATURES=mirror, and you try to fetch, it does indeed contain unevaluated |
35 |
USE flags. However for FEATURES=-mirror, the content of it is correct - no USE |
36 |
flags at all. |
37 |
|
38 |
Maybe a two-part solution is in order here then: |
39 |
1. Change portage behavior regarding the value of SRC_URI during fetch with |
40 |
FEATURES=mirror to not contain any conditionals. |
41 |
2. Change all ebuilds to use SRC_URI in pkg_nofetch |
42 |
|
43 |
-- |
44 |
Robin Hugh Johnson |
45 |
E-Mail : robbat2@g.o |
46 |
GnuPG FP : 11AC BA4F 4778 E3F6 E4ED F38E B27B 944E 3488 4E85 |