Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 287536 - app-office/openoffice-bin-3.1.1 should update its rpm_unpack usage
Summary: app-office/openoffice-bin-3.1.1 should update its rpm_unpack usage
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: AMD64 Linux
: High normal with 1 vote (vote)
Assignee: Gentoo Office Team
URL:
Whiteboard:
Keywords:
: 287620 289149 (view as bug list)
Depends on:
Blocks:
 
Reported: 2009-10-03 17:24 UTC by Tijmen van Hoeckel
Modified: 2010-02-15 13:52 UTC (History)
7 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 Tijmen van Hoeckel 2009-10-03 17:24:15 UTC
This is what happens when I want to emerge openoffice-bin:

>>> Emerging (1 of 1) app-office/openoffice-bin-3.1.1
 * OOo_3.1.1_LinuxX86-64_install_wJRE_en-US.tar.gz RMD160 SHA1 SHA256 size ;-) ...                             [ ok ]
 * checking ebuild checksums ;-) ...                                                                           [ ok ]
 * checking auxfile checksums ;-) ...                                                                          [ ok ]
 * checking miscfile checksums ;-) ...                                                                         [ ok ]
>>> Unpacking source...
>>> Unpacking OOo_3.1.1_LinuxX86-64_install_wJRE_en-US.tar.gz to /var/tmp/portage/app-office/openoffice-bin-3.1.1/work
>>> Unpacking /var/tmp/portage/app-office/openoffice-bin-3.1.1/work/OOO310_m19_native_packed-2_en-US.9420/RPMS/ooobasis3.1-base-3.1.1-9420.x86_64.rpm to /var/tmp/portage/app-office/openoffice-bin-3.1.1/work
/usr/bin/rpm2tar: line 144: /var/tmp/portage/app-office/openoffice-bin-3.1.1/distdir//var/tmp/portage/app-office/openoffice-bin-3.1.1/work/OOO310_m19_native_packed-2_en-US.9420/RPMS/ooobasis3.1-base-3.1.1-9420.x86_64.rpm: No such file or directory

gzip: stdin: unexpected end of file
rpm2tar: /var/tmp/portage/app-office/openoffice-bin-3.1.1/distdir//var/tmp/portage/app-office/openoffice-bin-3.1.1/work/OOO310_m19_native_packed-2_en-US.9420/RPMS/ooobasis3.1-base-3.1.1-9420.x86_64.rpm: failed to extract cpio via gzip (not actually an RPM?)
tar: This does not look like a tar archive
tar: Exiting with failure status due to previous errors
 * 
 * ERROR: app-office/openoffice-bin-3.1.1 failed.
 * Call stack:
 *               ebuild.sh, line   49:  Called src_unpack
 *             environment, line 2431:  Called rpm_unpack '/var/tmp/portage/app-office/openoffice-bin-3.1.1/work/OOO310_m19_native_packed-2_en-US.9420/RPMS/ooobasis3.1-base-3.1.1-9420.x86_64.rpm'
 *             environment, line 2353:  Called die
 * The specific snippet of code:
 *           rpm2tar -O "${a}" | tar xf - || die "failure unpacking ${a}";
 *  The die message:
 *   failure unpacking /var/tmp/portage/app-office/openoffice-bin-3.1.1/distdir//var/tmp/portage/app-office/openoffice-bin-3.1.1/work/OOO310_m19_native_packed-2_en-US.9420/RPMS/ooobasis3.1-base-3.1.1-9420.x86_64.rpm
 * 
 * If you need support, post the topmost build error, and the call stack if relevant.
 * A complete build log is located at '/var/tmp/portage/app-office/openoffice-bin-3.1.1/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/app-office/openoffice-bin-3.1.1/temp/environment'.
 * 

It seems rpm2targz gets a wrong path to work on. /var/tmp/portage/app-office/openoffice-bin-3.1.1/distdir/ should be removed in order for rpm2targz to get to the .rpm in var/tmp/portage/app-office/openoffice-bin-3.1.1/work/OOO310_m19_native_packed-2_en-US.9420/RPMS/ooobasis3.1-base-3.1.1-9420.x86_64.rpm

Reproducible: Always

Steps to Reproduce:
1. emerge openoffice-bin


