OpenSUSE 10.0 + MythTV

Your Guide for Installing SUSE 10.0 on x86-64 and MythTV

1.13 - I need a few developers for a project I've cooked up - Details here.

Lost? Looking for -

I'll warn you now - installing MythTV on SUSE 10.0 is no quick job. As I write this guide, there are still problems with some of the associated modules that simply will not install on an x86-64 installation. When I get these sorted out, I'll immediately update the guide. For now, I can get you at the least a working MythTV installation with almost all the modules installed with the exception of MythBrowser, MythMusic, and MythGallery. That can easily be done within an hour or two, depending on your speed. If I can work out the problems with gcc (see my link here) - we can get all of the modules installed. But I warn you now - make TWO pots of coffee, get settled in your chair, and get ready to do a lot of ./configure, make and make install. There will be no rpms to save you yet (at least, not until I get this guide out and I start work on actually creating the rpms.) and you'll be doing a substantial amount of work to get it going. SUSE has done well in helping us out - the ivtv drivers are now integrated into SUSE 10.0. However, even using apt to resolve dependencies is problematic, and a lot of prerequesites must be compiled and installed from source. I'll do my best to show you the way to get it done quickly and with the least amount of pain as possible. Due to all the work I'm doing (two jobs, 20 credits of school), I won't be able to reply as quickly as normal, but if you have any problems or questions, contact me here.

-Chris

Step 1 - Install SUSE 10.0 x86-64

