Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 272428 - x11-misc/alacarte-0.12.1 fails to build
Summary: x11-misc/alacarte-0.12.1 fails to build
Status: RESOLVED DUPLICATE of bug 262241
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] GNOME (show other bugs)
Hardware: All Linux
: High normal with 1 vote (vote)
Assignee: Gentoo Linux Gnome Desktop Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-06-03 13:12 UTC by Manolis Stamatogiannakis
Modified: 2010-07-01 19:43 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
ebuild that fixes configure.ac and regenerates configure script (alacarte-0.12.1.patch,1.05 KB, patch)
2009-06-03 13:20 UTC, Manolis Stamatogiannakis
Details | Diff
config.log for failed ebuild (config.log,25.98 KB, text/plain)
2009-06-03 13:34 UTC, Manolis Stamatogiannakis
Details
simplified patch for ebuild. fixes configure.ac and regenerates configure script . (alacarte-0.12.1.patch,886 bytes, patch)
2009-06-03 16:34 UTC, Manolis Stamatogiannakis
Details | Diff
simplified patch for ebuild. fixes configure.ac and regenerates configure script. (alacarte-0.12.1.patch,773 bytes, patch)
2009-06-03 16:42 UTC, Manolis Stamatogiannakis
Details | Diff
alacarte-0.12.1.patch (alacarte-ebuild.patch,797 bytes, patch)
2010-07-01 19:43 UTC, Geert Vanhaute
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Manolis Stamatogiannakis 2009-06-03 13:12:59 UTC
I was upgrading to gnome-2.26.2 and I had alacarte-0.12.1 pulled to replace a 0.11 version.

Emerging this version of alacarte failed every time. The problems I identified are two: 
a. The configure script tests for pygobject-2.15.1. This fails because there's no ebuild for this version of pygobject in the portage tree. 
b. The configure script uses the latest installed python version. Not the one selected with eselect. This causes the script to fail if python2.6 is installed but python2.5 is the default (for which the pygobject has been compiled).

Reproducible: Always

Steps to Reproduce:
1. Install python2.5 and python2.6
2. Set python 2.5 and rebuild modules with python-updater
3. Make sure pygobject-2.16.1 is installed
4. Try to install alacarte-0.12.1

Actual Results:  
The package fails to build/install.

Expected Results:  
The package should install.
Comment 1 Gilles Dartiguelongue (RETIRED) gentoo-dev 2009-06-03 13:18:18 UTC
please run python-updater, then provide emerge --info & config.log. Thanks.
Comment 2 Manolis Stamatogiannakis 2009-06-03 13:20:31 UTC
Created attachment 193398 [details, diff]
ebuild that fixes configure.ac and regenerates configure script

