diff --git a/misc/output/mythtvosd/config.hlp b/misc/output/mythtvosd/config.hlp new file mode 100644 index 000000000..6982ffd5b --- /dev/null +++ b/misc/output/mythtvosd/config.hlp @@ -0,0 +1,94 @@ + +ROCKCFG_OUTPUT_MYTHTVOSD_BIN + Please supply the absolute location of your mythtvosd executable. + (rock package: mythtv) + +ROCKCFG_OUTPUT_MYTHTVOSD_ENABLE_HEADER + This class of messages looks like, for example: + + "Building cross binutils and cc for ${arch_target} ..." + + and would be written out exactly like this. + +ROCKCFG_OUTPUT_MYTHTVOSD_ENABLE_STATUS + This class of messages looks like, for exmaple: + + "writing build log to src.cross.$id/binutils.log." + + and would be written out exactly like this. + +ROCKCFG_OUTPUT_MYTHTVOSD_ENABLE_ERROR + This class of messages looks like, for example: + + "Detected a problem with the flist wrapper lib on your system" + + and would be written out exactly like this. + +ROCKCFG_OUTPUT_MYTHTVOSD_ENABLE_PKG_DENY + This class of message is issued when a package build is categorically + denied before even the tarball is touched. Common examples are trying + to build e17 without imlib2 having compiled. The hook for this class + of messages provides 3 arguments: + + $1 the current stagelevel + $2 the current package-name + $3 the reason why this package got refused + + You can use these in the free configurable text, as shown in the + example text. + +ROCKCFG_OUTPUT_MYTHTVOSD_TXT_PKG_DENY + Please have a look at the help of the above option. + +ROCKCFG_OUTPUT_MYTHTVOSD_ENABLE_PKG_START + This class of message is issued when a package build is started. + The hook for this class of messages provides 5 arguments: + + $1 the current stagelevel + $2 the current package's repository + $3 the current package-name + $4 the ROCK Linux version, for example 2.0.0 + $5 the ROCK Linux extraversion, e.g. -rc1 + + You can use these in the free configurable text, as shown in the + example text. + +ROCKCFG_OUTPUT_MYTHTVOSD_TXT_PKG_START + Please have a look at the help of the above option. + +ROCKCFG_OUTPUT_MYTHTVOSD_ENABLE_PKG_FINISH + This class of message is issued when a package build is finished. + The hook for this class of messages provides 3 arguments: + + $1 the current stagelevel + $2 the current package's repository + $3 the current package-name + + You can use these in the free configurable text, as shown in the + example text. + +ROCKCFG_OUTPUT_MYTHTVOSD_TXT_PKG_FINISH + Please have a look at the help of the above option. + +ROCKCFG_OUTPUT_MYTHTVOSD_ENABLE_PKG_ABORT + This class of message is issued when a package build is aborted. + The hook for this class of messages provides 3 arguments: + + $1 the current stagelevel + $2 the current package's repository + $3 the current package-name + + You can use these in the free configurable text, as shown in the + example text. + +ROCKCFG_OUTPUT_MYTHTVOSD_TXT_PKG_ABORT + Please have a look at the help of the above option. + +ROCKCFG_OUTPUT_MYTHTVOSD_ENABLE_ERRORQUOTE + This class of message is usually used to quote the last few lines of a + logfile to let you probably guess the reason of a failed build without + the need to open the logfile. (use $*, if you want it sent). + +ROCKCFG_OUTPUT_MYTHTVOSD_TXT_ERRORQUOTE + Please have a look at the help of the above option. + diff --git a/misc/output/mythtvosd/config.in b/misc/output/mythtvosd/config.in new file mode 100644 index 000000000..d631af075 --- /dev/null +++ b/misc/output/mythtvosd/config.in @@ -0,0 +1,97 @@ +# --- ROCK-COPYRIGHT-NOTE-BEGIN --- +# +# This copyright note is auto-generated by ./scripts/Create-CopyPatch. +# Please add additional copyright information _after_ the line containing +# the ROCK-COPYRIGHT-NOTE-END tag. Otherwise it might get removed by +# the ./scripts/Create-CopyPatch script. Do not edit this copyright text! +# +# ROCK Linux: rock-src/misc/output/tts/config.in +# ROCK Linux is Copyright (C) 1998 - 2003 Clifford Wolf +# +# 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. A copy of the GNU General Public +# License can be found at Documentation/COPYING. +# +# Many people helped and are helping developing ROCK Linux. Please +# have a look at http://www.rocklinux.org/ and the Documentation/TEAM +# file for details. +# +# --- ROCK-COPYRIGHT-NOTE-END --- + + +bool 'MythTV On-Screen-Display Output Plugin' ROCKCFG_OUTPUT_MYTHTVOSD 0 + +if [ "$ROCKCFG_OUTPUT_MYTHTVOSD" = 1 ] ; then + menu_begin OUTPUT_MYTHTVOSD_MENU 'MythTV OSD Output Configuration' + block_begin 1 + + comment ' ' + comment 'Please use the Help menu, it should answer all your questions.' + comment ' ' + comment 'For this to function, you need to merge misc/output/mythtvosd/osd.xml with' + comment 'your osd.xml in /share/mythtv/themes//osd.xml' + comment ' ' + + text 'Where is you "mythtvosd" binary?' \ + ROCKCFG_OUTPUT_MYTHTVOSD_BIN "`which mythtvosd || echo '/usr/bin/mythtvosd'`" + + comment ' ' + comment '- What would you like to be informed about?' + block_begin 2 + + bool 'Generic header at section start' \ + ROCKCFG_OUTPUT_MYTHTVOSD_ENABLE_HEADER 0 + bool 'Generic status messages' \ + ROCKCFG_OUTPUT_MYTHTVOSD_ENABLE_STATUS 0 + bool 'Generic error messages' \ + ROCKCFG_OUTPUT_MYTHTVOSD_ENABLE_ERROR 1 + comment ' ' + + comment 'All texts will have the hostname prepended' + comment ' ' + + bool 'Package build refusals' \ + ROCKCFG_OUTPUT_MYTHTVOSD_ENABLE_PKG_DENY 0 + [ $ROCKCFG_OUTPUT_MYTHTVOSD_ENABLE_PKG_DENY -eq 1 ] && + text 'Text to display when package is denied' \ + ROCKCFG_OUTPUT_MYTHTVOSD_TXT_PKG_DENY \ + '-[$1]-$2-\> rejected ($3)' + comment ' ' + + bool 'Package build starting messages' \ + ROCKCFG_OUTPUT_MYTHTVOSD_ENABLE_PKG_START 1 + [ $ROCKCFG_OUTPUT_MYTHTVOSD_ENABLE_PKG_START -eq 1 ] && + text 'Text to display when package build starts' \ + ROCKCFG_OUTPUT_MYTHTVOSD_TXT_PKG_START \ + '-[$1]-$2/$3-\> starting.' + comment ' ' + + bool 'Package build finished messages' \ + ROCKCFG_OUTPUT_MYTHTVOSD_ENABLE_PKG_FINISH 1 + [ $ROCKCFG_OUTPUT_MYTHTVOSD_ENABLE_PKG_FINISH -eq 1 ] && + text 'Text to display when package build is finished' \ + ROCKCFG_OUTPUT_MYTHTVOSD_TXT_PKG_FINISH \ + '-[$1]-$2/$3-\> finished succesfully.' + comment ' ' + + bool 'Package build aborted messages' \ + ROCKCFG_OUTPUT_MYTHTVOSD_ENABLE_PKG_ABORT 1 + [ $ROCKCFG_OUTPUT_MYTHTVOSD_ENABLE_PKG_ABORT -eq 1 ] && + text 'Text to display when package build has been aborted' \ + ROCKCFG_OUTPUT_MYTHTVOSD_TXT_PKG_ABORT \ + '-[$1]-$2/$3-\> aborted!' + comment ' ' + + bool 'Package build errorquote messages' \ + ROCKCFG_OUTPUT_MYTHTVOSD_ENABLE_ERRORQUOTE 0 + [ $ROCKCFG_OUTPUT_MYTHTVOSD_ENABLE_ERRORQUOTE -eq 1 ] && + text 'Text to display when the logfile would be quoted' \ + ROCKCFG_OUTPUT_MYTHTVOSD_TXT_ERRORQUOTE \ + 'An Error occured. Please have a look at the logfile!' + block_end + + block_end + menu_end +fi diff --git a/misc/output/mythtvosd/functions.sh b/misc/output/mythtvosd/functions.sh new file mode 100644 index 000000000..15f7a01b3 --- /dev/null +++ b/misc/output/mythtvosd/functions.sh @@ -0,0 +1,107 @@ +# --- ROCK-COPYRIGHT-NOTE-BEGIN --- +# +# This copyright note is auto-generated by ./scripts/Create-CopyPatch. +# Please add additional copyright information _after_ the line containing +# the ROCK-COPYRIGHT-NOTE-END tag. Otherwise it might get removed by +# the ./scripts/Create-CopyPatch script. Do not edit this copyright text! +# +# ROCK Linux: rock-src/misc/output/mythtvosd/functions.sh +# ROCK Linux is Copyright (C) 1998 - 2003 Clifford Wolf +# +# 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. A copy of the GNU General Public +# License can be found at Documentation/COPYING. +# +# Many people helped and are helping developing ROCK Linux. Please +# have a look at http://www.rocklinux.org/ and the Documentation/TEAM +# file for details. +# +# --- ROCK-COPYRIGHT-NOTE-END --- + +# first we will construct a universal 'say' function +function send_proc() { + while read line + do + while read -t1 subline; do + line="$( echo -e "$line\\n$subline" | tail -n10 )" + done + + $ROCKCFG_OUTPUT_MYTHTVOSD_BIN --template=misc/output/mythtvosd/rock.xml \ + --host="`hostname`" --msg="$line" 2>&1 > /dev/null + done +} +function send() { + if [ -z "$ROCK_OUPUT_PLUGIN_MYTHTVOSD_PROC_ACTIVE" ]; then + export ROCK_OUPUT_PLUGIN_MYTHTVOSD_PROC_ACTIVE=1 + exec 198> >( send_proc ) + fi + echo "$*" >&198 +} + +# A free-form header at start of a section usually followed by calls to +# echo_status_terminal(). +# +echo_header_mythtvosd() { + [ $ROCKCFG_OUTPUT_MYTHTVOSD_ENABLE_HEADER -eq 1 ] && send "$*" +} + +# A free-form status message informaing the user of what is happening just +# now. +# +echo_status_mythtvosd() { + [ $ROCKCFG_OUTPUT_MYTHTVOSD_ENABLE_STATUS -eq 1 ] && send "$*" +} + +# A free-form error or warning message if something fails. +# +echo_error_mythtvosd() { + [ $ROCKCFG_OUTPUT_MYTHTVOSD_ENABLE_ERROR -eq 1 ] && send "$*" +} + +# We deny to build a package for some reason. +# +# Usage: echo_pkg_deny +# +echo_pkg_deny_mythtvosd() { + [ $ROCKCFG_OUTPUT_MYTHTVOSD_ENABLE_PKG_DENY -eq 1 ] && + send `eval echo "$ROCKCFG_OUTPUT_MYTHTVOSD_TXT_PKG_DENY"` +} + +# We start building a package. +# +# Usage: echo_pkg_start \ +# +# +echo_pkg_start_mythtvosd() { + [ $ROCKCFG_OUTPUT_MYTHTVOSD_ENABLE_PKG_START -eq 1 ] && + send `eval echo "$ROCKCFG_OUTPUT_MYTHTVOSD_TXT_PKG_START"` +} + +# We finished building a package. +# +# Usage: echo_pkg_finish +# +echo_pkg_finish_mythtvosd() { + [ $ROCKCFG_OUTPUT_MYTHTVOSD_ENABLE_PKG_FINISH -eq 1 ] && + send `eval echo "$ROCKCFG_OUTPUT_MYTHTVOSD_TXT_PKG_FINISH"` +} + +# We aborted building a package. +# +# Usage: echo_pkg_abort +# +echo_pkg_abort_mythtvosd() { + [ $ROCKCFG_OUTPUT_MYTHTVOSD_ENABLE_PKG_ABORT -eq 1 ] && + send `eval echo "$ROCKCFG_OUTPUT_MYTHTVOSD_TXT_PKG_ABORT"` +} + +# Whenever the tail of error logs are printed, this function is used for +# that. The parameter may contain newlines. +# +echo_errorquote_mythtvosd() { + [ $ROCKCFG_OUTPUT_MYTHTVOSD_ENABLE_ERRORQUOTE -eq 1 ] && + send `eval echo "$ROCKCFG_OUTPUT_MYTHTVOSD_TXT_ERRORQUOTE"` +} + diff --git a/misc/output/mythtvosd/osd.xml b/misc/output/mythtvosd/osd.xml new file mode 100644 index 000000000..215f65150 --- /dev/null +++ b/misc/output/mythtvosd/osd.xml @@ -0,0 +1,28 @@ + + + 255 + 16 + no + + + + 255 + 24 + yes + + + + + 20,15,600,100 + + + + + diff --git a/misc/output/mythtvosd/rock.xml b/misc/output/mythtvosd/rock.xml new file mode 100644 index 000000000..f792c5aae --- /dev/null +++ b/misc/output/mythtvosd/rock.xml @@ -0,0 +1,10 @@ + + + + + +