User:Glennedavis

From MythTV Official Wiki
Jump to: navigation, search
This page is incomplete!
The text of this page is still being filled in and is currently based on Fedora Core 6/x64.

This "How To" guide is for installing MythTV on the latest x64 release of Fedora, which is currently Fedora 11.

Introduction

This guide is shamelessly based on Jarod Wilson's how to guide which you can find here

With the way that opensource development is constantly changing, a guide that could keep up with the changes was needed. Being that this guide is in the wiki format and capable of receiving full community attention, the guide will change along with the release of Fedora as well as all other software packages that go together with making MythTV the greatest TV time shifting product in the world.

You are welcome as a MythTV user and general wiki participant to add/modify this document that will help the community the best way possible.

Hardware

This guide was originally generic with regard to hardware. I'm finding, though, that my configuration was sufficiently unique to warrant a discussion of hardware on which I'm running MythTV and what I needed to do to get it working.

  • Motherboard
    • ASUS A8N32-SLI Deluxe
      • Dual on-board NICs
        • Marvel
        • NForce4
      • On-board 8-channel audio
        • Realtek ALC850
      • 8 on-board USB ports
      • Firewire
  • Processor
    • AMD Athlon XP 64 dual-core 4400+ processor
  • Video
    • eVGA Nvidia 7300
  • Disk (837 GiB total)
    • Seagate 279 GiB SATA drive
    • Seagate 279 GiB SATA drive
    • Seagate 279 GiB SATA drive
    • Pioneer 16x dual-layer DVD-R/W
  • Memory (2 GiB total)
    • 1 GiB RAM DIMM
    • 1 GiB RAM DIMM
  • Case
    • Thermaltake Mozart II
    • Thermaltake MediaLAB kit
      • Soundgraph iMon VFD
      • Soundgraph iMon-PAD remote
  • Powersupply
    • Thermaltake 550
  • Tuners
    • pcHDTV HD5500
    • pcHDTV HD5500
    • Firewire to Comcast DCT-3412 cable STB

Getting Fedora

ISO Images

The latest version of Fedora can be downloaded from the Fedora Core Download Page.

Physical Media

CD and DVD discs can be purchased from online and local vendors.

Installing Fedora

Filesystems

The 2.6 kernel series includes several journaling file systems, some of which are more suited for use with large files 'like Myth recordings' than Red Hat's default file system, ext3.

In order to use a different file system at install time when loading the Fedora Core install CD/DVD you type in:
boot:linux jfs
Where you could replace jfs with reiserfs or xfs.

Among the MythTV community it is highly recommend to use a custom partitioning scheme rather than auto-partitioning, with a dedicated /mnt/store (or similar) partition for storage of all your recordings.

Previously, XFS was Jarod Wilson's recommendation for the file system to use for such a purpose, but some additional stability issues with using XFS on Fedora Core's stock kernels have been brought light. In the case where you're stacking software RAID, LVM and XFS all together, stack overflows tend to crop up. JFS is becoming the more recommended file system, so boot the installer with "linux jfs", then choose JFS for your /mnt/store partition.

ReiserFS is also an option, though it is believed JFS performs a bit better (XFS is even better still, at least, when its stable...). An example partitioning setup can be found below.

Partition Mount Point Size Format
/dev/hda1 /boot 200MB ext3
/dev/hda2 swap same as RAM (ex: 512MB) swap
/dev/hda3 / 8-12GB ext3
/dev/hda5 /mnt/store Everything else jfs

At the Installation Type screen, you want to choose a Custom installation (rather than Personal Desktop, Workstation or Server), because none of the defaults give us everything we need and/or add junk we don't need.

On the Disk Partitioning Setup screen, choose to Manually partition with Disk Druid. A suitable custom partitioning setup is as follows (assuming a single IDE hard drive):

