A little while back I was complaining about how even though I keep hearing that Linux is ready for the desktop and "No really, this is the year for Linux on the desktop", that desktop Linux is . . . ahem . . . not quite there yet. I think my exact words were "Linux is as ready for mainstream desktops as I am to give birth to a llama".
Well, I just got a new Thinkpad T61p and I'm happy to announce that I am no closer to being called on my analogy. It was a close call but the perennial favorite of "suspend to RAM" was what did it again.
I installed Ubuntu, which, as always, went off without a hitch. I ripped off the "V" key to dig out the popcorn pieces that the previous owner of the laptop had deposited there. Everything was swell... until...
I was so giddy about the new laptop and the fact that it had an nvidia graphics card as opposed to the latest ATI I'd-rather-sautee-my-own-liver-than-wrestle-with-this-video-card 9600 that usually comes with Thinkpads, that I decided to take the plunge and just suspend it. That's it. To anyone that owns a normal laptop this may not seem like a big deal. Laptops have been suspending without incident since before Florida took a steaming crap on our Democracy.
But if you don't know anything else about users of Linux on laptops it is this. These are people that get irrationally excited about being able to do something on their computers that everyone else has been able to do for at least 5 years.
So back to suspend. Of course it doesn't work. Oh wait, technically suspend does work. Its resume that doesn't work at all. The thing goes to sleep like its sitting through a Cell Bio 210 lecture in the dark immediately after lunch. Its the turning back on part that doesn't work so well. It just sits there, waits for 20 second, beeps and emits heat into the surrounding environment. Stellar.
At this point I pull my self off the ground in a very Charlie Brown post-failed football kick way and hit the forums.
If you are reading this post looking for the way to get a Lenovo T61p Thinkpad to suspend/resume properly using Ubuntu Hardy 8.04 you should not follow this link here. There are probably nearly a trillion links on the internet that you should also not go to but I dare say that all the rest of them are not nearly as long as this one and are not nearly as close to exactly what I needed to know without actually having any useful information on it whatsoever. It actually goes beyond not having useful information. It has information that looks so tantilyzingly useful that I would swear I was in one of the more creative ancient Greek afterlife psychological torture stories. But alas, bupkis.
If you are still reading this post looking for the way to get a Lenovo T61p Thinkpad to suspend/resume properly using Ubuntu Hardy 8.04 you should also not follow this link either. This one is, amazingly enough, even close than the last one. *SPOILER ALERT*. While the answer is not actually on this page, nor is a link to a page with the correct answer, a link to the page with the most helpful wrong answer is on this page somewhere.
If you are still reading this post looking for the way to get a Lenovo T61p Thinkpad to suspend/resume properly using Ubuntu Hardy 8.04 go buy a Mac. Seriously, its just easier for everyone involved.
If you are still reading this post looking for the way to get a Lenovo T61p Thinkpad to suspend/resume properly using Ubuntu Hardy 8.04 and you looked at that other page with the link to the best wrong answer, you ended up at this incredibly well written and detailed post about why suspend/resume doesn't work with Ubuntu Linux on the Lenovo T61p Thinkpad. If you read it carefully, fully grasp what it is saying and follow the instructions exactly . . . it will still not work. If at this point, you decide to look, oh I don't know, at the bottom of your laptop and see that one of the numbers there happens to kind of look like the same sort of pattern that is in the fix that this guy posted for the laptop you have but a slightly different model number, well not really model number but like a sub-product detail subdivision separator code and replaced your sub-product detail subdivision separator code with the one in the fix that the nice guy posted at that site with the closest wrong answer and you reboot and suspend and...
It totally fucking worked.
Here's the best part. The fix is in some random XML file that has workarounds for different models of computers to make them behave properly during suspend. The part that broke this the whole time has this comment over it:
T61p (6460), does not work with the NVidia driver
However, in reality, the T61p works fine with the NVidia driver. If you remove the workaround altogether, it just works.
If someone is actually looking for the answer, just replace the four digit number in the semicolon delimited prefix_outof attribute in the patch to be the four digits after the "TYPE" label on the bottom of your laptop. Sheesh.