Back to Cinnamon!

Okay after my negative experience I’m now back to try Cinnamon, and I have a quite different story to tell.

First of all, thanks to Julian, I found that the issue I was having with the keyboard only involved my user’s settings, and not the code by itself. After a bit more fiddling around, I found a more detailed case where this happens.

My keyboard layout of choice is the so-called US Alternate International (us alt-intl); unfortunately even with the recent improvements in Input hotplug for Xorg, it seems like configuring Xkb on the configuration file, or on the directories, is not recognized by the evdev driver (at least), which is why I configured it with GNOME, Xfce, and, by reflection, Cinnamon, to change the layout of the keyboard — and that’s where the problem lies. When GNOME3 or Cinnamon are started, and they set the keyboard layout (both do it the same way as in both cases you configure it through GSettings), the Alt_L and Meta keys get somehow swapped… but not in all cases, as Emacs was still getting it right (which meant that just switching the two is not going to help me).

I guess I should track it down even further than this, but for the moment, I solved this by using setxkb in my ~/.xsession file, and that doesn’t seem to cause any trouble.

The other issue I reported, was that clutter is unstable when using nvidia hardware; to be precise, the issue is with nvidia-drivers (surprised?), and it’s actually the second issue that I find with their drivers in the last few weeks: the other was Calibre being able to get Xorg to eat so much memory that the system gets unresponsive, just by the sake of being launched, and add to that Skype that was unable to render *at all*….

So I decided to give a try to what Pesa suggested me to solve the Skype (Qt) issue: I decided to try the nouveau driver. Actually I wanted to try that a couple of weeks ago, but after reading through their website I wasn’t sure that my video card (NVIDIA GT218) was supported or if I had to deal with dumping the firmware out of the nvidia drivers and whatever else… but the other day, after screwing my own system over, and needing to boot from SysRescue, I found out that the driver they load is … nouveau, and it worked decently well.

So since this is weekend, and the time was right, I decided to give it a try — and the results are great! Clutter works fine, Cinnamon works fine, and while I haven’t tried anything that is running in OpenGL proper yet (no games), and Google’s Maps GL reports not working with this implementation (not that I care much), it works definitely well enough for what I usually do. I haven’t tried audio out on the DisplayPort connection, but it’s not like I’ve ever tried it before… Suspension works very fine.

And yes for now my experience with Cinnamon is terrific!

Driver hell — when will it stop?

To get some extra pocket money to spend in the everyday maintenance of my systems, I also ended up working on maintenance of Windows computers on a daily basis; it’s not extraordinarily bad, and it usually doesn’t take me more than a day for a single computer even if it’s the first time I see it (once I’ve seen it once, I already know what to expect).

Unfortunately, it’s not always feasible to convert people to Linux yet; although I think I might start soon enough at least with a few people whose only use of a computer is to “browse websites, send email, watch a movie from time to time”. To make the task easier I obviously set up systems with Firefox and Thunderbird, VLC and OpenOffice, so that at least some programs can be found on the ”new“ systems when they migrate.

Unfortunately, it seems like Windows, especially Windows XP, a lot of my customers have OEM licenses for, has become a driver hell just like it was in the old days. And vendors don’t seem to make that much easier. Most vendors providing complete systems tend not to care about their users enough to provide downloads for the drivers (they just tell you to use their recovery partition; guess what? that stuff often doesn’t work extremely well, if at all, and in one instance it was even mounted as a drive on the normal OS… which meant it was infected too!), and the components’ manufacturer have websites that calling complex would be euphemistic:

  • ATI/AMD website is a mess to navigate; while they do (or did) chipsets too, you cannot really find a “chipset drivers” section; if you have an older version of a motherboard that is supported by legacy drivers you’ve got to navigate at least four pages before you can find out!
  • Asus website is a mess of javascript; whenever you ask to download something you have to tell them the operating system you’re looking for… – even for BIOS updates – the window is centered on the screen and does not work on cellphones, and of course once I could have used a cellphone just fine if it wasn’t for that (given that Asus boards usually can update the bios through USB sticks); no matter that half the time, whatever operating system you select, the same stuff is given you;
  • Intel website is also a labyrinth; to download some driver you got to search for the right class of software, then decide you got one in particular, and it often proposes you two options, then you have to agree to the license and again click download… that does not download the thing but rather redirects you to a page that calls a javascript to download the file; such javascript can sometimes not work at all, so they provide you with the usual ”if the file does not download, click here“; but rather than being a direct link, it’s also a javascript function; checking the function, it lists a clear bouncer link (which you could download with wget, too!), but with a little more presence of mind, you can notice that the link is _provided as a GET-dparameter to the (dynamic, at this point) page on Intel’s server; much easier to copy that out and drop the rest I’d say;
  • Realtek’s website sometimes does not work properly; on the other hand they give you direct FTP links so once you know the FTP server you can find the drivers just fine avoiding the website; would have been nicer to split it down for driver type so that the listing wouldn’t take a few minutes, but I have to say is the system that works better; even if FTP does make me feel like we’re back in the early ‘90s;
  • almost all download sites tend to have pretty slow connections, or capped connections; I can understand Asus, Gigabyte and Realtek that have their main server in Taiwan or so it would seem, but what about Intel? Luckily at least ATI and nVidia (that have the biggest driver packs) have very fast servers.