Be sure to choose JFS (or XFS or ReiserFS) as the partition format type for the /mnt/store partition, as the selection will default to ext3. Note that there's really no point in using anything but ext3 on / and /boot. Red Hat tests ext3 heavily, its the only one that is pretty well guaranteed to be problem-free for / and /boot. Those expecting to add additional hard drives to their system for more video storage might want to set the partition type for hda5 to LVM, then create a logical volume over the top of it, formatted JFS. That'll allow you to increase the size of your /mnt/store partition transparently across multiple drives. Details on how to do that can be found in the official MythTV docs, at http://mythtv.org/docs/mythtv-HOWTO-23.html#ss23.3.

Network Configuration

On the Network Configuration screen, it is highly recommend setting a static IP address (could either be truly static, or a staticly mapped DHCP address). It really isn't a huge deal if you only have one Myth box (though you probably don't want MythWeb to be a moving target), but it could cause major headaches once you have more than one machine, since non-primary systems wouldn't know where the master backend was anymore if the address changed.

Package Selection

On the package selection screen, select (at least) these package groups

  • X Window System
  • KDE Desktop Environment
  • MySQL Database (be sure mysql-server is selected under the "Details" section)
  • Web Server (if you want to use MythWeb)

Some other packages that might be of interest, but are not required:

  • Graphical Internet
    • Gaim
    • Firefox (very handy for following this very guide -- think copy and paste)
  • Sound and Video
  • Windows File Server
  • Network Servers
    • vnc-server
  • Development Tools (if you want/need to compile anything)

As suggested on the MythTV site, we're going to use KDE as our X environment for running MythTV. If you happen to be running another window manager, you can fire up a terminal session, and issue the command:

$ switchdesk KDE


First Boot

At this point Fedora Core 6 will ask you to remove the disc from the drive and reboot the system. Once your system has finished rebooting you will be prompted to accept the license agreement and a few more installation configuration options.

Firewall

A basic MythTV box should not have any problems running with the firewall turned on. However you will probably save yourself a lot of headaches if you disable it completely. This is especially recommended for new users. If you do need to enable the firewall, you will at the very least want to enable SSH, Secure WWW (HTTPS) and WWW (HTTP) checkboxes to enable those services.

If you plan to run separate front end and back end servers you will need to allow those ports through on under "Other Ports".

SELinux

It is strongly recommended that SELinux is disabled or run in "permissive" mode. There are a few things that will not work properly if you have SELinux such as ResierFS and the MythWeb plugin. If you think you might want to run in SELinux mode in the future, choose the permissive mode which will only warn you of problems. This will enable you to turn SELinux mode on quickly and easily turned on at a later time.

Date/Time

Here you should adjust the date and time of the machine to the current date and time. Once you have done this, select the "Network Time Protocol" tab and select the "Enable Network Time Protocol" checkbox.

Display

The Setup Agent should have detected your video card and your monitor. Select the screen resolution that is best for your monitor.

System User

Create a user on the system with the username "mythtv". You can set the password for this user to anything you want. This should be be a Strong Password that is different than the root password.

Sound Card

From the Sound Card screen you should see your sound card and be able to play a test sound. If your sound card is not showing up, your sound card may not be supported. It is possible to manually configure Fedora to use unsupported sound cards, but that is out of the scope of this document.

Fedora Setup

The next section will require you to be logged in as the mythtv user. Some commands will need to be executed from the command line. You can run commands with the "Konsole" program. To start Konsole, right-click on your desktop and select "Konsole..." and a new Konsole window should appear.

Some commands will need to be run as mythtv and some commands will need to be run as the root user. The boxes below will indicate with a prompt which user a command should be run as. Commands with a "$" prompt should be run as the mythtv user. If you see a command that starts with a "#', you will need to use the su command to become the root user.

To execute commands as the root run "su -" and enter the root password you set when you installed Fedora.

[mythtv@myth ~]$ su -
Password:
[root@myth ~]#

Notice the way the username changes from mythtv to root and the prompt changes from "$" to "#". Be sure you run all of the following commands as the correct user. If you do not, you will likley run into problems sooner or later. To become the mythtv user again, type "exit".