Actual Results:  
failure unpacking /var/tmp/portage/app-office/openoffice-bin-3.1.1/distdir//var/tmp/portage/app-office/openoffice-bin-3.1.1/work/OOO310_m19_native_packed-2_en-US.9420/RPMS/ooobasis3.1-base-3.1.1-9420.x86_64.rpm

Expected Results:  
Correct unpack, conversion from .rpm to .tar and correct install of the package.

Portage 2.2_rc42 (default/linux/amd64/10.0, gcc-4.4.1, glibc-2.10.1-r0, 2.6.30-gentoo-r7 x86_64)
=================================================================
System uname: Linux-2.6.30-gentoo-r7-x86_64-AMD_Athlon-tm-_7750_Dual-Core_Processor-with-gentoo-2.0.1
Timestamp of tree: Sat, 03 Oct 2009 12:30:01 +0000
ccache version 2.4 [enabled]
app-shells/bash:     4.0_p33
dev-java/java-config: 2.1.9-r1
dev-lang/python:     2.6.2-r2, 3.1.1-r1
dev-util/ccache:     2.4-r8
dev-util/cmake:      2.6.4-r3
sys-apps/baselayout: 2.0.1
sys-apps/openrc:     0.4.3-r3
sys-apps/sandbox:    2.1
sys-devel/autoconf:  2.13, 2.63-r1
sys-devel/automake:  1.9.6-r2, 1.10.2, 1.11
sys-devel/binutils:  2.19.1-r1
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.2.6a
virtual/os-headers:  2.6.30-r1
ABI="amd64"
ACCEPT_KEYWORDS="amd64 ~amd64"
ALSA_CARDS="hda_intel"
ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol"
APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias"
ARCH="amd64"
ASFLAGS_x86="--32"
AUTOCLEAN="yes"
CBUILD="x86_64-pc-linux-gnu"
CCACHE_DIR="/var/tmp/ccache"
CCACHE_SIZE="1G"
CDEFINE_amd64="__x86_64__"
CDEFINE_x86="__i386__"
CFLAGS="-O2 -pipe -fomit-frame-pointer -march=amdfam10"
CFLAGS_x86="-m32"
CHOST="x86_64-pc-linux-gnu"
CHOST_amd64="x86_64-pc-linux-gnu"
CHOST_x86="i686-pc-linux-gnu"
CLEAN_DELAY="5"
COLLISION_IGNORE="/lib/modules"
COLORTERM="gnome-terminal"
CONFIG_PROTECT="/etc"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/udev/rules.d"
CVS_RSH="ssh"
CXXFLAGS="-O2 -pipe -fomit-frame-pointer -march=amdfam10"
DBUS_SESSION_BUS_ADDRESS="unix:abstract=/tmp/dbus-cW3o93Dsi0,guid=477a6398dc5f285a3120e1a54ac71d1e"
DEFAULT_ABI="amd64"
DESKTOP_SESSION="gnome"
DISPLAY=":0.0"
DISTDIR="/usr/portage/distfiles"
EDITOR="/bin/nano"
ELIBC="glibc"
EMERGE_DEFAULT_OPTS="--verbose"
EMERGE_WARNING_DELAY="10"
FEATURES="assume-digests ccache distlocks fixpackages metadata-transfer parallel parallel-fetch preserve-libs protect-owned sandbox sfperms strict unmerge-logs unmerge-orphans userfetch"
FETCHCOMMAND="/usr/bin/wget -t 5 -T 60 --passive-ftp -O "${DISTDIR}/${FILE}" "${URI}""
GCC_SPECS=""
GDK_USE_XFT="1"
GDMSESSION="gnome"
GDM_LANG="C"
GDM_XSERVER_LOCATION="local"
GENTOO_MIRRORS="http://ftp.snt.utwente.nl/pub/os/linux/gentoo ftp://gentoo.tiscali.nl/pub/mirror/gentoo/"
GNOME_DESKTOP_SESSION_ID="this-is-deprecated"
GNOME_KEYRING_PID="3022"
GNOME_KEYRING_SOCKET="/tmp/keyring-OlEpYr/socket"
GTK_RC_FILES="/etc/gtk/gtkrc:/home/theimon/.gtkrc-1.2-gnome2"
GUILE_LOAD_PATH="/usr/share/guile/1.8"
HG="/usr/bin/hg"
HOME="/root"
INFOPATH="/usr/share/info:/usr/share/binutils-data/x86_64-pc-linux-gnu/2.19.1/info:/usr/share/gcc-data/x86_64-pc-linux-gnu/4.4.1/info"
INPUT_DEVICES="evdev"
JAVAC="/home/theimon/.gentoo/java-config-2/current-user-vm/bin/javac"
JAVA_HOME="/home/theimon/.gentoo/java-config-2/current-user-vm"
JDK_HOME="/home/theimon/.gentoo/java-config-2/current-user-vm"
KERNEL="linux"
LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text"
LDFLAGS="-Wl,-O1"
LDFLAGS_x86="-m elf_i386"
LESS="-R -M --shift 5"
LESSOPEN="|lesspipe.sh %s"
LIBDIR_amd64="lib64"
LIBDIR_amd64_fbsd="lib64"
LIBDIR_ppc="lib32"
LIBDIR_ppc64="lib64"
LIBDIR_sparc32="lib32"
LIBDIR_sparc64="lib64"
LIBDIR_x86="lib32"
LIBDIR_x86_fbsd="lib32"
LINGUAS="en en_US"
LOGNAME="root"
LS_COLORS="rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=01;05;37;41:mi=01;05;37;41:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.pdf=00;32:*.ps=00;32:*.txt=00;32:*.patch=00;32:*.diff=00;32:*.log=00;32:*.tex=00;32:*.doc=00;32:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.axa=00;36:*.oga=00;36:*.spx=00;36:*.xspf=00;36:"
MAKE_OPTS="-j3"
MANPATH="/home/theimon/.gentoo/java-config-2/current-user-vm/man:/usr/local/share/man:/usr/share/man:/usr/share/binutils-data/x86_64-pc-linux-gnu/2.19.1/man:/usr/share/gcc-data/x86_64-pc-linux-gnu/4.4.1/man:/etc/java-config/system-vm/man/:/usr/lib64/php5/man/"
MULTILIB_ABIS="amd64 x86"
MULTILIB_STRICT_DENY="64-bit.*shared object"
MULTILIB_STRICT_DIRS="/lib32 /lib /usr/lib32 /usr/lib /usr/kde/*/lib32 /usr/kde/*/lib /usr/qt/*/lib32 /usr/qt/*/lib /usr/X11R6/lib32 /usr/X11R6/lib"
MULTILIB_STRICT_EXEMPT="(perl5|gcc|gcc-lib|binutils|eclipse-3|debug|portage)"
NETBEANS="apisupport cnd groovy gsf harness ide identity j2ee java mobility nb php profiler soa visualweb webcommon websvccommon xml"
OLDPWD="/home/theimon"
OPENGL_PROFILE="nvidia"
ORBIT_SOCKETDIR="/tmp/orbit-theimon"
PAGER="/usr/bin/less"
PATH="/sbin:/bin:/usr/sbin:/usr/bin"
PKGDIR="/usr/portage/packages"
PORTAGE_ARCHLIST="ppc x86-openbsd ppc-openbsd ppc64 x86-winnt x86-fbsd ppc-aix alpha arm x86-freebsd s390 amd64 x86-macos x64-openbsd ia64-hpux hppa x86-netbsd amd64-linux ia64-linux x86 sparc-solaris x64-freebsd sparc64-solaris x86-linux x64-macos sparc m68k-mint ia64 mips ppc-macos x86-interix hppa-hpux amd64-fbsd x64-solaris mips-irix m68k sh x86-solaris sparc-fbsd"
PORTAGE_BINHOST_CHUNKSIZE="3000"
PORTAGE_BIN_PATH="/usr/lib64/portage/bin"
PORTAGE_COMPRESS_EXCLUDE_SUFFIXES="css gif htm[l]? jp[e]?g js pdf png"
PORTAGE_CONFIGROOT="/"
PORTAGE_DEBUG="0"
PORTAGE_DEPCACHEDIR="/var/cache/edb/dep"
PORTAGE_ELOG_CLASSES="log warn error"
PORTAGE_ELOG_MAILFROM="portage@localhost"
PORTAGE_ELOG_MAILSUBJECT="[portage] ebuild log for ${PACKAGE} on ${HOST}"
PORTAGE_ELOG_MAILURI="root"
PORTAGE_ELOG_SYSTEM="save_summary echo"
PORTAGE_FETCH_CHECKSUM_TRY_MIRRORS="5"
PORTAGE_FETCH_RESUME_MIN_SIZE="350K"
PORTAGE_GID="250"
PORTAGE_INST_GID="0"
PORTAGE_INST_UID="0"
PORTAGE_PYM_PATH="/usr/lib64/portage/pym"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_RSYNC_RETRIES="3"
PORTAGE_TMPDIR="/var/tmp"
PORTAGE_VERBOSE="1"
PORTAGE_WORKDIR_MODE="0700"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/portage/local/layman/sunrise"
PRELINK_PATH_MASK="/usr/lib64/klibc"
PROFILE_ONLY_VARIABLES="ARCH ELIBC KERNEL USERLAND"
PWD="/usr/portage/distfiles"
RESUMECOMMAND="/usr/bin/wget -c -t 5 -T 60 --passive-ftp -O "${DISTDIR}/${FILE}" "${URI}""
ROOT="/"
ROOTPATH="/opt/bin:/usr/x86_64-pc-linux-gnu/gcc-bin/4.3.2:/usr/x86_64-pc-linux-gnu/gcc-bin/4.4.1"
RPMDIR="/usr/portage/rpm"
SANE_BACKENDS="hp"
SANE_CONFIG_DIR="/etc/sane.d"
SESSION_MANAGER="local/know-where-to-run:@/tmp/.ICE-unix/3036,unix/know-where-to-run:/tmp/.ICE-unix/3036"
SHELL="/bin/bash"
SHLVL="2"
SSH_AGENT_PID="3063"
SSH_AUTH_SOCK="/tmp/keyring-OlEpYr/socket.ssh"
STAGE1_USE="multilib nptl nptlonly unicode"
SYMLINK_LIB="yes"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
TERM="xterm"
USB_DEVFS_PATH="/dev/bus/usb"
USE="3dnow 3dnowext X a52 aac aalib abiword acl acpi alsa amd64 apm asf audacious audiofile authfile automount autotrace avahi bash-completion blender bonobo bzip2 cairo caps ccache cdaudio cdda cddb cdparanoia cdr cleartype cli corba cpudetection cracklib crypt ctype cups cupsddk curl curlwrappers custom-optimization dbus dga divx divx4linux dri dts dvd dvdnav dvdr dvdread emerald encode equalizer esd exif expat faac faad fam fame fastbuild fat ffmpeg flac foomatic fortran ftp gcdmaster gif gimp glitz glut glx gmedia gnome gnome-keyring gnutls gphoto2 gstreamer gtk gtk2 gtkhtml guile hal howl iconv isdnlog java javascript jikes jpeg lame lash libnotify libsamplerate live lm_sensors lqr mad mdnsresponder-compat midi mime mmap mmkeys mmx mmxext modules mono motif mp3 mpeg msn mtp mudflap multilib musepack nautilus ncurses neXt newspr nls nntp normalize nptl nptlonly nsplugin nvidia ogg oggvorbis openal opengl openmp oss pam pcntl pcre pdf perl png posix profile python quicktime rar readline realmedia recode reflection rtc rtsp scanner scrobbler sdl session shout simplexml skins sloppy-lock smp sndfile snmp spell spl srt sse sse2 sse3 sse4a ssl ssse3 startup-notification stream subtitles subversion svg swscaler symlink sysfs szip tcpd threads threadsafe trayicon truetype ugly unicode unsupported usb userlocales vdpau verbose vlm vorbis wav wavpack wma wmf wmp wxwindows x264 xattr xcb xcomposite xft xine xine-lib xinetd xml xorg xosd xsl xulrunner xv xvid xvmc" ALSA_CARDS="hda_intel" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en en_US" SANE_BACKENDS="hp" USERLAND="GNU" VIDEO_CARDS="nvidia" 
USER="root"
USERLAND="GNU"
USERNAME="theimon"
USE_EXPAND="ALSA_CARDS ALSA_PCM_PLUGINS APACHE2_MODULES APACHE2_MPMS CAMERAS CROSSCOMPILE_OPTS DVB_CARDS ELIBC FCDSL_CARDS FOO2ZJS_DEVICES FRITZCAPI_CARDS INPUT_DEVICES KERNEL LCD_DEVICES LINGUAS LIRC_DEVICES MISDN_CARDS NETBEANS_MODULES QEMU_SOFTMMU_TARGETS QEMU_USER_TARGETS SANE_BACKENDS USERLAND VIDEO_CARDS"
USE_EXPAND_HIDDEN="CROSSCOMPILE_OPTS ELIBC KERNEL USERLAND"
USE_ORDER="env:pkg:conf:defaults:pkginternal:env.d"
VIDEO_CARDS="nvidia"
WINDOWID="29360203"
WINDOWPATH="7"
XAUTHORITY="/root/.xauthMh299k"
XDG_CONFIG_DIRS="/etc/xdg"
XDG_DATA_DIRS="/usr/share:/usr/local/share:/usr/share/gdm"
XDG_MENU_PREFIX="gnome-"
XDG_SESSION_COOKIE="b5ed1c63aba416729f9900a74ab33b94-1254563102.307427-1595346232"
XERCESC_NLS_HOME="/usr/share/xerces-c/msg"
_="/usr/bin/emerge"
Comment 1 Jason Wigg 2009-10-04 01:18:09 UTC
It's not failing due to a missing file, but due to messed up options being passed to rpm2tar:

