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

Bug 217905

Summary: www-client/mozilla-firefox fails at LINGUAS="*".
Product: Gentoo Linux Reporter: Hongjiu Zhang <voidprayer>
Component: Current packagesAssignee: Portage team <dev-portage>
Status: RESOLVED FIXED    
Severity: normal CC: mozilla
Priority: High Keywords: InVCS, REGRESSION
Version: unspecified   
Hardware: x86   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 216231    
Attachments: fix USE-conditional evaluation of SRC_URI

Description Hongjiu Zhang 2008-04-16 06:09:09 UTC
# cat /var/tmp/portage/www-client/mozilla-firefox-2.0.0.13/temp/build.log
 * You are enabling official branding. You may not redistribute this build
 * to any users on your network or the internet. Doing so puts yourself into
 * a legal problem with Mozilla Foundation
 * You can disable it by emerging mozilla-firefox _with_ the bindist USE-flag
 * Not all locales support the disabling of pango.
 * If your locale does not support disabling pango,
 * please open a bug report on http://bugs.gentoo.org
 * Then we can filter around the problem with those
 * specific locales.
>>> Unpacking source...
>>> Unpacking firefox-2.0.0.13-source.tar.bz2 to /var/tmp/portage/www-client/mozilla-firefox-2.0.0.13/work
>>> Unpacking mozilla-firefox-2.0.0.13-patches-0.1.tar.bz2 to /var/tmp/portage/www-client/mozilla-firefox-2.0.0.13/work
 * Unpacking mozilla-firefox-2.0.0.13-be.xpi to /var/tmp/portage/www-client/mozilla-firefox-2.0.0.13/work
 * 
 * ERROR: www-client/mozilla-firefox-2.0.0.13 failed.
 * Call stack:
 *               ebuild.sh, line   49:  Called src_unpack
 *             environment, line 3210:  Called xpi_unpack 'mozilla-firefox-2.0.0.13-be.xpi'
 *             environment, line 3864:  Called die
 * The specific snippet of code:
 *           [[ -s "${srcdir}${xpi}" ]] || die "${xpi} does not exist";
 *  The die message:
 *   mozilla-firefox-2.0.0.13-be.xpi does not exist
 * 
 * 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/www-client/mozilla-firefox-2.0.0.13/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/www-client/mozilla-firefox-2.0.0.13/temp/environment'.
 * 
# emerge --info
Portage 2.1.5_rc4 (default/linux/x86/2008.0/desktop, gcc-4.2.3, glibc-2.7-r2, 2.6.24-tuxonice-r5 i686)
=================================================================
System uname: 2.6.24-tuxonice-r5 i686 Genuine Intel(R) CPU T2050 @ 1.60GHz
Timestamp of tree: Wed, 16 Apr 2008 03:46:01 +0000
app-shells/bash:     3.2_p33
dev-java/java-config: 1.3.7, 2.1.5
dev-lang/python:     2.5.1-r5
dev-python/pycrypto: 2.0.1-r6
sys-apps/baselayout: 2.0.0
sys-apps/openrc:     0.2.2
sys-apps/sandbox:    1.2.18.1-r2
sys-devel/autoconf:  2.13, 2.61-r1
sys-devel/automake:  1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.1
sys-devel/binutils:  2.18-r1
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool:   1.5.26
virtual/os-headers:  2.6.24
ACCEPT_KEYWORDS="x86 ~x86"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=i686 -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/splash /etc/terminfo /etc/udev/rules.d"
CXXFLAGS="-O2 -march=i686 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="distlocks metadata-transfer parallel-fetch sandbox sfperms strict userfetch"
GENTOO_MIRRORS="ftp://gentoo.anheng.com.cn/gentoo http://ftp.kaist.ac.kr/pub/gentoo http://mirror.pacific.net.au/linux/Gentoo"
LANG="C"
LDFLAGS=""
LINGUAS="en_US en *"
MAKEOPTS="-j1"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/portage/local/layman/gentoo-china /usr/local/overlays"
SYNC="rsync://rsync.asia.gentoo.org/gentoo-portage"
USE="X acl acpi alsa bash-completion berkdb bluetooth branding bzip2 cairo cdr cjk cli cracklib crypt cups dbus dri dvd dvdr dvdread eds emboss encode esd evo firefox fortran gdbm gif gnome gpm gtk hal iconv ipv6 isdnlog java jpeg kerberos ldap libnotify mad midi mikmod mmx mmxext mp3 mpeg mudflap ncurses nfs nls nptl nptlonly nsplugin ogg opengl openmp pam pcre pdf perl png ppds pppd python quicktime readline reflection samba sdl session spell spl sse sse2 ssl ssse3 startup-notification svg tcpd tiff truetype unicode v4l2 vim-syntax vorbis win32codecs x86 xine xml xorg xv zlib" ALSA_CARDS="hda-intel" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter 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="keyboard mouse synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en_US en *" USERLAND="GNU" VIDEO_CARDS="i810 vesa"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS


