These are the problems I've found when running qingy under a 2.6.8 kernel. - Username/password text is not shown. - All buttons restart qingy and do nothing else. - Cannot login, either it is a correct or an erroneous login, qingy simply restarts. Reproducible: Always Steps to Reproduce: Portage 2.0.50-r9 (default-x86-2004.2, gcc-3.3.4, glibc-2.3.4.20040808-r0, 2.6.8-gentoo) ================================================================= System uname: 2.6.8-gentoo i686 AMD Athlon(tm) XP 1800+ Gentoo Base System version 1.5.2 distcc 2.16 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [enabled] Autoconf: sys-devel/autoconf-2.59-r4 Automake: sys-devel/automake-1.8.5-r1 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-O3 -mcpu=i686 -fomit-frame-pointer -funroll-loops -pipe -fforce-addr -fforce-mem -fmove-all-movables" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.2/share/config /usr/kde/3.3/share/config /usr/kde/3/share/config /usr/lib/mozilla/defaults/pref /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-O3 -mcpu=i686 -fomit-frame-pointer -funroll-loops -pipe -fforce-addr -fforce-mem -fmove-all-movables" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs buildpkg ccache distcc fixpackages sandbox usersandbox" GENTOO_MIRRORS="http://ftp.caliu.info/pub/gentoo/ http://ftp.ntua.gr/pub/linux/gentoo/" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="3dnow X aalib alsa apache2 apm arts audiofile avi berkdb bindist cdr crypt cups curl directfb divx4linux dvd dvdr encode esd ethereal fastcgi fbcon flac flash foomaticdb freetype gd gdbm ggi gif gmp gnome gphoto2 gpm gstreamer gtk gtk2 icq imagemagick imlib ipv6 java jikes jpeg junit kde lcms ldap libg++ libwww linguas_el linguas_es mad memlimit mikmod mmx motif mozilla mpeg msn ncurses nls nocd nptl oggvorbis opengl oss pam pdflib perl pic png ppds python qt quicktime readline samba sdl slang spell sse ssl svg svga szip tcltk tcpd tetex tiff truetype ttf unicode usb video_cards_nvidia videos wmf x86 xml xml2 xmms xv xvid zlib"
- Username/password text is not shown. This generally happens if you emerge freetype (which DirectFB depends upon for TTF font support) with the "bindist" USE flag. Try re-emerging freetype with USE="-bindist", and re-emerging DirectFB after that. Fonts should be visible inside qingy again. - All buttons restart qingy and do nothing else. - Cannot login, either it is a correct or an erroneous login, qingy simply restarts. This is unfortunately still a DirectFB bug. Apparently it crashes (the app) when shutting down its graphic mode. And qingy shuts down the graphic when (sigh) it logs in the user, as well as when shutting down / rebooting the machine. I wish I never used DirectFB, but it wasn't this borked at the time...
Michele... what does exactly the bindist flag? Should I disable it globally or what?
The bindist flag is the one that tells Portage to use a precompiled bynary version of the package you are emerging (if it is available for that package, of course), instead of compiling it directly. freetype has a binary version available, but that doesn't support well TTF fonts properly (at least with DirectFB). If you disable it globally you will end up compiling everything from source. BTW, try 'emerge ufed' and you will get a nice (console) tool to manage your USE flags, wether you want to (globally) enable/disable one, or just want to know what a specific one stands for...
Yup, I verified that it is DirectFB that crashes the app when shutting down from its graphic mode. If you don't use the '-n' cmd line arg in qingy (the one that closes DirectFB mode before stopping/restarting your system), you will be able to shut down normally.
Thank you very much Michele.
Uhm, tonight I got seriously pissed up with this 'DirectFB crash on shutdown issue', so I thought that if I cannot prevent it, maybe I can circumvent it, so an evil evil idea came to my mind (satanic cackling with mad laughter follows): I split qingy into two executables, one with the interface and one that does the actual login. This way it does not matter anymore how the interface dies. because it communicates username, password and session to start to the other via a pipe. As a result of this I have successfully logged in with qingy using gentoo-dev-sources-2.6.8 and vanilla-sources-2.6.8. As a side result, the qingy instance that logs you in will use about 2.5M of RAM against the 40M of the old solution (this because DirectFB leaves a lot of used RAM even after shutting down its graphic mode, but that gets cleaned when the qingy-interface dies). This looks like a big improvement to me, worth a new major release of qingy. Also, it paves the way for support of other graphic toolkits in qingy (bare framebuffer, SVGAlib, maybe others): each interface will have its own executable, and the main qingy will just have to launch it depending on user preferences... Unfortunately you cannot test this code yet, it is still too dirty / hacked together for me to even put it on CVS. I'll post a follow up when it is...
Come on Michele... let me taste that piece of code! :P gj btw
Have a little more patience ;-) The changes I'm doing are big, and there are still a number of bugs and very rough edges to smooth down... That said, it is already working well on my machine, thus I uploaded it to qingy CVS repository...
OK, released qingy version 0.5.0 which addresses the 2.6.8 kernel issues. Ebuild in Portage and already marked stable for x86.