``
/usr/bin/rpm2tar: line 144: /var/tmp/portage/app-office/openoffice-bin-3.1.1/distdir//var/tmp/portage/app-office/openoffice-bin-3.1.1/work/OOO310_m19_native_packed-2_en-US.9420/RPMS/ooobasis3.1-base-3.1.1-9420.x86_64.rpm: No such file or directory
''

``
Andornor ~ # ls -lh /var/tmp/portage/app-office/openoffice-bin-3.1.1/work/OOO310_m19_native_packed-2_en-US.9420/RPMS/ooobasis3.1-base-3.1.1-9420.x86_64.rpm
-rw-r--r-- 1 root root 2.7M 2009-08-19 18:14 /var/tmp/portage/app-office/openoffice-bin-3.1.1/work/OOO310_m19_native_packed-2_en-US.9420/RPMS/ooobasis3.1-base-3.1.1-9420.x86_64.rpm
''

Looks to me as though as space is missing. Not sure why or how though.
Comment 2 tman 2009-10-04 06:39:01 UTC
i can confirm this error too
Comment 3 Christian Faulhammer (RETIRED) gentoo-dev 2009-10-04 18:51:34 UTC
*** Bug 287620 has been marked as a duplicate of this bug. ***
Comment 4 Christian Faulhammer (RETIRED) gentoo-dev 2009-10-04 18:54:14 UTC
Mike, your change to the rpm.eclass caused that breakage, I think.
Comment 5 Alan Crawford 2009-10-05 01:44:13 UTC
(In reply to comment #1)
> It's not failing due to a missing file, but due to messed up options being
> passed to rpm2tar:
> 
> ``
> /usr/bin/rpm2tar: line 144:
> /var/tmp/portage/app-office/openoffice-bin-3.1.1/distdir//var/tmp/portage/app-office/openoffice-bin-3.1.1/work/OOO310_m19_native_packed-2_en-US.9420/RPMS/ooobasis3.1-base-3.1.1-9420.x86_64.rpm:
> No such file or directory
> ''
> 
> ``
> Andornor ~ # ls -lh
> /var/tmp/portage/app-office/openoffice-bin-3.1.1/work/OOO310_m19_native_packed-2_en-US.9420/RPMS/ooobasis3.1-base-3.1.1-9420.x86_64.rpm
> -rw-r--r-- 1 root root 2.7M 2009-08-19 18:14
> /var/tmp/portage/app-office/openoffice-bin-3.1.1/work/OOO310_m19_native_packed-2_en-US.9420/RPMS/ooobasis3.1-base-3.1.1-9420.x86_64.rpm
> ''
> 
> Looks to me as though as space is missing. Not sure why or how though.
> 

I don't think a space is missing, it looks as though it's calling two separate directories and the first one /var/tmp/portage/app-office/openoffice-bin-3.1.1/distdir/ shouldn't be getting called upon as there is no .rpm's in that directory, just the base installing .tar.gz file.
Comment 6 Alan Crawford 2009-10-05 01:45:50 UTC
Hit the go button too soon, I'm getting a similar message as well.

* ERROR: app-office/openoffice-bin-3.1.1 failed.
 * Call stack:
 *               ebuild.sh, line   49:  Called src_unpack
 *             environment, line 2311:  Called rpm_unpack '/var/tmp/portage/app-office/openoffice-bin-3.1.1/work/OOO310_m19_native_packed-1_en-US.9420/RPMS/ooobasis3.1-base-3.1.1-9420.i586.rpm'
 *             environment, line 2233:  Called die
 * The specific snippet of code:
 *           rpm2tar -O "${a}" | tar xf - || die "failure unpacking ${a}";
 *  The die message:
 *   failure unpacking /var/tmp/portage/app-office/openoffice-bin-3.1.1/distdir//var/tmp/portage/app-office/openoffice-bin-3.1.1/work/OOO310_m19_native_packed-1_en-US.9420/RPMS/ooobasis3.1-base-3.1.1-9420.i586.rpm
 * 
 * If you need support, post the topmost build error, and the call stack if relevant.
 * A complete build log is located at '/var/tmp/portage/app-office/openoffice-bin-3.1.1/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/app-office/openoffice-bin-3.1.1/temp/environment'.
Comment 7 Jason Wigg 2009-10-05 01:56:20 UTC
You are correct, further investigation shows that the change to rpm.eclass (specifically rpm_unpack) is the culprit. rpm_unpack is incorrectly prepending ${DISTDIR} to the path.

``
rpm_unpack() {
    local a
    for a in "$@" ; do
        echo ">>> Unpacking ${a} to ${PWD}"
        [[ ${a} != ./* ]] && a="${DISTDIR}/${a}"
        rpm2tar -O "${a}" | tar xf - || die "failure unpacking ${a}"
    done
} 
''

The comparison `[[ ${a} != ./* ]]' looks suspicious to me. I would have thought that the `.' shouldn't be there, as that would then prepend ${DISTDIR} if the argument passed to rpm_unpack was not a full path.
Comment 8 gentoo@netmalice.com 2009-10-05 04:17:15 UTC
I can confirm that after changing ./* to /* on line 22 of /usr/portage/eclass/rpm.eclass, I can now install openoffice-bin-3.1.1 successfully.
Comment 9 SpanKY gentoo-dev 2009-10-05 05:07:11 UTC
the code is operating as intended.  rpm_unpack() behaves like unpack() now.  if you want to unpack a file not in DISTDIR, then use the ./file format.

i can update the ebuild to abort with absolute file paths, but openoffice should be converted.  it's trivial to change the code to cd to $S before doing unpack on ./rpmfiles.
Comment 10 Jason Wigg 2009-10-05 05:32:37 UTC
If the API has changed there are probably a few other packages around the tree that still expect to be able to pass a full path to rpm_unpack as well (net-dialup/fcpci being one, I'm sure there are probably others), so it might be necessary to track them down and report them as bugs due to the API change.

rpm2targz also only unpacks into the current directory, which might cause lengthy relative paths if one wanted to unpack into a different directory. I guess better practise in that instance would be to simply put all the extracted rpms into DISTDIR and then cd to whereever in work.

I think an abort if a full path is encountered, with the suggestion that the user report a bug so that the ebuild can be fixed would be useful, at least in the short term anyway.
Comment 11 SpanKY gentoo-dev 2009-10-05 05:57:34 UTC
i hadnt expected people to be using an API differently from the unpack() function itself, but i guess when a function isnt documented and the code itself is ugly and hard to follow, people use whatever works.

i'll restore the functionality with a warning for people to change the usage so end users at least wont have broken emerges.
Comment 13 Andreas Proschofsky (RETIRED) gentoo-dev 2009-11-06 13:09:16 UTC
*** Bug 289149 has been marked as a duplicate of this bug. ***
Comment 14 Andreas Proschofsky (RETIRED) gentoo-dev 2010-02-15 13:52:33 UTC
openoffice-bin 3.2.0 solves this, just entered the tree, so closing this.