[root@myth ~]# exit
logout
[mythtv@myth ~]$

Your screen should clear, and your prompt will be a "$" sign again. If this is not the case, keep typing "exit" until it is.

Update Fedora

To get your system fully updated, simply run the command:

# yum -y upgrade

When you see the Transaction Summary, you will need to press "y" to begin downloading the packages.

Transaction Summary
=============================================================================
Install      1 Package(s)
Update      29 Package(s)
Remove       0 Package(s)
Total download size: 16 M
Is this ok [y/N]: y

Since this is your first update you will also need to import the GPG key when prompted. You should only need to do this once.

Retrieving GPG key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora
Importing GPG key 0x4F2A6FD2 "Fedora Project <fedora@redhat.com>"
Is this ok [y/N]: y
Key imported successfully

Kernel Upgrades

  • Note: Fedora Core 6 is currently shipping with kernel, 2.6.18-1.2798.fc6 but should be updated with the newest one.

Among the packages upgraded just a minute ago with yum should be your kernel, to the very latest errata release, be that the single-processor one or the smp one. Additionally, your boot loader should have been automatically updated to use the new kernel, so all you need to do is reboot to start using the new kernel, which you'll want to do in just a minute. As of this writing, 2.6.18-1.2849.fc6 is the latest released errata kernel.

Generally speaking, you should always install the latest errata kernel, shortly after the release of which Axel should have all the needed kernel modules available. Kernel modules are NOT maintained for older kernels, because of two things. First, a new kernel from Red Hat usually fixes some flaw in earlier kernels (security hole or bug fix), so its good practice not to use the flawed kernel and second, building kernel modules for every kernel would take forever and a day and cause assorted other headaches for Axel. To make providing kernel modules feasible, only the very latest one or two kernels are supported.

To make life simpler after we've rebooted and are prepared to start installing drivers for some of our hardware not supported natively by the kernel, we're going to set up a custom environment variable, KVER, that will help avoid problems from typos, user error, confusion, etc. Simply drop a file in /etc/profile.d, like so:

# echo "export KVER=\`uname -r\`" >> /etc/profile.d/kver.sh
(those are back-ticks, not single-quotes)

Now you're ready to reboot into that new kernel and start installing kernel modules for your tuner card(s), remote, etc.

# reboot

Configure package repositories

Configuration of yum is needed to use ATrpms and FreshRPMs package repositories. This is a simple matter of adding a configuration file for each repository in /etc/yum.repos.d/. Pre-configured files can be created by copying and pasting the following into a root shell.

 # cd /etc/yum.repos.d/
 # wget http://wilsonet.com/mythtv/atrpms.repo
 # wget http://wilsonet.com/mythtv/freshrpms.repo
 # rpm --import http://ATrpms.net/RPM-GPG-KEY.atrpms


Generally, any problems encountered with ATrpms and ATrpms packages should be addressed on the atrpms-users mailing list before being taken to the MythTV list. You can subscribe to the ATrpms lists here.

As with any other mailing list, please search their respective archives first.

Install Video Card Drivers

Axel has simplified the packages for installation of the nVidia graphics binary drivers. To install the nVidia drivers from ATrpms, please use this command:

# yum -y install nvidia-graphics

Audio Setup

The KDE sound server, aRts does NOT work well with MythTV in many cases, though work has been done recently to remedy that. It is still highly recommended that you disable aRts from starting up if you encounter audio problems. To do so, while logged in as mythtv user, choose "Control Center" off the Fedora (Red Hat) menu. Navigate through "Sound & Multimedia" to "Sound System" and deselect "Start aRts soundserver on KDE startup" ("Enable the sound system" on KDE 3.3 or later) and then click "Apply". On subsequent logins, aRts will not launch.

Note: outside of setting your audio mixer levels, this step is not essential. Just set your volumes with the mixer program of your choice and move on to the next step if you like. ALSA is the default sound system in the 2.6 kernel, so you've already got it, and your sound card should have been auto-configured during firstboot. If you have some flashy new card, there's a chance you might need a newer ALSA version, which ATrpms does provide. Those wanting to install the latest ALSA packages from ATrpms should do so with these commands:

