On 04/10/2018 04:23 PM, Ian Zimmerman wrote:
> When I do emerge dev-java/oracle-jre-bin, portage quoth:
>
> !!! dev-java/oracle-jre-bin-1.8.0.162-r1 has fetch restriction turned on.
> !!! This probably means that this ebuild's files must be downloaded
> !!! manually. See the comments in the ebuild for more information.
>
> * Fetch failed for 'dev-java/oracle-jre-bin-1.8.0.162-r1', Log file:
> *
> '/var/log/portage/dev-java:oracle-jre-bin-1.8.0.162-r1:20180410-201117.log'
> * Package:dev-java/oracle-jre-bin-1.8.0.162-r1
> * Repository: gentoo
> * Maintainer: j...@gentoo.org
> * USE:abi_x86_64 alsa amd64 elibc_glibc fontconfig kernel_linux
> userland_GNU
> * FEATURES: fakeroot preserve-libs sandbox userpriv
> * Please download jre-8u162-linux-x64.tar.gz and move it to
> * /var/tmp/portage/dev-java/oracle-jre-bin-1.8.0.162-r1/distdir:
> *
> *
> http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html
>
> But no matter how much I tried to please it (copying the file into a
> distdir/ subdirectory, or copying it _as a file_ called distdir) I
> couldn't get it to work.
>
> OTOH, just doing what first comes to mind (putting the file in
> /usr/portage/distfiles/) does work.
>
> what the foo?
>
The problem is that Portage now changes the value of the "${DISTDIR}"
environment variable inside an ebuild to a temporary directory it
creates and fills with symlinks to the real distfiles in your actual
${DISTDIR}. The message in the ebuild was written before this change
happened and directly references the "${DISTDIR}" environment variable,
assuming it to still have the value you specified in make.conf. As you
figured out, the correct action is to install the file in your real
${DISTDIR}, but the ebuild no longer has access to determine what the
name of that directory should be.
This probably should be reported as a bug.
--
Jonathan Callen
signature.asc
Description: OpenPGP digital signature