This doesn't get much harder than putting the DVD in and following the menus. Out the door it took me something like 20 minutes to transfer all of the packages for the install (around 2.3 GB) and then 10-15 to sort out all of the configuration. But downloading the DVD can be a royal PITA. I opted to use Houghi's script makeSUSEdvd, which will create you a DVD using the ISOs of all 5 CDs. It's a lot easier to download the ISOs individually (about an hour for each CD - if you play your cards right and run all five downloads concurrently, it'll take an hour/hour and a half to get them all downloaded. The RPM is available via SourceForge, and the only prerequesite is a yast RPM that you can find on any SUSE 9.x distribution. You could use BitTorrent to download and seed for the others, but I found it to be incredibly slow (maybe because people don't seed - I don't know, but I could never get the downoads as fast as I wanted them - no seeders? :( ). Your call - but I recommend the 5-CD/makeSUSEdvd route.

Before you start the install, make sure you add a few packages to make things later on a bit easier. Here's a list of what I added to my install:

* - Install using apt

This is just a smattering of what I installed - more RPMs are installed to "resolve dependencies". But these are going to be needed, and you'll have to select these in order to get started as soon as the install completes. Apt won't be used as much as it is in the i386 install (You can't easily resolve prerequesites in x86-64 with apt like you can with i386), but it does come in handy for a few things. Use apt to grab MPlayer and it's associated preqrequesites - it's a hell of a lot easier than compiling from source.

Complete the install - configure your hardware correctly, and perform the online update to grab Nvidia drivers and to update software (May as well take care of it now.) Before you start your SUSE box for the 1st time, I'd advise checking the box that says Start YaST Control Center and then clicking Next We can easily change a few settings before we start SUSE for the first time and not worry about having to alter them later.

First, head to the System tab and open System Services (Runlevel). In Simple Mode, make sure that mysql is enabled. If it isn't (by default, it isn't), enable the service. After this is done, go to Network Services -> NTP Client. Find an NTP Server close to your location and it is online by testing the server. I've enabled it at boot, which will automatically update when I boot. You'll get a warning about problems at startup if you don't have a permanent internet connection, but at worst you'll encounter some sort of error at boot and nothing else. It helps to have the NTP Client up and running - it'll keep the program guide as close-to-ontime as possible. After this configuration is complete, you can exit YaST and continue on to installing MythTV

Step 2 - Configure ivtv

Thankfully, ivtv drivers have been folded into SUSE 10.0. This makes our job a lot easier. But you'll still need to pull down the firmware. From what I've gathered, the drivers used in SUSE 10.0 came from ivtv version 0.3.7. That release has it's own set of firmware, which I have mirrored here. You'll also need the ivtvfwextract tool, which I am also mirroring here. Use the tool to pull the firmware out of the .exe file. Become root and execute-

# ./ivtfwextract /path/to/firmware

# mkdir -p /usr/bin/hotplug/firmware

# cp /lib/modules/*.bin /usr/bin/hotplug/firmware

# modprobe ivtv

# dmesg | grep ivtv

From here, look at the dmesg output to make sure the card was initialized properly. You can go into YaST and further setup the card. Go to TV cards and you'll see your PVR-x50 listed. In YaST you can change tuner settings (such as tuner type) as well as setup which sound card is connected to your PVR-x50. However, installing the firmware and doing the modprobe is good enough for us. Continue to the next step.

Step 3 - Getting MythTV

At press time, there is no new release of MythTV available - the most recent release is 0.18.1, which I covered in the last guide. But the relase does not work on x86-64. You'll run into issues compling, and as a result will never be able to get past a simple make. RPMs are no help - yet - I'm going to try my hand at writing some RPMs for x86-64. Oystein Olsen's RPMs will not help you either. You'll need to get Subversion and check out the latest version in development. First, download my sources.list here, and copy it to your own sources.list, located at /etc/apt/sources.list. After you do this, run (as root) -

# apt-get update

To update apt with the latest info from the repositories. Once you have done this, you can simply run (still as root) -

# apt-get install subversion

Once it has completed the install, execute the following code to get the development version of MythTV. (In the directory of your choice) -

$ mkdir mythtv-svn
$ cd mythtv-svn
$ svn co http://svn.mythtv.org/svn/trunk/mythtv
$ svn co http://svn.mythtv.org/svn/trunk/mythplugins
$ svn co http://svn.mythtv.org/svn/trunk/myththemes

From here, we do (note that you should be within the /path/to/mythtv-svn directory) -

$ cd mythtv //Change to MythTV directory
$ ./configure //Configure the makefile
$ qmake mythtv.pro //Create the makefile
$ make //Make
# make install //Install (as root)

That takes care of the MythTV installation. This should go off without a hitch, and you'll have at least a working MythTV installation. From here, do this -

$ cd docs
$ mysqladmin -u root password # your password here#
$ mysql -u root < ./mc.sql -p
$ cd setup
$ ./mythtv-setup

This will start the setup process. The first lines will give the root user a password in mysql, while the s second line of code inserts/starts the mythconverg database. Then you'll start the mythtv setup. The setup has changed somewhat, but it's really easy. Follow all of the onscreen instructions and you'll be done before you know it. Run mythfilldatabase and then start the backend by running mythbackend. Start mythtv with a simple mythfrontend.

Adding mythbackend to System Services

WARNING: I take NO repeat NO responsibility for the code I distribute. This isn't as much a "I don't care about my users" as it is about "I'd rather not get sued". You can blame litigious America for this. In the mean time, if this code trashes your linux install, destroys your computer or otherwise kicks your puppy/pisses in your cornflakes, I assume ZERO LEGAL LIABILITY. This code worked for me, but use it at your own risk...If you feel sufficiently warned, continue to the next portion of this guide.

It's a pain not to have the backend service listed in System Services. But there is a solution to this problem. I did a bit of digging and realized that I could write an rc script that would handle startup/shutdown tasks automagically and be listed within YaST. I'm distributing this script here. Save/move the file over to /etc/rc.d and execute the following commands -

/etc/rc.d # chmod 744 mythbackend
/etc/rc.d # insserv mythbackend

This takes care of that. You may see some odd popup upon login asking for the root password - so far I've cancelled it without harm. I don't quite know what it is yet, but I'll try to see if I can get this taken care of.

Step 4 - LIRC support

It appears as if my reciever/remote has mysterious died. This will be incomplete until I can sort this out. Sorry

This isn't hard. If you've already installed lirc, continue. Otherwise, go back into YaST and install lirc. From here, we do the following.

 eXTReMe Tracker

Valid HTML 4.01 Transitional