Wednesday, July 06, 2005

PVR Build Log #03 (Trials and Tribulations)

Sorry it's been so long...I've worked really hard on the PVR, and I had holidays to worry about. Oh, and a LAN party. I guess I should post about that over at Phisch.

As you know (if you read parts 1 and 2), the hardware build for the PVR went swimmingly. I started with quality parts and did a clean, elegant build.

The software situation, well, not so much. Let's rehash:
  1. Fedora Core 4: I was wrong about FC4 not supporting SATA out of the box. It does. The install DVD actually has a bug that requires you to enter gibberish once and press "Enter" before it will install, or it will have a kernel panic. No, I am not making this up.This foiled me the first time, and then the second time I took the time to research it and found out about the bug. To be honest, I'm not sure if this is better or worse than not supporting SATA, but it is certainly stupid all the same. More on that later.
  2. Mandrake: I then tried (unsuccessfully) to get working ISOs of Mandriva. They hide the ISOs to try to get you to pay for support first, and that's not ok with me. Next!
  3. SUSE 9.2: This was my first experience with SUSE, and to put it simply, I was impressed and then some. These guys have polish like I've never before seen in a Linux distro. I desperately wanted to stick with SUSE (pronounced Soos-Uh), but I couldn't find a good step-by-step MythTV tutorial for SUSE, so I couldn't make it work.
  4. Ubuntu Full: Not the live CD, and not the single CD install, but the full 2.2 GB Ubuntu installer. Where SUSE is polished, Ubuntu has simplicity in spades. You get a plain, coffee-colored desktop, one net browser (FireFox), one file manager, and so on. Not a lot of choices, but it's simple and it works well. And like SUSE, Ubuntu found my unusual mouse and keyboard and used them fine without even asking about them. I left Ubuntu for the same reason I left SUSE; I couldn't find a comprehensive tutorial for it.
  5. Fedora Core 3: I finally ended up with FC3 because this fine tutorial is entirely based on it. The install DVD image was a little hard to find, because since the release of FC4, most mirrors have chosen to host that instead (even didn't have it). So I had to find a mirror that was a little behind the FC4 wave and was still hosting FC3 images, and then I had to use IE to make the download, as downloads over ~1GB make FireFox barf. And Star Downloader. And everything else I tried, except for BitTorrent (and remember, there wasn't a torrent for FC3) and Internet Exploder. Ech.
I'm reasonably certain that the above trial-by-fire would have shaken off damned near any beginner. I don't want to hear you Linux guys talking about how easy it is to get an image and make it do anything Windows does these days anymore, because it isn't. It just isn't. Finding the right distro was hell. Getting package dependencies to work is hell. Making sure that updates (which are harder than in Windows themselves) don't kill the work you've already done is hell. Learning BASH when you left DOS years ago is hell. Combing Google for answers when you have 20 stupid trivial problems, all of which are show-stoppers, for the command-line fix for each one, where the authors of such fixes assume that you know a lot more than you really do IS HELL.

Do you see where I'm going with this, Linux guys? This stuff needs to be easier. Follow SUSE's lead and improve on it. So anyway...

Oh, here's a tip. If you decide to dive into Linux, make sure you really take the dive and download the DVD ISOs instead of the CD ISOs, because it's well worth the trouble. First, you only have to download one image and burn one disc. But it's so much more than that! Some Linux distros want the install discs inserted a lot to pull packages from when you install software. When you have multiple install discs, this is a real pain. A single DVD is much less hairy. Ditto for the media check that some distros do before installing. Also, I archive my software in a large CD book. It's really nice to archive just one DVD for a full distro instead of five CDs. Sometimes the DVD images are a little harder to find, but they're well worth the trouble.

Ok. Let's rewind a little. SUSE wasn't working. It was beautiful and easy to use, but I couldn't find instructions tailored to SUSE for a MythTV install. So I reluctantly left SUSE for Fedora Core 4.

I had already read quite a bit of the above-linked tutorial, and I figured that since it was based on FC3, then FC4 should work mostly the same. I Googled my assumed SATA problem and discovered that FC4 does in fact support SATA. Hmm. I tried installing again; just to make sure I wasn't crazy. No dice. I then resorted to typing the exact wording of the kernel panic error message into Google with quotes. You know what? There are a lot of things that cause kernel panics. I read Google for four to five hours before stumbling upon the answer mentioned above...with some Intel motherboards (and very rarely, AMD boards too), you have to give the install prompt gibberish instead of an install command. The install prompt of course throws up an error, and then the normal install command will work. That's simple enough. If you're an idiot.

After that, FC4 installed fine. FC4 is nice. It uses the KDE desktop, which suits me far better than Gnome does. It seems to me that KDE is like a Windows desktop, while Gnome is more like a Mac desktop. So it's probably just a familiarity thing.

