I thought I'd write this up since I've had a lot of 'fun' (i.e struggle) getting
MythTV set up. In the grand Linux tradition, therefore I should write about
my experiences in order that Google can find them and pass on whatever morsels
of information might be useful to fellow sufferers.
I also decided to update this recently because the page was way out of date.
Fedora Core 3, Paul? Who uses that anymore?
The Hardware
I bought my system and assembled it from parts. I'm a geek like that. It consists
of:
Antec Concerto 380 Piano Black Case - because I wanted something
that would look good in the lounge with the other equipment. It's a nice case
and everything's cleverly laid out, but gee it's big!
AMD Sempron 2200 - because I figured that I didn't need a heck of
a lot of processing power since I was going to be primarily recording off
the DTV card which is a straight MPEG2 stream.
AMD Athlon 2400+ - which I migrated down from my other machine
since I do a bit of transcoding from time to time on this machine and it's
nice for it to be done in reasonable time.
Asus A7N8X-X, which was not quite what I was expecting. I was hoping
for Firewire and SATA; it had neither. However, it was a full width board
and it was cheap, and it had the NForce2 chipset which I like. - had a fault
with the motherboard and chip and couldn't send it back under warranty.
Abit AN7, a full ATX board with nForce2 chipset.
Zalman 7000AlCu cooler which unfortunately didn't fit in the case
because of the layout of the motherboard and the proximity of the 3.5" drive
enclosure.
2x Corsair 256MB PC3200 DDR SDRAM. If I need a bit of a boost later
I'll buy another PC3200 module and get the NForce2's dual slot action going.
Logitech Wireless Keyboard and Mouse combo - the simple version.
I wanted to be able to use the mouse and keyboard while sitting on the couch
and then tuck them away in a slot with no dangling wires or stuff.
Quantum 40GB IDE Hard Drive for the Linux system and binaries and
as temporary storage that I had lying around. - removed because it was failing.
Drives:
Samsung 400GB PATA
Seagate 250GB PATA
Seagate 250GB PATA
Pioneer DVD±RW Dual-layer drive
AVerMedia AverTV DVB-T 771 Tuner Card because it's getting
a digital signal (my analogue reception has been crappy in my room at the
far end of the house, not that that matters as the media machine is moving
to the lounge with much better reception, but it's the thought that counts)
and they featured in the LinuxDVB list
of supported cards.
LeadTek WinFast TV 2000 Expert Analogue TV Tuner Card which was in
my main machine. Partly so that I can record two channels at once should it
be necessary, and partly so that I can move my FM radio records over to his
machine. (I know this card works in Linux with Fedora Core 2 because I had
it installed in another machine that now doesn't exist and it worked just
fine.) - removed because it was a pain to use.
TwinHan VisionPlus DVB-T Tuner Card for a second tuner. This one is a
full-height card and doesn't quite fit in the Antec case.
The Software
All that's nice but what drives the system is this:
Fedora Core 6 - Free. A version of Linux that's free to use, well
supported and configured, and something I'm familiar with. Will upgrade to
Fedora 9 when it comes out.
MythTV - Free. A popular, well-maintained "Media Center"
program that can record TV, play it back, work with DVDs, and do everything
that more expensive and specialised hardware/software solutions. I've installed
this using the ATRPMS repository.
TVGuide.org.au - the free,
open-licensed, publicly-collected source of TV guide information in Australia.
All you commercial networks who won't license your guides for a reasonable fee?
You suck. I've also used IceTV and would
recommend them to anyone who can't live with the sometimes variable quality of
the tvguide.org.au programme information.
References
The sites I've used and have been invaluable in this quest are:
Fedora - an excellent distribution
for people new to Linux and to more seasoned professionals.
However, I deviate from them in one major respect. Both of these guides
enable Axel Thimm's atrpms repository, which is the only repository so
far to have precompiled RPM packages for MythTV. However, atrpms
will also do ugly and insidious things to your packages, break various
other dependencies, not play nice with other repositories, sneak into
your fridge and eat your icecream, and say rude things about your
mother in public. Most people on the #fedora
channel on irc.freenode.org will mock your judgement, your system and
sometimes your parentage if you admit to using atrpms for anything but
just the MythTV packages. There is another way.
For a fresh install of Fedora with MythTV, start here:
Read through steps 1 and 2 of Jarod's instructions.
This is general setup information.
At step 3, on disk partitioning, I take a different path. Make a
100MB /boot partition, and then assign everything else to LVM.
Then, within LVM, allocate swap, a 10GB root partition, and the
rest to /video (although I've put my 'MythTV data space' in /opt,
because I didn't realise at the time that /opt is for optional
_software_, not just optional whatever). The /video partition
should be allocated as XFS or JFS - I've had no issues with XFS despite
Jarod's caution - and should take up about 75% of the remaining space.
The reason I do this is the one thing LVM grants you is
flexibility. If you need to, you can grow or shrink your root
partition and swap, grow your /video partition, or allocate extra
logical volumes for experimenting. It's much harder if you've
allocated all your space to then move to an LVM setup, and you can't
shrink XFS or JFS (at the moment, at least).
Jarod also disables SELinux and the firewall; I don't. I'm
paranoid. You will need to open up port 5432 (MythTV) and 3306
(mysql) if you're going to run an external front end.
Jarod uses KDE, I use GNOME. Neither of us have had any problems.
Go through steps 4-5. All fairly easy. For an existing install of Fedora to which you want to add MythTV, start here:
At step 6, install the atrpms repository but immediately edit the
/etc/yum.repos.d/atrpms.repo and put 'enabled=0'
in each section. Also install the Livna and Extras repositories.
Edit all these to find the nearest mirror (or your ISP's mirror -
Internode for example has a large mirror collection), put that in
first, and put "failover=priority" in each section.
At step 7. Use the Livna packaging method to install custom proprietary
device drivers for your video card, if you care more about hardware
MPEG2 decompression than you do about the GPL.
Ignore step 8; you're probably already using ALSA.
Step 9 is where we diverge from Jarod's method the most.
I do this in three steps:
'yum --enablerepo=atrpms install mythtv-suite'
(or whichever MythTV packages you want) to find out which packages are
needed to install MythTV. Answer 'n' (i.e. don't install just
yet).
'yum install ${all the non-MythTV packages listed above}' to
install as many of the dependencies as you can.
'yum --enablerepo=atrpms install mythtv-suite' (as above) to
actually install the remaining packages from ATRPMs.
Step 10 is just configuration options for various TV card configurations.
In most cases, you don't have to worry.
Steps 11 and 12 should be easy to do. Do them.
In Step 13, you'll need a version of tv_grab_au. If you're using
either the IceTV or
tvguide.org.au guide sources, then
download the tv_grab_au_reg script from
http://www.cse.unsw.edu.au/~willu/xmltv/tv_grab_au_reg.html.
Go through the steps on that page to set it up, including
registering with whichever guide source you're using. Note that
when you're setting up the channel configuration in mythsetup and it
appears to lock up, use alt-tab to change back to the command prompt
that you ran mythsetup from - tv_grab_au is probably prompting you for
some information at that point.
Finish Jarod's installation notes by going through steps 14 on.