Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 536522

Summary: dev-python/requests-2.5.1 - requests-2.5.1.tar.gz: tar: This does not look like a tar archive
Product: Portage Development Reporter: Max Steel <M.Steel>
Component: UnclassifiedAssignee: Portage team <dev-portage>
Status: RESOLVED INVALID    
Severity: normal    
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: emerge --info
Environment-file of =dev-python/requests-2.5.1
Found something... now i will testing...

Description Max Steel 2015-01-13 19:36:19 UTC
* Package:    dev-python/requests-2.5.1
 * Repository: gentoo
 * Maintainer: python@gentoo.org
 * USE:        abi_x86_64 amd64 elibc_glibc kernel_linux python_targets_python2_7 python_targets_python3_3 userland_GNU
 * FEATURES:   preserve-libs sandbox userpriv usersandbox
>>> Unpacking source...
>>> Unpacking requests-2.5.1.tar.gz to /var/tmp/portage/dev-python/requests-2.5.1/work
tar: This does not look like a tar archive
tar: Skipping to next header
tar: Exiting with failure status due to previous errors
* ERROR: dev-python/requests-2.5.1::gentoo failed (unpack phase):
 *   failure unpacking requests-2.5.1.tar.gz
 * 
 * Call stack:
 *               ebuild.sh, line   93:  Called src_unpack
 *             environment, line 3685:  Called default
 *      phase-functions.sh, line  770:  Called default_src_unpack
 *      phase-functions.sh, line  797:  Called __eapi0_src_unpack
 *        phase-helpers.sh, line  648:  Called unpack 'requests-2.5.1.tar.gz'
 *        phase-helpers.sh, line  357:  Called __unpack_tar 'gzip -d'
 *        phase-helpers.sh, line  299:  Called __assert_sigpipe_ok 'failure unpacking requests-2.5.1.tar.gz'
 *   isolated-functions.sh, line   39:  Called die
 * The specific snippet of code:
 *              [[ $x -ne 0 && $x -ne ${PORTAGE_SIGPIPE_STATUS:-141} ]] && die "$@"
 * 
 * If you need support, post the output of `emerge --info '=dev-python/requests-2.5.1::gentoo'`,                                                                  
 * the complete build log and the output of `emerge -pqv '=dev-python/requests-2.5.1::gentoo'`.                                                                   
 * The complete build log is located at '/var/tmp/portage/dev-python/requests-2.5.1/temp/build.log'.                                                              
 * The ebuild environment file is located at '/var/tmp/portage/dev-python/requests-2.5.1/temp/environment'.                                                       
 * Working directory: '/var/tmp/portage/dev-python/requests-2.5.1/work'                                                                                           
 * S: '/var/tmp/portage/dev-python/requests-2.5.1/work/requests-2.5.1'

Reproducible: Always

Steps to Reproduce:
1. emerge --sync
2. emerge -1 =dev-python/requests-2.5.1
3. enjoy


Expected Results:  
emerging and installing and running ;)
Comment 1 Mike Gilbert gentoo-dev 2015-01-13 19:47:44 UTC
Works fine here. Did you mess with the Manifest?

floppym@naomi requests % ebuild requests-2.5.1.ebuild unpack
 * requests-2.5.1.tar.gz SHA256 SHA512 WHIRLPOOL size ;-) ...                                [ ok ]
 * checking ebuild checksums ;-) ...                                                         [ ok ]
 * checking auxfile checksums ;-) ...                                                        [ ok ]
 * checking miscfile checksums ;-) ...                                                       [ ok ]
>>> Unpacking source...
>>> Unpacking requests-2.5.1.tar.gz to /tmp/portage/dev-python/requests-2.5.1/work
>>> Source unpacked in /tmp/portage/dev-python/requests-2.5.1/work
Comment 2 Max Steel 2015-01-13 19:54:26 UTC
Nope. I've deleted the Manifest-file and synced again just a few seconds ago.

Steps to reproduce:
rm /usr/portage/dev-python/requests/Manifest
rm /usr/portage/distfiles/requests-2.5.1.tar.gz
emerge --sync
emerge -1 =dev-python/requests-2.5.1
enjoy...

These are the packages that would be merged, in reverse order:

Calculating dependencies... done!
[ebuild     U  ] dev-python/requests-2.5.1 [2.5.0-r1] PYTHON_TARGETS="python2_7 python3_3 -pypy -pypy3 -python3_4" 0 KiB

