Fedora 10 - Package Dependencies
Updated dependency install script for Fedora 10 and SVN trunk This script should work for Fedora 11 as well, but there are some differences in the naming of the 'qt' packages.
Uses atrpms over rpmfusion.
As of March 13, 2009, the perl-Video-ivtv package and the perl-Video-Frequences package are missing from the atrpms fedora 10 repo. They may still be available in the atrpms fedora 9 repo tree at:
http://dl.atrpms.net/f9-i386/atrpms/stable/
Updated March 27, 2009, to download and install those packages using wget. In addition, it now installs 2 perl packages needed for the myth.rebuilddatabase.pl script, Time::Format and Time::Date.
Further updated May 1, 2009 to update package names and add some packages, including downloading and installing the 'essential' codecs package from mplayerhq.
Further updated August 10, 2009 to update package names, correct an error, and to add the xmltv packages at ATRPMS. And again on October 11, 2009 to further update package names, and add functionality which is missing on a base install of Fedora, especially extra library folders in ld.so.conf
The notes on the 'Fedora 8 - Dependencies' page are still useful.
#!/bin/bash
#*********************************************
# UPDATED FOR FEDORA 10
# Updated March 27, 2009, May 1, 2009. August 11, 2009
# Updated October 11, 2009
# Quick dependency fulfilment script for mythtv for *FEDORA 10*
# Plus a bunch of useful stuff which a bare install does not touch
# For SVN trunk (using qt4) plus mytharchive and mythdvd plugins
# Does not necessarily include the requirements for other plugins
# Uses atrpms repo exclusively (rpmfusion repo is no longer used)
# (assumes those repos are installed in /etc/yum.repos.d)
# Since it uses only fedora, atrpms and rpmfusion repos, it does not do gpgchecks
#
# Assumes you need ivtv, lirc and firewire: DOES NOT SETUP THEM UP!
# Presumes you are starting from a 'bare metal' install of Fedora 10
# Does not deal with video drivers
# Note that yum install nvidia-graphics-beta with atrpms enabled works!
# Can be run multiple times without problem.
# Presumes that your yum fedora.repo points to ' ../releases/10/Everything/i386/os/packages'
# Presumes that you have *already* run 'yum -y update' after the base install
# Where a library is required, you will also require the '*-devel' rpm.
#
# In order to avoid problems with digital sound, this script removes pulseaudio
#
# WARNING: This setup prefers atrpms over fedora for libraries.
# WARNING: This setup basically ignores the rpmfusion repository.
# WARNING: Needed only for compiling myth from source!
# WARNING You have rebooted after the update?
# Intended to be run as root, but may be run with sudo
echo " ********************************* "
echo ""
echo ""
echo " WARNING: Did you reboot after doing your update?"
echo ""
echo " Use control-C now to exit now."
echo " WARNING: This setup prefers atrpms over fedora for libraries."
echo " WARNING: This setup basically ignores the rpmfusion repository."
echo " WARNING: If you have used rpmfusion previously, this may not work."
echo " WARNING: Needed only for compiling myth from source!"
echo " WARNING You have rebooted after the update?"
echo ""
echo " Any necessary downloads will be in /tmp. CD'ing to there now."
cd /tmp
export KVER=`uname -r` # Those are back-ticks, not quotes
# Move all non-fedora repos: atrpms, livna and rpmfusion out of the way
echo " ********************************* "
echo ""
echo " Move all non-Fedora repos: atrpms, livna and rpmfusion out of the way"
echo ""
mkdir /etc/yum.repos.d/hold
echo " You can ignore any 'File exists' error"
echo " Revised to move everthing out of the way as a starting condition"
mv -f /etc/yum.repos.d/* /etc/yum.repos.d/hold
echo " Now move the fedora repos back into scope"
mv -f /etc/yum.repos.d/hold/fedora* /etc/yum.repos.d
# Now install files from fedora repos
echo " ********************************* "
echo ""
echo " Update kernel and install kernel sources"
echo ""
yum update kernel
echo " This should have reported Nothing to do"
echo ""
yum -y --nogpgcheck install kernel-devel kernel-headers
echo " Install needed extra development headers "
echo ""
yum -y --nogpgcheck install \
glibc glibc-common glibc-devel \
glibc-headers glibc-utils \
libXxf86vm libXxf86vm-devel
echo ""
echo " ********************************* "
echo ""
echo " Update to qt4: does NOT install the 15 Meg of qt4-docs"
echo " Note that these file names are case sensitive"
echo ""
yum -y --nogpgcheck install \
qt qt-devel qt-MySQL \
qt4 qt4-devel qt4-mysql \
qt4-x11 WebKit-qt WebKit-qt-devel
echo " ********************************* "
echo " Add library folders to LDPATH (ld.so.conf), not done by the fedora install"
echo "/lib" >> /etc/ld.so.conf
echo "/usr/lib" >> /etc/ld.so.conf
echo "/usr/local/lib" >> /etc/ld.so.conf
echo "/usr/lib/nvidia" >> /etc/ld.so.conf
echo "/usr/lib/xorg" >> /etc/ld.so.conf
echo "/usr/lib/qt4" >> /etc/ld.so.conf
echo "/usr/lib/qt-3.3/lib" >> /etc/ld.so.conf
echo "/usr/lib/xorg/modules/drivers" >> /etc/ld.so.conf
echo "/usr/lib/xorg/modules/extensions" >> /etc/ld.so.conf
echo " Add the libmysqlclient libraries to LDPATH through ld.so.conf"
echo "/usr/lib/mysql" >> /etc/ld.so.conf
echo " Using echo /usr/lib/mysql >> /etc/ld.so.conf to add"
ldconfig
echo ""
echo " Otherwise you get the error: QSqlDatabase: QMYSQL3 driver not loaded"
echo " when myth tries to contact the database, as the client library is not found."
echo " ********************************* "
echo ""
echo " Now remove pulse audio files mythtv does not need"
echo ""
echo " Do NOT use 'remove pulseaudio*' as this will remove pulseaudio-libs"
echo " which will kill gdm and other core programs."
echo ""
yum -y remove pulseaudio alsa-plugins-pulseaudio pavucontrol \
pulseaudio-utils gstreamer-plugins-pulse \
pulseaudio-core-libs akode-pulseaudio
rm -rf /etc/pulse
rm -rf /root/.pulse*
rm -rf /home/mythtv/.pulse*
echo ""
echo " ********************************* "
echo ""
echo " Now for the files mythtv needs"
echo ""
yum -y --nogpgcheck install \
alsa-lib alsa-lib-devel alsa-utils \
cdparanoia cdparanoia-devel cdparanoia-libs \
libdvdread libdvdread-devel \
flac flac-devel flac123 \
libtheora libtheora-devel
echo ""
yum -y --nogpgcheck install \
libexif libexif-devel \
libtiff libtiff-devel \
libvorbis libvorbis-devel nasm \
SDL SDL-devel libxcb libxcb-devel
echo " ********************************* "
echo ""
echo " Add Firewire capabilies"
yum -y --nogpgcheck install \
libiec61883 libiec61883-devel libavc1394 libavc1394-devel
echo " ********************************* "
echo ""
echo " Now bring atrpms into scope"
echo ""
mv /etc/yum.repos.d/hold/atrpms* /etc/yum.repos.d/
yum -y --nogpgcheck install atrpms
echo " Installs or updates atrpms setup as necessary"
echo " ********************************* "
echo ""
echo " Install dependencies of ivtv including"
echo " firmware for PVR150/250/350/500"
echo ""
echo " Install perl scripts needed for Video-ivtv"
wget http://search.cpan.org/CPAN/authors/id/M/ML/MLEHMANN/Video-Capture-V4l-0.902.tar.gz
tar zxvf Video-Capture-V4l-0.902.tar.gz
cd Video-Capture-V4l-0.902
perl Makefile.PL
make && make install
cd /tmp
rm -rf Video-Capture*
echo " Video Frequencies script from ATRPMS is no longer needed"
echo " As it is part of the Video-Capture package"
echo " Ivtv is now included in the F10 kernel "
echo ""
echo " ********************************* "
yum -y --nogpgcheck install ivtv-firmware
echo ""
echo " ********************************* "
echo ""
echo " Install lirc: you will have to deal with setup of lircrc manually"
echo ""
yum -y --nogpgcheck install \
lirc lirc-devel lirc-libs lirc-devel \
lirc-remotes lirc-devices
echo " ********************************* "
echo ""
echo " Substitute the atrpms libraw1394 for the fedora version"
echo ""
yum -y --nogpgcheck update libraw1394 # substitutes atrpms version for fedora
echo " ********************************* "
echo ""
echo " Now for the majority of the install"
echo " You should raid the fridge or make a coffee....."
echo " Note that some rpms have a name different from the library."
echo " I.e the rpm is called libmp3lame0 while the "
echo " library is called libmp3lame "
echo ""
echo " First firewire: a dependency of other stuff "
yum -y --nogpgcheck install \
libdc1394 libdc1394-devel \
libraw1394-devel libraw1394_8
echo ""
echo " Now a big bundle of stuff broken into five groups "
echo ""
yum -y --nogpgcheck install \
a52dec a52dec-devel liba52_0 \
alsa-driver alsa-driver-devel alsa-kmdl-$KVER \
faac faac-devel libfaac0 faad2 faad2-devel \
libmp4v2_0
yum -y --nogpgcheck install \
fftw fftw-devel fftw2 fftw2-devel \
lame lame-devel libmp3lame0 \
libcdaudio libcdaudio-devel
yum -y --nogpgcheck install \
libdca libdca-devel libdca0 \
libdvdcss libdvdcss-devel \
libdvdnav libdvdnav-devel \
libfame libfame-devel
yum -y --nogpgcheck install \
libmad libmad0 libmad-devel \
libmpeg3 libmpeg3-devel libmpeg3-utils \
libXvMC libXvMCW-devel nasm \
mjpegtools mjpegtools-devel
yum -y --nogpgcheck install \
x264 x264-devel libx264* xmltv-gui \
xmltv-grabbers perl-XMLTV
yum -y --nogpgcheck install \
ffmpeg ffmpeg-devel \
libavcodec52 libavdevice52 libavformat52 \
libquicktime libquicktime0 libquicktime-devel \
mplayer gecko-mediaplayer mplayer-skins normalize \
SDL-devel taglib taglib-devel \
transcode xvidcore xvidcore-devel xmms-aac
echo " ********************************* "
echo ""
echo " Now hide atrpms and bring rpmfusion into scope."
echo " Livna is no longer used."
echo " Do NOT run 'yum update' with atrpms, rpmfusion or livna enabled!"
echo ""
mv -f /etc/yum.repos.d/atrpms* /etc/yum.repos.d/hold
echo " ********************************* "
echo " The rpmfusion repo has duplicates of many atrpms files,"
echo " but generally not as new and some conflict with atrpms files."
mv -f /etc/yum.repos.d/hold/rpmfusion* /etc/yum.repos.d/
yum -y --nogpgcheck install libdvdplay libdvdplay-devel
echo " These two packages seem to have disappeared....."
echo ""
echo ""
echo " Install perl scripts needed by myth.rebuilddatabase.pl"
echo " Get Time::Format and install "
echo ""
echo ""
wget http://search.cpan.org/CPAN/authors/id/R/RO/ROODE/Time-Format-1.09.tar.gz
tar xzvf Time-Format-1.09.tar.gz
cd Time-Format-1.09
perl Makefile.PL
make && make install
echo ""
echo ""
cd /tmp
rm -rf Time-Format*
echo " Get Time::Date and install"
wget http://search.cpan.org/CPAN/authors/id/G/GB/GBARR/TimeDate-1.16.tar.gz
tar xzvf TimeDate-1.16.tar.gz
cd TimeDate-1.16
perl Makefile.PL
make && make install
cd /tmp
rm -rf TimeDate*
echo ""
echo ""
echo " Almost done!"
echo " Some cleanup...."
mv -vf /etc/yum.repos.d/rpmfusion* /etc/yum.repos.d/hold
depmod -ae
ldconfig
echo " ********************************* "
echo ""
echo " Amost Done!"
echo " Now to grab and install codecs from mplayerhq.hu "
if [ -n /usr/lib/codecs ];
then
mkdir /usr/lib/codecs;
fi;
cd /usr/lib/codecs
wget ftp://ftp1.mplayerhq.hu/MPlayer/releases/codecs/essential-20071007.tar.bz2
tar -xjvf essential-20071007.tar.bz2
cd ./essential-20071007
mv * ..
cd /usr/lib/codecs
rm -rf essential-20071007
cd /tmp
echo " Final addition, create libdts.so.0 as a symlink of libdca.so.0.0.0"
echo " As libdca now replaces libdts, but some programs use the old name"
ln -s /usr/lib/libdca.so.0.0.0 /usr/lib/libdts.so.0
echo " "
echo " Note that you can run this as many times as you like."
echo " The only side-effect, besides installing packages, will be to "
echo " add one redundant repeated line to /etc/yum.conf each time, "
echo " and redundant repeated lines to /etc/ld.so.conf."
echo ""
echo " For speedy re-runs, comment out the wget lines"