# yum install alsa-kmdl-$KVER
# yum install alsa-driver 

For multiple sound cards an edit of /etc/modprobe.conf file is needed for a specific card. Details for supported cards can be found here.

Included below is a excerpt of an /etc/modprobe.conf ALSA configuration, which is for a SoundBlaster Audigy sound card. This should be valid for SB Live! and Audigy2 cards as well.

If your card isn't one of those, check out the ALSA site's sound card matrix to find information for your card. The differences are very minor for most cards, and usually only the driver name has to be changed. For example, to configure ALSA for use with the onboard audio of an nForce2 board, it should be a simple matter of replacing all instances of "emu10k1" in the following modprobe.conf and .asoundrc with "intel8x0".

# Example modprobe.conf entries for my Audigy
alias snd-card-0 snd-emu10k1
install snd-emu10k1 /sbin/modprobe --ignore-install snd-emu10k1 && /usr/sbin/alsactl restore >/dev/null 2>&1 || :
remove snd-emu10k1 { /usr/sbin/alsactl store >/dev/null 2>&1 || : ; }; /sbin/modprobe -r --ignore-remove snd-emu10k1 

Below is a modeprobe.conf ALSA snippet example for a dual sound card system with a SoundBlaster Audigy and nForce2 onboard (i810) audio.

#Example modprobe.conf entries for Audigy and nForce2 onboard (i810) audio
alias snd-card-0 snd-emu10k1
options snd-card-0 index=0
install snd-emu10k1 /sbin/modprobe --ignore-install snd-emu10k1 && /usr/sbin/alsactl restore >/dev/null 2>&1 || :
remove snd-emu10k1 { /usr/sbin/alsactl store >/dev/null 2>&1 || : ; }; /sbin/modprobe -r --ignore-remove snd-emu10k1
alias snd-card-1 snd-intel8x0
options snd-card-1 index=1
install snd-intel8x0 /sbin/modprobe --ignore-install snd-intel8x0 && /usr/sbin/alsactl restore >/dev/null 2>&1 || :
remove snd-intel8x0 { /usr/sbin/alsactl store >/dev/null 2>&1 || : ; }; /sbin/modprobe -r --ignore-remove snd-intel8x0 

Next, create a .asoundrc file for the mythtv user (full path of /home/mythtv/.asoundrc). Technically, this isn't necessary, but it can help out quite a bit in some cases (especially if you're outputting via an S/PDIF connection), and can't hurt. Anyhow, just make a new text file called .asoundrc like so, adjusting for your specific card, substituting for "emu10k1" where necessary:

$ cat > ~/.asoundrc
pcm.emu10k1 {
type hw
card 0
}

ctl.emu10k1 {
type hw
card 0
}
(Now hit Control-D to end cat input) 

Start the audio controller of your choice (aumix, alsamixer, kmix or gnome-alsamixer) and adjust the volumes, inputs and outputs to your liking.

A simple way to test whether or not you've got sound is to use ALSA's aplay utility, like so:

$ /usr/bin/aplay /usr/share/sounds/KDE_Startup.wav 

Install MythTV

Now, here's why we REALLY like yum... MythTV has numerous required dependencies to function correctly, which are automatically taken care of with one simple command:

# yum install mythtv-suite 

Install Capture Card Drivers

Before installing any capture card drivers, add the mythtv user to change permissions on the dvb devices. Add user mythtv to a new group called video. Change permissions on the dvb devices to allow any users in the video group to r/w the dvb devices:

# chown root:video /dev/dvb/* -R
# chmod g+w /dev/dvb/* -R

Install the firmware for the HD-3000 card:

# wget http://www.pchdtv.com/downloads/firmware.tar.gz -P /lib/firmware
# tar -xzf /lib/firmware/firmware.tar.gz -C /lib