Total: 1 package (1 upgrade), Size of downloads: 0 KiB


>>> Verifying ebuild manifests

>>> Emerging (1 of 1) dev-python/requests-2.5.1::gentoo
 * requests-2.5.1.tar.gz SHA256 SHA512 WHIRLPOOL size ;-) ...                                                                                              [ ok ]
>>> Unpacking source...
>>> Unpacking requests-2.5.1.tar.gz to /var/tmp/portage/dev-python/requests-2.5.1/work
tar: This does not look like a tar archive
tar: Skipping to next header
tar: Exiting with failure status due to previous errors
 * ERROR: dev-python/requests-2.5.1::gentoo failed (unpack phase):
 *   failure unpacking requests-2.5.1.tar.gz
 * 
 * Call stack:
 *               ebuild.sh, line   93:  Called src_unpack
 *             environment, line 3680:  Called default
 *      phase-functions.sh, line  770:  Called default_src_unpack
 *      phase-functions.sh, line  797:  Called __eapi0_src_unpack
 *        phase-helpers.sh, line  648:  Called unpack 'requests-2.5.1.tar.gz'
 *        phase-helpers.sh, line  357:  Called __unpack_tar 'gzip -d'
 *        phase-helpers.sh, line  299:  Called __assert_sigpipe_ok 'failure unpacking requests-2.5.1.tar.gz'
 *   isolated-functions.sh, line   39:  Called die
 * The specific snippet of code:
 *              [[ $x -ne 0 && $x -ne ${PORTAGE_SIGPIPE_STATUS:-141} ]] && die "$@"
 * 
 * If you need support, post the output of `emerge --info '=dev-python/requests-2.5.1::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=dev-python/requests-2.5.1::gentoo'`.
 * The complete build log is located at '/var/tmp/portage/dev-python/requests-2.5.1/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/dev-python/requests-2.5.1/temp/environment'.
 * Working directory: '/var/tmp/portage/dev-python/requests-2.5.1/work'
 * S: '/var/tmp/portage/dev-python/requests-2.5.1/work/requests-2.5.1'

>>> Failed to emerge dev-python/requests-2.5.1, Log file:

