On Mon, Jul 03, 2006 at 07:13:35PM -0700, Donnie Berkholz wrote:
> Robin H. Johnson wrote:
> > If you have an ebuild with a non-standard pkg_nofetch, please ensure
> > that you use $SRC_URI instead of $A!
> > 
> > This is because if you have FEATURES=mirror or FEATURES=cvs, attempts to
> > download all of the source files for digesting or verification will hit
> > pkg_nofetch and $A is only the subset of $SRC_URI, causing misleading
> > messages to be displayed about what needs to be downloaded still.
> > 
> > Plasmaroo: could you perhaps change this in the devmanual?
> > 
> > I'll be looking through the tree to fix any existing occurrences of this.
> Displaying $SRC_URI is worse for the user, because it displays this
> weird dependency tree containing USE flags that they should not need to
> decipher.
> 
> I don't consider this something that should be "fixed."
In that case, neither behavior is correct.

Additionally, you should talk to the portage team and get the master
ebuild.sh changed, because the stock pkg_nofetch there uses SRC_URI.

This is the existing default pkg_nofetch from ebuild.sh:
pkg_nofetch() {
    [ -z "${SRC_URI}" ] && return
    echo "!!! The following are listed in SRC_URI for ${PN}:"
    local x
    for x in $(echo ${SRC_URI}); do
        echo "!!!   ${x}"
    done
}

When FEATURES=mirror, and you try to fetch, it does indeed contain unevaluated
USE flags. However for FEATURES=-mirror, the content of it is correct - no USE
flags at all.

Maybe a two-part solution is in order here then:
1. Change portage behavior regarding the value of SRC_URI during fetch with
   FEATURES=mirror to not contain any conditionals.
2. Change all ebuilds to use SRC_URI in pkg_nofetch

-- 
Robin Hugh Johnson
E-Mail     : [EMAIL PROTECTED]
GnuPG FP   : 11AC BA4F 4778 E3F6 E4ED  F38E B27B 944E 3488 4E85

Attachment: pgpLeZd4D2Zqv.pgp
Description: PGP signature

Reply via email to