Install LIRC

To install the LIRC drivers, use this command:

# yum install lirc-kmdl-$KVER lirc

Copy the Lirc config file from the docs folder to the correct name in /etc. If you are not using the Soundgraph iMon remote (or the Thermaltake Media LAB remote), find the appropriate remote config file and copy that instead.

# cp /usr/share/doc/lirc*/remotes/imon/lircd.conf.imon-pad /etc/lircd.conf

Copy the lircrc.example file and edit it.

$ cp /usr/share/doc/mythtv*/configfiles/lircrc.native.example.hauppauge ~/.mythtv/lircrc

Jarod Wilson has these additional steps to provide for loading of lirc modules (Thanks Jarod)

# cd /etc/sysconfig/modules/
# wget --no-check-certificate https://svn.wilsonet.com/svn/mythtvology/trunk/lirc.modules
# chmod +x lirc.modules

When everything is configured and tested, enable lircd to start automatically:

# chkconfig --level 5 lircd on

Setup MySQL

We'll need to enable MySQL to load at startup, set some passwords, and create the MythTV database, which we'll populate shortly. The population of this database is handled by mythtvsetup in the next step, and all MythTV add-on module database additions must be done AFTER running mythtvsetup at least one time.

# /sbin/chkconfig mysqld on
# /sbin/service mysqld start 

Set the mysql root password, replacing ROOT_PWD with your chosen administrator password:

# mysql -u root mysql
mysql> UPDATE user SET Password=PASSWORD('ROOT_PWD') WHERE user='root';
mysql> FLUSH PRIVILEGES;
mysql> quit

Now we create the mythtv database (called mythconverg) to get us started:

$ mysql -u root -p < /usr/share/doc/mythtv-0.20/database/mc.sql
(enter the password you just set above when prompted)

Again, all subsequent database population for MythTV's add-on modules must now be done AFTER running mythtvsetup at least one time. And if you get an error that looks like this...

ERROR 1064 at line 4: You have an error in your SQL syntax near 'TEMPORARY TABLES ON mythconverg.* TO mythtv@localhost IDENTIFIED BY "mythtv"' at line 1

...you are probably running MySLQ 3.x and probably aren't running Fedora Core 4 (or later), but you can safely ignore it. Everything got created just fine, that syntax is for people using MySQL 4.x, which FC4 and later use. No real discernable difference bewteen 3.x and 4.x though, until you tweak your MySQL config a bit. It's worth customizing some parameters in /etc/my.cnf for optimal performance with Myth.

These adjustments to my.cnf under the [mysqld] section improve performance with both MythTV (esp. in the GUI) and MythWeb:

key_buffer = 16M
table_cache = 128
sort_buffer_size = 2M
myisam_sort_buffer_size = 8M
query_cache_size = 16M 

Setup MythTV

Since we running the current NVidia drivers, we need to tell Xorg to use the assumed 100dpi settings on the display. Add this to /etc/X11/xorg.conf :

Section "Monitor"
	Option "UseEdidDpi" "FALSE"
	Option "DPI" "100 x 100"
EndSection

To turn on XvMC (Xvideo Motion Compensation, which allows hardware MPEG-2 support from your Nvidia video card)

# echo libXvMCNVIDIA_dynamic.so.1 > XvMCConfig

Setup for Soundgraph iMon LCD panel

The Soundgraph iMon LCD panel is also marketed by other companies, including Thermaltake as part of their "MediaLab Kit".

This should be added to the end of /etc/modprobe.conf

/sbin/modprobe lirc_imon
echo "/usr/local/sbin/LCDd &" >> /etc/rc.local

Setup Fonts

There's a bug in Fedora Core 6's urw-fonts package that causes some fonts (in particular, Courier) to display much larger than they should. Details on how to fix this can be found here.

Setup TV listings

