diff options
Diffstat (limited to 'abs/core/mythtv/stable/mythtv')
-rw-r--r-- | abs/core/mythtv/stable/mythtv/PKGBUILD | 70 | ||||
-rw-r--r-- | abs/core/mythtv/stable/mythtv/QUICKSTART.archlinux | 69 | ||||
-rwxr-xr-x | abs/core/mythtv/stable/mythtv/mythbackend | 38 | ||||
-rw-r--r-- | abs/core/mythtv/stable/mythtv/mythtv.install | 13 |
4 files changed, 190 insertions, 0 deletions
diff --git a/abs/core/mythtv/stable/mythtv/PKGBUILD b/abs/core/mythtv/stable/mythtv/PKGBUILD new file mode 100644 index 0000000..72c6855 --- /dev/null +++ b/abs/core/mythtv/stable/mythtv/PKGBUILD @@ -0,0 +1,70 @@ +# $Id: PKGBUILD 356 2008-04-18 22:56:27Z aaron $ +# Contributor: <kleptophobiac@gmail.com> +# Contributor: dorphell <dorphell@archlinux.org> +# Maintainer: Paul Mattal <paul@archlinux.org> + +pkgname=mythtv +pkgver=0.21 +pkgrel=4 +pkgdesc="A Homebrew PVR project" +arch=('i686' 'x86_64') +depends=('bash' 'mysql-clients>=5.0' 'qt3' 'lame' 'lirc-utils' 'ffmpeg' \ + 'libxvmc') +backup=(etc/mythtv/mythbackend.conf etc/mythtv/mysql.txt) +source=(ftp://ftp.knoppmyth.net/R6/sources/${pkgname}-${pkgver}-fixes.tar.bz2 \ + mythbackend\ + QUICKSTART.archlinux) +md5sums=('08506f0c5120c072085b6995f529167a' '7ef6de58240e7aad389a0b13d91b1cf6'\ + 'a0ecb7f476cb71c0c1ac90d349fc7695') +license=('GPL2') +makedepends=(libgl subversion) +groups=('pvr') +url="http://www.mythtv.org/" +install=mythtv.install + +build() { + cd $startdir/src/${pkgname}-${pkgver} || return 1 + . /etc/profile.d/qt3.sh + + # use QT3 qmake + export PATH=$QTDIR/bin:$PATH + [ "$CARCH" = "i686" ] && ARCH="i686" + [ "$CARCH" = "x86_64" ] && ARCH="x86-64" + + ./configure --prefix=/usr --cpu=${ARCH} --enable-mmx --enable-audio-oss \ + --enable-audio-alsa --enable-dvb --enable-lirc --enable-joystick-menu \ + --disable-firewire --enable-v4l --enable-ivtv --enable-dvb \ + --dvb-path=/usr/include/linux/dvb --enable-xvmc --disable-ffmpeg \ + --enable-xvmc-pro --enable-xvmc-vld --enable-opengl-vsync \ + --disable-audio-jack --disable-audio-arts || return 1 + + # build + #needs the subversion program + pkgversubversion=`svnversion` + echo $pkgversubversion + sed -i -e "s/\`(svnversion \$\${SVNTREEDIR} 2>\/dev\/null) || echo Unknown\`/$pkgversubversion/" version.pro + + +# qmake mythtv.pro || return 1 +# make qmake || return 1 + make || return 1 + + # basic install + make INSTALL_ROOT=$startdir/pkg install || return 1 + + # install db schema + install -m0644 database/mc.sql $startdir/pkg/usr/share/mythtv/ \ + || return 1 + install -D -m0755 ../mythbackend $startdir/pkg/etc/rc.d/mythbackend \ + || return 1 + cp -r docs $startdir/pkg/usr/share/mythtv/ || return 1 + cp ../QUICKSTART.archlinux $startdir/pkg/usr/share/mythtv/ \ + || return 1 + + # install contrib + mkdir -p $startdir/pkg/usr/share/mythtv/contrib || return 1 + install -m0755 contrib/* $startdir/pkg/usr/share/mythtv/contrib + + # set suid on mythfrontend + chmod a+s $startdir/pkg/usr/bin/mythfrontend +} diff --git a/abs/core/mythtv/stable/mythtv/QUICKSTART.archlinux b/abs/core/mythtv/stable/mythtv/QUICKSTART.archlinux new file mode 100644 index 0000000..310705c --- /dev/null +++ b/abs/core/mythtv/stable/mythtv/QUICKSTART.archlinux @@ -0,0 +1,69 @@ +MythTV QUICKSTART
+=================
+This Arch Linux package provides a generic MythTV installation. It
+requires extensive user configuration. This is a skeletal document, and
+more extensive information is available in /usr/share/mythtv/docs.
+
+MythTV is split into a backend and a frontend. The backend records
+television programming, keeps up with scheduling, does commercial
+flagging, transcoding, and other such jobs. The frontend provides a
+pretty GUI which allows playback and edition of the recorded programs.
+It also provides a means to schedule recordings. There are a number of
+plugins available for MythTV, and most of the official ones are
+available as Arch packages. There are two configurations; the backend
+and frontend can be on the same machine, or on two different machines on
+the same network.
+
+Backend Configuration
+---------------------
+MythTV keeps the majority of its settings and program information in a
+mysql database. Before running the backend configuration program, it is
+necessary to initialize the datase. Make sure mysql is running properly.
+
+# mysql < /usr/share/mythtv/mc.sql
+
+If your frontend is going to be remote, you must allow other computers
+on your network to have access to your database. Substitute 192.168.1.%
+with whatever IP range you use. If you have a root mysql password (as
+you should), leave the -p in the mysql command line. Otherwise remove
+the switch.
+
+# mysql -u root -p
+ mysql> connect mythconverg;
+ mysql> grant all on mythconverg.* to mythtv@"192.168.1.%" identified by "mythtv";
+ mysql> flush privileges;
+ mysql> quit
+
+In order to configure the MythTV backend, you will need to run the
+mythtv-setup program. Note that this requires X. If your backend is
+headless, considering using vnc as a quick and dirty "fix".
+
+# mythtv-setup
+
+Go through all the menus. You will need to know information like your
+capture card device (/dev/v4l/video[0-9]) and your program information
+acquisition method. United States users will most likely subscribe to
+Zap2it Labs' DataDirect service. It requires that users take a survey
+every three months in order to continue service. This isn't as hard as
+it sounds.
+
+It is necessary to update the database with all the current TV listings.
+Run the mythfilldatabase program to grab the listings using whatever
+method you specified in mythtv-setup.
+
+# mythfilldatabase
+
+Run mythbackend from the command line to make sure everything starts ok.
+
+# mythbackend
+
+If so, you may kill the task with "ctrl-c" on your keyboard, and add the
+backend to /etc/rc.conf. In the DAEMONS line, just add "mythbackend" to
+the list.
+
+In the future, you will need to run mythfilldatabase regularly. I allow
+my frontend computer to do this, as it runs continuously, and it is an
+option within MythTV. Otherwise, you can set up a cron job, or move
+mythfilldatabasecron to /etc/cron.daily
+
+cp /usr/share/mythtv/mythfilldatabasecron /etc/cron.daily
diff --git a/abs/core/mythtv/stable/mythtv/mythbackend b/abs/core/mythtv/stable/mythtv/mythbackend new file mode 100755 index 0000000..93773a2 --- /dev/null +++ b/abs/core/mythtv/stable/mythtv/mythbackend @@ -0,0 +1,38 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +PID=`pidof -o %PPID /usr/bin/mythbackend` +case "$1" in + start) + stat_busy "Starting MythTV Backend" + [ ! -e /var/run/mysqld.pid ] && echo -n "mysqld not started" && stat_fail && exit + [ -z "$PID" ] && /usr/bin/mythbackend -d -l /var/log/mythbackend.log -v important + if [ $? -gt 0 ]; then + stat_fail + else + echo $PID > /var/run/mythbackend.pid + add_daemon mythbackend + stat_done + fi + ;; + stop) + stat_busy "Stopping MythTV Backend" + [ ! -z "$PID" ] && kill $PID &>/dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon mythbackend + stat_done + fi + ;; + restart) + $0 stop + sleep 1s + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 diff --git a/abs/core/mythtv/stable/mythtv/mythtv.install b/abs/core/mythtv/stable/mythtv/mythtv.install new file mode 100644 index 0000000..c460f19 --- /dev/null +++ b/abs/core/mythtv/stable/mythtv/mythtv.install @@ -0,0 +1,13 @@ +# arg 1: the new package version +post_install() { + echo "See \"MythTV\" on the Archlinux Wiki for installation information - Extensive!!" +} + +# arg 1: the old package version +post_remove() { + echo -e "NOTE: mysql database was not removed. To remove run:\nmysql -u root -e 'drop database mythconverg;'" +} + +op=$1 +shift +$op $* |