Summary: | sys-apps/paludis - kde-base/kdelibs-4.8.2 - unpack: error: Couldn't unpack /var/distfiles/kdelibs-4.8.2.tar.xz: 141 0 | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Franz Trischberger <franz.trischberger> |
Component: | [OLD] KDE | Assignee: | Gentoo KDE team <kde> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | carlphilippreh, ciaran.mccreesh, dev-portage, gentoo+bugs, gibgibon, kamensky.fb, kentnl, levertond, ninuje, slyfox, xangel1 |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: | build log |
> It is just kdelibs.4.8.2 that fails.
Not right, now kde-l10n-de-4.8.2 failed, too. But in the meantime several other packages unpacked fine.
As a workaround, I edited the unpack-command in /usr/libexec/paludis/utils/unpack from
xz -dc "${1}" | tar xf - --no-same-owner "${TAR_OPTIONS[@]}"
to
tar xfJ "${1}" --no-same-owner "${TAR_OPTIONS[@]}"
Shouldn't this go directly upstream? Apparently this isn't a problem in kde-*/* or its eclasses. Last time this happened it was because the tarballs contained trailing garbage (which Portage doesn't detect). You can see the commands that Paludis is running. The question is why KDE is shipping tarballs that can't be extracted that way. Ive done an strace of the processs and the critical fail is here: https://gist.github.com/2317143 It appears that for some reason, tar is closing STDIN prematurely leading to a SIGPIPE For easier diagnosis, I have also found that this combination causes a reliable failure condition: cd /tmp/portage/kde-base-kdelibs-4.8.2/work PALUDIS_UNPACK_SUFFIXES="tar.xz xz" FROMDIR="/usr/portage/distfiles" PALUDIS_UNPACK_FROM_VAR="FROMDIR" /usr/libexec/paludis/utils/unpack kdelibs-4.8.2.tar.xz Also interesting: if you replace "tar xf - " with "pax -r -p p" , it works without issue, suggesting that indeed, some byte sequence in the uncompressed data is possibly telling tar that EOF has been reached before it really has. Looking at the raw .tar file, I see there is a big assload of something that appears to be a table of contents of some kind, and I can't find a way to produce a tar archive that looks even vaugely like that using either 'pax' or gnu 'tar'. Would love to know what the hell KDE are packaging with. The problem is actually with broken tarball and not paludis itself. With 0.74.0 workaround was added to unpack broken tarballs. *** Bug 410935 has been marked as a duplicate of this bug. *** (In reply to comment #5) > Would love to know what the hell KDE are packaging with. Just for the record, https://github.com/vasi/pixz |
Created attachment 307871 [details] build log It is just kdelibs.4.8.2 that fails. Entering the command manually gives "0" as exit status. $ diff -ru /tmp/kdelibs-4.8.2 /var/tmp/paludis/kde-base-kdelibs-4.8.2/work/kdelibs-4.8.2 [12:53] $ So there is no difference between the manually unpacked kdelibs and the one unpacked by paludis. I even downloaded the .tar.xz from ftp.kde.org, to make sure it is not corrupted, but it was absolutely the same file. xz-utils-5.0.3 is installed. Any hints? ======================== # cave info "=kdelibs-4.8.2" Package Manager Information: Package Name paludis Package Version 0.72.2 Build Date 2012-03-03T08:27:04+0100 Built with CXX x86_64-pc-linux-gnu-g++ 4.6.2 Built with CXXFLAGS -march=corei7-avx -O2 -pipe -pedantic Built with LDFLAGS -Wl,-O1 -Wl,--as-needed Environment Information: Format paludis Config dir /etc/paludis Root / System Root / World file /var/db/pkg/world Repository gentoo: format e location /var/paludis/repositories/gentoo builddir /var/tmp/paludis cache /var/paludis/repositories/gentoo/metadata/cache distdir /var/distfiles eapi_when_unknown 0 eapi_when_unspecified 0 eclassdirs /var/paludis/repositories/gentoo/eclass layout traditional manifest_hashes RMD160 SHA1 SHA256 names_cache /var/paludis/repositories/gentoo/.cache/names newsdir /var/paludis/repositories/gentoo/metadata/news profile_eapi_when_unspecified 0 profile_layout traditional profiles /etc/make.profile /var/paludis/repositories/local/profiles securitydir /var/paludis/repositories/gentoo/metadata/glsa setsdir /var/paludis/repositories/gentoo/sets sync rsync://rsync.uni-muenster.de/ rsync://rsync.de.gentoo.org/gentoo-portage sync_options thin_manifests false use_manifest use write_cache /var/cache/paludis/metadata Package information app-shells/bash 4.2_p20 dev-java/java-config 2.1.11-r3 dev-lang/python 2.7.2-r3 3.1.4-r3 3.2.2 dev-util/ccache 3.1.6 dev-util/cmake 2.8.6-r4 dev-util/pkgconfig 0.26 sys-apps/baselayout 2.0.3 sys-apps/openrc 0.9.9.3 sys-apps/sandbox 2.5 sys-devel/autoconf 2.13 2.68 sys-devel/automake 1.11.1 sys-devel/binutils 2.22.52.0.1 sys-devel/gcc 4.6.2 sys-devel/gcc-config 1.5-r2 sys-devel/libtool 2.4-r1 sys-devel/make 3.82-r1 sys-freebsd/freebsd-lib (none) sys-kernel/linux-headers 3.3 sys-libs/glibc 2.14.1-r2 sys-libs/uclibc (none) Extra Information for kde-base/kdelibs-4.8.2:4::gentoo: >>> Running ebuild phase killold as paludisbuild:paludisbuild... >>> Starting builtin_killold >>> Done builtin_killold >>> Completed ebuild phase killold >>> Running ebuild phases initmisc infovars info as paludisbuild:paludisbuild... >>> Starting builtin_initmisc >>> Done builtin_initmisc >>> Starting builtin_infovars ACCEPT_KEYWORDS=amd64 CBUILD=x86_64-pc-linux-gnu CFLAGS=-march=corei7-avx -O2 -pipe -ggdb CHOST=x86_64-pc-linux-gnu CONFIG_PROTECT= CONFIG_PROTECT_MASK= CPPFLAGS= CTARGET= CXXFLAGS=-march=corei7-avx -O2 -pipe -ggdb DISTDIR=/var/distfiles FEATURES= FFLAGS= GENTOO_MIRRORS= INSTALL_MASK= LANG= LC_ALL=C LDFLAGS=-Wl,-O1 -Wl,--as-needed LINGUAS=de MAKEOPTS=-j10 PORTAGE_COMPRESS= PORTAGE_COMPRESS_FLAGS= PORTAGE_CONFIGROOT= PORTAGE_RSYNC_EXTRA_OPTS= PORTAGE_RSYNC_OPTS= PORTAGE_TMPDIR=/var/tmp/paludis PORTDIR=/var/paludis/repositories/gentoo PORTDIR_OVERLAY= SYNC= USE=acl alsa bzip2 fam handbook jpeg2k mmx nls opengl policykit semantic-desktop spell sse sse2 ssl udev udisks upower amd64 alsa_cards_ali5451 alsa_cards_als4000 alsa_cards_atiixp alsa_cards_atiixp-modem alsa_cards_bt87x alsa_cards_ca0106 alsa_cards_cmipci alsa_cards_emu10k1x alsa_cards_ens1370 alsa_cards_ens1371 alsa_cards_es1938 alsa_cards_es1968 alsa_cards_fm801 alsa_cards_hda-intel alsa_cards_intel8x0 alsa_cards_intel8x0m alsa_cards_maestro3 alsa_cards_trident alsa_cards_usb-audio alsa_cards_via82xx alsa_cards_via82xx-modem alsa_cards_ymfpci alsa_pcm_plugins_adpcm alsa_pcm_plugins_alaw alsa_pcm_plugins_asym alsa_pcm_plugins_copy alsa_pcm_plugins_dmix alsa_pcm_plugins_dshare alsa_pcm_plugins_dsnoop alsa_pcm_plugins_empty alsa_pcm_plugins_extplug alsa_pcm_plugins_file alsa_pcm_plugins_hooks alsa_pcm_plugins_iec958 alsa_pcm_plugins_ioplug alsa_pcm_plugins_ladspa alsa_pcm_plugins_lfloat alsa_pcm_plugins_linear alsa_pcm_plugins_meter alsa_pcm_plugins_mmap_emul alsa_pcm_plugins_mulaw alsa_pcm_plugins_multi alsa_pcm_plugins_null alsa_pcm_plugins_plug alsa_pcm_plugins_rate alsa_pcm_plugins_route alsa_pcm_plugins_share alsa_pcm_plugins_shm alsa_pcm_plugins_softvol apache2_modules_actions apache2_modules_alias apache2_modules_auth_basic apache2_modules_authn_alias apache2_modules_authn_anon apache2_modules_authn_dbm apache2_modules_authn_default apache2_modules_authn_file apache2_modules_authz_dbm apache2_modules_authz_default apache2_modules_authz_groupfile apache2_modules_authz_host apache2_modules_authz_owner apache2_modules_authz_user apache2_modules_autoindex apache2_modules_cache apache2_modules_cgi apache2_modules_cgid apache2_modules_dav apache2_modules_dav_fs apache2_modules_dav_lock apache2_modules_deflate apache2_modules_dir apache2_modules_disk_cache apache2_modules_env apache2_modules_expires apache2_modules_ext_filter apache2_modules_file_cache apache2_modules_filter apache2_modules_headers apache2_modules_include apache2_modules_info apache2_modules_log_config apache2_modules_logio apache2_modules_mem_cache apache2_modules_mime apache2_modules_mime_magic apache2_modules_negotiation apache2_modules_rewrite apache2_modules_setenvif apache2_modules_speling apache2_modules_status apache2_modules_unique_id apache2_modules_userdir apache2_modules_usertrack apache2_modules_vhost_alias calligra_features_braindump calligra_features_flow calligra_features_karbon calligra_features_kexi calligra_features_krita calligra_features_plan calligra_features_sheets calligra_features_stage calligra_features_tables calligra_features_words cameras_ptp2 collectd_plugins_df collectd_plugins_interface collectd_plugins_irq collectd_plugins_load collectd_plugins_memory collectd_plugins_rrdtool collectd_plugins_swap collectd_plugins_syslog elibc_glibc gpsd_protocols_aivdm gpsd_protocols_ashtech gpsd_protocols_earthmate gpsd_protocols_evermore gpsd_protocols_fv18 gpsd_protocols_garmin gpsd_protocols_garmintxt gpsd_protocols_gpsclock gpsd_protocols_itrax gpsd_protocols_mtk3301 gpsd_protocols_navcom gpsd_protocols_nmea gpsd_protocols_ntrip gpsd_protocols_oceanserver gpsd_protocols_oldstyle gpsd_protocols_oncore gpsd_protocols_rtcm104v2 gpsd_protocols_rtcm104v3 gpsd_protocols_sirf gpsd_protocols_superstar2 gpsd_protocols_timing gpsd_protocols_tnt gpsd_protocols_tripmate gpsd_protocols_tsip gpsd_protocols_ubx input_devices_evdev input_devices_wacom kernel_linux lcd_devices_bayrad lcd_devices_cfontz lcd_devices_cfontz633 lcd_devices_glk lcd_devices_hd44780 lcd_devices_lb216 lcd_devices_lcdm001 lcd_devices_mtxorb lcd_devices_ncurses lcd_devices_text linguas_de php_targets_php5-3 ruby_targets_ruby18 sane_backends_epson sane_backends_epson2 userland_GNU video_cards_i965 video_cards_intel xtables_addons_account xtables_addons_chaos xtables_addons_condition xtables_addons_delude xtables_addons_dhcpmac xtables_addons_fuzzy xtables_addons_geoip xtables_addons_iface xtables_addons_ipmark xtables_addons_ipp2p xtables_addons_ipset xtables_addons_ipv4options xtables_addons_length2 xtables_addons_logmark xtables_addons_lscan xtables_addons_pknock xtables_addons_psd xtables_addons_quota2 xtables_addons_rawnat xtables_addons_steal xtables_addons_sysrq xtables_addons_tarpit xtables_addons_tee amd64 USE_PYTHON= >>> Done builtin_infovars >>> Starting pkg_info >>> Done pkg_info >>> Completed ebuild phases initmisc infovars info >>> Running ebuild phase tidyup as paludisbuild:paludisbuild... >>> Starting builtin_tidyup rm -fr /var/tmp/paludis/kde-base-kdelibs-4.8.2-info >>> Done builtin_tidyup >>> Completed ebuild phase tidyup