Then there are other problems like trying to understand that ”ATI Technologies, Inc. SBx00 Azalia” is actually the name reported by lspci for a Realtek Azalia coded that needs the HDA drivers from Realtek; or trying to guess the driver version, or the driver’s name, from the downloaded files, that often enough don’t have any kind of naming or versioning scheme. Again ATI (for quite a long time) and nVidia (recently) solved this in a pretty nice way: thei use their logo for the install executable; this does not make it very manageable under Linux though, given that nautilus doesn’t show (yet) the PE icon (maybe I can modify it to load the PE file, and extract the icon?).

Let’s just hope that Microsoft’s moves with Vista and Windows 7 will be a trampoline for Linux for the masses; I sincerely count more on Microsoft’s changes than Google OS as I’ve noted since Vista already gave us something useful for Linux.

Looking for a solution to get three monitors wired in…

So, as my job lately required me to have a lot of windows open to look at, and even my two monitors setup started to feel cluttered, today I decided to invest some of the money I got for my last job to get a new monitor. I decided to get a 20” wide Samsung monitor. Not a bad choice as the monitor is quite nice and seems to blend well with the other two monitors I have.

I haven’t tried to set Xorg correctly yet, that I’ll do tomorrow, as I mounted it in quite late. I also added in an MGA (Mystique) card to see if I can wire in three monitors on Enterprise.

I haven’t investigated too much, but as far as I could see from the results of messing with xorg.conf, the Radeon 9250 does not get by default 1680×1050 which is the resolution of the monitor (if I can get it to run at 1680×1024 would also be nice to me). Also when I set the Virtual size parameter to 4260×1024, I get corrupted images.

Trying to start the mga head with any resolution seem to get me a “not enough video memory”, which might actually be comprehensible, considering the age of the card.

Now, if anybody has an idea how to get three monitors wired in… an option would be to get a Dual-Link DVI capable card, but the cheapest AGP card I can find is a 7600GT from nVidia (which is quite good, I’m sure nVidia would actually get multi-monitor working fine, it was one thing I never had problems using with it), but it costs €100, and I’m planning to change computer next month or the one afterward for a faster box, and I’m not sure if it’s a nice idea to get a new videocard for it now.

Well, I’m not in a hurry, the third monitor will be connected to the laptop tomorrow, so it will not be wasted even if I don’t change the card right away, and I might actually find a solution for the problem with mga.

At any rate, if anybody has a Dual-link DVI (+VGA, or anyway something that could run 3 heads) capable card that is not being used, and want to help me in any way, I’d say this time I’d accept ;) Though I might actually get the new card, after all I am going to sell the computer when I get a new one, so I might just count in the card :)

My thoughts on graphics drivers

In the last days there was a bit of discussion about the closed-source nVidia and ATI drivers, mainly because of xorg 7.1 and the ABI breakage.
I think it might be interesting to write something up about how I feel about this.

I do feel I have to use as much free software as I can. I trust free software, I love free software. But, I do have some needs that I have to trade with my freedom to be able to continue my work on other aspects of free software.

In my main box, which is what I work on the 90% of the time, I have a nVidia card that runs the nvidia binary driver. I work on multimedia programs, so I really need xv overlays working, thing that is not available on nv driver.

I work on two monitors since a few months now, and that increased my productivity, as I can watch a movie and still have enough screen real estate to work on something else. I need a working xinerama for that, this card provides me a working TwinView with DVI and VGA output.

Now, I’m not a gamer, so I care nothing about 3D performances, the most of 3D I used on this box is with Stellarium, that and Google Earth the other day just to see how it was. I used to play Unreal Tournament back in the days, but I’m done with that since long time.

Chutzpah suggested me an ATI 7000 card, AGP with dual output (DVI and VGA), that should use a driver good enough to provide me the two things I’m looking for, and it’s also quite cheap (about €32), that is a good thing especially since I don’t find it a priority myself to get out of the nvidia driver binding.

Now, if somebody has that card, and can tell me whether xinerama works, and if the xv overlays are fine performance-wise, I’d be really grateful. A simple test for the xv overlays is to play something in xine or mplayer (I personally use Kaffeine), then open a terminal and try to cat a long long file (like Xorg.*.log). If the image on the player window stops while the cat is going on, then xv overlays aren’t working as they should.

I would really like to be able to use an opensource driver with a fine 2d graphics card, but up until that, I have to trade part of my freedom to be able to work on other stuff, especially since I’m not paid to do this at all, and I’m still on contract jobs, so even if I have some money saved, I try to avoid spending it on things that are not in my priority list, and I’m not keen on spending them on this unless I can be sure that xv and xinerama works properly as I need them to.