The problem with FC4 is that it's new. New and buggy. And not at all like FC3. The tutorial didn't work. I'd try running a BASH command copied from the tutorial, and BASH would barf. So I'd read my Linux books and find a way to work around the error. This got harder and harder, and progressively more time consuming, until I simply couldn't progress any further.

When you talk to a Linux nut about how hard things are with Linux, his argument is that it's ok because the Linux community is so supportive. All you have to do is make a post with your problem clearly stated at any Linux forum, and you'll have five hundred tech heads lining up to help. Let's debunk that, shall we?

There's a local association called the Ogden Area Linux Users Group, or OALUG. Not an elegant name, but perhaps that's appropriate. About a year ago, Leon and I attended an OALUG meeting at the WSU Ogden campus. It was a cold day, and they opened the doors to the building late, so that tainted the experience early on.

They finally let us into the building, and the meeting commenced in a classroom. They chattered about kernel updates and gave SCO a fairly good bashing (which is fine by me), and then talked about whatever members chose to bring up. During the meeting, there was a fellow behind me who was a WSU employee, and he provided the single warm, friendly greeting and conversation that I had at that meeting, despite the fact that I spent much of the time pointing out that it was my first time at such a meeting, and I'd like to know more about Linux, and the Linux community. Frankly, it was pretty much like I would imagine an Asperger's Anonymous meeting would go.

At the end of the meeting, they laid out some Linux-related books on a table that a publishing company had given the association, and said that anyone who wanted one or two could have them. I saw one that interested me and was reaching for it, when one of the OALUG members grabbed it right out from under me, boldly stating that he had seen me going for it, and then raced over and made a grab because he had just decided that he wanted it. Fine. Asshole.

So the meeting didn't go well. I did walk away with a book, which I committed to read and write a review for, and have done neither. And I won't be doing so, not only because I don't have the time, but also because of the hatred in my black, black heart.

Anyway, I decided to turn to the ever willing and helpful Linux community for assistance, and went to OALUG's website. Once there, I registered (even though it isn't mandatory for posting) and then posted about my problem. Why don't you have a look at the page? Really, click the link--I'll wait. Do you see all those helpful replies? Yeah, me neither.

I posted that eight days ago now, and all I hear is crickets chirping. Some community. I'm sorry...I know that I'm being pretty scathing here, but it's just because I love the idea of open-source so dearly, and I genuinely feel that these guys are pissing on their own cause. Seriously, guys. Grow some social skills.

Fedora Core 4 didn't work and it looked like it wasn't going to unless I wanted to spend a few weeks learning how to recompile kernels and other such nonsense. No. I went back to the tutorial to find out which distro it was meant for, and went immediately away to find an FC3 ISO.

By this time, I had learned an awful lot about working with a command line in BASH, and I was really getting proficient at moving around and getting things done in Fedora. FC3 install fine, there was no gibberish bug, and the tutorial, while not perfect, was very useful indeed. There were times when I had to deviate from the tutorial because the steps that it suggested didn't work, but I suspect that this is because updates have broken parts of it. I neatly sidestepped these problems for the most part, and only got really hung up once or twice.

There were a couple of things that the tutorial didn't cover, though, and they've been a concern all along. I want more than just a PVR. I want a fully networked box that can share its recordings with the rest of the house, and I want it to record to an NTFS partition on the hard drive so that when I boot to Windows, Windows can see the partition as well as Linux.

I made it through a certain step in the tutorial at about 2:20 am one night, decided to update the machine before bed, finished the update, shut it down, and hit the sack at about three. I was to tackle the NTFS and network problems the next day.

Flash to the next day, wherein FC3 fails to boot. You guessed it; the update the night before borked Linux, and borked it good. The machine would start up and initialize almost everything, but then the graphical environment would simply fail to load. I could Ctrl-Alt-F4 out of the broken graphical environment to a command line, but I'm not that good at the command line yet, and it was no help.

I'm convinced that it takes computers to build computers. Without another PC running and ready to Google its little heart out, I'd never make progress on a project like this. In about an hour, I had found other users with the same problem, and a workaround. I had to edit a config file. Not so hard, right? Not if you're in a graphical environment with root priveleges. But no graphics for me.

Fine, I said. That's what Knoppix is for. I booted to Knoppix, browsed to the necessary file, and...I couldn't edit it. I wasn't root. And Knoppix doesn't have a root password, you have to elevate yourself from a command line using the SUDO command and then give yourself a root password. But the command didn't work for me.

Fine, I said. That's what Ubuntu Live is for. I booted to Ubuntu, and had the same problem: No root, and no root password in the distro. Is there a workaround? You bet! See above. It didn't work in Ubuntu, either.

Fine, I said. that's what SimplyMepis is for. I booted SimplyMepis and was presented with a logon screen. Wha? The other two didn't have logon screens. I entered "root" as my user name, and "root" as my password, and I was suddenly root. Whew. After editing the necessary file and rebooting, FC3 worked fine again.

That's what I get for updating before bed. My fault.