Recall what your video device was set up as (likely /dev/dvb/adapter0 or /dev/video0). Note that the actual device number is not what determines what order MythTV will use your cards in. What matters is the order that you enter them in mythtvsetup, so your best card doesn't have to be /dev/video0. Set up /dev/dvb/adapter1 first, and it'll be the first card used for recordings.

You will also need your zip code and it would help to know the right listing from http://labs.zap2it.com/ (for US users, other countries use different listings sources) that matches your service provider, so xmltv gets the right program listings. US folks will also have to fill out some paperwork to use zap2it's new xml data feed listings (the only way to go now). See this page in the MythTV docs for details.

Run this to generate the icon map, which allows the icons to display on-screen:

$ perl /usr/share/doc/mythtv-*/contrib/mkiconmap.pl
$ mythfilldatabase --import-icon-map iconmap.xml --update-icon-map

Now on to launching the MythTV setup utility. For this part, you need to have an X session started up, as the setup utility is an X application. Fire it up like so:

$ mythtvsetup 

I'm told that non-US folks may have issues correctly getting through the tv_grab_xx/xmltv part of the setup if "focus follows mouse" is already set (in KDE's Control Center), so keep that in mind. Just set "focus follows mouse" when everything else is already configured.

If you receive an error involving permissions on a .so library, you may have SELinux installed and preventing you from accessing these libraries. You can either turn off SELinux, or allow access to the libraries with the following command as root:
# chcon -t texrel_shlib_t /usr/lib/libmyth*.so*

It is highly recommended that you go through the setup steps in order. Follow the on-screen instruction, with aid from the MythTV website's documentation on this page.

NOTE: your system may appear to hang at step 3; give it time, it isn't locked up, that part just takes a while!

Once you've gone through the setup, you have to populate the MythTV database with some program info. I spent a good long time tweaking my channel lineup on zap2it's site to remove all the junk channels I didn't really care to have show up. Once you have your listings to your liking, you're ready to fill your database with programming info. As of MythTV 0.17, MythTV requires that you start up mythbackend first. We'll daemonize it a bit later, but for now, just start it up like so:

$ mythbackend & 

Assuming all goes well and the process doesn't exit on you (if it does, check out the troubleshooting section below), lets get some guide data:

$ mythfilldatabase 

If you're using a guide data source other than zap2it (i.e., anyone outside the US and Canada), I'm told that you may well need to add a "--manual" flag to the end of that command to get it to work. Look at the output of "mythfilldatabase --help" for more clues if you have problems.

Also, BE PATIENT! This step can take a fairly long time, depending on your internet connection speed and how many channels your service provides... To get automatic updates of programming data daily see below for configuration in mythfrontend.

Now start up the MythTV front-end (I recommend doing this in a separate shell window, so you can distinctly see the different output for the backend and frontend processes)...

$ mythfrontend 

Audio

MythTV's default sound system is OSS (Open Sound System), which is obsolete. Myth also supports ALSA (Advanced Linux Sound Architecture), which is the default sound system in FC6. To use the ALSA, enter ALSA:default for the audio device and use default for the mixer on the audio setup page.

It is recommended to use the built in features of MythTV to have mythfilldatabase updated automatically. After starting up mythfrontend, enter the Setup>General screen and advance to "Mythfilldatabase", the fourth screen. Select the checkbox, then complete the options as you see fit. If using Zap2It for programming data, selecting the option to allow the scheduler to recommend the next mythfilldatabase option and changing the allowed update time to be from 0 to 24 is best as it allows Zap2It to balance the load on their servers. After setup the mythbackend program will now run mythfilldatabase for you.

Configure Startup

The necessary init script for the MythTV backend to automatically start at system boot is already in place for you, just simply turn it on:

# /sbin/chkconfig mythbackend on

If the backend isn't already running, save yourself a reboot and issue this command:

# /sbin/service mythbackend start 

