Archive for December, 2009

Mic issue on Asus Eee 1001HA

December 24, 2009

As I mentioned in my previous blog post, I am unable to use the mic in my new netbook. Well, after looking around a bit, I discover that the netbook has a digital input in addition to the analog input, now when I look at the gnome-volume-control I only see the analog(external) input and not the digital one, which obviously means that ALSA does not see it. After a little more digging, I found a patch where digital input support was added to Acer laptops using the ALC268 codec(the 1001HA uses ALC269), I decided to tinker around with that a little and tried to apply it to the ALC269 as well without any results.

I have filed a bug report here if you want a look.

Now, I am not very strong on sound(I mentioned that previously too), so my apologies if I misdiagnosed the problem in anyway or if I did not provide enough information, in which case I would be more than happy to get the extra information required.

I joined the netbook club

December 24, 2009

So I got my first netbook this monday. First off, the details; it’s an Asus 1001HA with an N270 Atom processor, 1Gb of RAM, a 160Gb hard disk, 0.3 Mpixel web cam, came preloaded with Linux and it cost me(technically my mom, but anyway :P) around 436$.

Now, when I started using the netbook with the stock OS, I was pretty much taken in by it’s boot speed(about 8 seconds) and I also liked the ease with which I could use the interface in general. But the interface did have one fatal flaw, it was catastrophically awful to look at. Seriously Asus, if you’re going to sell a laptop with Linux on it, don’t use an interface that looks as is if it was made to deliberately repel customers. Another thing I hated was the sheer inflexibility of the system(granted, this probably was a sensible design feature).

So, after a few hours of use, I removed the stock OS from the netbook and replaced it with Ubuntu 9.10. Most of the hardware worked out of the box with the stock Ubuntu install, but the wireless card didn’t which was a RaLink 3090. After a bit of googling around I did manage to find a driver for the wireless card in question in the staging tree for the 2.6.32 kernel, so I got the source, configured and compiled it. So, full of hope, I booted the new kernel up to find that network manager detected the card, but could not use it. After a few more minutes of looking around, I discovered that the firmware(or whatever it was) had to exist in a certain location(which it didn’t). So I got down the official driver from RaLink(same as the one in the staging tree in 2.6.32, but happily it’s not true for that in the 2.6.33 kernel, will explain later) and I found the files the driver was looking for, plopped them in the required location and lo-behold wireless now works!

Now apart from the wireless driver which caused a few problems, the default interface was also a bit of trouble because it took too much screen space and it wasn’t that easy to use on a netbook. So I decided to give gnome-shell a try, and I must say that I am loving it, albeit there isn’t any support for the old gnome-panel applets. So if you have a netbook and hasn’t given gnome-shell a try, do so, ofcourse your mileage may vary, but I just love it. 🙂

About the wireless driver in the 2.6.32 staging driver, it’s awful to look at, now I know I am not a kernel developer, but comparing that driver to the Intel wireless driver syntactically, the RaLink driver is a mess, but I am happy to say that the staging driver in the 2.6.33 kernel(which is actually the 2860 and 3090 drivers together) is a lot better, so there is some hope yet of having the 1001HA working out of the box completely in the near future. 🙂

There were a few surprises when I bought the laptop, the first one was that the Linux version is about 87$ cheaper than the equivalent Windows one(probably obvious I suppose). The second, most surprising, was that EPSI(the vendor) only offered the Linux version in their showrooms whereas the Windows one had to be ordered beforehand if you wanted it. So it looks like Linux is getting more and more exposure. 🙂

Edit:- I forgot to mention that the mic does not work for me, so I’ll need to look into that too.

The birth of an idea due to the prospect of a mundane task

December 14, 2009

So a few days ago, my mom told me that I had to index the contents of all our data CDs and DVDs, this was not the first time, and like all other times it was a really shoulder-sagging moment. The steps of the boring job was, insert each CD/DVD, read the folder names in the root of the media and write them down, which frankly is one of the dullest and most monotonous jobs I can think of(frankly I would rather watch a hard-core financial documentary for 6 hours), so with the fear of the mundane task ahead of me, I tried to think of a solution to the conundrum.

The solution was to write a program that would do all that(and perhaps more) for me all in the time of a few seconds rather than that of a few 10 minutes along with the absence of the headache and fury if was I doing it manually. I did not bother with writing a script because frankly I don’t know enough bash to save my life and since I already had a fairly good idea of how to do it with DeviceKit-Disks(now UDisks) and GLib along with a few other choice libraries.

So I started writing the program, but immediately I had a problem, even though I was informed by UDisks that there was a media change, I somehow could not obtain the mount point of it, which is highly essential since you need to open that path as a directory. So after a few hours of looking everywhere and trying different things, I discovered the problem which was one of the smallest, yet most mind boggling issues ever, I was using an audio CD to test it instead of a data CD, the reason being that GVFS mounted special media at a gvfs mount(USER_HOME/.gvfs/….) instead of a normal unix mount(/media/…), which meant that UDisks did not have a clue about the mount path(I think that was a bad idea on the part of the GNOME devs personally).

But after that big problem, things got a lot easier and I finished the basics of the program. Mind you, this post is about three days after I finished the program, the reasons being that my mom forgot about the task(like all the previous times), so now all that effort was a bit of a waste(not a total waste because it gave me something to do and it improved my knowledge on a few areas of the GNOME desktop), and because I thought I would post the program in case it may benefit someone directly or in an obscure fashion after making it a bit more “mainstream friendly” and adding a few nice touches.

The features of this small program(I dubbed it “cd-root-dir-reader” which is a stupid name :P):

1) Automatically eject the media after it has been finished(option “-e” if you want it).

2) Read the media recursively once(option “-r” if you want it), or not at all(not sophisticated, but I couldn’t think of a plausible way of doing this without resorting to nesting code on and on until infinity).

3) Output the contents of the media at a file in USER_HOME/Media-reader.

Code is here if anyone wants it(Sorry for the ubuntu pastebin link, I don’t really own a server and I could see no other way of providing the source). Compile with:

gcc name-of-input-file -o output-file -Wall `pkg-config –libs –cflags gtk+-2.0 dbus-glib-1 gthread-2.0 gio-2.0 polkit-agent-1`

Note: The media to be read should be inserted after the program has been started.

Since I have nothing much to do these days, feature requests and anything else would be accepted. 🙂