>>>  '/var/tmp/portage/dev-python/requests-2.5.1/temp/build.log'
Comment 3 Max Steel 2015-01-13 20:02:33 UTC
Created attachment 393902 [details]
emerge --info
Comment 4 Jeroen Roovers (RETIRED) gentoo-dev 2015-01-14 06:53:07 UTC
(In reply to Max Steel from comment #2)
> Nope. I've deleted the Manifest-file and synced again just a few seconds ago.

Then maybe it isn't a tar file now. Delete the file from DISTDIR, sync your tree and try again.
Comment 5 Max Steel 2015-01-25 16:28:52 UTC
[ ] You've read what i worte:

>> Steps to reproduce:
>> rm /usr/portage/dev-python/requests/Manifest
>> rm /usr/portage/distfiles/requests-2.5.1.tar.gz
>> emerge --sync
>> emerge -1 =dev-python/requests-2.5.1
>> enjoy...
Comment 6 Jeroen Roovers (RETIRED) gentoo-dev 2015-01-26 08:03:58 UTC
Please post your "emerge -vpq --nodeps `which gzip`" output in a comment.
Comment 7 Max Steel 2015-01-27 18:25:29 UTC
Here comes nothing:

# emerge -vpq --nodeps `which gzip`
[ebuild   R   ] app-arch/gzip-1.6  USE="-pic -static"

Thank you =)
Comment 8 Jeroen Roovers (RETIRED) gentoo-dev 2015-01-27 21:23:44 UTC
Maybe attaching the `environment' file will help.
Comment 9 Max Steel 2015-01-27 21:49:54 UTC
Created attachment 395034 [details]
Environment-file of =dev-python/requests-2.5.1

Maybe the environment File will help...

but i don't think so, because the requests-2.4.3 tar-file is packed with the same options to tar and gzip, but this works properly:

# ebuild /usr/portage/dev-python/requests/requests-2.4.3.ebuild unpack
 * requests-2.4.3.tar.gz SHA256 SHA512 WHIRLPOOL size ;-) ...                                                                                              [ ok ]
 * checking ebuild checksums ;-) ...                                                                                                                       [ ok ]
 * checking auxfile checksums ;-) ...                                                                                                                      [ ok ]
 * checking miscfile checksums ;-) ...                                                                                                                     [ ok ]
>>> Unpacking source...
>>> Unpacking requests-2.4.3.tar.gz to /var/tmp/portage/dev-python/requests-2.4.3/work
>>> Source unpacked in /var/tmp/portage/dev-python/requests-2.4.3/work
#

And any other package during an emerge -pe @world works... only requests-2.5.1 (and requests-2.5.0-r1 for the same error) this Package does nasty stuff...

I've tested my Filesystems for ${DISTDIR} and ${PORTDIR} without any Error also tested both with tmpfs mounts...
also i've compared the output of file and stat for requests-2.5.1.tar.gz with some Guys from irc://freenode.net/#gentoo.de and don't find any missmatches.. except for last save-date on local filesystem (of course)
Comment 10 Zac Medico gentoo-dev 2015-01-28 20:14:34 UTC
It's probably a permissions issue with the file, related to FEATURES=userpriv. The unpack function does not currently check if the file has read permission before calling tar.
Comment 11 Max Steel 2015-01-28 20:44:38 UTC
Sorry to Dissapoint you:

# FEATURES="-userpriv" emerge -1 requests

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild     U  ] dev-python/requests-2.5.1 [2.4.3] PYTHON_TARGETS="python2_7 python3_3 -pypy -pypy3 -python3_4" 0 KiB

Total: 1 package (1 upgrade), Size of downloads: 0 KiB


>>> Verifying ebuild manifests

>>> Emerging (1 of 1) dev-python/requests-2.5.1::gentoo
 * requests-2.5.1.tar.gz SHA256 SHA512 WHIRLPOOL size ;-) ...                                                                                              [ ok ]
>>> Unpacking source...
>>> Unpacking requests-2.5.1.tar.gz to /var/tmp/portage/dev-python/requests-2.5.1/work
tar: This does not look like a tar archive
tar: Skipping to next header
tar: Exiting with failure status due to previous errors
 * ERROR: dev-python/requests-2.5.1::gentoo failed (unpack phase):
 *   failure unpacking requests-2.5.1.tar.gz
 * 
 * Call stack:
 *               ebuild.sh, line   93:  Called src_unpack
 *             environment, line 3711:  Called default
 *      phase-functions.sh, line  770:  Called default_src_unpack
 *      phase-functions.sh, line  797:  Called __eapi0_src_unpack
 *        phase-helpers.sh, line  648:  Called unpack 'requests-2.5.1.tar.gz'
 *        phase-helpers.sh, line  357:  Called __unpack_tar 'gzip -d'
 *        phase-helpers.sh, line  299:  Called __assert_sigpipe_ok 'failure unpacking requests-2.5.1.tar.gz'
 *   isolated-functions.sh, line   39:  Called die
 * The specific snippet of code:
 *              [[ $x -ne 0 && $x -ne ${PORTAGE_SIGPIPE_STATUS:-141} ]] && die "$@"
 * 
 * If you need support, post the output of `emerge --info '=dev-python/requests-2.5.1::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=dev-python/requests-2.5.1::gentoo'`.
 * The complete build log is located at '/var/tmp/portage/dev-python/requests-2.5.1/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/dev-python/requests-2.5.1/temp/environment'.
 * Working directory: '/var/tmp/portage/dev-python/requests-2.5.1/work'
 * S: '/var/tmp/portage/dev-python/requests-2.5.1/work/requests-2.5.1'
Comment 12 Max Steel 2015-01-28 20:45:45 UTC
AND:

# ll /usr/portage/distfiles/requests-2.*
-rw-rw-r-- 1 portage portage 438132  6. Okt 11:44 /usr/portage/distfiles/requests-2.4.3.tar.gz
-rw-rw-r-- 1 portage portage 443222  2. Dez 00:27 /usr/portage/distfiles/requests-2.5.0.tar.gz
-rw-rw-r-- 1 portage portage 443633 23. Dez 18:56 /usr/portage/distfiles/requests-2.5.1.tar.gz

(sorry for double-post... have forgot it)
Comment 13 Zac Medico gentoo-dev 2015-01-28 21:48:26 UTC
(In reply to Max Steel from comment #11)
> Sorry to Dissapoint you:
> 
> # FEATURES="-userpriv" emerge -1 requests

Also disable usersandbox, since that also enables userpriv-like behavior.

(In reply to Max Steel from comment #12)
> AND:
> 
> # ll /usr/portage/distfiles/requests-2.*
> -rw-rw-r-- 1 portage portage 438132  6. Okt 11:44
> /usr/portage/distfiles/requests-2.4.3.tar.gz
> -rw-rw-r-- 1 portage portage 443222  2. Dez 00:27
> /usr/portage/distfiles/requests-2.5.0.tar.gz
> -rw-rw-r-- 1 portage portage 443633 23. Dez 18:56
> /usr/portage/distfiles/requests-2.5.1.tar.gz
> 
> (sorry for double-post... have forgot it)

Also check permissions of _all_ directories up to the root directory. The "portage" user needs +rx permission on all of those directories.
Comment 14 Max Steel 2015-01-28 21:58:51 UTC
Yeah... tried that before;

EMERGE_DEFAULT_OPTS="" FEATURES="-usersync -userpriv -usersandbox -userfetch -parllel-fetch" emerge -1v requests

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild     U  ] dev-python/requests-2.5.1 [2.4.3] PYTHON_TARGETS="python2_7 python3_3 -pypy -pypy3 -python3_4" 0 KiB

Total: 1 package (1 upgrade), Size of downloads: 0 KiB


>>> Verifying ebuild manifests

>>> Emerging (1 of 1) dev-python/requests-2.5.1::gentoo
 * requests-2.5.1.tar.gz SHA256 SHA512 WHIRLPOOL size ;-) ...                                                                                              [ ok ]
>>> Unpacking source...
>>> Unpacking requests-2.5.1.tar.gz to /var/tmp/portage/dev-python/requests-2.5.1/work
tar: This does not look like a tar archive
tar: Skipping to next header
tar: Exiting with failure status due to previous errors
 * ERROR: dev-python/requests-2.5.1::gentoo failed (unpack phase):
 *   failure unpacking requests-2.5.1.tar.gz
 * 
 * Call stack:
 *               ebuild.sh, line   93:  Called src_unpack
 *             environment, line 3711:  Called default
 *      phase-functions.sh, line  770:  Called default_src_unpack
 *      phase-functions.sh, line  797:  Called __eapi0_src_unpack
 *        phase-helpers.sh, line  648:  Called unpack 'requests-2.5.1.tar.gz'
 *        phase-helpers.sh, line  357:  Called __unpack_tar 'gzip -d'
 *        phase-helpers.sh, line  299:  Called __assert_sigpipe_ok 'failure unpacking requests-2.5.1.tar.gz'
 *   isolated-functions.sh, line   39:  Called die
 * The specific snippet of code:
 *              [[ $x -ne 0 && $x -ne ${PORTAGE_SIGPIPE_STATUS:-141} ]] && die "$@"
 * 
 * If you need support, post the output of `emerge --info '=dev-python/requests-2.5.1::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=dev-python/requests-2.5.1::gentoo'`.
 * The complete build log is located at '/var/tmp/portage/dev-python/requests-2.5.1/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/dev-python/requests-2.5.1/temp/environment'.
 * Working directory: '/var/tmp/portage/dev-python/requests-2.5.1/work'
 * S: '/var/tmp/portage/dev-python/requests-2.5.1/work/requests-2.5.1'


Also permissions:

# ll /
drwxr-xr-x  29 root    root     4096 28. Jan 09:35 ./
drwxr-xr-x  14 root    root     4096 29. Okt 19:25 usr/

# ll /usr
drwxr-xr-x  14 root  root   4096 29. Okt 19:25 ./
drwxr-xr-x 172 root  root   4096 27. Jan 19:54 portage/

# ll /usr/portage
drwxr-xr-x  172 root    root      4096 27. Jan 19:54 ./
drwxrwxr-x    3 portage portage 135168 28. Jan 21:53 distfiles/

# ll /usr/portage/distfiles/
drwxrwxr-x   3 portage portage    135168 28. Jan 21:53 ./
-rw-rw-r-- 1 portage portage 443633 23. Dez 18:56 /usr/portage/distfiles/requests-2.5.1.tar.gz

Any other tips?
Comment 15 Max Steel 2015-01-28 22:12:34 UTC
Created attachment 395086 [details]
Found something... now i will testing...

SOOOO
This will... explained it.

Have to rework my CFLAGS...
Comment 16 Max Steel 2015-01-28 22:23:33 UTC
Thankyou for everything. Im outta here (new CFLAGS btw: -march=native -mfpmath=sse -O2 -falign-functions=64 -fstack-protector -pipe) ^^