Now, because I have a few things that don't seem to want to play nice anymore (i.e., nvidia-settings don't load like they should, alsa volume levels aren't restored), I decided to create a quick little shell script in ~/.kde/Autostart/myth-load.sh to handle loading up all the extra goodies I need/want to auto-start, as well as force stubborn things to work. This script loads my nvidia settings, restores alsa volumes, launches irexec for my little power button script (on the Tips 'n' Tricks page), then launches mythfrontend, all in one fell swoop. Just copy and past all this into ~/.kde/Autostart/myth-load.sh (adjust accordingly for different desktop environments):

#!/bin/bash

# Only do this stuff if we're on the main display
# (i.e., don't do this in a vnc session)
if [ `echo $DISPLAY | grep -c ":0"` -ge 1 ]
then
    # Load nVidia driver custom settings
    nvidia-settings --load-config-only &
    # Restore audio settings
    /usr/sbin/alsactl restore
    # Launch irexec for myth power button stop/start
    irexec &
    # Launch myth frontend
    mythfrontend &
    # Disable dynamic power management (screen blanking)
    /usr/bin/xset -dpms
    # Disable screen saver
    /usr/bin/xset s off

    # Start Myth transcode daemon
    mtd -d

    plugctl -n 0 oPCR[0].n_p2p_connections=0
    plugctl -n 0 oPCR[0].bcast_connection=0
    plugctl -n 0 oPCR[0].data_rate=2
    plugctl -n 0 oPCR[0].channel=0
    plugctl -n 0 oPCR[0].n_p2p_connections=1
fi
exit 

Don't forget to make it executable:

$ chmod +x ~/.kde/Autostart/myth-load.sh 