Reproducible: Always

Steps to Reproduce:
1. Upgrade to portage 2.1.5-r4
2. emerge firefox
3. Got this!
Actual Results:  
It does not download language packages at all.

Expected Results:  
Download them and emerge successfully.

1. I know I can download them manually. I enter this just for a way of portage doing these things itself.
2. All the language packages are needed. Just for a secret reason. :)
Comment 1 Hongjiu Zhang 2008-04-16 06:46:49 UTC
I just found that the same things happened on the package "app-text/acroread", too. As I did 
        LINGUAS="*" emerge acroread,
but finally, it downloaded only English package. Although this have been emerged "successfully", I can only get a English version of Acrobat Reader 8, and it is still unable to open a CJK pdf file correctly.
Comment 2 Jeroen Roovers (RETIRED) gentoo-dev 2008-04-16 15:07:42 UTC
Generally, this list of bugs should tell enough - a bug about many disparate packages lacking a generic feature is never going to work. Hence I am changing the Summary and assigning the bug accordingly:

The package manager and ebuilds should perhaps not accept LINGUAS="*" in the first place. (As it is, setting LINGUAS="*" isn't a good idea anyway, but maybe the package manager should fail in a more obvious way. At least emerge --info shows the LINGUAS variable as is and that may go some way to speed up analysis.)
Comment 3 Mark Loeser (RETIRED) gentoo-dev 2008-04-16 15:14:46 UTC
Are you saying this worked before you upgraded portage?  Could you downgrade and tell me which version had this behaviour for you, and when it broke?
Comment 4 Zac Medico gentoo-dev 2008-04-16 18:12:47 UTC
Created attachment 149969 [details, diff]
fix USE-conditional evaluation of SRC_URI 

If this patch is saved as /tmp/fetch_use.patch then it can be applied as follows:

patch /usr/lib/portage/pym/portage.py /tmp/fetch_use.patch
Comment 5 Zac Medico gentoo-dev 2008-04-16 18:17:11 UTC
(In reply to comment #2)
> The package manager and ebuilds should perhaps not accept LINGUAS="*" in the
> first place. (As it is, setting LINGUAS="*" isn't a good idea anyway,

In this case LINGUAS="*" is a red herring because the actual problem is a bug in the evaluation of SRC_URI. Packages don't have to be concerned with LINGUAS="*" because portage expands it automatically based on the ebuild's IUSE.
Comment 6 Hongjiu Zhang 2008-04-17 01:43:13 UTC
Jeroen Roovers:
    Thank you for your reply and help. You said that these two packages are disparate. It's my fault that I have not described the problem very clearly. As Zac Medico said, the problem is that portage doesn't analysis the variable SRC_URI very well. Like "acroread" or "mozilla-firefox", they first point out the variable. And then with a part of script, the ebuild add the address in to the variable. 
    A difference package is "openoffice". It downloads a whole package with some patches(downloaded by "rsync" or "fetch"), which contains information about all kinds of languages.
    Using LINGUAS="*", I just want to keep all the language information in order to change it easily without re-emerge. Really I need it. I am quite sure that Firefox and Acrobat Reader support it, as they both give out such a kind of options for changing language.

To Mark Loeser:
    To name out a correctly working portage version is a little difficult. I can only say that about 2 mounths ago, it works with such a kind of expression of LINGUAS. Thanks.

To Zac Medico:
    Yes, I mean that. Thank you for both your explaining and your advice. I tried your patch and it works.

Thank to all the above again.

Best Regard.
Comment 7 Zac Medico gentoo-dev 2008-04-19 14:27:00 UTC
This is fix in 2.1.5_rc5.