fixes for mythtv

This commit is contained in:
Kevin Mihelich 2012-01-31 23:48:03 -05:00
parent ac9aafc5de
commit 7b991c0507
4 changed files with 186 additions and 1 deletions

View file

@ -1,4 +1,4 @@
# $Id: PKGBUILD 62798 2012-01-27 02:10:36Z jconder $
# $Id$
# Maintainer: Jonathan Conder <jonno.conder@gmail.com>
# Contributor: Giovanni Scafora <giovanni@archlinux.org>
# Contributor: Juergen Hoetzel <juergen@archlinux.org>

View file

@ -0,0 +1,92 @@
#!/bin/bash
#
# Rename this file to:
#
# /etc/config.d/mythbackend
#
###############################################################################
#
# Copyright (c) by the MythTV Development Team.
#
# Derived from work by:
#
# Michael Thomson <linux at m-thomson dot net>
# Stu Tomlinson <stu at nosnilmot dot com>
# Axel Thimm <axel.thimm at atrpms dot net>
# Adopted for ArchLinux:
# Jürgen Hoetzel <juergen@archinux.org>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
###############################################################################
#
# Config variables for the mythbackend startup script, which is usually
# located in /etc/rc.d/mythbackend
#
# When the startup script is executed, it sources this file if it exists,
# otherwise it will fall back on default values.
#
# Leave variables commented out to use default values in init script
# (/etc/rc.d/mythbackend).
#
# To override defaults, uncomment the relevant variable definition and
# edit as required.
#
#
# User who should start the mythbackend processes
#
# Running mythbackend as non-root requires you to ensure that audio/video
# devices used for recording have suitable user permissions. One way
# to achieve this is to modify existing or create new udev rules which
# assign these devices to a non-root group with rw permissions and add
# your mythbackend user to that group. Be aware that console.perms can
# also affect device permissions and may need additional configuration.
# Running as non-root may also introduce increased process latency.
#
# MBE_USER='root'
#
# Directory holding the mythbackend binary (empty means autodetect).
#
# MBE_DIR=''
#
# Name of mythbackend binary.
#
# MBE_PROG='mythbackend'
#
# Other startup options for mythbackend (see 'mythbackend --help' for a list).
#
# MBE_OPTIONS=''
#
# Directory holding the mythbackend log file
#
# LOG_DIR='/var/log/mythtv'
#
# Name of mythbackend log file.
#
# NOTE: If you are running as non-root take care to ensure the mythbackend user
# has permission to write to this log file.
#
# LOG_FILE='mythbackend.log'
#
# Logging options for mythbackend (see 'mythbackend -v help' for a list)
#
# LOG_OPTS=''

View file

@ -0,0 +1,82 @@
#!/bin/bash
. /etc/rc.conf
. /etc/rc.d/functions
# Default values to use if none are supplied in the config file.
# Running mythbackend as non-root requires you to ensure that audio/video
# devices used for recording have suitable user permissions. One way
# to achieve this is to modify existing or create new udev rules which
# assign these devices to a non-root group with rw permissions and add
# your mythbackend user to that group. Be aware that console.perms can
# also affect device permissions and may need additional configuration.
# Running as non-root may also introduce increased process latency.
#
# User who should start the mythbackend processes
MBE_USER='root'
# Startup options for mythbackend
MBE_OPTIONS=''
# Name of mythbackend log file
LOG_FILE='/var/log/mythbackend.log'
# Logging options for mythbackend (empty means '-v important,general')
LOG_OPTS=''
###############################################################################
CONFIG_FILE=/etc/conf.d/mythbackend
PIDFILE=/var/run/mythbackend.pid
if [[ -f ${CONFIG_FILE} ]]; then
. ${CONFIG_FILE}
fi
pid="$(cat ${PIDFILE} 2>/dev/null || pidof mythbackend)";
# fix FS#11890
mbe_user_home="$(getent passwd ${MBE_USER}|cut -d : -f 6)"
case "$1" in
start)
stat_busy "Starting MythTV Backend"
# already running ?
if [[ "${pid}" -gt 0 ]] && kill -0 "${pid}"; then
stat_fail
exit 1;
fi
touch ${PIDFILE} ${LOG_FILE}
chown "$MBE_USER" ${PIDFILE} ${LOG_FILE}
if su "$MBE_USER" -c "HOME=${mbe_user_home} mythbackend \
--daemon \
--logfile $LOG_FILE $LOG_OPTS \
--pidfile ${PIDFILE} $MBE_OPTIONS";
then
add_daemon mythbackend
stat_done
else
stat_fail
fi
;;
stop)
stat_busy "Stopping MythTV Backend"
if [[ "${pid}" -gt 0 ]] && kill $pid &>/dev/null; then
rm_daemon mythbackend
stat_done
rm ${PIDFILE} 2>/dev/null
else
stat_fail
fi
;;
restart)
$0 stop
$0 start
;;
*)
echo "usage: $0 {start|stop|restart}"
esac
exit 0

View file

@ -0,0 +1,11 @@
post_install() {
echo "See \"MythTV\" on the Archlinux Wiki for installation information - Extensive!!"
}
post_upgrade() {
return
}
post_remove() {
echo -e "NOTE: mysql database was not removed. To remove run:\nmysql -u root -e 'drop database mythconverg;'"
}