Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 414853 - media-gfx/gimp-2.8.0 - fails tests due to DISPLAY
Summary: media-gfx/gimp-2.8.0 - fails tests due to DISPLAY
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Hanno Böck
URL:
Whiteboard:
Keywords:
Depends on: 436618
Blocks:
  Show dependency tree
 
Reported: 2012-05-06 11:24 UTC by Xake
Modified: 2012-09-29 20:51 UTC (History)
3 users (show)

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


Attachments
Buildlog with a non-reachable DISPLAY=":0" (media-gfx:gimp-2.8.0:20120506-100635.log,413.53 KB, text/plain)
2012-05-06 11:30 UTC, Xake
Details
buildlog with virtualx/Xemake without modified virtualx.eclass (800x600x24) (media-gfx:gimp-2.8.0:20120506-113733.log,416.54 KB, text/plain)
2012-05-06 11:42 UTC, Xake
Details
buildlog with virtualx/Xemake with modified virtualx.eclass (1280x1024x24) (media-gfx:gimp-2.8.0:20120506-113639.log,189 bytes, text/plain)
2012-05-06 11:43 UTC, Xake
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Xake 2012-05-06 11:24:12 UTC
For some reason (probably that user portage is not authorized to connect to DISPLAY=":0") gimp-2.8.0 failed test hard for me.

Trying to fix this with unset DISPLAY && virtualx && Xemake I found out some thing:

* gimp-2.8.0 needs a framebuffer which is at least 1280x1024, else the "sessionrc" tests will fail because of the window was "moved" (probably because it did not fit the framebuffer and was moved because of that).
* If you unset DISPLAY gimp just skips the tests.

So here is the funny deal: virtualx sets up a framebuffer which is only 800x600. This means that the tests fail with Xvfb if you do not edit virtualx.eclass.

So maybe we need to rework the virtualx.eclass so a ebuilds may set its own resolution (and default to 800x600 if it does not) and then make the ebuild use virtualx/Xemake in src_test.


For the ebuild, you may want to print a hint if the testsuite fails that you need a resolution of at least 1280x1024 to run the tests, and suggest "unset DISPLAY" and run again. 

# emerge --info
Portage 2.2.0_alpha101 (hardened/linux/amd64, gcc-4.6.3, glibc-2.15-r1, 3.3.4-gentoo x86_64)
=================================================================
System uname: Linux-3.3.4-gentoo-x86_64-Intel-R-_Core-TM-_i7_CPU_920_@_2.67GHz-with-gentoo-2.1
Timestamp of tree: Sun, 06 May 2012 00:00:01 +0000
ccache version 3.1.7 [disabled]
app-shells/bash:          4.2_p28
dev-java/java-config:     2.1.11-r3
dev-lang/python:          2.7.3-r2, 3.2.3-r1
dev-util/ccache:          3.1.7
dev-util/cmake:           2.8.7-r5
dev-util/pkgconfig:       0.26
sys-apps/baselayout:      2.1
sys-apps/openrc:          0.9.9.3
sys-apps/sandbox:         2.5
sys-devel/autoconf:       2.13, 2.69
sys-devel/automake:       1.10.3, 1.11.5
sys-devel/binutils:       2.22-r1
sys-devel/gcc:            4.6.3
sys-devel/gcc-config:     1.7
sys-devel/libtool:        2.4.2
sys-devel/make:           3.82-r3
sys-kernel/linux-headers: 3.3 (virtual/os-headers)
sys-libs/glibc:           2.15-r1
Repositories: gentoo gamerlay-stable x11 systemd xake-overlay Mine
Installed sets: @system
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -O2 -pipe -ggdb -mtune=native -floop-interchange -floop-strip-mine -floop-block -floop-parallelize-all"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /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"
CXXFLAGS="-march=native -O2 -pipe -ggdb -mtune=native -floop-interchange -floop-strip-mine -floop-block -floop-parallelize-all"
DISTDIR="/var/portage/distfiles"
FEATURES="assume-digests binpkg-logs buildpkg distlocks ebuild-locks fail-clean fixlafiles metadata-transfer news parallel-fetch parallel-install preserve-libs protect-owned sandbox sfperms splitdebug strict test unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox xattr"
FFLAGS=""
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="en_US.utf-8"
LDFLAGS="-Wl,--as-needed -Wl,-O1 -Wl,--sort-common -Wl,--hash-style=gnu"
LINGUAS="sv sv_SE en"
MAKEOPTS="-j16 -l15"
PKGDIR="/var/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/var/portage"
PORTDIR_OVERLAY="/var/overlays/layman/gamerlay /var/overlays/layman/x11 /var/overlays/layman/systemd /var/overlays/layman/xake-overlay /var/overlays/mine"
SYNC="rsync://liten.dodi/gentoo-portage"
USE="10bit X a52 aac acl acpi action_modeswitch aio alsa amd64 amr amrnb amrwb apng applet archive aria2 ass asyncns autoipd avahi bash-completion berkdb bluetooth branding btrfs bzip2 bzr cairo call caps ccache cdaudio cdda cdr chromium cleartype cli clutter colord connection-sharing consolekit corefonts coverart cracklib crypt cups cxx dbus device-mapper devicekit devkit dhcpcd digitalradio djvu download dri dts dvd dvdr dvi edd eds enca encode epspdf equalizer eselect evo exif extensions fat fbcondecor fdt ffmpeg fftw flac fluidsynth fontconfig fuse gbm gcrypt gdbm gdm gdu geoip gif gimp gles1 gles2 glib gmp gnome gnome-keyring gnome-online-accounts gpg gphoto2 gpm grammar graphite grilo gs gsf gsm gstreamer gtk gtk3 gtkstyle gudev hardened hires-icons hpn hwdb ical iconv iconvacl icq icu id3tag idn ieee1394 iptc jabber jack java6 jingle jit jpeg jpeg2k justify kate kerberos keymap kvm lcms libffi libkms libnotify libsamplerate llvm lm_sensors logrotate lto lvm lzma lzo macvtap mad map maps math matroska md mdadm midi minizip mms mmx mmxext mng mod moonlight mp2 mp3 mpeg mpfr mpi msn mtp mudflap multilib musepack musicbrainz natspec nautilus ncurses network-cron networkmanager nfs nls nntp nptl nptlonly nsplugin ntfs ntfsprogs numa nut ocr offensive ogg openal opencore-amr opengl openmp openvg ots pam pango parted passiv pax_kernel pcap pcre pdf pdfimport pgo pidgin playlist plugins plymouth png policykit pppd pulseaudio qt3support quicktime quvi raw readline realtime romio rrdcgi rtmp samba scanner schroedinger seed sendto sensord session smp sms socialweb soundtouch speex spell spice sse sse2 sse3 sse4_1 ssh ssl ssse3 startup-notification subversion svg sysfs systemd tcpd telepathy tex theora thesaurus threads tiff totem tracker truetype udev udisks unicode upnp urandom usb usbredir userlocales utp vala vcd vdpau vhook videos vim vim-syntax virt-network vorbis wayland webgl webkit webp wmf x264 xa xattr xcb xcomposite xinerama xml xmp xmpp xorg xpm xps xrandr xscreensaver xulrunner xv xvfb xvid zeitgeist zeroconf 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 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 cgi cgid 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" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" DRACUT_MODULES="btrfs caps biosdevname plymouth syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" GRUB_PLATFORMS="pc" INPUT_DEVICES="evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="sv sv_SE en" NETBEANS_MODULES="cnd profiler dlight harness ide java websvccommon apisupport nb" PHP_TARGETS="php5-3" QEMU_SOFTMMU_TARGETS="i386 x86_64" QEMU_USER_TARGETS="i386 x86_64" RUBY_TARGETS="ruby18 ruby19" SANE_BACKENDS="net niash snapscan" USERLAND="GNU" VIDEO_CARDS="nouveau" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
Comment 1 Xake 2012-05-06 11:30:21 UTC
Created attachment 310953 [details]
Buildlog with a non-reachable DISPLAY=":0"
Comment 2 Xake 2012-05-06 11:42:31 UTC
Created attachment 310957 [details]
buildlog with virtualx/Xemake without modified virtualx.eclass (800x600x24)
Comment 3 Xake 2012-05-06 11:43:58 UTC
Created attachment 310959 [details]
buildlog with virtualx/Xemake with modified virtualx.eclass (1280x1024x24)