This fixed ebuild does the following:
a. sets pygobject-2.16.1 as a requirement
b. replaces 2.15.1 with 2.16.1 in configure.ac as the required pygobject version
c. fixes AM_PATH_PYTHON_VERSION in configure.ac to include the default python versions
Comment 3 Manolis Stamatogiannakis 2009-06-03 13:33:38 UTC
Portage 2.1.6.13 (default/linux/x86/2008.0/desktop, gcc-4.3.3, glibc-2.10.1-r0, 2.6.28-gentoo-r5-longarglist i686)
=================================================================
System uname: Linux-2.6.28-gentoo-r5-longarglist-i686-Intel-R-_Core-TM-2_Duo_CPU_E6750_@_2.66GHz-with-glibc2.0
Timestamp of tree: Wed, 03 Jun 2009 13:00:01 +0000
app-shells/bash:     4.0_p24
dev-java/java-config: 1.3.7-r1, 2.1.8
dev-lang/python:     2.4.4-r15, 2.5.4-r2, 2.6.2-r1
dev-python/pycrypto: 2.0.1-r8
dev-util/cmake:      2.6.4
sys-apps/baselayout: 2.0.1
sys-apps/openrc:     0.4.3-r2
sys-apps/sandbox:    1.9
sys-devel/autoconf:  2.13, 2.63-r1
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 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.29
ACCEPT_KEYWORDS="x86 ~x86"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-march=pentium4 -O2 -fomit-frame-pointer -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config"
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/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c /etc/udev/rules.d"
CXXFLAGS="-march=pentium4 -O2 -fomit-frame-pointer -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="distlocks fixpackages parallel-fetch protect-owned sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="ftp://files.gentoo.gr/ http://ftp.ntua.gr/pub/linux/gentoo/"
LANG="en_GB.UTF-8"
LDFLAGS="-Wl,-O1"
LINGUAS="el en en_GB"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
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/local/portage/layman/desktop-effects /usr/local/portage/layman/mozilla /usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X a52 aac acl acpi adns ads aiglxi aim alsa apache2 avahi avi bash-completion berkdb bluetooth branding bzip2 bzlib cairo cdr cli codecs consolekit cracklib crypt cups dba dbus dga directfb divx4linux dri dts dvd dvdr dvdread eds emboss encode esd evo exif fam fbcon firefox flatfile foomaticdb fortran ftp gd gdbm gif glitz gnome gnutls gphoto2 gpm gstreamer gtk gtk2 hal i8x0 iconv icq ieee1394 imagemagick imap imlib inifile ipv6 isdnlog jabber jpeg jpeg2k lcms ldap libnotify libwww lirc lm_sensors mad midi mikmod mmx mono mp3 mpeg msn mudflap mysql ncurses newspr nls nptl nptlonly nsplugin offensive ogg oggvorbis opengl openmp pam pcre pdf pdflib perl php png ppds pppd pulseaudio python qt3support quicktime readline reflection samba sdl session sockets spell spl sse sse2 ssl startup-notification svg sysfs sysvipc tcpd tetex tidy tiff tokenizer truetype truetype-fonts udev unicode usb v4l v4l2 vhosts vorbis win32codecs wmf x86 xine xml xorg xpm xscreensaver xulrunner xv xvid yahoo zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" 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 auth_digest authn_anon authn_dbd 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 dbd deflate dir disk_cache env expires ext_filter file_cache filter headers ident imagemap include info log_config logio mem_cache mime mime_magic negotiation proxy proxy_ajp proxy_balancer proxy_connect proxy_http rewrite setenvif so speling status unique_id userdir usertrack vhost_alias" CAMERAS="canon directory" ELIBC="glibc" INPUT_DEVICES="keyboard vmmouse mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="el en en_GB" USERLAND="GNU" VIDEO_CARDS="fglrx v4l"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LC_ALL, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

Comment 4 Manolis Stamatogiannakis 2009-06-03 13:34:16 UTC
Created attachment 193400 [details]
config.log for failed ebuild
Comment 5 Manolis Stamatogiannakis 2009-06-03 13:36:31 UTC
This seems to be a duplicate of #262241. Only the requested patch for the ebuild is provided here :-)
Comment 6 Daniel Gryniewicz (RETIRED) gentoo-dev 2009-06-03 14:41:28 UTC
alacarte builds fine with pygobject 2.16.1 (just verified again).  Have you run python-updater since you last upgraded your python major version?
Comment 7 Manolis Stamatogiannakis 2009-06-03 16:33:16 UTC
I've run python-updater several times (in different cases). I ran it once more just in case but the result is the same.

You are right however that pygobject is not the problem itself. The problem is that alacarte configure script uses the non-selected python2.6. Because python packages are compiled only for python2.5 (selected version) the pygobject dependency fails.

Therefore the patch I originally submitted can be simplified to avoid forcing upgrade to pygobject-2.16.1.
Comment 8 Manolis Stamatogiannakis 2009-06-03 16:34:17 UTC
Created attachment 193419 [details, diff]
simplified patch for ebuild. fixes configure.ac and regenerates configure script .
Comment 9 Manolis Stamatogiannakis 2009-06-03 16:42:04 UTC
Created attachment 193423 [details, diff]
simplified patch for ebuild. fixes configure.ac and regenerates configure script.

The first version of the simplified patch was incorrect. Correct patch is now attached.
Comment 10 Gilles Dartiguelongue (RETIRED) gentoo-dev 2009-06-03 16:47:28 UTC
as you noted yourself, this bug is a duplicate of bug #262241. For now gnome team only supports one python slot at a time and no eselect-python stuff (unfortunately).

