Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 487428 - net-misc/youtube-dl-2013.10.07 - distutils-r1_src_compile(): cannot create directory '/var/tmp/paludis/net-misc-youtube-dl-2013.10.07/temp//python2.7/home': Permission denied - with paludis
Summary: net-misc/youtube-dl-2013.10.07 - distutils-r1_src_compile(): cannot create di...
Status: RESOLVED DUPLICATE of bug 487260
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Eclasses (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Python Gentoo Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-10-09 12:35 UTC by Philipp
Modified: 2013-10-09 14:52 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Philipp 2013-10-09 12:35:30 UTC
youtube-dl has been failing with this error for quite some time now.
I think the problem is that distutils-r1.eclass creates some of the directory structure in $T when running pkg_setup, which paludis runs as root, and then later fails because paludis runs src_compile as paludisbuild.


>>> Running ebuild phase killold as root:root...
>>> Starting builtin_killold
>>> Done builtin_killold
>>> Completed ebuild phase killold
>>> Running ebuild phases init saveenv as paludisbuild:paludisbuild...
>>> Starting builtin_init
>>> Done builtin_init
>>> Starting builtin_saveenv
>>> Done builtin_saveenv
>>> Completed ebuild phases init saveenv
>>> Running ebuild phases loadenv setup saveenv as root:root...
>>> Starting builtin_loadenv
>>> Done builtin_loadenv
>>> Starting pkg_setup
>>> Done pkg_setup
>>> Starting builtin_saveenv
>>> Done builtin_saveenv
>>> Completed ebuild phases loadenv setup saveenv
>>> Running ebuild phases loadenv unpack saveenv as paludisbuild:paludisbuild...
>>> Starting builtin_loadenv
>>> Done builtin_loadenv
>>> Starting src_unpack
>>> Unpacking youtube-dl-2013.10.07.tar.gz to /var/tmp/paludis/net-misc-youtube-dl-2013.10.07/work
tar zxf /var/paludis/distfiles/youtube-dl-2013.10.07.tar.gz --no-same-owner
>>> Done src_unpack
>>> Starting builtin_saveenv
>>> Done builtin_saveenv
>>> Completed ebuild phases loadenv unpack saveenv
>>> Running ebuild phases loadenv prepare saveenv as paludisbuild:paludisbuild...
>>> Starting builtin_loadenv
>>> Done builtin_loadenv
>>> Starting src_prepare
>>> Done src_prepare
>>> Starting builtin_saveenv
>>> Done builtin_saveenv
>>> Completed ebuild phases loadenv prepare saveenv
>>> Running ebuild phases loadenv configure saveenv as paludisbuild:paludisbuild...
>>> Starting builtin_loadenv
>>> Done builtin_loadenv
>>> Starting src_configure
>>> Done src_configure
>>> Starting builtin_saveenv
>>> Done builtin_saveenv
>>> Completed ebuild phases loadenv configure saveenv
>>> Running ebuild phases loadenv compile saveenv as paludisbuild:paludisbuild...
>>> Starting builtin_loadenv
>>> Done builtin_loadenv
>>> Starting src_compile
mkdir: cannot create directory '/var/tmp/paludis/net-misc-youtube-dl-2013.10.07/temp//python2.7/home': Permission denied

!!! ERROR in net-misc/youtube-dl-2013.10.07::gentoo:
!!! In distutils-r1_run_phase at line 1254
!!! (no message provided)

!!! Call stack:
!!!    * distutils-r1_run_phase (/var/tmp/paludis/net-misc-youtube-dl-2013.10.07/temp/loadsaveenv:1254)
!!!    * _distutils-r1_run_foreach_impl (/var/tmp/paludis/net-misc-youtube-dl-2013.10.07/temp/loadsaveenv:581)
!!!    * distutils-r1_src_compile (/var/tmp/paludis/net-misc-youtube-dl-2013.10.07/temp/loadsaveenv:1266)
!!!    * src_compile (/var/tmp/paludis/net-misc-youtube-dl-2013.10.07/temp/loadsaveenv:4682)
!!!    * ebuild_f_compile (/usr/libexec/paludis/2/src_compile.bash:56)
!!!    * ebuild_main (/usr/libexec/paludis/ebuild.bash:673)
!!!    * main (/usr/libexec/paludis/ebuild.bash:696)

diefunc: making ebuild PID 2137 exit with error
die trap: exiting with error.


ls -l /var/tmp/paludis/net-misc-youtube-dl-2013.10.07/temp/
total 196
-rw-r--r-- 1 paludisbuild paludisbuild      0 Oct  9 10:27 build_start_time
-rw-r--r-- 1 paludisbuild paludisbuild 199568 Oct  9 10:27 loadsaveenv
drwxr-xr-x 1 root         root             24 Oct  9 10:27 python2.7
Comment 1 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2013-10-09 13:09:17 UTC
(CC-ing paludis maintainer for help)

Neither distutils-r1 nor the ebuild does anything in pkg_setup. And portage runs the phases similarly to paludis.

The ebuild lacks a call to distutils-r1_src_prepare but I doubt this would cause this kind of trouble. Honestly, I don't have an idea what could be happening here.
Comment 2 Jeroen Roovers (RETIRED) gentoo-dev 2013-10-09 13:23:12 UTC
(In reply to Michał Górny from comment #1)
> The ebuild lacks a call to distutils-r1_src_prepare but I doubt this would
> cause this kind of trouble.

I could add that nevertheless...

--- youtube-dl-2013.10.07.ebuild        7 Oct 2013 18:02:57 -0000       1.1
+++ youtube-dl-2013.10.07.ebuild        9 Oct 2013 13:21:31 -0000
@@ -30,6 +30,7 @@
                sed -i -e $( printf '/%s/d;' ${xxx[@]} ) youtube_dl/extractor/__init__.py || die
                rm $( printf 'youtube_dl/extractor/%s.py ' ${xxx[@]} ) || die
        fi
+       distutils-r1_src_prepare
 }

 src_compile() {
Comment 3 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2013-10-09 14:52:26 UTC

*** This bug has been marked as a duplicate of bug 487260 ***