It is fully possible that a "lesser" resolution may work, but at least 1024x768 failed.
Comment 4 Sebastian Pipping gentoo-dev 2012-05-08 20:36:54 UTC
Any recommendations on a fix?
Comment 5 Xake 2012-09-29 17:36:32 UTC
(In reply to comment #4)
> Any recommendations on a fix?

Was this comment comment set towards me?

If that is the case, then how about the following?

In virtualx.eclass have something like this:

--- virtualx.eclass.bak	2012-09-29 16:04:57.501400072 +0200
+++ virtualx.eclass	2012-09-29 16:06:14.289398263 +0200
@@ -81,7 +81,7 @@
 	local OLD_SANDBOX_ON="${SANDBOX_ON}"
 	local XVFB=$(type -p Xvfb)
 	local XHOST=$(type -p xhost)
-	local xvfbargs="-screen 0 800x600x24"
+	local xvfbargs="-screen 0 ${VIRTUALXRES:-800x600x24}"
 
 	# backcompat for maketype
 	if [[ -n ${maketype} ]]; then


--- gimp-2.8.2.ebuild.bak	2012-09-29 19:34:07.754061315 +0200
+++ gimp-2.8.2.ebuild	2012-09-29 19:34:42.879060488 +0200
@@ -5,7 +5,7 @@
 EAPI="3"
 PYTHON_DEPEND="python? 2:2.5"
 
-inherit versionator autotools eutils gnome2 fdo-mime multilib python
+inherit versionator autotools eutils gnome2 fdo-mime multilib python virtualx
 
 DESCRIPTION="GNU Image Manipulation Program"
 HOMEPAGE="http://www.gimp.org/"
@@ -129,6 +129,11 @@
 	done
 }
 
+src_test() {
+	unset DISPLAY
+	VIRTUALXRES="1280x1024x24" Xemake check
+}
+
 src_install() {
 	gnome2_src_install



In this case the gimp ebuild could set VIRTUALXRES to whatever it likes, and it overrides the default in virtualx.eclass?
Or name the variable Xvfbres or whatever.
Comment 6 Chí-Thanh Christopher Nguyễn gentoo-dev 2012-09-29 20:51:08 UTC
I increased virtualx.eclass resolution to 1280x1024. Adding a parameter to choose the resolution will be discussed in bug 436618.