The emerge fetch routine has stopped working when /usr/portage/distfiles is residing on an NFS share on a server (as opposed to a local repository). cd'ing to the mounted /usr/portage/distfiles and manually wget'ting the tarballs then and there works without any problems whatsoever, but doing the same thing via `emerge -f foo` produces "Cannot write to /usr/portage/distfiles/foo-1.2.3.tar.gz (Permission denied)." errors. Reverting to earlier portage versions solves the problem.
Do you have userpriv in FEATURES (`emerge info` would have shown this). Are you fetching as root? Can you provide the exact errors?
Created attachment 59162 [details] emerge info from four affected hosts userpriv is in FEATURES for all four hosts I'm seeing this happen on. The only machine around the house still working as designed is my Ultra 10, apparently because ~sparc still thinks that 2.0.51.19 is portage's dernier cri... I've attached all four emerge infos. I am indeed fetching/emerging as root, and the unabridged version of my "exact error message" reads: >>> emerge (1 of 1) app-portage/profuse-0.21.0 to / *** Adjusting cvs-src permissions for portage user... !!! Unable to chgrp of /usr/portage/distfiles to portage, continuing Cannot chown a lockfile. This could cause inconvenience later. >>> Downloading http://distfiles.gentoo.org/distfiles/profuse-0.21.0.tar.bz2 --02:02:20-- http://distfiles.gentoo.org/distfiles/profuse-0.21.0.tar.bz2 => `/usr/portage/distfiles/profuse-0.21.0.tar.bz2' Resolving distfiles.gentoo.org... 216.165.129.135, 156.56.247.195, 140.211.166.134 Connecting to distfiles.gentoo.org[216.165.129.135]:80... connected. HTTP request sent, awaiting response... 200 OK Length: 23,224 [application/x-tar] /usr/portage/distfiles/profuse-0.21.0.tar.bz2: Permission denied Cannot write to `/usr/portage/distfiles/profuse-0.21.0.tar.bz2' (Permission denied). >>> Downloading http://distro.ibiblio.org/pub/Linux/distributions/gentoo/distfiles/profuse-0.21.0.tar.bz2 --02:02:21-- http://distro.ibiblio.org/pub/Linux/distributions/gentoo/distfiles/profuse-0.21.0.tar.bz2 => `/usr/portage/distfiles/profuse-0.21.0.tar.bz2' Resolving distro.ibiblio.org... 152.2.210.109 Connecting to distro.ibiblio.org[152.2.210.109]:80... connected. HTTP request sent, awaiting response... 404 Not Found 02:02:22 ERROR 404: Not Found. >>> Downloading http://libconf.net/profuse/download/profuse-0.21.0.tar.bz2 --02:02:22-- http://libconf.net/profuse/download/profuse-0.21.0.tar.bz2 => `/usr/portage/distfiles/profuse-0.21.0.tar.bz2' Resolving libconf.net... 82.225.74.76 Connecting to libconf.net[82.225.74.76]:80... connected. HTTP request sent, awaiting response... 200 OK Length: 23,224 [application/x-tar] /usr/portage/distfiles/profuse-0.21.0.tar.bz2: Permission denied Cannot write to `/usr/portage/distfiles/profuse-0.21.0.tar.bz2' (Permission denied). !!! Couldn't download profuse-0.21.0.tar.bz2. Aborting. !!! Fetch for /usr/portage/app-portage/profuse/profuse-0.21.0.ebuild failed, continuing... !!! Some fetch errors were encountered. Please see above for details. profuse just provides an example, the same happens to every other distfile not already in /usr/portage/distfiles. Just in case you're interested in the "Cannot chown a lockfile. This could cause inconvenience later." bit, check bug #63443.
2.0.51.22 now drops to user portage during fetch when userpriv is enabled. Does the portage user have write permission?
No. There is no user portage on the NFS server, and hell is going to have plenty of time to acquire a nicely glistening ice crust before a user portage gets set up on that thing. It's a corporate FreeBSD 4.6.2 file server, and although being friendly with its administrator, I'm not him... Time for a new FEATURE like "-distlocks" again? "alienrepository" perhaps? Or do I simply scrap userpriv?
Changed to FEATURES="userfetch".
Fixed on or before 2.0.51.22-r1
Looking through the batch of bugs, I'm not sure that some of these are actually fixed in stable. Others, the requirements have possibly changed after the initial fix was committed. If you think this bug has been closed incorrectly, please reopen or ask that it be reopened.