Flash/nVidia horrors, Gnome/KDE fights in my Fedora 14

2011-03-01 » fedora, Firefox, Flash, Gnome, Kde, nVidia, X.org

. Just a few days after I had brought back my Fedora computer to life, the last updates in kernel, nVidia driver from RPMfusion and what not did to my Fedora 14 box (the same that was damn slow three weeks ago) what you see in these pictures, taken while visiting a recent Linux.com article on microformats (sorry for their quality, but I had to take pictures because screenshots wouldn’t show the “sticky ad”). It happens on other websites too.

Basically, whenever I loaded that or other web pages that contain a Flash ad, that ad would remain on screen. This made working impossible again. Sure, theoretically I could block Flash, but there are a few websites that I must use to work that only function if Flash is enabled.

If I moved Firefox to the right part of the screen, that square ad would remain in the center, where it had appeared when I had originally loaded that page. Every other window that happened to occupy part of that initial square area would have that part covered by the corresponding part of the Flash ad.

As you see in the pictures, the ad didn’t stick on the root window, or on the borders of each window. Only inside the windows. Closing or killing Firefox would make no difference, the ad would remain on screen. The only way to make it disappear would be to restart X. In KDE, it always happened (I tried 10/12 times). In Gnome, it only happened once or two.

Since 1) at least part of the problem was outside Firefox, 2) several comments to my previous post said that Chromium isn’t really that fast with many tabs open and 3) X wasn’t really smooth anyway, I wasn’t really motivated to try Chromium. Seeing no other solution, this morning I removed the nVidia drivers:

  yum remove kmod-nvidia nvidia-settings nvidia-xconfig livna-config-display

And the Flash ad problem disappeared. Not only that, but the whole graphical environment runs a bit faster and more smoothly than before. The computer is not as fast as I’d like (they never are, aren’t they?) but is much better than before. I got here by doing without the nVidia drivers and cleaning periodically the Firefox Sqlite databases. As soon as possible I will also try other tricks that were suggested. I am not completely happy, because I have 3D hardware that I can’t use to the best of its capabilities right now, so Google Earth runs much slower than it could. But I am already back again to a point where I am the performance bottleneck of my desktop, so that can do.

Along the road, I discovered some interesting “communication problems” between Gnome and KDE. One is that if I put an USB stick in during a KDE session, I couldn’t unmount it from the KDE panel. I had to start Nautilus and unmount it from there. This disappeared after the last upgrade, the same that introduced the “flash ad that wouldn’t die” problem. I also tried to prepare the live CDs with Brasero from a KDE session, but it core dumped like this:

  [marco@polaris ~]$ brasero &
  [1] 4010
  [marco@polaris ~]$
  ** (brasero:4010): WARNING **: ERROR loading background pix : Failed to open file '/usr/share/brasero/logo.png': No such file or directory
  ** (brasero:4010): WARNING **: Failed to inhibit the system from suspending: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.gnome.SessionManager was not provided by any .service files
Starting the abrt gui from KDE yelds similar problems:
  [root@polaris ~]# abrt-gui
  Can't connect to gnome-keyring-daemon, changes won't be saved
Finally, if there are two users logged in at the same time, one with a KDE session and one with a GNOME session, when you switch user from the GNOME one to the KDE one, the latter has to enter his or her password twice. One for the GNOME screen locker, another for the KDE screen locker.

It’s funny, so to speak, to find (9 years after writing Hooray for Bluecurve) that KDE and Gnome still have this kind of cohabitation problems. Mind you, I’m not even really complaining here, just sharing what I’ve found to exchange tips and tricks. Feedback, as always, is very welcome. Personally, I have no time right now to investigate this in depth, for the reasons I just explained in another page, but there are hints (I hope) to solve these problems in these threads: