From mboxrd@z Thu Jan 1 00:00:00 1970 From: Cyril Roelandt Subject: Re: Python --install-data Date: Sat, 5 Oct 2013 02:54:06 +0200 Message-ID: <20131005005406.GA29454@gmail.com> References: <20131003185941.GA6489@debian> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:50146) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VSG8S-0000Tk-8k for guix-devel@gnu.org; Fri, 04 Oct 2013 20:54:25 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1VSG8N-0002gE-30 for guix-devel@gnu.org; Fri, 04 Oct 2013 20:54:20 -0400 Received: from mail-wi0-x22c.google.com ([2a00:1450:400c:c05::22c]:55887) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VSG8M-0002g5-Re for guix-devel@gnu.org; Fri, 04 Oct 2013 20:54:15 -0400 Received: by mail-wi0-f172.google.com with SMTP id hn9so2440509wib.17 for ; Fri, 04 Oct 2013 17:54:13 -0700 (PDT) Content-Disposition: inline In-Reply-To: <20131003185941.GA6489@debian> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: guix-devel@gnu.org On Thu, Oct 03, 2013 at 08:59:41PM +0200, Andreas Enge wrote: > The attached recipe fails with the following output: > > ... > starting phase `build' > running "python setup.py" with command "build" and parameters () > running build > ... > phase `build' succeeded after 0 seconds > starting phase `check' > running "python setup.py" with command "test" and parameters () > running test > phase `check' succeeded after 1 seconds > starting phase `install' > running "python setup.py" with command "install" and parameters ("--prefix=/nix/store/5412ag0jg15k7gnd2z4ardg735iawr8l-aarddict-0.9.3" "--install-data=/nix/store/5412ag0jg15k7gnd2z4ardg735iawr8l-aarddict-0.9.3") > running install > ... > byte-compiling build/bdist.linux-x86_64/egg/tests/test_config.py to test_config.pyc > byte-compiling build/bdist.linux-x86_64/egg/tests/test_checksum.py to test_checksum.pyc > byte-compiling build/bdist.linux-x86_64/egg/tests/__init__.py to __init__.pyc > installing package data to build/bdist.linux-x86_64/egg > running install_data > creating /nix/store/a1x98y7y83j4x4d4pk21w9m4f60dgs9r-python-2.7.5/share/icons > error: could not create '/nix/store/a1x98y7y83j4x4d4pk21w9m4f60dgs9r-python-2.7.5/share/icons': Permission denied > phase `install' failed after 2 seconds > > Apparently, install_data tries to write into the python directory, although > a different prefix is given; later, I also added the "--install-data" > configure flag, the behaviour is the same in both cases. If you don't add any flags, it will try to use the Python directory: this is because of setup_other(), which uses sys.prefix. Now, I'm not a "Python guru" (especially not when it comes to the associated build systems), but I think setting "--prefix" should be enough. Apparently, it is not. I tried to replace setup_other() by a dummy function that just does "return {}", and I was able to install the package. Not sure it does what we want, though. I could find the "aarddict.png" file in my ~/.guix-profile, FWIW. The best thing to do might be to report this issue to the aarddict developers. Either there's an issue in setup.py, or this is the expected behaviour and we'll learn more about setuptools :) WDYT ? Cyril.