Okay guys, I've finally made AMD64 kernel packages that fix the sound bug on the D630. They're available at
http://www.owlnet.rice.edu/~mmullins/packages/
For all you D630 (and possibly D830) users running Ubuntu, I've been trying to make a kernel package that incorporates a working sound driver. I've been building packages with the stock Ubuntu configuration options, pared down a little bit (omitting IDE drivers and things that we'll never use), and I still end up with over 250MB of kernel images, which is about 80MB compressed! I can't figure out at all how Ubuntu kernels are compiled to have only 79MB of modules, uncompressed, giving a 17.6MB package. I'm *not* going to post an 80MB kernel package, so until I figure this out, you'll have to wait or DIY. I'll have access to webspace when I get to Rice on Sunday, so that's where I'll post what I build. This will all be unnecessary when 2.6.23 comes out, since the patch has already been committed.
Labels: d630, ubuntu
Sorry for taking so long before getting around to writing this. I got my computer quite some time ago, and I'm now running Ubuntu Gutsy (the currently unstable version, due for release in October).
The main reason I'm using Gutsy instead of Feisty (the latest stable version) is because of the video drivers. My D630 came with the Intel X3100 integrated video, so I needed xserver-xorg-video-intel 2.0 or later to get all the new features. I also wanted to use the latest XRandR features, which allow me to dynamically add and remove displays, so I no longer have to restart X to go in and out of dual-head mode.
In order do this, I had to install using the Feisty alternative CD (the command-line installer), since the standard CD didn't have the proper X drivers. Then I upgraded to gutsy by changing all the "feisty"s in /etc/apt/sources.list to "gutsy", then issuing an "apt-get dist-upgrade". I don't remember the specifics of how I got X working, but I don't believe it took too much effort aside from upgrading to gutsy.
The only problem was with my Intel HDA sound card. The problem was a kernel bug, which has since been fixed. I'll post a kernel package as soon as I find a place to put it; right now, I have nowhere to host it. If you build your own kernel, open up sound/pci/hda/patch_sigmatel.c and change "spec->num_pins = 14;" to "spec->num_pins = ARRAY_SIZE(stac9205_pin_nids);" in the patch_stac9205() function (line 2182 in kernel 2.6.22.1, don't know about others). If you don't understand what I just said, wait until someone posts a kernel package, lest major kernel damage ensue. You may still have to reload the module after suspending (issue "sudo rmmod snd_hda_intel && sudo modprobe snd_hda_intel"; if that fails, then kill everything that's using the sound card).
Aside from the sound card issue, not too many problems have occurred. I'm happily typing this on my D630 now.
Labels: d630, ubuntu
My main interest right now, like many people, is web applications. The top three tools I have seen are PHP, ASP.NET, and some amalgam of Java technologies. I have a recent infatuation with trying everything I can. I'm going to describe what I love (and more importantly, hate) about them.
Likes:PHP:
- Completely open source. I don't mandate open source software, but it is nice.
- Very easy to host on a Linux system. I hear it also works in Windows, but alas, I have never even tried.
- Customizable — it does what I tell it to do.
ASP.NET:
- Extremely well-documented. I like the MSDN library, though at times, it can be too much information.
- Easy separation of code and layout. I like being able to move "controls" around and having absolutely nothing change as far as the code is concerned.
- It uses "controls", widgets that mimic Windows GUI elements (from the programmer's standpoint). At first, I thought it was a bad idea, until I realized I didn't ever have to bother with writing HTML for things.
- It's very easy to use AJAX without actually coding JavaScript. I have nothing against JavaScript; it's just another technology I'm going to have to learn sooner or later.
Java:
- It's open source (at least I think it is, now).
- It is also well-documented. It's amazing how much commercial support helps documentation.
DislikesPHP:
- Documentation of some modules is poor, misleading, or confusing.
- Code and layout are strictly coupled. This leads to a really large mess of indentation and spaghetti code, since some blocks of HTML may be inside conditional/loop constructions, etc.
ASP.NET:
- It's incredibly proprietary. Sure, there is Mono, but it only supports most of ASP.NET. One of its major exclusions (as of now) is AJAX.
- There is too much documentation. I'm sometimes confused with finding certain documents.
Java:
- It's simply too confusing. It's broken up into way too many pieces. It peeves me when I don't use something as it is intended; with Java, I can't figure out what piece is supposed to do what.
I would probably have more criticisms of Java if I could figure out how to use it. I'm sure it's great if you can reuse almost everything you program (or want to reuse it), but that's just not me. Right now, my platform of choice is Python using Django. Of course, there are some things I don't like about that too, but it would make for much too long a blog post (as if this one wasn't). I'm probably going to keep trying with Java, using that address book project as a test.
Labels: asp, dotnet, java, php, webprogramming