*** This bug has been marked as a duplicate of bug 262241 ***
Comment 11 Daniel Gryniewicz (RETIRED) gentoo-dev 2009-06-03 20:29:22 UTC
We (the gnome team) only support having the newest python version selected.  All  gnome python packages must be installed against that python version.   Until someone wants to do the work to make all gnome python packages work correctly with multiple python versions (and get upstream to accept that work), this is how it's going to have to be.  We don't have the manpower to fix it.
Comment 12 Manolis Stamatogiannakis 2009-06-04 08:25:01 UTC
(In reply to comment #11)
> We (the gnome team) only support having the newest python version selected. 
> All  gnome python packages must be installed against that python version.  
> Until someone wants to do the work to make all gnome python packages work
> correctly with multiple python versions (and get upstream to accept that work),
> this is how it's going to have to be.  We don't have the manpower to fix it.
> 

In the case of alacarte the problem is not the python version. It is the default configuration script. The patch I provided fixes the issue. 

If you don't have the manpower to test the provided patch, would you have the manpower and the courtesy to modify all gnome ebuilds that require python to provide a warning when python2.6 is not selected?

I opened a new bug on this (Bug 272559).

Thanks

Comment 13 Gilles Dartiguelongue (RETIRED) gentoo-dev 2009-06-04 12:46:09 UTC
(In reply to comment #4)
> This sounds weird. What you are essentially saying is that it's ok to apply
> temporary fixes when no permanent fix exists, but if the count of temporary
> fixes exceeds a certain limit (unknown to the rest of us), it's not ok to
> apply a permanent fix when you finally have the chance to do so. Are you
> kidding me?

no, a permanent fix is doable, and there is just an history of gnome herd doing temporary fixes that last more than they should and end up bitting us in the ass sooner or later. I just want to stop doing that since it ends up being a time waste as I said. Any other gnome dev is free to do what they want though.

As for the fix you are proposing, I'm refusing it for the afore-mentionned reasons and because there is a way to do things without changing autofoo on each and every python using packages.

> Also, if alacarte was long known to be problematic why was it added as a
> dependency of the core gnome package in the first place? I haven't ever used it
> and I don't think it is really that essential to the average gnome user. It's
> even classified as x11-misc/alacarte not gnome-base/alacarte.

what goes into the gnome meta is well known, it is what upstream lists as gnome modules, you are free to not use it. alacarte does not belong to gnome categories because it is fdo compliant and is not tied to gnome other than belonging to the list of gnome modules. In fact there is a lot of packages in gnome categories that should be moved out but since cvs is such a pain, that's not happening right now.

> > Point is, we changed some packages
> > configure way too many times causing greater time to install those while
> > pretty much nothing else was needed to make those package work.
> 
> 
> You are forgetting here that the fixed package will be re-installed only for
> people that have it in their world file. It is the user's responsibility to
> properly maintain their world file. If a user has alacarte in his world file it
> means that it's alright to re-install it whenever a more recent ebuild comes
> out. So, "causing greater time to install" is a non-issue here. 

this is comfort to users, taking less time to build when possible is nice and autoreconf is not nice in this regard especially when there is a proper way to do without it.

> > We *need* to fix this stuff in the eclass since it's a waste of time to do it
> > in every other ebuild we find having this problem.
> 
> I have updated most of my gnome desktop recently and only alacarte had a
> problem and ignored my python configuration. I'm no portage expert, but I can't
> see how changing the eclass is the proper fix for an ebuild that fails because
> the package source code ships with a gentoo-unfriendly configure script. This
> seems more like pushing package-specific fixes to the eclass.

well you might just be unaware that all gnome packages got rebuilt against 2.6, I don't know, but as I said earlier, having multiple python slots installed is unsupported by the gnome team currently.

[snip]

Now I hope all of this discussion now makes sense to you.
Comment 14 Geert Vanhaute 2010-07-01 19:43:16 UTC
Created attachment 237169 [details, diff]
alacarte-0.12.1.patch

I don't know if it's correct but the supplied didn't work in combination with Python version 2.7rc2+
So I adapted the patch to remove the rc in the version