Now the NTFS problem. Google was quick about this one, and mounting the NTFS drive was a relative breeze, taking only about 3 hours to get it to automatically mount with every boot. But then, no matter what I tried, I couldn't write to the NTFS partitions. Not as user, not as root, not when I stood on one leg and looked at it cross-eyed. I could see the files, execute them (not like you think, though), browse them, but I couldn't even create a new folder.

More research showed that many others have had the same problem, and it's just that way. You can mount an NTFS drive in Fedora, but you can't write to it. So stop asking.

I did find an outdated project that allowed reading and writing of NTFS drives, but it hadn't had development in more than a year, and it would require recompiling my kernel. No.

I re-formatted the drive as Ext3, got it to mount (you'd think that Linux would mount a new native file system automatically, but no), and moved on.

On to what? Networking, of course, and more specifically Samba. I knew the network card was working fine, because the Fedora box was online. I browsed web pages and updated the system (bad idea) from the internet. So I tried to browse my own network.

BARF! You have to start the service "Lisa" for Samba to work! Lisa was running. I checked. I rebooted. Same thing. I restarted Lisa over and over, but I still couldn't even begin to see my LAN. This was unexpected and very discouraging. Samba had worked without a hiccup in SUSE. I'd browse to DENTSERVER and it would pop up a logon box and off I'd go. But this was a problem.

Later, I told myself. MythTV still isn't set up. MythTV was coming along nicely, though. When it came to configuring my TV tuner card, I couldn't manage to get a picture. I found a guy online who had the same problems in Linux, but his card worked from Windows. He tweaked some configuration settings after finishing the MythTV install and it worked fine. I hadn't tried Windows yet, but I vowed to later and moved on.

I configured MySQL and set up the Myth Database. I got an account at Zap2It, for downloading TV listings automatically. I ran MythTVSetup, where I actually saw the blue MythTV user interface. This all happened miraculously in the span of about two hours.

The MythTV interface looks friendly, but it is not. It's probably not so bad when you have it configured to talk to a remote control rather than a keyboard, but you have to set it up with a keyboard because you have to type in settings, and it is seriously keyboard unfriendly.

I guessed at a few of the settings, and decided it was time to test if my tuner card worked in Windows. Reboot.

I ran the Hauppauge software in Windows. The card didn't work. It knew what channels I was supposed to receive, but it would only display a black screen. Hauppauge's support faq page says that this is a problem with using a video card that doesn't support the overlay function. The Radeon 7000 that's in the system does support overlay, and since it's not functioning in both Windows and Linux, I'm betting that the tuner card is defective.

The girl at ProVantage was a dream to work with, and she promised an RMA without giving me any trouble at all. I've bought from ProVantage several times before. Their prices have always been reasonable to excellent, and now I know that their support is good. I'll be buying from them more often.

I found that ProVantage has the Hauppauge PVR-500 MCE for only $8 more than the PVR-250 I had bought, so I ordered the 500 right away. The 500 is like the 250, only with slightly better graphics quality, dual TV tuners instead of single, dual hardware MPEG 2 encoders instead of single, and an added FM tuner built in. That's pretty impressive for an $8 upgrade.

The 250 came with an IR remote that I'll have to send back with it, and the 500 doesn't include a remote, but I have an RF remote from my ATI 9800 Pro AIW that I'm not using, and it will do fine. And it's a better remote anyway.

So here's where I'm at. Linux is just too hard. I've learned a lot in the last three weeks. And I mean, a lot. I've learned that Linux is very powerful, and yet very frail. Bruce Perens, an open-source advocate and Debian proponent, famously said:
"Well, let's just say, 'if your VCR is still blinking 12:00, you don't
want Linux.'"
And that's certainly true. And maybe even if it isn't blinking 12:00. I wanted Linux to replace my VCR, and I just don't think I can see it through. Frankly, this project has kicked my butt. I can take some butt kicking--I'm used to a certain degree of it, but I've really taken a beating, and I've had precious little reward from the process.

As much as I hate throwing in the towel, I've got certain tasks that I want this system to perform, and I'm not willing to sacrifice them just so that I can say that I run Linux on my PVR instead of Windows. Windows doesn't barf when I try to network it. Windows will let me read, write, and even share my NTFS drive.

And SageTV's users are saying a lot of very nice things about SageTV. I suppose a rather substantial bribe could get me considering the Linux option again. It's not too late...I haven't formatted the Fedora partitions yet. But I'm going to.

I gave Linux an honest, hardcore effort. More effort than I'd give most other projects. I've really worked hard on this one, and part of me doesn't want to let all that work go. Oh well.

There will be further updates. I've given up on Linux, but not the whole project.

1 comment:

  1. Writing to NTFS drives seems to be a problem for all non-Windows OSs (actually, non-native NTFS drives). I'm unclear on just why no one else has learned to write, but it's a problem. One workaround (and not a viable one, considering the other problems you've had) would be to write files to a networked drive (thereby letting the remote machine write to whatever formatting it is comfortable with). That does require both computers to talk to each other.