While logged in to an X session, you'll also have to run gdmsetup, to set autologin for your mythtv user. You'll have to get a root terminal open (if you aren't logged into your X session as root already, which is a no-no), then:

# gdmsetup 

In GDM Setup, on the first tab ('General'), you should see a section "Automatic login". Check the box for "Login a user automatically on first bootup" and select your mythtv user from the popup menu. Alternatively, if you are not very comfortable with Linux just yet, and you suspect there may be occasions where you've mucked something up to the point that an auto-login will lock up the computer, you might not want to use Automatic Login. Instead, you might opt to use the "Timed Login" option, to log the mythtv user in a few seconds after the login screen first appears. This way, you can circumvent the mythtv user logging in, and log in as root to hopefully correct whatever you've broken.

NOTE: if you installed the packages from kde-redhat, they probably supplanted gdm as your display manager and put kdm in its place. I like the look of Red Hat's gdm much better than kdm, so I changed it back by editing /etc/sysconfig/desktop and setting "DISPLAYMANAGER=GNOME". Not that you should be seeing the login screen often, my box is always sitting there logged in with the Myth UI up. Maybe I'll add some kdm info in a bit...

Anyhow, I recommend setting the Kicker (the panel at the bottom of the screen) to auto-hide, so it doesn't end up on-screen during video playback, disabling the screen saver, and disabling any monitor-related dynamic power management, or you may not be able to wake your system up if you don't have a mouse and keyboard connected. You can use the KDE Control Center to disable your screen saver, and edit your xorg.conf file to disable dpms (or at least the screen blanking parts). Note that the above myth-load.sh script actually issues a pair of commands at login time that should also disable dpms and the screen saver, but you can turn it off everywhere you can to be sure...

And finally, to turn on auto-hiding of the Kicker, right-click on the Kicker, choose 'Configure Panel...', then select the 'Hiding' tab, and select the radio button for 'Hide automatically'.

Configure MythTV add-ons

MythArchive

MythBrowser

MythControls

MythDVD

MythFlix

MythGallery

MythGame

MythMusic

MythNews

MythPhone

MythVideo

Remote Control

The remote control discussed here the the Soundgraph iMon PAD-new remote control that is supplied as part of the Thermaltake MediaLAB kit. The MediaLAB kit includes the Soundgraph iMon IR receiver and VFD display, which interface via an internal USB header attached to the motherboard.

The PAD (similar to a Tivo remote's directional pad) is the trickiest part of the remote configuration, as it is designed to respond like a mouse, with many return codes for the direction and pressure applied to the pad.

Nvidia display

XVmc

MythWeather

MythWeb

Upgrading Your System

Upgrading your MythTV installation to a new release is fairly straight-forward. As of MythTV 0.13, all database changes are handled automagically, so you merely have to upgrade your mythtv rpms when they become available. Occasionally, driver updates are also required (such was the case with the ivtv driver when upgrading to MythTV 0.13, and PVR-350 output in 0.14+ required ivtv 0.1.9+). The basic upgrade process should be as simple as:

# yum install mythtv-suite 

Note that this will NOT suffice to upgrade all sub-packages in the event of an updated build from ATrpms of the same major version. In other words, say 0.18.1-115 packages are released with some bugfix not in 0.18.1-114 (-114 and -115 are ATrpms build numbers), but mythtv-suite is already satisfied w/0.18.1-114 (mythtv-suite only needs 0.18.1 packages of any build number), so you'll have to specify all components manually (rpm -qa | grep myth for a list of 'em). If a driver update is required, you may need to:

# yum install <somedriver>-kmdl-$KVER <somedriver>
(<somedriver> could be ivtv, lirc, nvidia-graphics, etc.)

A general note about upgrading and installing rpm packages: you should never use --nodeps to install or remove a package. If you can't get around using --nodeps, there is likely a packaging problem, which you should report upstream, to have it fixed. A tanked rpm database can do Very Bad Things™ to your system, and recovery is sometimes impossible. Try 'yum check' to verity its integrity, should you happen to have committed the --nodeps sin in the past.

Upgrading your kernel is a little bit more involved than upgrading only MythTV, because all custom kernel modules, both rpm-installed and source-installed, will have to be updated also. Kernel modules carry two different versions, one for the kernel they are for (the 'kernel version') and one for the actual module itself (the 'module version'). Everything but kernels and their matching kernel modules get upgraded automatically by 'yum upgrade'. However, note that cases where the kernel version on a kernel module remains the same, but the module version is incremented, an 'yum upgrade' will upgrade that kernel module. Essentially, you really only need to take extra measures when upgrading your kernel, as everything else gets handled automatically.

When you do come to a point where you need to upgrade your kernel, one of the nice features of installing from packages, rather than source, shows itself. For all the ATrpms kernel modules, you can simply type in the command...

# rpm -qa {alsa,ivtv,nvidia-graphics,lirc}*

...to get a full list of all the kernel modules you have installed on your system. With that list in hand, you can now install your new kernel, along with all the corresponding updated kernel modules. For example:

# yum install kernel#2.6.15-1.1831_FC4
# yum install {alsa,ivtv,lirc,nvidia-graphics7676}-kmdl-2.6.15-1.1831_FC4

You can also uninstall an older kernel and its kernel modules with a single command:

# yum remove kernel-<oldversion>

Troubleshooting

First and foremost, READ THE OFFICIAL DOCUMENTATION! Specifically, the page on Troubleshooting. Second, search the MythTV users and MythTV developers mailing lists to see if this isn't already a known problem that might be fixed in CVS or have a work-around. Third, check out the MythTV Wiki, which also contains quite a bit of valuable information. Fourth, take a look at ATrpms Bugzilla and the Fedora Myth(TV)ology Wiki and Bug-tracker.

When trouble-shooting, I suggest exiting the frontend, stopping the backend and opening a pair of terminal windows. From one, start up the backend (as root, just type "mythbackend"). In the other, launch the frontend with verbose output (just type "mythfrontend -v all"). There should be a fair amount of output spit to the terminal windows that should give you (and the developers) a better idea of what is going wrong with your system. Please include that output when asking for help.

Additionally, if you're getting a segmentation fault, your best bet for getting help determining the cause of the problem is to download the myth source code and compile it yourself in debug mode, then run it with gdb, the GNU debugger (how to do that is detailed at the above link). Only with a backtrace can the developers really help you if your setup is causing Myth to segfault. Compiling from source is beyond the scope of this document.