summaryrefslogtreecommitdiffstats
path: root/abs
diff options
context:
space:
mode:
Diffstat (limited to 'abs')
-rw-r--r--abs/core/LinHES-config/PKGBUILD4
-rwxr-xr-xabs/core/LinHES-config/mv_install.py39
-rwxr-xr-xabs/core/LinHES-system/LinHES-session23
-rw-r--r--abs/core/LinHES-system/LinHES.install12
-rwxr-xr-xabs/core/LinHES-system/PKGBUILD32
-rw-r--r--abs/core/LinHES-system/fix_myth_mount.py51
-rw-r--r--abs/core/LinHES-system/fix_myth_mount.sh22
-rw-r--r--abs/core/LinHES-system/lh_system_all_host_update8
-rw-r--r--abs/core/LinHES-system/lh_system_backup_job64
-rw-r--r--abs/core/LinHES-system/lh_system_host_update56
-rw-r--r--abs/core/LinHES-system/lh_system_restore_job76
-rwxr-xr-xabs/core/LinHES-system/myth_mtc.py59
-rw-r--r--abs/core/LinHES-system/set_windowmanager.sh8
-rw-r--r--abs/core/certmaster/PKGBUILD8
-rw-r--r--abs/core/certmaster/certmaster.install2
-rw-r--r--abs/core/dcron/PKGBUILD62
-rw-r--r--abs/core/dcron/__changelog2
-rwxr-xr-xabs/core/dcron/crond37
-rw-r--r--abs/core/dcron/dcron-3.1.patch33
-rw-r--r--abs/core/dcron/dcron-logname.patch25
-rw-r--r--abs/core/dcron/dcron.conf.d4
-rw-r--r--abs/core/dcron/dcron.install5
-rw-r--r--abs/core/dcron/dcron.rc.d47
-rw-r--r--abs/core/dcron/root.crontab12
-rwxr-xr-xabs/core/dcron/run-cron14
-rw-r--r--abs/core/e16_theme_settings/PKGBUILD5
-rw-r--r--abs/core/func/PKGBUILD6
-rw-r--r--abs/core/func/msg.cfg7
-rw-r--r--abs/core/func/pacman.py2
-rw-r--r--abs/core/linhes-scripts/PKGBUILD8
-rw-r--r--abs/core/linhes-scripts/acl_fix_fstab.py (renamed from abs/core/certmaster/acl_fix_fstab.py)27
-rw-r--r--abs/core/linhes-scripts/find_orphans.py238
-rw-r--r--abs/core/linhes-scripts/linhes-scripts.install7
-rw-r--r--abs/core/lirc/PKGBUILD6
-rw-r--r--abs/core/lirc/__changelog1
-rw-r--r--abs/core/lirc/lirc.install2
-rw-r--r--abs/core/media_dirs/PKGBUILD8
-rw-r--r--abs/core/media_dirs/media_dirs.install2
-rw-r--r--abs/core/mythtv/stable-0.24/mythplugins/PKGBUILD10
-rw-r--r--abs/core/mythtv/stable-0.24/mythplugins/mythburn.py.patch2
-rw-r--r--abs/core/perl_modules/perl-json/PKGBUILD28
-rwxr-xr-xabs/core/runit-scripts/PKGBUILD2
-rwxr-xr-xabs/core/runit-scripts/runitscripts/12
-rwxr-xr-xabs/core/runit-scripts/runitscripts/services/lircd/run4
-rw-r--r--abs/core/supplemental-web/PKGBUILD12
-rw-r--r--abs/core/supplemental-web/cgi/bestart.cgi6
-rw-r--r--abs/core/supplemental-web/cgi/bestop.cgi6
-rw-r--r--abs/core/supplemental-web/cgi/extra.cfg.txt7
-rw-r--r--abs/core/supplemental-web/contents/count.py11
-rw-r--r--abs/core/supplemental-web/contents/docs.html4
-rw-r--r--abs/core/supplemental-web/contents/error/hobbit.html4
-rw-r--r--abs/core/supplemental-web/contents/error/phpadmin.html2
-rw-r--r--abs/core/supplemental-web/contents/header.jpg.mvbin88341 -> 0 bytes
-rw-r--r--abs/core/supplemental-web/contents/process.py40
-rw-r--r--abs/core/supplemental-web/notify.py29
-rw-r--r--abs/core/v4l-dvb/PKGBUILD35
-rw-r--r--abs/core/v4l-dvb/config506
-rw-r--r--abs/core/wmaker_settings/GNUstep/Defaults/WMState13
-rw-r--r--abs/core/wmaker_settings/PKGBUILD4
-rw-r--r--abs/core/xdotool/PKGBUILD3
-rw-r--r--abs/core/xymon/PKGBUILD10
-rw-r--r--abs/core/xymon/hbnotes.py11
-rw-r--r--abs/core/xymon/hobbit-myth-orphan.sh86
-rw-r--r--abs/core/xymon/hobbit_myth_data.py2
-rw-r--r--abs/core/xymon/xymon.install2
65 files changed, 902 insertions, 963 deletions
diff --git a/abs/core/LinHES-config/PKGBUILD b/abs/core/LinHES-config/PKGBUILD
index 21b1614..769e992 100644
--- a/abs/core/LinHES-config/PKGBUILD
+++ b/abs/core/LinHES-config/PKGBUILD
@@ -1,6 +1,6 @@
pkgname=LinHES-config
pkgver=2.3
-pkgrel=55
+pkgrel=57
conflicts=(MythVantage-config MythVantage-config-dev LinHES-config-dev LinHes-config )
pkgdesc="Install and configure your system"
depends=('bc' 'libstatgrab' 'mysql-python' 'expect' 'curl' 'dnsutils' 'parted'
@@ -101,7 +101,7 @@ build() {
install -m 0755 issue $startdir/pkg/etc/issue
}
-md5sums=('f6bca2af75ddb0902f0fa9ff4b6e4fd7'
+md5sums=('64fad755c12f8eb12940e216e403354e'
'16b98fcb3753ef6cfc35075c326d30e4'
'e36da536dd651ef182e7642337889e77'
'985891a43f7c4c983eb2a362162f1a0f'
diff --git a/abs/core/LinHES-config/mv_install.py b/abs/core/LinHES-config/mv_install.py
index 85220cf..9763522 100755
--- a/abs/core/LinHES-config/mv_install.py
+++ b/abs/core/LinHES-config/mv_install.py
@@ -555,9 +555,9 @@ def create_fstab(extralines):
fstab_list.append(line)
line = '''/dev/sr0 /media/cdrom auto ro,user,noauto,unhide 0 0\n'''
fstab_list.append(line)
- line = '''UUID=ROOTUID / auto defaults,noatime,acl 0 1\n'''
+ line = '''UUID=ROOTUID / auto defaults,noatime 0 1\n'''
fstab_list.append(line)
- line = '''UUID=DATAUID %s auto defaults,noatime,acl 0 1\n''' %(data_config.DATAMOUNT)
+ line = '''UUID=DATAUID %s auto defaults,noatime 0 1\n''' %(data_config.DATAMOUNT)
fstab_list.append(line)
line = '''UUID=SWAPUID swap swap defaults 0 0 \n'''
fstab_list.append(line)
@@ -577,6 +577,34 @@ def find_uuid(partition):
logging.info("The uuid is %s", uuid)
return uuid.strip()
+def acl_options(partition):
+ logging.info("Finding mount options for %s...", partition)
+ acl_fs_list=["ext3","ext4"]
+ options = "defaults,noatime"
+ cmd = "/sbin/fsck -N /dev/%s" %partition
+
+ cmdoutput = runcmd(cmd)[1]
+ output = cmdoutput.split("\n")
+ fs_map=[]
+ for i in output:
+ if i.startswith("["):
+ split_line=i.split()
+ #find mount_p and remove the last char
+ mount_p = split_line[3][:-1]
+ fstype = split_line[4].split(".")[1]
+ append_tuple=(mount_p,fstype)
+ fs_map.append(append_tuple)
+
+ rc = False
+ print fs_map
+ for i in fs_map:
+ if i[0] == "/dev/%s" %partition:
+ if i[1] in acl_fs_list:
+ rc=True
+ logging.info("Will add acl to the list of options: %s ", rc )
+ return rc
+
+
def pick_out_vg():
logging.info("Searching for Volume Groups in old fstab")
vglines = []
@@ -619,9 +647,11 @@ def fstab_it(install_type):
logging.info("____UUID check for %s", "data")
datauuid = find_uuid(hostoptions["datapartition"])
+ datacl = acl_options(hostoptions["datapartition"])
logging.info("____UUID check for %s", "root")
rootuuid = find_uuid(hostoptions["rootpartition"])
+ rootacl = acl_options(hostoptions["rootpartition"])
fstabfile = data_config.MOUNTPOINT+"/etc/fstab"
logging.info("Correcting UUID's in %s", fstabfile)
@@ -636,6 +666,9 @@ def fstab_it(install_type):
logging.debug(" Found Root fstab line:")
logging.debug( templine)
templine[0] = "UUID=%s" %(rootuuid)
+ if rootacl:
+ templine[3] = templine[3]+",acl"
+
newline = ''
for i in templine:
newline+=i
@@ -649,6 +682,8 @@ def fstab_it(install_type):
logging.debug(" Found DATA mount")
logging.debug( templine)
templine[0] = "UUID=%s" %(datauuid)
+ if datacl:
+ templine[3] = templine[3]+",acl"
newline = ''
for i in templine:
newline+=i
diff --git a/abs/core/LinHES-system/LinHES-session b/abs/core/LinHES-system/LinHES-session
index 626d346..e4833fa 100755
--- a/abs/core/LinHES-system/LinHES-session
+++ b/abs/core/LinHES-system/LinHES-session
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
. /etc/profile
. /etc/systemconfig
@@ -218,6 +218,7 @@ function first_configure_mv(){
then
if [ -f ~/.configure ]
then
+ msg "This is the first time starting MythTV.\nThe MythTV backend process will be stopped for setup."
#for now skip these
#autocard.py -g &
#MythVantage -b
@@ -227,11 +228,14 @@ function first_configure_mv(){
STATUS=$?
if [ ! $STATUS = 2 ]
then
- /usr/bin/backend_control.sh stop BE 127.0.0.1
- /usr/local/bin/mythtv-setup
- /usr/bin/backend_control.sh start BE 127.0.0.1
+ /usr/MythVantage/bin/backend_control.sh stop BE 127.0.0.1
+ msg "MythTV setup is starting.\nPlease follow the steps for adding tuners and guide data."
+ /usr/bin/taskset -c 0 /usr/bin/mythtv-setup
+ /usr/MythVantage/bin/backend_control.sh start BE 127.0.0.1
fi
- rm ~/.configure
+ nice -n 19 mythfilldatabase --quiet &
+ msg "Guide data is being loaded. \nUntil this completes \nsome shows will appear as "unknown" \nin the program guide."
+ rm -f ~/.configure
fi
fi
@@ -275,7 +279,14 @@ function run_myth(){
else
killall -9 irexec
/usr/bin/irexec -d
- $STARTCMD 2>&1 &
+
+ if [ x$STARTUP_STYLE = xmythvantage ]
+ then
+ $STARTCMD 2>&1
+ else
+ $STARTCMD 2>&1 &
+ fi
+
fi
fi
}
diff --git a/abs/core/LinHES-system/LinHES.install b/abs/core/LinHES-system/LinHES.install
index 0f6689e..c9950f2 100644
--- a/abs/core/LinHES-system/LinHES.install
+++ b/abs/core/LinHES-system/LinHES.install
@@ -12,11 +12,14 @@ MVDIR=/usr/LH/bin
# ln -s $MVDIR/backup_job /etc/cron.daily/backup_cron
# ln -s $MVDIR/update_system /etc/cron.daily/xupdate_system_cron
# ln -s $MVDIR/repo_sync.sh /etc/cron.daily/zrepo_sync.sh
- if [ ! -e /etc/cron.daily/myth_mtc.sh ]
+ if [ ! -e /etc/cron.daily/myth_mtc ]
then
- ln -s $MVDIR/myth_mtc.sh /etc/cron.daily/myth_mtc.sh
+ ln -s $MVDIR/myth_mtc.sh /etc/cron.daily/myth_mtc
+ fi
+ if [ -e /etc/cron.daily/myth_mtc.sh ]
+ then
+ rm -f /etc/cron.daily/myth_mtc.sh
fi
-
#LINE="mythtv ALL = NOPASSWD: /sbin/sv stop mythbackend"
LINE="mythtv ALL=(ALL) NOPASSWD: ALL"
LINE1="%wheel ALL=(ALL) NOPASSWD: ALL"
@@ -55,6 +58,9 @@ sed -i.orig 's/^Mod1 x :.*xterm.*$/Mod1 x :ExecCommand tvterm.sh/g' \
~mythtv/.fluxbox/keys
pkill -HUP fluxbox
+
+
+
}
# arg 1: the new package version
diff --git a/abs/core/LinHES-system/PKGBUILD b/abs/core/LinHES-system/PKGBUILD
index d0012c1..ef5b2e8 100755
--- a/abs/core/LinHES-system/PKGBUILD
+++ b/abs/core/LinHES-system/PKGBUILD
@@ -1,16 +1,26 @@
pkgname=LinHES-system
pkgver=2
-pkgrel=13
+pkgrel=22
arch=('i686')
MVDIR=$startdir/pkg/usr/LH
BINDIR=$startdir/pkg/usr/bin
install=LinHES.install
pkgdesc="scripts and things related to having an automated system"
-depends=(linhes-sounds xdotool fluxbox tilda keylaunch python_aosd)
+depends=(linhes-sounds xdotool fluxbox tilda keylaunch python_aosd 'linhes-scripts>=7-24' 'runit-scripts>=2.1.1-43')
backup=(etc/modprobe.d/alsa-base)
-binfiles="LinHES-start optimize_mythdb.py myth_mtc.py myth_mtc.sh LinHES-run firstboot.sh load-modules-mythvantage.sh unclutter-toggle.sh tvterm.sh myth_mtc.lr smolt.cron mythfrontend-start set_windowmanager.sh myth_status.py myth_status.sh xmsg.py install_supplemental_service.sh"
+binfiles="LinHES-start optimize_mythdb.py
+ myth_mtc.py myth_mtc.sh LinHES-run
+ firstboot.sh load-modules-mythvantage.sh
+ unclutter-toggle.sh tvterm.sh smolt.cron
+ mythfrontend-start set_windowmanager.sh
+ myth_status.py myth_status.sh
+ xmsg.py install_supplemental_service.sh
+ lh_system_backup_job
+ lh_system_restore_job
+ lh_system_host_update
+ lh_system_all_host_update"
-source=(LinHES-session LinHES-profile.sh $binfiles alsa-base)
+source=(LinHES-session LinHES-profile.sh $binfiles alsa-base myth_mtc.lr)
build() {
cd $startdir/src
@@ -37,23 +47,27 @@ build() {
mkdir $startdir/pkg/etc/logrotate.d
cp $startdir/myth_mtc.lr $startdir/pkg/etc/logrotate.d
}
-md5sums=('989c22c2eae00501f5b46f215dbf5e59'
+md5sums=('71a1fc9b01476b0b2c30596107eeff75'
'5881bdb43d578ec3a79d1f77ea58a3db'
'a875ee97f86e46f34a741c2bc455f894'
'76b2637cac0452b3acdbeeb4e8a5474b'
- '6a42d3799fad2ebffac2fbf2411511ed'
+ 'd1f27cb422010077c841376526fe46ea'
'2ef9f945e034119f77d9b6beb17e4fa5'
'f7ecc552a2823cae63d75f58dc7435c4'
'18a884a73344ff6eb74f63b49745e0f5'
'dc3eef2a624754e16805d72bbe488b67'
'dc0be354ce77ba2b89868fc29b942c43'
'542e670e78d117657f93141e9689f54d'
- 'f1870a9522c79e6b248fcbf81dec3280'
'abe887472a170bd1a8e6da6a7b7e93e4'
'752488eb8bfb672ce0e4c924f7faf3d1'
- 'dae4dfb638b11c8c79fb1424a60b762a'
+ 'ba351b92e69bcaf26a9bf80417b09c3c'
'361bf81a6a117d61c3bc32dda91c4cb9'
'ce72aad1fc66c575f863d4bfbf65ce16'
'd03aedeeeda0f5e9c1eb437411c88477'
'94ce8f1d5085c0db7b267db8c2e9a3ff'
- 'eb879fee9603a05d5420d4ce8ed9e450')
+ '3db82bd7b9234fc941e4a53b464e0d46'
+ '9c2294ccfd5359583497a6b03d918a27'
+ '859a80ddb4c234506379c605114c1343'
+ '47e093e8cfe4b5b96602358e1f540832'
+ 'eb879fee9603a05d5420d4ce8ed9e450'
+ 'f1870a9522c79e6b248fcbf81dec3280')
diff --git a/abs/core/LinHES-system/fix_myth_mount.py b/abs/core/LinHES-system/fix_myth_mount.py
new file mode 100644
index 0000000..9f3cc54
--- /dev/null
+++ b/abs/core/LinHES-system/fix_myth_mount.py
@@ -0,0 +1,51 @@
+#!/usr/bin/python2
+import os
+import sys
+cmd="cp -f /etc/fstab /etc/fstab.backup.pre_acl"
+os.system(cmd)
+f = open('/etc/fstab', 'r')
+fstab=f.readlines()
+f.close()
+mp='/data/mnt/d1'
+
+def check_fstab_mount():
+ #first check if media/d1 is in list, if not add it.
+ newfstab=[]
+ mnt_in_fstab=False
+ for line in fstab:
+ split_line=line.split()
+ try:
+ if split_line[1] == mp :
+ print "found mountpoint if fstab"
+ mnt_in_fstab = True
+ break
+ except: pass
+ return mnt_in_fstab
+
+def add_mnt_to_fstab():
+ newfstab=[]
+ for line in fstab:
+ newfstab.append(line)
+ split_line=line.split()
+ try:
+ if split_line[1] == "/myth":
+ split_line[1] = mp
+ new_line='\t'.join(split_line)+"\n"
+ newfstab.append(new_line)
+ except:
+ pass
+
+ return newfstab
+
+
+
+if check_fstab_mount() == False:
+ print "I need to add it"
+ newfstab=add_mnt_to_fstab()
+ f = open('/tmp/fstab', 'w')
+ for i in newfstab:
+ f.write(i)
+ #f.write("\n")
+ f.close()
+
+
diff --git a/abs/core/LinHES-system/fix_myth_mount.sh b/abs/core/LinHES-system/fix_myth_mount.sh
new file mode 100644
index 0000000..2ed9783
--- /dev/null
+++ b/abs/core/LinHES-system/fix_myth_mount.sh
@@ -0,0 +1,22 @@
+#!/bin/sh
+function checkmount {
+ mounted=1
+ for i in `cat /proc/mounts | cut -d' ' -f2`; do
+ if [ "x$1" = "x$i" ]; then
+ mounted=0
+ break
+ fi
+
+ done
+ return $mounted
+}
+
+checkmount $1
+rc=$?
+
+if [ $rc == 0 ]
+then
+ echo "fs is mounted"
+else
+ echo "fs is not mounted"
+fi \ No newline at end of file
diff --git a/abs/core/LinHES-system/lh_system_all_host_update b/abs/core/LinHES-system/lh_system_all_host_update
new file mode 100644
index 0000000..98fe668
--- /dev/null
+++ b/abs/core/LinHES-system/lh_system_all_host_update
@@ -0,0 +1,8 @@
+#!/bin/bash
+results=`cat /data/srv/xymon/server/etc/hosts.cfg|grep -v ^#|awk '{print $2}' `
+for i in $results
+do
+ echo "$i"
+ echo "-------------------------------------------"
+ sudo /usr/bin/func $i call pacman update_system $1
+done
diff --git a/abs/core/LinHES-system/lh_system_backup_job b/abs/core/LinHES-system/lh_system_backup_job
new file mode 100644
index 0000000..3abd5f9
--- /dev/null
+++ b/abs/core/LinHES-system/lh_system_backup_job
@@ -0,0 +1,64 @@
+#!/bin/bash
+#process that uses this system backup script
+# - myth_mtc.py
+# - supplemental web, process.py backup
+#
+echo "#########################################################"
+echo "Starting backup "
+. /etc/profile
+. /etc/systemconfig
+BACKUPDIR=/myth/system_backups
+DATE=`date +%F_%H-%M`
+mkdir -p $BACKUPDIR/$DATE
+
+#backup db
+pacman -Q mysql 2>/dev/null
+if [ $? = 0 ]
+then
+ mysqldump mythconverg > $BACKUPDIR/$DATE/mythconverg
+ mysqldump ncid > $BACKUPDIR/$DATE/ncid
+fi
+
+#backup etc
+cp -rp /etc $BACKUPDIR/$DATE/etc
+cp -rp /var/lib/oss $BACKUPDIR/$DATE/oss
+
+#backup func keys
+cp -rp /data/srv/func $BACKUPDIR/$DATA/func
+
+#make_zip file
+cd $BACKUPDIR
+tar -zcvf $BACKUPDIR/backup.$DATE.tgz $DATE
+
+if [ -d $BACKUPDIR/$DATE ]
+then
+ rm -rf $BACKUPDIR/$DATE
+fi
+
+if [ -f /data/srv/hobbit/server/ext/hbnotes.py ]
+then
+ /data/srv/hobbit/server/ext/hbnotes.py
+ chown nobody:nobody /data/srv/httpd/htdocs/hobbit/notes/* 2> /dev/null >/dev/null
+
+
+fi
+
+
+#Remote copy
+if [ x$RemoteBackup = x1 ]
+then
+ localRemoteCheck=`echo $RemoteBackupDir | cut -d: -f1`
+ if [ x$localRemoteCheck = xdir ]
+ then
+ localRemotedir=`echo $RemoteBackupDir | cut -d: -f2`
+ cmd="cp $BACKUPDIR/backup.$DATE.tgz $localRemotedir"
+ echo "copying$BACKUPDIR/backup.$DATE.tgz to $localRemotedir "
+ else
+ /usr/bin/func ${RemoteBackupDir} copyfile -f $BACKUPDIR/backup.$DATE.tgz --remotepath $BACKUPDIR/backup.$DATE.tgz
+
+ echo "copying$BACKUPDIR/backup.$DATE.tgz to ${RemoteBackupDir}:/data/database_backup/"
+ fi
+ $cmd
+fi
+
+echo "#########################################################"
diff --git a/abs/core/LinHES-system/lh_system_host_update b/abs/core/LinHES-system/lh_system_host_update
new file mode 100644
index 0000000..1a4d714
--- /dev/null
+++ b/abs/core/LinHES-system/lh_system_host_update
@@ -0,0 +1,56 @@
+#!/bin/bash
+# Process that call this script
+# func update
+# supplemental web
+echo "#####################################################"
+echo "Starting update"
+. /etc/profile
+
+if [ x$1 = x ]
+then
+ . /etc/systemconfig
+else
+Hostupdateplan=$1
+fi
+
+
+case $Hostupdateplan in
+ "Myth_only")
+ echo "Updating myth packages"
+ postfix=`cat $INSTALL_DIR/usr/local/share/mythtv/.releasetype`
+ for mythl in mythphone mytharchive mythbrowser mythnews mythgame mythflix mythweather mythcontrols mythgallery mythmovietime mythmusic mythsmolt mythvideo mythweb mythtv
+ do
+ mythlist="$mythlist $mythl$postfix"
+ done
+
+ pacman -Sy
+ list=`pacman -Qu $pkg |grep Targets`
+ for pkg in LinHES-config LinHES-system mythinstall $mythlist
+ do
+ echo $list|grep -q $pkg
+ if [ $? = 0 ]
+ then
+ echo "Updating $pkg"
+ pacman --noconfirm -S $pkg
+ else
+ echo "$pkg is up to date"
+ fi
+ done
+ ;;
+ "All")
+ echo ""
+ echo "Updating ALL packages"
+ pacman -Sy
+ pacman --noconfirm -Sfu
+ ;;
+ "None")
+ echo ""
+ echo "Updating NO packages"
+ ;;
+ *) echo ""
+ echo "Unknown $Hostupdateplan, skipping updates"
+ ;;
+esac
+
+
+echo "##################################################################################"
diff --git a/abs/core/LinHES-system/lh_system_restore_job b/abs/core/LinHES-system/lh_system_restore_job
new file mode 100644
index 0000000..9c66e2a
--- /dev/null
+++ b/abs/core/LinHES-system/lh_system_restore_job
@@ -0,0 +1,76 @@
+#!/bin/bash
+# This script is used to perform a quick restore of a database that was backed up via the nightly system backup
+# The restore only does the database it does NOT restore system files (even if they are in the backup file)
+#
+BACKUPDIR=/myth/system_backups
+backupfile=$1
+
+function usage(){
+ echo "------------------------------------------------------"
+ echo "This program will restore the database from a system backup."
+
+ echo "Files are expected to be in the $BACKUPDIR"
+ echo "usage:"
+ echo ""
+ echo "lh_system_restore_job \$filename [yes]"
+ echo ""
+ echo "example: lh_system_restore_job backup.2011-12-22_15-34.tgz "
+ echo ""
+ echo ""
+
+ echo "If the script is passed a second argument, it will not cleanup the the restore dir."
+ echo "------------------------------------------------------"
+
+ exit 1
+ }
+
+
+
+if [ x$backupfile = x ]
+then
+ usage
+fi
+
+. /etc/profile
+
+RESTOREDIR=$BACKUPDIR/restore
+DIR=`echo $backupfile |cut -d. -f2`
+CSQL="create database mythconverg;"
+DSQL="drop database mythconverg; "
+MYSQL="mysql -u mythtv -pmythtv"
+
+
+
+mkdir -p $RESTOREDIR
+cp $BACKUPDIR/$backupfile $RESTOREDIR
+cd $RESTOREDIR && tar -xf $backupfile && cd $DIR
+
+if [ -f mythconverg ]
+then
+ #drop the db
+ $MYSQL -e "$DSQL"
+ #create the db
+ $MYSQL -e "$CSQL"
+ #restore the database_backup
+ echo "Restoring the database $DIR"
+ $MYSQL mythconverg < mythconverg
+ if [ $? = 0 ]
+ then
+ echo "Done"
+ else
+ echo "An error occured"
+ fi
+ else
+ echo "Couldn't file a file to restore"
+fi
+
+
+#cleanup
+if [ x$2 = x ]
+then
+ echo "Cleaning up the restore dir"
+ rm -rf $RESTOREDIR/$DIR
+ rm -f $RESTOREDIR/$backupfile
+else
+ echo "Not doing a cleanup of $RESTOREDIR"
+fi
diff --git a/abs/core/LinHES-system/myth_mtc.py b/abs/core/LinHES-system/myth_mtc.py
index 1ed6c88..6fd53a7 100755
--- a/abs/core/LinHES-system/myth_mtc.py
+++ b/abs/core/LinHES-system/myth_mtc.py
@@ -10,18 +10,22 @@ import datetime,time
-#try:
-from MythTV import MythBE
-mythtv = MythBE()
-#except:
-# mythtv = None
+try:
+ from MythTV import MythBE
+ mythtv = MythBE()
+except:
+ mythtv = None
#print mythtv.db.getSetting( 'Theme', socket.gethostname())
def optimize():
- cursor = mythtv.db.cursor()
- cursor.execute("SHOW tables")
- result = cursor.fetchall()
+ try:
+ cursor = mythtv.db.cursor()
+ cursor.execute("SHOW tables")
+ result = cursor.fetchall()
+ except:
+ print "Problem getting tables from database"
+ return
ops=["REPAIR","OPTIMIZE","ANALYZE"]
for row in result:
ctable=row[0]
@@ -32,7 +36,10 @@ def optimize():
def upcoming_check():
- upcoming = mythtv.getUpcomingRecordings()
+ try:
+ upcoming = mythtv.getUpcomingRecordings()
+ except:
+ return True
try:
show=str(upcoming[0])
show=show.strip()
@@ -52,10 +59,14 @@ def upcoming_check():
def schemalock_check():
- c = mythtv.db.cursor()
- c.execute("select count(*) from schemalock")
- results=c.fetchone()
- schemalock=results[0]
+ try:
+ c = mythtv.db.cursor()
+ c.execute("select count(*) from schemalock")
+ results=c.fetchone()
+ schemalock=results[0]
+ except:
+ return True
+
if schemalock == 0:
return True
else:
@@ -63,9 +74,12 @@ def schemalock_check():
return False
def job_check():
- c = mythtv.db.cursor()
- c.execute("select count(*) from jobqueue where status = 4")
- results=c.fetchone()
+ try:
+ c = mythtv.db.cursor()
+ c.execute("select count(*) from jobqueue where status = 4")
+ results=c.fetchone()
+ except:
+ return True
jobs= results[0]
if jobs == 0 :
return True
@@ -75,9 +89,12 @@ def job_check():
def in_use():
- c = mythtv.db.cursor()
- c.execute("select count(*) from inuseprograms")
- results=c.fetchone()
+ try:
+ c = mythtv.db.cursor()
+ c.execute("select count(*) from inuseprograms")
+ results=c.fetchone()
+ except:
+ return True
prginuse=results[0]
if prginuse == 0 :
return True
@@ -119,10 +136,10 @@ def run_stuff():
optimize()
print "Running backup"
- os.system('/usr/LH/bin/backup_job')
+ os.system('/usr/LH/bin/lh_system_backup_job')
print "Running system_update"
- os.system('/usr/LH/bin/update_system')
+ os.system('/usr/LH/bin/lh_system_host_update')
continue_loop=False
else:
continue_loop=True
diff --git a/abs/core/LinHES-system/set_windowmanager.sh b/abs/core/LinHES-system/set_windowmanager.sh
index 5c1150d..3d0cdb2 100644
--- a/abs/core/LinHES-system/set_windowmanager.sh
+++ b/abs/core/LinHES-system/set_windowmanager.sh
@@ -20,7 +20,7 @@ if [ x$windowmanager = x ]
then
echo
echo "Usage: "
- echo " set_windowmanger.sh WINDOWMANAGER STARTUP_STYLE"
+ echo " set_windowmanager.sh WINDOWMANAGER STARTUP_STYLE"
echo
echo "Valid WINDOWMANAGER options are:"
echo " default"
@@ -36,9 +36,11 @@ then
echo "If STARTUP_STYLE is not given, then the default will be used."
echo
echo "Example: "
- echo " set_windowmanger.sh enlightenment mythvantage"
+ echo " set_windowmanager.sh enlightenment mythvantage"
echo
-
+ echo " "
+ echo "if using enlightenment or windowmaker, please ensure that the alt_wm group is installed"
+ echo "pacman -Sy alt_wm"
exit 0
fi
diff --git a/abs/core/certmaster/PKGBUILD b/abs/core/certmaster/PKGBUILD
index 3ce72f7..e3b9df1 100644
--- a/abs/core/certmaster/PKGBUILD
+++ b/abs/core/certmaster/PKGBUILD
@@ -1,10 +1,10 @@
pkgname=certmaster
pkgver=0.28
-pkgrel=1
+pkgrel=3
pkgdesc="certmaster"
url="https://fedorahosted.org/certmaster/ "
license="gpl"
-depends=(pyopenssl)
+depends=('pyopenssl' 'linhes-scripts>=7-24' )
makedepends=()
conflicts=()
replaces=()
@@ -12,7 +12,7 @@ moddir="pkg/usr/lib/python2.6/site-packages/func/minion/modules/"
backup=('etc/certmaster/certmaster.conf' 'etc/certmaster/minion.conf')
install=certmaster.install
-source=($pkgname-$pkgver.tar.gz certmaster.conf minion.conf acl_fix_fstab.py logrotate-certmaster.conf)
+source=($pkgname-$pkgver.tar.gz certmaster.conf minion.conf logrotate-certmaster.conf)
arch=('i686')
build() {
@@ -23,7 +23,6 @@ build() {
install -m755 -D minion.conf $startdir/pkg/etc/certmaster/minion.conf
install -m755 -D certmaster.conf $startdir/pkg/etc/certmaster/certmaster.conf
install -m755 -D logrotate-certmaster.conf $startdir/pkg/etc/logrotate.d/certmaster.conf
- install -m755 -D acl_fix_fstab.py $startdir/pkg/usr/MythVantage/bin/acl_fix_fstab.py
mkdir -p $startdir/pkg/var/log/certmaster
cd $startdir/pkg
find ./ -name "*.pyc" -print | xargs rm -f
@@ -31,5 +30,4 @@ build() {
md5sums=('f5acc9ff1efa34971296e26d794c5b35'
'953ff601e5381b457383e7a3c4928192'
'be7bd532ae103ab3c0048980314b4fd9'
- '214e34c095f6f29277197a2a6666f8b2'
'6bc28ccd331a6c4c05e0a9c9755a848f')
diff --git a/abs/core/certmaster/certmaster.install b/abs/core/certmaster/certmaster.install
index e0dac8c..b30f7ee 100644
--- a/abs/core/certmaster/certmaster.install
+++ b/abs/core/certmaster/certmaster.install
@@ -13,7 +13,7 @@ post_install() {
then
mkdir -p /var/log/certmaster
fi
- /usr/MythVantage/bin/acl_fix_fstab.py
+ /usr/LH/bin/acl_fix_fstab.py
mount -o remount /
if [ ! -e /etc/pki/certmaster/ca ]
then
diff --git a/abs/core/dcron/PKGBUILD b/abs/core/dcron/PKGBUILD
index 0003bf7..26c1a7a 100644
--- a/abs/core/dcron/PKGBUILD
+++ b/abs/core/dcron/PKGBUILD
@@ -1,50 +1,44 @@
# Maintainer: Paul Mattal <paul.archlinux.org>
pkgname=dcron
-pkgver=4.4
-pkgrel=3
+pkgver=4.5
+pkgrel=2
pkgdesc="dillon's lightweight cron daemon"
-arch=(i686 x86_64)
+arch=('i686' 'x86_64')
license=('GPL')
url="http://www.jimpryor.net/linux/dcron"
-backup=(var/spool/cron/root etc/conf.d/crond)
-depends=('glibc')
+backup=('var/spool/cron/root' 'etc/conf.d/crond')
+depends=('bash')
provides=('cron')
-groups=('base')
-source=("http://www.jimpryor.net/linux/releases/${pkgname}-${pkgver}.tar.gz"
- 'dcron-logname.patch'
- 'dcron.rc.d'
- 'dcron.conf.d')
-md5sums=('02d848ba043a9df5bf2102a9f4bc04bd'
- 'c6054421b48100f7a2a7a36e2d33c92a'
- '73693cdd59df526e729cdec99c5ed8fb'
- '5bfa07beb54d0beaf3f38225e4d5a9fa')
+conflicts=('cron')
+source=("http://www.jimpryor.net/linux/releases/${pkgname}-${pkgver}.tar.gz")
+md5sums=('078833f3281f96944fc30392b1888326')
optdepends=('smtp-server: sending cron job output via email')
install=$pkgname.install
build() {
- cd "$srcdir/${pkgname}-${pkgver}" || return 1
+ cd "$srcdir/${pkgname}-${pkgver}"
- # patch to add LOGNAME environment variable
- patch -p1 -i $srcdir/dcron-logname.patch || return 1
+ # by default, any member of group "users" can edit their own crontab
+ make \
+ PREFIX=/usr \
+ CRONTAB_GROUP=users \
+ CRONTABS=/var/spool/cron \
+ CRONSTAMPS=/var/spool/cronstamps
+}
- # by default, any member of group "users" can edit their own crontab
- make \
- PREFIX=/usr \
- CRONTAB_GROUP=users \
- CRONTABS=/var/spool/cron \
- CRONSTAMPS=/var/spool/cronstamps \
- || return 1
- make DESTDIR="$pkgdir" install || return 1
+package() {
+ cd "$srcdir/${pkgname}-${pkgver}"
+ make DESTDIR="$pkgdir" install
- # install standard configuration and scripts
- install -d -m755 "$pkgdir/etc/cron."{hourly,daily,weekly,monthly} \
- || return 1
- install -D -m755 extra/run-cron "$pkgdir/usr/sbin/run-cron" || return 1
- install -D -m0600 extra/root.crontab "$pkgdir/var/spool/cron/root" \
- || return 1
+ # install standard configuration and scripts
+ install -d -m755 "$pkgdir/etc/cron."{hourly,daily,weekly,monthly}
- # install Arch configuration and launch scripts
- install -D -m755 "$srcdir/dcron.rc.d" "$pkgdir/etc/rc.d/crond" || return 1
- install -D -m0644 "$srcdir/dcron.conf.d" "$pkgdir/etc/conf.d/crond" || return 1
+ install -D -m755 extra/run-cron "$pkgdir/usr/sbin/run-cron"
+ install -D -m0600 extra/root.crontab "$pkgdir/var/spool/cron/root"
+ install -D -m755 extra/crond.rc "$pkgdir/etc/rc.d/crond"
+ install -D -m0644 extra/crond.conf "$pkgdir/etc/conf.d/crond"
+ install -D -m644 extra/crontab.vim "$pkgdir/usr/share/vim/vimfiles/ftplugin/crontab.vim"
+ sed -i -e 's=/var/spool/cron/cronstamps=/var/spool/cronstamps=' extra/prune-cronstamps
+ install -D -m755 extra/prune-cronstamps "$pkgdir/etc/cron.d/prune-cronstamps"
}
diff --git a/abs/core/dcron/__changelog b/abs/core/dcron/__changelog
index e6464b6..8e4bced 100644
--- a/abs/core/dcron/__changelog
+++ b/abs/core/dcron/__changelog
@@ -1,4 +1,4 @@
-Added an every ten minutes dir + job
+Added an every ten minutes dir + job by .install file
grep -q cron.tenminutes /var/spool/cron/root
if [ $? = 1 ]
diff --git a/abs/core/dcron/crond b/abs/core/dcron/crond
deleted file mode 100755
index ef80db3..0000000
--- a/abs/core/dcron/crond
+++ /dev/null
@@ -1,37 +0,0 @@
-#!/bin/bash
-
-. /etc/rc.conf
-. /etc/rc.d/functions
-
-PID=`pidof -o %PPID /usr/sbin/crond`
-case "$1" in
- start)
- stat_busy "Starting Cron Daemon"
- [ -z "$PID" ] && /usr/sbin/crond >>/var/log/crond 2>&1
- if [ $? -gt 0 ]; then
- stat_fail
- else
- PID=`pidof -o %PPID /usr/sbin/crond`
- echo $PID >/var/run/crond.pid
- add_daemon crond
- stat_done
- fi
- ;;
- stop)
- stat_busy "Stopping Cron Daemon"
- [ ! -z "$PID" ] && kill $PID &>/dev/null
- if [ $? -gt 0 ]; then
- stat_fail
- else
- rm_daemon crond
- stat_done
- fi
- ;;
- restart)
- $0 stop
- $0 start
- ;;
- *)
- echo "usage: $0 {start|stop|restart}"
-esac
-exit 0
diff --git a/abs/core/dcron/dcron-3.1.patch b/abs/core/dcron/dcron-3.1.patch
deleted file mode 100644
index 975d51c..0000000
--- a/abs/core/dcron/dcron-3.1.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-diff -Naur dcron-orig/defs.h dcron/defs.h
---- dcron-orig/defs.h 2006-04-29 10:20:58.000000000 -0700
-+++ dcron/defs.h 2006-05-04 18:40:05.000000000 -0700
-@@ -28,7 +28,7 @@
- #define arysize(ary) (sizeof(ary)/sizeof((ary)[0]))
-
- #ifndef CRONTABS
--#define CRONTABS "/var/spool/cron/crontabs"
-+#define CRONTABS "/var/spool/cron"
- #endif
- #ifndef SCRONTABS
- #define SCRONTABS "/etc/cron.d"
-@@ -44,7 +44,7 @@
- #if defined(__DragonFly__)
- #define SENDMAIL "/usr/sbin/sendmail"
- #else
--#define SENDMAIL "/usr/lib/sendmail"
-+#define SENDMAIL "/usr/sbin/sendmail"
- #endif
- #endif
-
-diff -Naur dcron-orig/subs.c dcron/subs.c
---- dcron-orig/subs.c 2006-04-27 10:29:56.000000000 -0700
-+++ dcron/subs.c 2006-05-04 18:40:19.000000000 -0700
-@@ -79,7 +79,7 @@
-
- buf[0] = 0;
- if (useDate)
-- strftime(buf, 128, "%d-%b-%y %H:%M ", tp);
-+ strftime(buf, 128, "%d-%b-%Y %H:%M ", tp);
- vsnprintf(buf + strlen(buf), nmax, ctl, va);
- return(strlen(buf));
- }
diff --git a/abs/core/dcron/dcron-logname.patch b/abs/core/dcron/dcron-logname.patch
deleted file mode 100644
index c37c5f4..0000000
--- a/abs/core/dcron/dcron-logname.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-diff -aur dcron-4.4/chuser.c dcron-4.4.logname/chuser.c
---- dcron-4.4/chuser.c 2010-02-15 11:18:13.111967483 +0100
-+++ dcron-4.4.logname/chuser.c 2010-02-15 11:18:29.615531204 +0100
-@@ -25,6 +25,7 @@
- return(-1);
- }
- setenv("USER", pas->pw_name, 1);
-+ setenv("LOGNAME", pas->pw_name, 1);
- setenv("HOME", pas->pw_dir, 1);
- setenv("SHELL", "/bin/sh", 1);
-
-diff -aur dcron-4.4/crontab.1 dcron-4.4.logname/crontab.1
---- dcron-4.4/crontab.1 2010-02-15 11:18:13.111967483 +0100
-+++ dcron-4.4.logname/crontab.1 2010-02-15 11:19:48.295707950 +0100
-@@ -57,8 +57,8 @@
- .PP
- Nor does it do any special environment handling.
- A shell script is better-suited to doing that than a cron daemon.
--This cron daemon sets up only three environment variables: USER,
--HOME, and SHELL.
-+This cron daemon sets up only four environment variables: USER,
-+LOGNAME, HOME, and SHELL.
- .PP
- Our crontab format is roughly similar to that used by vixiecron.
- Individual fields may contain a time, a time range, a time range
diff --git a/abs/core/dcron/dcron.conf.d b/abs/core/dcron/dcron.conf.d
deleted file mode 100644
index 763c712..0000000
--- a/abs/core/dcron/dcron.conf.d
+++ /dev/null
@@ -1,4 +0,0 @@
-#
-# Parameters to be passed to crond
-#
-CROND_ARGS="-S -l info"
diff --git a/abs/core/dcron/dcron.install b/abs/core/dcron/dcron.install
index b3e90da..fb01dc9 100644
--- a/abs/core/dcron/dcron.install
+++ b/abs/core/dcron/dcron.install
@@ -10,7 +10,10 @@ post_upgrade() {
then
echo "0,10,20,30,40,50 * * * * /usr/sbin/run-cron /etc/cron.tenminutes" >> /var/spool/cron/root
fi
-
+ if [ ! -e /etc/cron.tenminutes ]
+ then
+ mkdir -p /etc/cron.tenminutes
+ fi
}
diff --git a/abs/core/dcron/dcron.rc.d b/abs/core/dcron/dcron.rc.d
deleted file mode 100644
index b1a5770..0000000
--- a/abs/core/dcron/dcron.rc.d
+++ /dev/null
@@ -1,47 +0,0 @@
-#!/bin/bash
-
-. /etc/rc.conf
-. /etc/rc.d/functions
-. /etc/conf.d/crond
-
-PID=$(pidof -o %PPID /usr/sbin/crond)
-case $1 in
-start)
- stat_busy "Starting Cron Daemon"
-
- # defaults to using syslog, and sendmail-ing cron output to local user
- # to mail output to remote address instead, add "-m user@host"
- # to CROND_ARGS in /etc/conf.d/crond
- if [[ -z $PID ]] && /usr/sbin/crond $CROND_ARGS; then
-
- PID=$(pidof -o %PPID /usr/sbin/crond)
- echo "$PID" > /var/run/crond.pid
- add_daemon crond
- stat_done
- else
- stat_fail
- exit 1
- fi
- ;;
-
-stop)
- stat_busy "Stopping Cron Daemon"
- if [[ ! -z $PID ]] && kill "$PID" &>/dev/null; then
- rm_daemon crond
- stat_done
- else
- stat_fail
- exit 1
- fi
- ;;
-
-restart)
- $0 stop
- $0 start
- ;;
-
-*)
- echo "Usage: $0 {start|stop|restart}" >&2
- exit 1
-
-esac
diff --git a/abs/core/dcron/root.crontab b/abs/core/dcron/root.crontab
deleted file mode 100644
index 726558f..0000000
--- a/abs/core/dcron/root.crontab
+++ /dev/null
@@ -1,12 +0,0 @@
-#
-# DO NOT EDIT THIS FILE MANUALLY!! USE crontab -e INSTEAD.
-#
-
-# <minute> <hour> <day> <month> <dow> <command>
-
-
-01 * * * * /usr/sbin/run-cron /etc/cron.hourly
-02 00 * * * /usr/sbin/run-cron /etc/cron.daily
-22 00 * * 0 /usr/sbin/run-cron /etc/cron.weekly
-42 00 1 * * /usr/sbin/run-cron /etc/cron.monthly
-
diff --git a/abs/core/dcron/run-cron b/abs/core/dcron/run-cron
deleted file mode 100755
index 51007a1..0000000
--- a/abs/core/dcron/run-cron
+++ /dev/null
@@ -1,14 +0,0 @@
-#!/bin/sh
-
-
-if [ -z $1 ]; then
- echo "Usage: $0 crondir"
- exit 1
-fi
-
-for cron in $1/* ; do
- if [ -x $cron ]; then
- $cron
- fi
-done
-unset cron
diff --git a/abs/core/e16_theme_settings/PKGBUILD b/abs/core/e16_theme_settings/PKGBUILD
index 9091efa..278c08a 100644
--- a/abs/core/e16_theme_settings/PKGBUILD
+++ b/abs/core/e16_theme_settings/PKGBUILD
@@ -1,13 +1,14 @@
pkgname=e16_theme_settings
pkgver=1.0
-pkgrel=7
+pkgrel=9
pkgdesc="Default settings for e16"
-depends=(enlightenment)
+depends=(enlightenment 'linhes-scripts>=7-24')
source=()
arch=('i686')
groups=(alt_wm)
install=e16.install
configdir=/data/
+backup=('data/e16_config_dir/e_config--0.0.cfg')
build() {
echo $startdir
mkdir -p $pkgdir/$configdir
diff --git a/abs/core/func/PKGBUILD b/abs/core/func/PKGBUILD
index 79bdf04..7366933 100644
--- a/abs/core/func/PKGBUILD
+++ b/abs/core/func/PKGBUILD
@@ -1,6 +1,6 @@
pkgname=func
pkgver=0.25
-pkgrel=5
+pkgrel=7
pkgdesc="fedora unifed network controller"
url=""
license="gpl"
@@ -37,8 +37,8 @@ build() {
md5sums=('892252004f122c61bb58bb4607553ffe'
'1e2905074203d5c0557f143a6c50c497'
'1393088fa64823606e0b1c02296041f4'
- '65a602524cb85773740840eaa513ce15'
+ '21f79d7395edc64b72db5576f9a7f384'
'5c62fad46fb95a14bc7093b506098e07'
'b02a733b7a74569e57521bc3708724a5'
'572bb6737cb03dee7e9d11ed40481bd2'
- '4f189262b2a686c5ac9485c6e5134045')
+ '28e141f04ccbdde1199b41888e102dc9')
diff --git a/abs/core/func/msg.cfg b/abs/core/func/msg.cfg
index b6de8b5..fed17a7 100644
--- a/abs/core/func/msg.cfg
+++ b/abs/core/func/msg.cfg
@@ -1,6 +1,11 @@
[default]
font_color=green
display_time=5000
-position=5
+position=1
font_type=Times New Roman Italic 48
+[middle]
+font_color=green
+display_time=5000
+position=4
+font_type=Times New Roman Italic 48
diff --git a/abs/core/func/pacman.py b/abs/core/func/pacman.py
index c8f2e13..ee9f9ea 100644
--- a/abs/core/func/pacman.py
+++ b/abs/core/func/pacman.py
@@ -17,7 +17,7 @@ class pacman(func_module.FuncModule):
def update_system(self,flags):
flags.replace(";","") # prevent stupidity
- cmd = sub_process.Popen("/usr/bin/update_system %s" % flags,stdout=sub_process.PIPE,shell=True)
+ cmd = sub_process.Popen("/usr/LH/bin/lh_system_host_update %s" % flags,stdout=sub_process.PIPE,shell=True)
data = cmd.communicate()[0]
results = []
for x in data.split("\n"):
diff --git a/abs/core/linhes-scripts/PKGBUILD b/abs/core/linhes-scripts/PKGBUILD
index 0ac8275..4c3dd05 100644
--- a/abs/core/linhes-scripts/PKGBUILD
+++ b/abs/core/linhes-scripts/PKGBUILD
@@ -3,7 +3,7 @@
pkgname=linhes-scripts
pkgver=7
-pkgrel=21
+pkgrel=24
pkgdesc="Various scripts that help to make LinHES, LinHES."
arch=('i686' 'x86_64')
license=('GPL2')
@@ -47,6 +47,8 @@ dtheme.sh
xwin_find.sh
upgrade_screen_rc
upgrade_linhes_script.sh
+find_orphans.py
+acl_fix_fstab.py
)
build() {
@@ -97,4 +99,6 @@ md5sums=('f56985b2d602e11dc1e10d3e7848b2a5'
'35693f50939d5827aeabfce8c5dce589'
'a94fe6d980f4b810f2e2ae5352084b39'
'974c137d3fcb85942ba8945a1bc815fe'
- 'aad75575c9af70aa8bf3a06718985664')
+ 'aad75575c9af70aa8bf3a06718985664'
+ 'd8838461af9d446a1fd7e7883fdc75d1'
+ 'cc9cdabcdfc969c2829b58c0e513488c')
diff --git a/abs/core/certmaster/acl_fix_fstab.py b/abs/core/linhes-scripts/acl_fix_fstab.py
index 8e49a15..187cab1 100644
--- a/abs/core/certmaster/acl_fix_fstab.py
+++ b/abs/core/linhes-scripts/acl_fix_fstab.py
@@ -1,12 +1,37 @@
#!/usr/bin/python2
import os
import sys
+import subprocess as sub
+
+def should_add_acl(mount_point,fs_map):
+ acl_fs_list=["ext3","ext4"]
+ rc = False
+ for i in fs_map:
+ if i[0] == mount_point:
+ if i[1] in acl_fs_list:
+ rc = True
+
+ return rc
+
+
cmd="cp -f /etc/fstab /etc/fstab.backup.pre_acl"
os.system(cmd)
f = open('/etc/fstab', 'r')
fstab=f.readlines()
f.close()
+p = sub.Popen(['/sbin/fsck','-N' ],stdout=sub.PIPE,stderr=sub.PIPE)
+output, errors = p.communicate()
+output = output.split("\n")
+fs_map=[]
+for i in output:
+ if i.startswith("["):
+ split_line=i.split()
+ #find mount_p and remove the last char
+ mount_p = split_line[3][:-1]
+ fstype = split_line[4].split(".")[1]
+ append_tuple=(mount_p,fstype)
+ fs_map.append(append_tuple)
@@ -16,7 +41,7 @@ for line in fstab:
new_line=line
split_line=line.split()
try:
- if split_line[1] in mp:
+ if split_line[1] in mp and should_add_acl(split_line[1],fs_map):
#print split_line[3]
if "acl" in split_line[3]:
pass
diff --git a/abs/core/linhes-scripts/find_orphans.py b/abs/core/linhes-scripts/find_orphans.py
new file mode 100644
index 0000000..ec2cae1
--- /dev/null
+++ b/abs/core/linhes-scripts/find_orphans.py
@@ -0,0 +1,238 @@
+#!/usr/bin/env python
+
+from MythTV import MythDB, MythBE, Recorded, MythError
+from socket import timeout
+
+import os
+import sys
+
+def human_size(s):
+ s = float(s)
+ o = 0
+ while s > 1000:
+ s /= 1000
+ o += 1
+ return str(round(s,1))+('B ','KB','MB','GB')[o]
+
+class File( str ):
+ def __new__(self, host, group, path, name, size):
+ return str.__new__(self, name)
+ def __init__(self, host, group, path, name, size):
+ self.host = host
+ self.group = group
+ self.path = path
+ self.size = int(size)
+ def pprint(self):
+ name = u'%s: %s' % (self.host, os.path.join(self.path, self))
+ print u' {0:<90}{1:>8}'.format(name, human_size(self.size))
+ def delete(self):
+ be = MythBE(self.host, db=DB)
+ be.deleteFile(self, self.group)
+
+class MyRecorded( Recorded ):
+ _table = 'recorded'
+ def pprint(self):
+ name = u'{0.hostname}: {0.title}'.format(self)
+ if self.subtitle:
+ name += u' - '+self.subtitle
+ print u' {0:<70}{1:>28}'.format(name,self.basename)
+
+def printrecs(title, recs):
+ print title
+ for rec in sorted(recs, key=lambda x: x.title):
+ rec.pprint()
+ print u'{0:>88}{1:>12}'.format('Count:',len(recs))
+
+def printfiles(title, files):
+ print title
+ for f in sorted(files, key=lambda x: x.path):
+ f.pprint()
+ size = sum([f.size for f in files])
+ print u'{0:>88}{1:>12}'.format('Total:',human_size(size))
+
+def populate(host=None):
+ unfiltered = []
+ kwargs = {'livetv':True}
+ if host:
+ with DB as c:
+ c.execute("""SELECT count(1) FROM settings
+ WHERE hostname=%s AND value=%s""",
+ (host, 'BackendServerIP'))
+ if c.fetchone()[0] == 0:
+ raise Exception('Invalid hostname specified on command line.')
+ hosts = [host]
+ kwargs['hostname'] = host
+ else:
+ with DB as c:
+ c.execute("""SELECT hostname FROM settings
+ WHERE value='BackendServerIP'""")
+ hosts = [r[0] for r in c.fetchall()]
+ for host in hosts:
+ for sg in DB.getStorageGroup():
+ if sg.groupname in ('Videos','Banners','Coverart',\
+ 'Fanart','Screenshots','Trailers'):
+ continue
+ try:
+ dirs,files,sizes = BE.getSGList(host, sg.groupname, sg.dirname)
+ for f,s in zip(files,sizes):
+ newfile = File(host, sg.groupname, sg.dirname, f, s)
+ if newfile not in unfiltered:
+ unfiltered.append(newfile)
+ except:
+ pass
+
+ recs = list(DB.searchRecorded(**kwargs))
+
+ zerorecs = []
+ orphvids = []
+ for rec in list(recs):
+ if rec.basename in unfiltered:
+ recs.remove(rec)
+ i = unfiltered.index(rec.basename)
+ f = unfiltered.pop(i)
+ if f.size < 1024:
+ zerorecs.append(rec)
+ name = rec.basename.rsplit('.',1)[0]
+ for f in list(unfiltered):
+ if name in f:
+ unfiltered.remove(f)
+ for f in list(unfiltered):
+ if not (f.endswith('.mpg') or f.endswith('.nuv')):
+ continue
+ orphvids.append(f)
+ unfiltered.remove(f)
+
+ orphimgs = []
+ for f in list(unfiltered):
+ if not f.endswith('.png'):
+ continue
+ orphimgs.append(f)
+ unfiltered.remove(f)
+
+ dbbackup = []
+ for f in list(unfiltered):
+ if 'sql' not in f:
+ continue
+ dbbackup.append(f)
+ unfiltered.remove(f)
+
+ return (recs, zerorecs, orphvids, orphimgs, dbbackup, unfiltered)
+
+def delete_recs(recs):
+ printrecs('The following recordings will be deleted', recs)
+ print 'Are you sure you want to continue?'
+ try:
+ res = raw_input('> ')
+ while True:
+ if res == 'yes':
+ for rec in recs:
+ rec.delete(True, True)
+ break
+ elif res == 'no':
+ break
+ else:
+ res = raw_input("'yes' or 'no' > ")
+ except MythError:
+ name = u'{0.hostname}: {0.title}'.format(rec)
+ if rec.subtitle:
+ name += ' - '+rec.subtitle
+ print "Warning: Failed to delete '" + name + "'"
+ except KeyboardInterrupt:
+ pass
+ except EOFError:
+ sys.exit(0)
+
+def delete_files(files):
+ printfiles('The following files will be deleted', files)
+ print 'Are you sure you want to continue?'
+ try:
+ res = raw_input('> ')
+ while True:
+ if res == 'yes':
+ for f in files:
+ f.delete()
+ break
+ elif res == 'no':
+ break
+ else:
+ res = raw_input("'yes' or 'no' > ")
+ except KeyboardInterrupt:
+ pass
+ except EOFError:
+ sys.exit(0)
+
+def main(host=None):
+ while True:
+ recs, zerorecs, orphvids, orphimgs, dbbackup, unfiltered = populate(host)
+
+ if len(recs):
+ printrecs("Recordings with missing files", recs)
+ if len(zerorecs):
+ printrecs("Zero byte recordings", zerorecs)
+ if len(orphvids):
+ printfiles("Orphaned video files", orphvids)
+ if len(orphimgs):
+ printfiles("Orphaned snapshots", orphimgs)
+ if len(dbbackup):
+ printfiles("Database backups", dbbackup)
+ if len(unfiltered):
+ printfiles("Other files", unfiltered)
+ if not printOnly:
+ opts = []
+ if len(recs):
+ opts.append(['Delete orphaned recording entries', delete_recs, recs])
+ if len(zerorecs):
+ opts.append(['Delete zero byte recordings', delete_recs, zerorecs])
+ if len(orphvids):
+ opts.append(['Delete orphaned video files', delete_files, orphvids])
+ if len(orphimgs):
+ opts.append(['Delete orphaned snapshots', delete_files, orphimgs])
+ if len(unfiltered):
+ opts.append(['Delete other files', delete_files, unfiltered])
+ opts.append(['Refresh list', None, None])
+ print 'Please select from the following'
+ for i, opt in enumerate(opts):
+ print ' {0}. {1}'.format(i+1, opt[0])
+
+ try:
+ inner = True
+ res = raw_input('> ')
+ while inner:
+ try:
+ res = int(res)
+ except:
+ res = raw_input('input number. ctrl-c to exit > ')
+ continue
+ if (res <= 0) or (res > len(opts)):
+ res = raw_input('input number within range > ')
+ continue
+ break
+ opt = opts[res-1]
+ if opt[1] is None:
+ continue
+ else:
+ opt[1](opt[2])
+
+ except KeyboardInterrupt:
+ break
+ except EOFError:
+ sys.exit(0)
+ else:
+ sys.exit(0)
+DB = MythDB()
+BE = MythBE(db=DB)
+DB.searchRecorded.handler = MyRecorded
+DB.searchRecorded.dbclass = MyRecorded
+
+if __name__ == '__main__':
+ global printOnly
+ if "--printonly" in sys.argv :
+ printOnly=True
+ else:
+ printOnly=False
+
+
+ if len(sys.argv) == 2 and sys.argv[1] != "--printonly":
+ main(sys.argv[1])
+ else:
+ main()
diff --git a/abs/core/linhes-scripts/linhes-scripts.install b/abs/core/linhes-scripts/linhes-scripts.install
index f554bd0..d4c9e59 100644
--- a/abs/core/linhes-scripts/linhes-scripts.install
+++ b/abs/core/linhes-scripts/linhes-scripts.install
@@ -2,6 +2,13 @@
post_upgrade() {
. /etc/profile
/usr/LH/bin/remove_php_mythvideo.sh
+ if [ "`vercmp $2 7-24`" -lt 0 ]
+ then
+ echo "Applying ACL fix and remounting /"
+ /usr/LH/bin/acl_fix_fstab.py
+ mount -o remount /
+ fi
+
}
# vim:set ts=2 sw=2 et:
diff --git a/abs/core/lirc/PKGBUILD b/abs/core/lirc/PKGBUILD
index 5254945..0ce8b69 100644
--- a/abs/core/lirc/PKGBUILD
+++ b/abs/core/lirc/PKGBUILD
@@ -4,13 +4,13 @@
pkgbase=lirc
pkgname=('lirc' 'lirc-utils')
pkgver=0.9.0
-pkgrel=8
+pkgrel=10
#epoch=1
_kernver=2.6.39-LinHES
arch=('i686' 'x86_64')
url="http://www.lirc.org/"
license=('GPL')
-makedepends=('help2man' 'kernel26-headers>=2.6.39' 'kernel26-headers<2.6.40' 'alsa-lib' 'libx11' 'libftdi' 'libirman' 'python')
+makedepends=('help2man' 'kernel26-headers>=2.6.39' 'kernel26-headers<2.6.40' 'alsa-lib' 'libx11' 'libftdi' 'libirman' 'python' )
options=('!makeflags' '!strip')
source=(http://prdownloads.sourceforge.net/${pkgbase}/${pkgbase}-${pkgver}.tar.bz2
lirc_wpc8769l.patch
@@ -50,7 +50,7 @@ build() {
package_lirc() {
pkgdesc="Linux Infrared Remote Control kernel modules for stock arch kernel"
- depends=('lirc-utils' 'kernel26>=2.6.39' 'kernel26<2.6.40')
+ depends=('lirc-utils' 'kernel26>=2.6.39' 'kernel26<2.6.40' 'iguanair')
replaces=('lirc+pctv')
install=lirc.install
diff --git a/abs/core/lirc/__changelog b/abs/core/lirc/__changelog
new file mode 100644
index 0000000..adf3fd6
--- /dev/null
+++ b/abs/core/lirc/__changelog
@@ -0,0 +1 @@
+Add iguanair to the list of depends
diff --git a/abs/core/lirc/lirc.install b/abs/core/lirc/lirc.install
index 1f8fd7c..ba2c957 100644
--- a/abs/core/lirc/lirc.install
+++ b/abs/core/lirc/lirc.install
@@ -16,7 +16,7 @@ post_upgrade() {
"SELECT data FROM settings WHERE value = 'LircSocket' AND hostname = '${hostname}';"`
if [ "${SOCKET}" != "/var/run/lirc/lircd" ]; then
mysql -u mythtv -pmythtv -B --skip-column-names -h "${dbhost}" -D mythconverg -e \
- "UPDATE settings SET data = '/var/run/lirc/lircd' WHERE hostname = '${hostname}';"
+ "UPDATE settings SET data = '/var/run/lirc/lircd' WHERE value = 'LircSocket' AND hostname = '${hostname}';"
else
echo ">>>"
echo ">>> ATTENTION! ATTENTION! ATTENTION!"
diff --git a/abs/core/media_dirs/PKGBUILD b/abs/core/media_dirs/PKGBUILD
index 38544b3..0ec8619 100644
--- a/abs/core/media_dirs/PKGBUILD
+++ b/abs/core/media_dirs/PKGBUILD
@@ -1,6 +1,6 @@
pkgname=media_dirs
pkgver=1
-pkgrel=14
+pkgrel=16
pkgdesc="creates the dir layout for mythtv to use"
url=""
license=""
@@ -52,9 +52,6 @@ motion
tmp
archive
stream
-phone/Voicemail
-phone/Photos
-phone
pretty
video_stuff/trailers
video_stuff/coverart
@@ -64,10 +61,11 @@ video_stuff/banners
games/screenshots
games/fanart
games/boxart
+system_backups/restore
EOF
- chown -R mythtv myth
+ chown -R 1000 myth
chmod -R 777 myth
cp -rp myth $startdir/pkg/
cd $startdir/pkg
diff --git a/abs/core/media_dirs/media_dirs.install b/abs/core/media_dirs/media_dirs.install
index c709d79..a666d2b 100644
--- a/abs/core/media_dirs/media_dirs.install
+++ b/abs/core/media_dirs/media_dirs.install
@@ -24,7 +24,7 @@ pre_install() {
# arg 2: the old package version
post_upgrade() {
/bin/true
- post_install
+ #post_install
}
# arg 1: the old package version
diff --git a/abs/core/mythtv/stable-0.24/mythplugins/PKGBUILD b/abs/core/mythtv/stable-0.24/mythplugins/PKGBUILD
index 83168af..e1e23a2 100644
--- a/abs/core/mythtv/stable-0.24/mythplugins/PKGBUILD
+++ b/abs/core/mythtv/stable-0.24/mythplugins/PKGBUILD
@@ -13,14 +13,14 @@ pkgname=('mytharchive'
'mythweather'
'mythzoneminder')
pkgver=0.24
-pkgrel=18
+pkgrel=19
arch=('i686' 'x86_64')
url="http://www.mythtv.org"
license=('GPL')
conflicts=('mythmovies')
-makedepends=("mythtv>=${pkgver}" 'mplayer' 'fftw' 'dvdauthor' 'libexif'
+makedepends=("mythtv>=${pkgver}" 'mplayer' 'fftw2' 'dvdauthor' 'libexif'
'python-imaging' 'libcdaudio' 'taglib' 'perl-xml-simple' 'dcraw'
- 'libvisual' 'perl-xml-xpath' 'perl-image-size'
+ 'libvisual' 'perl-xml-xpath' 'perl-image-size' 'perl-json'
'perl-class-inspector' 'perl-datetime-format-iso8601'
'flac' 'libvorbis' 'python2' 'python-pycurl' 'python-oauth')
source=(ftp://ftp.knoppmyth.net/R6/sources/mythtv-0.24-fixes.tar.bz2
@@ -111,7 +111,7 @@ package_mythweather() {
pkgdesc="Weather checking plugin for MythTV"
depends=("mythtv>=${pkgver}" 'perl-xml-xpath' 'perl-image-size'
'perl-class-inspector' 'perl-datetime-format-iso8601'
- 'perl-date-manip')
+ 'perl-date-manip' 'perl-json')
# replaces=('mythweather')
cd "${srcdir}/${_gitname}/${pkgbase}/mythweather"
make INSTALL_ROOT="${pkgdir}" install || return 1
@@ -126,4 +126,4 @@ package_mythzoneminder() {
make INSTALL_ROOT="${pkgdir}" install || return 1
}
md5sums=('91488a6b1b05d14c5c5c601908b699e5'
- 'adce485c4765e8d49b91b3ce9c9963ac')
+ 'cc7e6887acda167fcc5336af33f29411')
diff --git a/abs/core/mythtv/stable-0.24/mythplugins/mythburn.py.patch b/abs/core/mythtv/stable-0.24/mythplugins/mythburn.py.patch
index 770119a..abac7df 100644
--- a/abs/core/mythtv/stable-0.24/mythplugins/mythburn.py.patch
+++ b/abs/core/mythtv/stable-0.24/mythplugins/mythburn.py.patch
@@ -161,7 +161,7 @@
+ else:
+ videoheight = 576
+
-+ croppixels = videoheight - int(videores.split("x")[1])
++ croppixels = videoheight - (720 / float(videoAR))
+ write("CropPixels Total: %s" % croppixels)
+ value = "720x%d -vf pad=720:%d:0:%d:black" % (videoheight - croppixels, videoheight, croppixels / 2)
diff --git a/abs/core/perl_modules/perl-json/PKGBUILD b/abs/core/perl_modules/perl-json/PKGBUILD
new file mode 100644
index 0000000..88aade8
--- /dev/null
+++ b/abs/core/perl_modules/perl-json/PKGBUILD
@@ -0,0 +1,28 @@
+# $Id$
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Contributor: François Charette <firmicus ατ gmx δοτ net>
+
+pkgname=perl-json
+pkgver=2.53
+pkgrel=1
+pkgdesc="JSON (JavaScript Object Notation) encoder/decoder"
+arch=('any')
+url="http://search.cpan.org/dist/JSON"
+license=('GPL' 'PerlArtistic')
+depends=('perl>=5.10.0')
+options=('!emptydirs')
+source=(http://www.cpan.org/authors/id/M/MA/MAKAMAKA/JSON-$pkgver.tar.gz)
+md5sums=('7db1be00d44414c4962eeac222395a76')
+
+build() {
+ cd $srcdir/JSON-$pkgver
+ PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+package() {
+ cd $srcdir/JSON-$pkgver
+ make install DESTDIR=$pkgdir
+ find $pkgdir -name '.packlist' -delete
+ find $pkgdir -name '*.pod' -delete
+}
diff --git a/abs/core/runit-scripts/PKGBUILD b/abs/core/runit-scripts/PKGBUILD
index c2c75c8..6ef0e51 100755
--- a/abs/core/runit-scripts/PKGBUILD
+++ b/abs/core/runit-scripts/PKGBUILD
@@ -1,6 +1,6 @@
pkgname=runit-scripts
pkgver=2.1.1
-pkgrel=42
+pkgrel=44
pkgdesc="collection of startup scripts for runit"
url="http://smarden.org/runit/"
license="BSD"
diff --git a/abs/core/runit-scripts/runitscripts/1 b/abs/core/runit-scripts/runitscripts/1
index c64a047..a45fc16 100755
--- a/abs/core/runit-scripts/runitscripts/1
+++ b/abs/core/runit-scripts/runitscripts/1
@@ -4,6 +4,8 @@
. /etc/rc.d/functions
hostname `cat /etc/hostname`
/sbin/sysctl -p 2>/dev/null >/dev/null
+#make sure permissions are right for /etc/systemconfig
+/usr/bin/setfacl -m u:mythtv:rw- /etc/systemconfig > /dev/null
#yes it's needed the 2nd time
/usr/LH/bin/load-modules-mythvantage.sh >/dev/null
rm /etc/dhcpc/dhcpcd*.pid 2>/dev/null
diff --git a/abs/core/runit-scripts/runitscripts/services/lircd/run b/abs/core/runit-scripts/runitscripts/services/lircd/run
index 480a884..3993795 100755
--- a/abs/core/runit-scripts/runitscripts/services/lircd/run
+++ b/abs/core/runit-scripts/runitscripts/services/lircd/run
@@ -43,7 +43,7 @@ else
[ -e /var/run/lirc ] || mkdir -p /var/run/lirc
function dvico_detect {
- if [ x$Remotetype = "xdvico" ] || [ x$Remotetype = "xDvico-Dual-Digital4-rev2" ]
+ if [[ x$Remotetype = xdvico* ]] || [ x$Remotetype = "xDvico-Dual-Digital4-rev2" ]
then
RunDvico=true
else
@@ -127,7 +127,7 @@ else
if [ $RunDvico = "true" ]
then
- if [ x$Remotetype = "xdvico" ]
+ if [[ x$Remotetype = xdvico* ]]
then
LCMD="/usr/sbin/lircd -r -n -d /dev/usb/dvicoIR --driver=dvico --output /var/run/lirc/lircd"
else
diff --git a/abs/core/supplemental-web/PKGBUILD b/abs/core/supplemental-web/PKGBUILD
index 7c30873..40b1f7b 100644
--- a/abs/core/supplemental-web/PKGBUILD
+++ b/abs/core/supplemental-web/PKGBUILD
@@ -1,15 +1,11 @@
pkgname=supplemental-web
pkgver=1.0
-pkgrel=10
+pkgrel=16
arch=('i686')
MVDIR=$startdir/pkg/usr/MythVantage
-#BINDIR=$MVDIR/bin
install=supplemental-web.install
-#depends=(unclutter ghosd ncid func wol )
-#binfiles="saytime.sh backup_job restore_job.sh update_system update_system_all backend_control.sh grabkey.py notify.py"
-#source=($binfiles mfegdbcommands.txt mbegdbcommands.txt 45-event.rules lighttpd-supplement.conf)
backup=('extra.cfg.txt')
-source=(lighttpd-supplement.conf extra.cfg.txt wakeonlan.sh backend_control.sh notify.py)
+source=(lighttpd-supplement.conf extra.cfg.txt wakeonlan.sh backend_control.sh)
depends=('lighttpd' 'php' 'fcgi' 'python' 'xymonserver' 'certmaster' 'func' 'python_aosd' )
@@ -23,7 +19,6 @@ build() {
install -m755 -D wakeonlan.sh $MVDIR/bin/wakeonlan.sh
install -m755 -D backend_control.sh $MVDIR/bin/backend_control.sh
-# install -m755 -D notify.py $MVDIR/bin/notify.py
mkdir -p $startdir/pkg/data/srv/httpd/htdocs/
cp -rp $startdir/contents/* $startdir/pkg/data/srv/httpd/htdocs
chmod -R 755 $startdir/pkg/data/srv/httpd/htdocs
@@ -40,5 +35,4 @@ build() {
md5sums=('2a9d042467220fd1f74f5b12730c2e06'
'3d8c7b430c1319d706ca420825918d2a'
'81cdb6ee6804fa36366c6e259a80e7b4'
- 'f37e10ef9fc84b384b9a2d41f82ef744'
- '4da05325b4f9d61d26f88c19578d1950')
+ 'f37e10ef9fc84b384b9a2d41f82ef744')
diff --git a/abs/core/supplemental-web/cgi/bestart.cgi b/abs/core/supplemental-web/cgi/bestart.cgi
index 10ca4ad..e09e42b 100644
--- a/abs/core/supplemental-web/cgi/bestart.cgi
+++ b/abs/core/supplemental-web/cgi/bestart.cgi
@@ -1,5 +1,9 @@
#!/bin/bash
-sudo /sbin/sv start mythbackend
+# MESSAGE="Trying to start `hostname` B.E."
+# /usr/bin/func "*" call msg display "$MESSAGE" &
+
+sudo /sbin/sv start mythbackend
+
MESSAGE="`hostname` B.E. started"
/usr/bin/func "*" call msg display "$MESSAGE" &
diff --git a/abs/core/supplemental-web/cgi/bestop.cgi b/abs/core/supplemental-web/cgi/bestop.cgi
index a65a16a..c9d7fad 100644
--- a/abs/core/supplemental-web/cgi/bestop.cgi
+++ b/abs/core/supplemental-web/cgi/bestop.cgi
@@ -1,5 +1,9 @@
#!/bin/bash
-sudo /sbin/sv stop mythbackend
+MESSAGE="Trying to stop `hostname` B.E."
+/usr/bin/func "*" call msg display "$MESSAGE" &
+
+sudo /sbin/sv stop mythbackend
+
MESSAGE="`hostname` B.E. stopped"
/usr/bin/func "*" call msg display "$MESSAGE" &
diff --git a/abs/core/supplemental-web/cgi/extra.cfg.txt b/abs/core/supplemental-web/cgi/extra.cfg.txt
new file mode 100644
index 0000000..cd4009a
--- /dev/null
+++ b/abs/core/supplemental-web/cgi/extra.cfg.txt
@@ -0,0 +1,7 @@
+[extra]
+# change any of the following to False or True
+# This file is used to state to other machines in the cluster whats running
+xymon = True
+func = True
+rsyslog_network = False
+
diff --git a/abs/core/supplemental-web/contents/count.py b/abs/core/supplemental-web/contents/count.py
index 6d813c1..d59144a 100644
--- a/abs/core/supplemental-web/contents/count.py
+++ b/abs/core/supplemental-web/contents/count.py
@@ -14,7 +14,7 @@ def main(argv):
# create a cursor
cursor = db.cursor()
# execute SQL statement
- cursor.execute("SELECT unix_timestamp(starttime),unix_timestamp(endtime),title FROM oldrecorded ORDER by starttime;")
+ cursor.execute("SELECT unix_timestamp(starttime),unix_timestamp(endtime),title FROM oldrecorded where oldrecorded.recstatus = -3 ORDER by starttime;")
result = cursor.fetchall()
for row in result:
@@ -58,7 +58,7 @@ def main(argv):
print '<div id="content"> <p></p>'
print '<table class="sample">'
print "Top 20 Shows"
- cursor.execute("select title,count(title),category as numtitle from oldrecorded group by title having (COUNT(title) > 1) order by (COUNT(title)) DESC limit 20;" )
+ cursor.execute("select title,count(title),category as numtitle from oldrecorded where oldrecorded.recstatus = -3 group by title having (COUNT(title) > 0 ) order by (COUNT(title)) DESC limit 20;" )
result = cursor.fetchall()
for row in result:
print " <tr>"
@@ -74,11 +74,14 @@ def main(argv):
print '<div id="column"></div>'
print '<table class="sample">'
print "Top 20 Categories"
- cursor.execute("select category,count(category) as numtitle from oldrecorded group by category having (COUNT(category) > 1) order by (COUNT(category)) DESC limit 20; " )
+ cursor.execute("select category,count(category) as numtitle from oldrecorded where oldrecorded.recstatus = -3 group by category having (COUNT(category) > 0 ) order by (COUNT(category)) DESC limit 20; " )
result = cursor.fetchall()
for row in result:
+ category = row[0]
+ if category == "":
+ category = "Unknown"
print " <tr>"
- print " <td>",row[0],"</td>"
+ print " <td>",category,"</td>"
print " <td>",row[1],"</td>"
print " </tr>"
#print "%16s %16s" %(row[0],row[1])
diff --git a/abs/core/supplemental-web/contents/docs.html b/abs/core/supplemental-web/contents/docs.html
index c4a934b..4a5e64a 100644
--- a/abs/core/supplemental-web/contents/docs.html
+++ b/abs/core/supplemental-web/contents/docs.html
@@ -35,10 +35,6 @@ Starting and stopping services.
<br>
<ul id="navlist">
<li>The root password is blank. You will not be able to remotely access this account until the password is set.</li>
- <li>The mythtv account is locked, reset the password if you wish login with this account.</li>
- <li>The mythtv account has full sudo privileges. </li>
- <li>All access from public ip address are blocked. Edit /etc/hosts.deny /etc/hosts.allow to change this.</li>
- <li>Mythfilldatabase will automaticlly run when mythbackend is started. If the last attempt was successful then it will skip this step and mythfilldatabase will run normally.</li>
<li>To keep a host from showing up in the network map, add it to:
/data/srv/hobbit/server/ext/ignoreclient.py
</li>
diff --git a/abs/core/supplemental-web/contents/error/hobbit.html b/abs/core/supplemental-web/contents/error/hobbit.html
index 18450f2..4c65716 100644
--- a/abs/core/supplemental-web/contents/error/hobbit.html
+++ b/abs/core/supplemental-web/contents/error/hobbit.html
@@ -4,8 +4,8 @@
</head>
<body>
-Hobbit does not appear to be installed.
+Xymon does not appear to be installed.
</br>
-Please visit the MythVantage advanced screen to enable Hobbit.
+If Xymon was just installed/started it will take a few minutes before this page populates.
</body>
</html>
diff --git a/abs/core/supplemental-web/contents/error/phpadmin.html b/abs/core/supplemental-web/contents/error/phpadmin.html
index dbdd4d3..39b2f48 100644
--- a/abs/core/supplemental-web/contents/error/phpadmin.html
+++ b/abs/core/supplemental-web/contents/error/phpadmin.html
@@ -16,8 +16,6 @@ pacman -S phpmyadmin
</br>
PHP must be enabled for phpMyAdmin.
</br>
-The easiest way to enable php is to enable Mythweb under the advanced settings for MythVantage.
-</br>
</br>
</br>
diff --git a/abs/core/supplemental-web/contents/header.jpg.mv b/abs/core/supplemental-web/contents/header.jpg.mv
deleted file mode 100644
index 3bf128e..0000000
--- a/abs/core/supplemental-web/contents/header.jpg.mv
+++ /dev/null
Binary files differ
diff --git a/abs/core/supplemental-web/contents/process.py b/abs/core/supplemental-web/contents/process.py
index 93d16d9..9098ad6 100644
--- a/abs/core/supplemental-web/contents/process.py
+++ b/abs/core/supplemental-web/contents/process.py
@@ -99,11 +99,11 @@ def isblank(indict):
def go_backup(myhost):
myhostname = socket.gethostname()
results="Nothing happened"
- if myhostname.strip() == myhost.strip():
- command= "sudo /usr/MythVantage/bin/backup_job"
- command2="sleep 1; /data/srv/hobbit/server/ext/hbnotes.py"
- results=os.popen(command,'r')
- os.popen(command2,'r')
+ command= "sudo /usr/LH/bin/lh_system_backup_job"
+ print command
+ command2="sleep 1; /data/srv/hobbit/server/ext/hbnotes.py"
+ results=os.popen(command,'r')
+ os.popen(command2,'r')
return results
@@ -122,28 +122,20 @@ def go_restore(restorefile,myhost):
return results
def go_optimize(myhost):
- myhostname = socket.gethostname()
- if myhostname.strip() == myhost.strip():
- command="/usr/LH/bin/optimize_mythdb.py"
- results=os.popen(command,'r')
- else:
- results='This host does not run a database'
+ #myhostname = socket.gethostname()
+ #if myhostname.strip() == myhost.strip():
+ command="/usr/LH/bin/optimize_mythdb.py"
+ print command
+ results=os.popen(command,'r')
+ #else:
+ #results='This host does not run a database'
return results
def go_update(myhost,update_type):
- myhostname = socket.gethostname()
- if myhostname.strip() == myhost.strip():
- cmd="sudo /usr/bin/update_system "
- command=cmd + update_type
-
- else:
- cmd=" call pacman update_system "
- cmd+=update_type
- command="/usr/bin/func \"" + myhost.strip() + "*\" " + cmd
- print command
-
- #print command
-
+ cmd=" call pacman update_system "
+ cmd+=update_type
+ command="/usr/bin/func \"" + myhost.strip() + "*\" " + cmd
+ print command
results=os.popen(command,'r')
return results
diff --git a/abs/core/supplemental-web/notify.py b/abs/core/supplemental-web/notify.py
deleted file mode 100644
index 2e520c5..0000000
--- a/abs/core/supplemental-web/notify.py
+++ /dev/null
@@ -1,29 +0,0 @@
-#!/usr/bin/python
-# import MySQL module
-
-import MySQLdb
-import sys
-import getopt
-import socket
-import os
-
-def main(argv):
- db = MySQLdb.connect(host="localhost", user="mythtv", passwd="mythtv", db="mythconverg")
- # create a cursor
- cursor = db.cursor()
- # execute SQL statement
- cursor.execute("SELECT DISTINCT(hostname) from settings where not hostname is NULL")
- result = cursor.fetchall()
- message = sys.argv[2]
- messagetype = sys.argv[1]
- port=str(5000)
- if messagetype == "PH2":
- port=str(5001)
-
-
- message = message + " :::" + messagetype
- for row in result:
- os.system("/usr/bin/osdClient.pl " + row[0] + " " + port + " "+ "\"" + message + "\"" + "&" )
-
-if __name__ == "__main__":
- main(sys.argv[1:])
diff --git a/abs/core/v4l-dvb/PKGBUILD b/abs/core/v4l-dvb/PKGBUILD
index 58e9013..b853b24 100644
--- a/abs/core/v4l-dvb/PKGBUILD
+++ b/abs/core/v4l-dvb/PKGBUILD
@@ -1,26 +1,27 @@
-# Maintainer: Nicky726 (Nicky726 <at> gmail <dot> com)
+# Maintainer: Cecil Watson<knoppmyth@gmail.com>
pkgname=v4l-dvb
-pkgver=20111110
+_kernver=`uname -r`
+pkgver=20120113
pkgrel=1
-pkgdesc="V4L-DVB device drivers git version"
+pkgdesc="V4L-DVB device drivers (newer than those included in kernel)"
arch=('i686' 'x86_64')
url="http://linuxtv.org/"
-license=('GPL')
+license=('GPL2')
depends=('kernel26')
-makedepends=('git' 'linux-api-headers' 'perl-proc-processtable' 'patchutils')
+makedepends=('git' 'kernel26-headers' 'perl-proc-processtable' 'patchutils')
options=(!makeflags)
install=v4l-dvb.install
_gitroot="git://linuxtv.org/media_build.git"
_gitname="media_build"
-source=(config)
+
build() {
cd "${srcdir}"
msg "Connecting to GIT server...."
if [ -d "${srcdir}/${_gitname}" ] ; then
- cd ${_gitname} && git pull --rebase
+ cd ${_gitname} && git checkout -- . && git pull --rebase
else
git clone ${_gitroot}
fi
@@ -31,20 +32,18 @@ build() {
cd "${srcdir}/${_gitname}/linux"
make download untar
cd ..
- # Build with 3.0-ARCH kernel
- _kernver=`uname -r`
- sed -i -e "s/KERNELRELEASE\ :=/KERNELRELEASE\ :=\ ${_kernver}/" \
- -e "s/\$(KERNELRELEASE)/${_kernver}/" \
- "${srcdir}/${_gitname}"/v4l/Makefile{,.sound}
- # Use alternate config, because cx23885 module won't build
-# cp "${srcdir}/config" "${srcdir}/${_gitname}/v4l/.config"
+
+# Build with 3.0-ARCH kernel
+# sed -i -e "s/KERNELRELEASE\ :=/KERNELRELEASE\ :=\ ${_kernver}/" \
+# -e "s/\$(KERNELRELEASE)/${_kernver}/" \
+# "${srcdir}/${_gitname}"/v4l/Makefile{,.sound}
+
make
}
package() {
- install -dm755 "${srcdir}/lib/modules/$(uname -r)/updates"
cd "${srcdir}/${_gitname}"
- make DESTDIR="${pkgdir}/lib/modules/$(uname -r)/updates" install
+ make DESTDIR="${pkgdir}" install
+ rm -fr ${pkgdir}/lib/modules/$_kernver/modules*
}
-
-md5sums=('927cc1fcddc2a71a7fde97322237c7a8')
+md5sums=()
diff --git a/abs/core/v4l-dvb/config b/abs/core/v4l-dvb/config
deleted file mode 100644
index 0fe71ec..0000000
--- a/abs/core/v4l-dvb/config
+++ /dev/null
@@ -1,506 +0,0 @@
-# CONFIG_VIDEO_GO7007 is not set
-# CONFIG_VIDEO_MMP_CAMERA is not set
-# CONFIG_VIDEO_TM6000_ALSA is not set
-CONFIG_MEDIA_TUNER_TDA18271=m
-CONFIG_IR_MCEUSB=m
-# CONFIG_LIRC_ZILOG is not set
-CONFIG_USB_DSBR=m
-CONFIG_VIDEO_CX88_VP3054=m
-CONFIG_SOC_CAMERA_OV6650=m
-CONFIG_DVB_USB=m
-CONFIG_USB_GSPCA_XIRLINK_CIT=m
-CONFIG_IR_NUVOTON=m
-CONFIG_DVB_DUMMY_FE=m
-CONFIG_USB_GSPCA_OV534=m
-# CONFIG_VIDEO_OMAP1 is not set
-CONFIG_USB_STKWEBCAM=m
-CONFIG_DVB_S5H1420=m
-CONFIG_DVB_CX22700=m
-CONFIG_SOC_CAMERA=m
-CONFIG_VIDEO_CX88_BLACKBIRD=m
-CONFIG_VIDEO_USBVISION=m
-CONFIG_DVB_NGENE=m
-CONFIG_DVB_SP8870=m
-CONFIG_DVB_BUDGET_AV=m
-CONFIG_MEDIA_TUNER=m
-CONFIG_DVB_TUNER_DIB0070=m
-CONFIG_VIDEO_VPX3220=m
-CONFIG_MEDIA_TUNER_TDA827X=m
-CONFIG_USB_GSPCA_OV534_9=m
-# CONFIG_LIRC_TTUSBIR is not set
-CONFIG_USB_GSPCA_SPCA561=m
-CONFIG_USB_STV06XX=m
-CONFIG_SOC_CAMERA_RJ54N1=m
-CONFIG_VIDEO_SAA7110=m
-# CONFIG_VIDEO_SH_VOU is not set
-CONFIG_VIDEO_ZORAN_BUZ=m
-CONFIG_DVB_STV6110x=m
-CONFIG_DVB_BT8XX=m
-CONFIG_VIDEO_SAA7127=m
-CONFIG_DVB_USB_AF9005=m
-CONFIG_VIDEO_CX231XX=m
-CONFIG_USB_GSPCA_PAC7311=m
-CONFIG_VIDEO_UPD64083=m
-CONFIG_VIDEO_WM8739=m
-CONFIG_IR_REDRAT3=m
-CONFIG_VIDEO_SAA7164=m
-CONFIG_DVB_CX22702=m
-CONFIG_VIDEOBUF_GEN=m
-CONFIG_IR_NEC_DECODER=m
-CONFIG_DVB_B2C2_FLEXCOP_PCI=m
-# CONFIG_RADIO_AZTECH is not set
-CONFIG_DVB_USB_MXL111SF=m
-CONFIG_VIDEO_MEM2MEM_TESTDEV=m
-CONFIG_VIDEO_BT848=m
-CONFIG_VIDEO_VIVI=m
-CONFIG_DVB_USB_CXUSB=m
-CONFIG_I2C_SI4713=m
-CONFIG_V4L2_MEM2MEM_DEV=m
-CONFIG_DVB_TDA10071=m
-CONFIG_IR_SONY_DECODER=m
-CONFIG_DVB_STV0367=m
-CONFIG_DVB_TDA18271C2DD=m
-CONFIG_USB_GSPCA_FINEPIX=m
-CONFIG_VIDEO_MT9T001=m
-# CONFIG_LIRC_SIR is not set
-CONFIG_SOC_CAMERA_MT9V022=m
-CONFIG_VIDEO_MT9P031=m
-# CONFIG_RADIO_SF16FMI is not set
-# CONFIG_VIDEO_HELPER_CHIPS_AUTO is not set
-CONFIG_DVB_ISL6405=m
-CONFIG_VIDEO_ADV7343=m
-CONFIG_DVB_USB_VP702X=m
-CONFIG_DVB_USB_DEBUG=y
-CONFIG_VIDEO_TIMBERDALE=m
-CONFIG_MEDIA_TUNER_XC2028=m
-CONFIG_DVB_USB_ANYSEE=m
-CONFIG_VIDEO_M5MOLS=m
-CONFIG_VIDEO_BT856=m
-# CONFIG_RADIO_CADET is not set
-CONFIG_USB_M5602=m
-CONFIG_VIDEO_PVRUSB2_DEBUGIFC=y
-CONFIG_USB_GSPCA_SONIXJ=m
-CONFIG_DVB_USB_DIBUSB_MB_FAULTY=y
-CONFIG_RC_LOOPBACK=m
-# CONFIG_STAGING_BROKEN is not set
-CONFIG_DVB_MANTIS=m
-CONFIG_VIDEO_CX25840=m
-CONFIG_VIDEO_VP27SMPX=m
-CONFIG_DVB_B2C2_FLEXCOP_USB=m
-# CONFIG_VIDEO_SAMSUNG_S5P_HDMIPHY is not set
-CONFIG_VIDEO_TVP5150=m
-CONFIG_MEDIA_TUNER_SIMPLE=m
-CONFIG_VIDEO_CX18_ALSA=m
-CONFIG_VIDEO_TEA6415C=m
-CONFIG_DVB_OR51211=m
-# CONFIG_VIDEO_VIU is not set
-CONFIG_RC_ATI_REMOTE=m
-CONFIG_VIDEOBUF2_DMA_SG=m
-CONFIG_SMS_SIANO_MDTV=m
-CONFIG_DVB_AV7110_OSD=y
-CONFIG_VIDEO_ZORAN_LML33=m
-CONFIG_USB_PWC_INPUT_EVDEV=y
-CONFIG_SOC_CAMERA_MT9M111=m
-CONFIG_VIDEO_OV7670=m
-CONFIG_USB_GSPCA_MARS=m
-CONFIG_SOC_CAMERA_OV772X=m
-CONFIG_VIDEO_CX88=m
-CONFIG_VIDEO_W9966=m
-CONFIG_DVB_S5H1411=m
-CONFIG_SOC_CAMERA_OV5642=m
-CONFIG_VIDEO_TCM825X=m
-CONFIG_USB_S2255=m
-# CONFIG_VIDEO_ATMEL_ISI is not set
-# CONFIG_RADIO_ZOLTRIX is not set
-CONFIG_DVB_PLL=m
-CONFIG_DVB_LGDT330X=m
-# CONFIG_VIDEO_GO7007_TW2804 is not set
-CONFIG_VIDEO_ADP1653=m
-CONFIG_DVB_STB0899=m
-CONFIG_RC_MAP=m
-CONFIG_USB_GSPCA_JEILINJ=m
-CONFIG_VIDEO_MT9V011=m
-CONFIG_DVB_LNBP21=m
-CONFIG_DVB_B2C2_FLEXCOP=m
-# CONFIG_VIDEO_TM6000 is not set
-CONFIG_VIDEOBUF2_CORE=m
-CONFIG_USB_GSPCA_SONIXB=m
-# CONFIG_STAGING is not set
-CONFIG_USB_GSPCA_ZC3XX=m
-CONFIG_DVB_USB_IT913X=m
-CONFIG_V4L_MEM2MEM_DRIVERS=y
-CONFIG_VIDEO_BT848_DVB=y
-CONFIG_VIDEO_ZORAN_DC10=m
-CONFIG_DVB_USB_CINERGY_T2=m
-# CONFIG_RADIO_TERRATEC is not set
-CONFIG_VIDEO_KS0127=m
-CONFIG_RADIO_WL1273=m
-CONFIG_MX1_VIDEO=y
-CONFIG_VIDEO_TVP7002=m
-CONFIG_DVB_VES1820=m
-CONFIG_VIDEO_PVRUSB2_DVB=y
-CONFIG_VIDEO_DEV=m
-CONFIG_VIDEO_SAA717X=m
-CONFIG_RADIO_TEA5764=m
-CONFIG_VIDEO_CX23885=m
-CONFIG_MEDIA_TUNER_MT20XX=m
-CONFIG_DVB_BUDGET=m
-# CONFIG_CAPTURE_DAVINCI_DM646X_EVM is not set
-CONFIG_DVB_VES1X93=m
-CONFIG_VIDEO_MT9V032=m
-CONFIG_USB_GSPCA_NW80X=m
-CONFIG_USB_GSPCA_KINECT=m
-CONFIG_VIDEO_CS5345=m
-# CONFIG_RADIO_GEMTEK_PROBE is not set
-CONFIG_USB_GSPCA_SPCA506=m
-CONFIG_DVB_ISL6421=m
-# CONFIG_VIDEO_VPSS_SYSTEM is not set
-CONFIG_USB_GSPCA_PAC207=m
-CONFIG_DVB_NXT6000=m
-CONFIG_DVB_TTUSB_DEC=m
-# CONFIG_SND_FM801_TEA575X is not set
-CONFIG_SMS_USB_DRV=m
-CONFIG_DVB_USB_NOVA_T_USB2=m
-CONFIG_DVB_DIB9000=m
-CONFIG_IR_FINTEK=m
-CONFIG_SOC_CAMERA_MT9T112=m
-CONFIG_MEDIA_TUNER_XC5000=m
-CONFIG_RADIO_MAXIRADIO=m
-CONFIG_DVB_TDA10048=m
-CONFIG_MEDIA_TUNER_MXL5005S=m
-CONFIG_MEDIA_TUNER_TEA5761=m
-# CONFIG_LIRC_IMON is not set
-# CONFIG_VIDEO_VPBE_DISPLAY is not set
-CONFIG_VIDEO_TDA7432=m
-CONFIG_DVB_EC100=m
-CONFIG_VIDEO_CX18=m
-CONFIG_MEDIA_TUNER_MT2266=m
-CONFIG_VIDEOBUF_DMA_SG=m
-CONFIG_VIDEO_ADV7180=m
-CONFIG_DVB_TDA1004X=m
-CONFIG_VIDEO_MXB=m
-# CONFIG_LIRC_SERIAL_TRANSMITTER is not set
-CONFIG_DVB_STV6110=m
-CONFIG_VIDEO_ADV7170=m
-# CONFIG_VIDEO_S5P_MIPI_CSIS is not set
-CONFIG_DVB_DYNAMIC_MINORS=y
-CONFIG_SOC_CAMERA_PLATFORM=m
-CONFIG_VIDEO_TDA9840=m
-# CONFIG_VIDEO_PXA27x is not set
-CONFIG_DVB_TDA10023=m
-CONFIG_VIDEO_V4L2=m
-CONFIG_USB_GSPCA_SQ905C=m
-# CONFIG_VIDEO_SAMSUNG_S5P_TV is not set
-CONFIG_DVB_S5H1409=m
-CONFIG_SOC_CAMERA_IMX074=m
-CONFIG_DVB_USB_DIBUSB_MB=m
-CONFIG_VIDEO_SAA7134_ALSA=m
-CONFIG_VIDEO_IR_I2C=m
-# CONFIG_ALTERA_STAPL is not set
-CONFIG_DVB_USB_AF9015=m
-CONFIG_DVB_B2C2_FLEXCOP_DEBUG=y
-CONFIG_DVB_A8293=m
-# CONFIG_VIDEO_SH_MOBILE_CSI2 is not set
-CONFIG_MX3_VIDEO=y
-# CONFIG_VIDEO_SAMSUNG_S5P_MIXER is not set
-CONFIG_VIDEO_SAA6588=m
-# CONFIG_VIDEO_MX3 is not set
-CONFIG_DVB_DS3000=m
-CONFIG_MEDIA_TUNER_TEA5767=m
-CONFIG_DVB_L64781=m
-CONFIG_DVB_CAPTURE_DRIVERS=y
-CONFIG_USB_GSPCA_TV8532=m
-CONFIG_RADIO_ADAPTERS=y
-CONFIG_DVB_USB_OPERA1=m
-CONFIG_RADIO_SAA7706H=m
-CONFIG_DVB_MT352=m
-CONFIG_MANTIS_CORE=m
-CONFIG_DVB_USB_M920X=m
-CONFIG_VIDEO_PVRUSB2_SYSFS=y
-CONFIG_DVB_USB_DIGITV=m
-# CONFIG_VIDEO_DM355_CCDC is not set
-CONFIG_VIDEO_MSP3400=m
-CONFIG_VIDEO_BWQCAM=m
-CONFIG_DVB_USB_UMT_010=m
-CONFIG_USB_GSPCA_SUNPLUS=m
-CONFIG_SOC_CAMERA_TW9910=m
-CONFIG_MEDIA_TUNER_MXL5007T=m
-CONFIG_USB_SN9C102=m
-CONFIG_SMS_SDIO_DRV=m
-CONFIG_SOC_CAMERA_MT9M001=m
-CONFIG_DVB_USB_FRIIO=m
-# CONFIG_VIDEO_TM6000_DVB is not set
-CONFIG_VIDEO_AK881X=m
-CONFIG_DVB_DIB3000MB=m
-# CONFIG_RADIO_GEMTEK is not set
-CONFIG_VIDEO_CQCAM=m
-CONFIG_DVB_LGS8GL5=m
-CONFIG_DVB_DRXK=m
-# CONFIG_RADIO_RTRACK2 is not set
-CONFIG_USB_GSPCA_PAC7302=m
-CONFIG_VIDEO_TUNER=m
-CONFIG_USB_GSPCA_OV519=m
-CONFIG_DVB_USB_CE6230=m
-CONFIG_DVB_USB_DIBUSB_MC=m
-CONFIG_RADIO_TEF6862=m
-# CONFIG_VIDEO_PMS is not set
-CONFIG_DVB_FE_CUSTOMISE=y
-# CONFIG_DISPLAY_DAVINCI_DM646X_EVM is not set
-CONFIG_VIDEOBUF_DMA_CONTIG=m
-CONFIG_VIDEO_CAPTURE_DRIVERS=y
-CONFIG_DVB_STV090x=m
-CONFIG_DVB_AF9013=m
-CONFIG_VIDEO_ADV_DEBUG=y
-CONFIG_VIDEO_SAA711X=m
-CONFIG_DVB_MT312=m
-CONFIG_VIDEO_CX88_ALSA=m
-# CONFIG_VIDEO_OMAP3_DEBUG is not set
-# CONFIG_VIDEO_OMAP2 is not set
-CONFIG_DVB_CX24116=m
-CONFIG_DVB_USB_DW2102=m
-CONFIG_VIDEOBUF2_VMALLOC=m
-CONFIG_SND_BT87X=m
-CONFIG_VIDEO_MEDIA=m
-CONFIG_VIDEO_EM28XX=m
-CONFIG_IR_LIRC_CODEC=m
-# CONFIG_LIRC_IGORPLUGUSB is not set
-CONFIG_USB_GL860=m
-CONFIG_VIDEO_V4L2_COMMON=m
-CONFIG_VIDEO_BT866=m
-CONFIG_DVB_FIREDTV=m
-CONFIG_USB_GSPCA_T613=m
-# CONFIG_VIDEO_GO7007_USB is not set
-CONFIG_SOC_CAMERA_OV2640=m
-CONFIG_LIRC=m
-# CONFIG_VIDEO_VPFE_CAPTURE is not set
-CONFIG_USB_SI470X=m
-CONFIG_VIDEO_SR030PC30=m
-CONFIG_DVB_OR51132=m
-# CONFIG_VIDEO_GO7007_SAA7115 is not set
-CONFIG_VIDEO_CX88_DVB=m
-# CONFIG_VIDEO_CX25821_ALSA is not set
-CONFIG_MEDIA_CONTROLLER=y
-CONFIG_USB_GSPCA_SN9C20X=m
-CONFIG_DVB_LGDT3305=m
-CONFIG_USB_GSPCA_SPCA501=m
-CONFIG_IR_WINBOND_CIR=m
-CONFIG_USB_GSPCA_SPCA508=m
-CONFIG_USB_GSPCA_SPCA505=m
-# CONFIG_VIDEO_GO7007_SAA7113 is not set
-# CONFIG_LIRC_BT829 is not set
-CONFIG_MEDIA_TUNER_MT2060=m
-CONFIG_USB_GSPCA_STV0680=m
-CONFIG_MEDIA_SUPPORT=m
-CONFIG_VIDEO_SAA7134_RC=y
-CONFIG_DVB_AU8522=m
-# CONFIG_RADIO_TYPHOON is not set
-CONFIG_DVB_ISL6423=m
-# CONFIG_VIDEO_SAMSUNG_S5P_MIXER_DEBUG is not set
-CONFIG_IR_RC5_SZ_DECODER=m
-CONFIG_DVB_BUDGET_PATCH=m
-CONFIG_VIDEO_CS53L32A=m
-CONFIG_SOC_CAMERA_MT9T031=m
-# CONFIG_LIRC_PARALLEL is not set
-CONFIG_DVB_ZL10353=m
-CONFIG_DVB_CX24110=m
-CONFIG_USB_GSPCA_SE401=m
-CONFIG_USB_GSPCA=m
-CONFIG_DVB_DIB7000M=m
-CONFIG_VIDEO_SAA7134_DVB=m
-CONFIG_SOC_CAMERA_OV9740=m
-CONFIG_USB_GSPCA_VC032X=m
-CONFIG_USB_GSPCA_SPCA1528=m
-CONFIG_DVB_MB86A20S=m
-CONFIG_VIDEO_EM28XX_ALSA=m
-CONFIG_VIDEO_ADV7175=m
-CONFIG_DVB_DIB3000MC=m
-CONFIG_DVB_PT1=m
-CONFIG_VIDEO_EM28XX_RC=y
-CONFIG_DVB_USB_TECHNISAT_USB2=m
-CONFIG_MEDIA_TUNER_MC44S803=m
-CONFIG_VIDEO_VIA_CAMERA=m
-CONFIG_DVB_TDA8261=m
-CONFIG_VIDEO_MEYE=m
-CONFIG_VIDEO_CX88_MPEG=m
-CONFIG_DVB_USB_AZ6027=m
-CONFIG_DVB_BUDGET_CORE=m
-CONFIG_DVB_TDA8083=m
-CONFIG_VIDEO_CX2341X=m
-# CONFIG_VIDEO_SH_MOBILE_CEU is not set
-CONFIG_DVB_CORE=m
-CONFIG_IR_RC6_DECODER=m
-CONFIG_VIDEO_IVTV=m
-CONFIG_DVB_HOPPER=m
-CONFIG_USB_GSPCA_SQ905=m
-# CONFIG_VIDEO_OMAP2_VOUT is not set
-CONFIG_MEDIA_TUNER_XC4000=m
-# CONFIG_VIDEO_SAMSUNG_S5P_SDO is not set
-# CONFIG_VIDEO_GO7007_OV7640 is not set
-CONFIG_RADIO_SI4713=m
-CONFIG_DVB_IX2505V=m
-CONFIG_DVB_TUNER_CX24113=m
-# CONFIG_LIRC_SASEM is not set
-CONFIG_IR_ENE=m
-CONFIG_DVB_STB6100=m
-# CONFIG_MEDIA_ALTERA_CI is not set
-CONFIG_DVB_AV7110=m
-CONFIG_VIDEO_EM28XX_DVB=m
-CONFIG_DVB_STV0299=m
-CONFIG_MEDIA_TUNER_QT1010=m
-# CONFIG_VIDEO_M32R_AR is not set
-CONFIG_VIDEO_CPIA2=m
-CONFIG_VIDEO_SAA7146_VV=m
-CONFIG_IR_STREAMZAP=m
-CONFIG_DVB_USB_DIB0700=m
-CONFIG_VIDEO_PVRUSB2=m
-CONFIG_DVB_MB86A16=m
-CONFIG_VIDEO_SAA7134=m
-CONFIG_VIDEO_TVP514X=m
-CONFIG_DVB_TUA6100=m
-CONFIG_VIDEO_CAFE_CCIC=m
-# CONFIG_VIDEO_GO7007_SONY_TUNER is not set
-CONFIG_USB_PWC_DEBUG=y
-CONFIG_USB_GSPCA_SPCA500=m
-CONFIG_TTPCI_EEPROM=m
-CONFIG_VIDEO_THS7303=m
-CONFIG_DVB_NXT200X=m
-CONFIG_VIDEO_ZORAN_ZR36060=m
-CONFIG_MEDIA_TUNER_TDA8290=m
-CONFIG_VIDEO_SAA7185=m
-CONFIG_VIDEO_TEA6420=m
-CONFIG_DVB_S5H1432=m
-# CONFIG_VIDEO_DAVINCI_VPIF is not set
-CONFIG_RADIO_WL128X=m
-CONFIG_DVB_STV0297=m
-# CONFIG_RADIO_SF16FMR2 is not set
-CONFIG_USB_ZR364XX=m
-# CONFIG_VIDEO_GO7007_TW9903 is not set
-# CONFIG_LIRC_STAGING is not set
-CONFIG_VIDEOBUF_VMALLOC=m
-# CONFIG_VIDEO_SAMSUNG_S5P_MFC is not set
-CONFIG_DVB_USB_DTV5100=m
-CONFIG_USB_PWC=m
-CONFIG_VIDEO_OMAP2_VOUT_VRFB=y
-CONFIG_USB_GSPCA_SN9C2028=m
-CONFIG_DVB_DM1105=m
-# CONFIG_RADIO_TEA5764_XTAL is not set
-CONFIG_IR_RC5_DECODER=m
-CONFIG_DVB_USB_DTT200U=m
-CONFIG_VIDEO_CX231XX_ALSA=m
-CONFIG_USB_GSPCA_STK014=m
-CONFIG_VIDEO_TVEEPROM=m
-CONFIG_VIDEO_CX231XX_RC=y
-CONFIG_DVB_ATBM8830=m
-CONFIG_VIDEO_HEXIUM_GEMINI=m
-# CONFIG_VIDEO_MX2 is not set
-CONFIG_VIDEO_ZORAN_LML33R10=m
-# CONFIG_I2C_SI470X is not set
-CONFIG_DVB_TDA10021=m
-CONFIG_MEDIA_TUNER_TDA9887=m
-CONFIG_VIDEO_ZORAN_AVS6EYES=m
-CONFIG_DVB_USB_AU6610=m
-CONFIG_VIDEO_SAA7191=m
-CONFIG_MEDIA_ATTACH=y
-CONFIG_DVB_USB_GL861=m
-# CONFIG_RADIO_TRUST is not set
-CONFIG_RADIO_TIMBERDALE=m
-CONFIG_USB_GSPCA_SQ930X=m
-CONFIG_DVB_CXD2820R=m
-CONFIG_RADIO_SI470X=y
-CONFIG_USB_GSPCA_ETOMS=m
-CONFIG_DVB_USB_EC168=m
-CONFIG_VIDEOBUF2_DMA_CONTIG=m
-CONFIG_VIDEO_FB_IVTV=m
-# CONFIG_RADIO_MIROPCM20 is not set
-CONFIG_VIDEO_BT819=m
-CONFIG_VIDEO_SAA7146=m
-CONFIG_DVB_TUNER_ITD1000=m
-CONFIG_VIDEO_BTCX=m
-CONFIG_MEDIA_TUNER_CUSTOMISE=y
-# CONFIG_VIDEO_SAMSUNG_S5P_HDMI is not set
-CONFIG_VIDEOBUF_DVB=m
-CONFIG_DVB_IT913X_FE=m
-CONFIG_DVB_S921=m
-# CONFIG_VIDEO_FIXED_MINOR_RANGES is not set
-# CONFIG_VIDEO_ISIF is not set
-CONFIG_DVB_USB_LME2510=m
-CONFIG_DVB_USB_VP7045=m
-CONFIG_VIDEO_ZORAN=m
-CONFIG_USB_GSPCA_CPIA1=m
-# CONFIG_DVB_CXD2099 is not set
-CONFIG_DVB_CX24123=m
-# CONFIG_VIDEO_SAMSUNG_S5P_HDMI_DEBUG is not set
-CONFIG_VIDEO_CX231XX_DVB=m
-# CONFIG_VIDEO_GO7007_USB_S2250_BOARD is not set
-CONFIG_DVB_TUNER_DIB0090=m
-CONFIG_MEDIA_TUNER_MAX2165=m
-CONFIG_IR_IMON=m
-CONFIG_USB_MR800=m
-# CONFIG_RADIO_RTRACK is not set
-CONFIG_MEDIA_TUNER_MT2131=m
-# CONFIG_VIDEO_DM6446_CCDC is not set
-CONFIG_IR_MCE_KBD_DECODER=m
-# CONFIG_VIDEO_CX25821 is not set
-CONFIG_DVB_STV0288=m
-# CONFIG_VIDEO_MX1 is not set
-CONFIG_USB_VIDEO_CLASS=m
-CONFIG_VIDEO_HEXIUM_ORION=m
-CONFIG_VIDEO_M52790=m
-# CONFIG_VIDEO_DM644X_VPBE is not set
-CONFIG_USB_GSPCA_MR97310A=m
-CONFIG_DVB_DRXD=m
-CONFIG_SOC_CAMERA_OV9640=m
-CONFIG_VIDEO_UPD64031A=m
-CONFIG_VIDEO_TVAUDIO=m
-CONFIG_VIDEO_MX2_HOSTSUPPORT=y
-CONFIG_VIDEO_TLG2300=m
-CONFIG_DVB_PLUTO2=m
-CONFIG_DVB_STB6000=m
-CONFIG_DVB_TDA665x=m
-CONFIG_DVB_BUDGET_CI=m
-CONFIG_DVB_USB_GP8PSK=m
-CONFIG_SND_BT87X_OVERCLOCK=y
-CONFIG_USB_GSPCA_VICAM=m
-CONFIG_DVB_DIB8000=m
-CONFIG_DVB_USB_TTUSB2=m
-CONFIG_DVB_TDA826X=m
-# CONFIG_VIDEO_GO7007_UDA1342 is not set
-CONFIG_DVB_TDA10086=m
-CONFIG_DVB_TTUSB_BUDGET=m
-CONFIG_VIDEO_NOON010PC30=m
-CONFIG_VIDEO_WM8775=m
-CONFIG_VIDEO_TLV320AIC23B=m
-CONFIG_RC_CORE=m
-CONFIG_USB_GSPCA_KONICA=m
-CONFIG_VIDEOBUF2_MEMOPS=m
-# CONFIG_VIDEO_VINO is not set
-CONFIG_DVB_SP887X=m
-CONFIG_DVB_DDBRIDGE=m
-CONFIG_DVB_DIB7000P=m
-CONFIG_IR_ITE_CIR=m
-CONFIG_VIDEO_V4L2_SUBDEV_API=y
-CONFIG_USB_GSPCA_BENQ=m
-CONFIG_USB_GSPCA_CONEX=m
-CONFIG_USB_ET61X251=m
-CONFIG_VIDEO_HDPVR=m
-CONFIG_IR_JVC_DECODER=m
-# CONFIG_VIDEO_M32R_AR_M64278 is not set
-CONFIG_DVB_LGS8GXX=m
-CONFIG_DVB_SI21XX=m
-CONFIG_DVB_ZL10036=m
-CONFIG_DVB_BCM3510=m
-CONFIG_DVB_STV0900=m
-CONFIG_DVB_ZL10039=m
-CONFIG_DVB_USB_AF9005_REMOTE=m
-# CONFIG_VIDEO_OMAP3 is not set
-CONFIG_VIDEO_AU0828=m
-# CONFIG_LIRC_SERIAL is not set
-CONFIG_DVB_USB_A800=m
-CONFIG_DVB_NET=y
-CONFIG_MEDIA_TUNER_TDA18212=m
-CONFIG_VIDEO_ZORAN_DC30=m
-CONFIG_MEDIA_TUNER_TDA18218=m
-CONFIG_V4L_USB_DRIVERS=y
-CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y
-CONFIG_DVB_MAX_ADAPTERS=8
-
diff --git a/abs/core/wmaker_settings/GNUstep/Defaults/WMState b/abs/core/wmaker_settings/GNUstep/Defaults/WMState
index 39a2ac4..9aede30 100644
--- a/abs/core/wmaker_settings/GNUstep/Defaults/WMState
+++ b/abs/core/wmaker_settings/GNUstep/Defaults/WMState
@@ -128,17 +128,4 @@
Name = "Workspace 3";
}
);
- Applications = (
- {
- Hidden = No;
- Dock = Dock;
- ShortcutMask = 0;
- Name = mythfrontend.Mythfrontend;
- Workspace = Main;
- Geometry = "2560x1600+0+0";
- Shaded = No;
- Command = "/usr/bin/mythfrontend -d -l /var/log/mythtv/mythfrontend.log";
- Miniaturized = No;
- }
- );
}
diff --git a/abs/core/wmaker_settings/PKGBUILD b/abs/core/wmaker_settings/PKGBUILD
index 7b75140..47b4b99 100644
--- a/abs/core/wmaker_settings/PKGBUILD
+++ b/abs/core/wmaker_settings/PKGBUILD
@@ -1,8 +1,8 @@
pkgname=wmaker_settings
pkgver=1.0
-pkgrel=4
+pkgrel=8
pkgdesc="Default settings for windowmaker+ theme"
-depends=(windowmaker)
+depends=('windowmaker' 'linhes-scripts>=7-24')
source=()
arch=('i686')
groups=(alt_wm)
diff --git a/abs/core/xdotool/PKGBUILD b/abs/core/xdotool/PKGBUILD
index 0ce58a3..ca3b071 100644
--- a/abs/core/xdotool/PKGBUILD
+++ b/abs/core/xdotool/PKGBUILD
@@ -4,9 +4,10 @@
pkgname=xdotool
pkgver=2.20110530.1
-pkgrel=1
+pkgrel=3
pkgdesc="Command-line X11 automation tool"
arch=('i686' 'x86_64')
+epoch=3
url="http://www.semicomplete.com/projects/xdotool/"
license=('BSD')
depends=('libxtst' 'libxinerama')
diff --git a/abs/core/xymon/PKGBUILD b/abs/core/xymon/PKGBUILD
index 5332ff5..23590a1 100644
--- a/abs/core/xymon/PKGBUILD
+++ b/abs/core/xymon/PKGBUILD
@@ -1,7 +1,7 @@
pkgbase=xymon
pkgname=(xymonserver xymonclient)
pkgver=4.3.5
-pkgrel=26
+pkgrel=32
pkgdesc="Hobbit is a system for monitoring servers and networks. "
license="GPL"
arch=('i686' 'x86_64')
@@ -9,7 +9,7 @@ arch=('i686' 'x86_64')
url="http://www.xymon.com/"
source=(http://voxel.dl.sourceforge.net/project/xymon/Xymon/4.3.5/xymon-4.3.5.tar.gz hobbitadd.py xymon_ghost_check graph.cfg.diff xymonserver.cfg.diff tasks.d.mv clientlaunch.cfg.patch hobbitstorage.py hbnotes.py hobbit-myth-orphan.sh analysis.cfg hbfunc.py be.png tuner.png tv.png hobbit-mem-myth.sh hobbit_notify.sh alerts.cfg hobbit_myth_data.py logrotate-server.xymon logrotate-client.xymon log_list.sh client-local.cfg.patch led_themes.tar.gz )
-depends=(rrdtool fping pcre python graphviz)
+depends=(rrdtool fping pcre python graphviz 'linhes-scripts>=7-24')
install=xymon.install
build() {
@@ -118,8 +118,8 @@ md5sums=('31923ec126fe1c264fceb459d2175161'
'cc845b5aedc33dda8e3103b915fe4967'
'650b523d879f32c1bad3b4a9e10e7c93'
'093648dabb0d1da0fdcc37b327737f43'
- '84f6b0db44e5142bb59aeabc7ea875af'
- '6eb6ecdf33454f35b6c2409b863c816f'
+ 'cac3478de106d875ddbdaa377d26692d'
+ '0f70e76a164f648f0a4a01110137cb20'
'f6921f0413215ae174e81306be80d37f'
'be02f5d21373f97224ffa4727ec9718a'
'd210c43fb9ee9ad6cd7648e0c2e0efea'
@@ -128,7 +128,7 @@ md5sums=('31923ec126fe1c264fceb459d2175161'
'0757294eec13771f8e63da23cf066796'
'622f400fd098cbc43c203e3210a6694e'
'd06c4327cc69aeead3fa05f39660f33e'
- '129353c8ad92e89c691382a98dd5ce77'
+ 'eb502ce1be9b658be74911b53832caa8'
'f6ff1fb4bacee930007b877424619b30'
'e06147db25d75cf246886137a4ea164a'
'98e9242ae346f729b14cb195786571f2'
diff --git a/abs/core/xymon/hbnotes.py b/abs/core/xymon/hbnotes.py
index 13dbd86..2a1b221 100644
--- a/abs/core/xymon/hbnotes.py
+++ b/abs/core/xymon/hbnotes.py
@@ -19,8 +19,8 @@ except:
-def createdropdown():
- dir = "/data/database_backup"
+def createdropdown(currenthostype):
+ dir = "/myth/system_backup"
dropdown=" "
#dropdown='''
#<input name="param2" type="radio" value="Restore" />Restore database </>
@@ -33,7 +33,8 @@ def createdropdown():
#dropdown+='<option value="' + file + '">' + file + '</option> '
dropdown+='</select> <br><input name="param2" type="radio" value="Backup" checked="checked" />Backup database<br /> '
dropdown+='<input name="param2" type="radio" value="Optimize" />Optimize database<br /> '
- dropdown+='<input name="param2" type="radio" value="ShutdownAll" />Shutdown All Systems (expect MBE)<br /> '
+ if currenthostype == "Master_backend":
+ dropdown+='<input name="param2" type="radio" value="ShutdownAll" />Shutdown All Systems (expect MBE)<br /> '
#dropdown+='''<input name="param2" type="radio" value="UpdateAll" />Update All Systems </> <select name="param5">
#<option value="Myth_only">Myth only</option>
#<option value="All"> Full System</option>
@@ -339,8 +340,8 @@ def main(argv):
</div>
'''
- if currenthostype == "Master_backend":
- mbeoptions=createdropdown()
+ if currenthostype == "Master_backend" or currenthostype == "Standalone":
+ mbeoptions=createdropdown(currenthostype)
else:
mbeoptions=''
returnurl="/xymon/notes/"
diff --git a/abs/core/xymon/hobbit-myth-orphan.sh b/abs/core/xymon/hobbit-myth-orphan.sh
index f9f7d54..5cba136 100644
--- a/abs/core/xymon/hobbit-myth-orphan.sh
+++ b/abs/core/xymon/hobbit-myth-orphan.sh
@@ -1,53 +1,47 @@
#!/bin/bash
TMPFILE=/tmp/oprhan.result
-/usr/local/bin/myth.find_orphans.pl > $TMPFILE
-
-
- COLUMN=orphan # Name of the column
- COLOR=green # By default, everything is OK
-
- # Do whatever you need to test for something
- # As an example, go red if /tmp/badstuff exists.
-
-thumbs=`grep -A 4 "Summary:" $TMPFILE |tail -n 1 | cut -d" " -f3 `
-if [ ! x$thumbs = x0 ]
-then
- MSG="$thumbs orphaned thumbnails with no corresponding recording"
- COLOR='yellow'
-fi
-
-missing=`grep -A 2 "Summary:" $TMPFILE |tail -n 1 | cut -d, -f2 | cut -d" " -f2 `
-if [ ! x$missing = x0 ]
-then
- COLOR='red'
-MSG="${MSG}
- `grep -A 2 "Summary:" $TMPFILE |tail -n 1 ` "
-fi
-
-unkown=`grep -A 5 "Summary:" $TMPFILE |tail -n 1 | cut -d" " -f3 `
-if [ ! x$unkown = x0 ]
-then
- COLOR='red'
-MSG="${MSG}
-`grep -A 5 "Summary:" $TMPFILE |tail -n 1 `"
-fi
-
-
-MSG="${MSG}
-
-
- `cat $TMPFILE`
- "
-
- # Tell Hobbit about it
- $BB $BBDISP "status $MACHINE.$COLUMN $COLOR `date`
-/usr/local/bin/myth.find_orphans.pl
-
+MYTHCONFDIR=/usr/share/mythtv /usr/LH/bin/find_orphans.py --printonly > $TMPFILE
+
+
+COLUMN=orphan # Name of the column
+COLOR=green # By default, everything is OK
+MSG="All OK"
+
+
+
+
+#yellow
+for i in "Orphaned video files" "Orphaned snapshots" "Database backups" "Other files"
+do
+ grep -q "$i" $TMPFILE
+ status=$?
+ if [ $status -eq 0 ]
+ then
+ COLOR="yellow"
+ MSG="Problems found"
+ fi
+done
+
+#red
+for i in "Recordings with missing files" "Zero byte recordings"
+do
+ grep -q "$i" $TMPFILE
+ status=$?
+ if [ $status -eq 0 ]
+ then
+ COLOR="red"
+ MSG="Problems found"
+ fi
+done
+
+MSG="
+ ${MSG}
+ `cat $TMPFILE` "
+# Tell Hobbit about it
+$BB $BBDISP "status $MACHINE.$COLUMN $COLOR `date`
${MSG}
-
"
-
- exit 0
+exit 0
diff --git a/abs/core/xymon/hobbit_myth_data.py b/abs/core/xymon/hobbit_myth_data.py
index 840c293..1acca67 100644
--- a/abs/core/xymon/hobbit_myth_data.py
+++ b/abs/core/xymon/hobbit_myth_data.py
@@ -34,7 +34,7 @@ def check_mtc():
for i in mtc:
line=i
infile.close()
- if line.strip() == "Finished":
+ if line.split()[0] == "Finished":
return True
else:
return False
diff --git a/abs/core/xymon/xymon.install b/abs/core/xymon/xymon.install
index 8a1d798..067030e 100644
--- a/abs/core/xymon/xymon.install
+++ b/abs/core/xymon/xymon.install
@@ -26,7 +26,7 @@ post_install() {
echo "Adding sudo permissions for http {backup_job}"
echo "Adding sudo permissions for http {sv}"
LINE="nobody ALL = NOPASSWD:/usr/bin/certmaster-ca"
- LINE1="http ALL = NOPASSWD:/usr/MythVantage/bin/backup_job"
+ LINE1="http ALL = NOPASSWD:/usr/LH/bin/lh_system_backup_job"
LINE2="http ALL = NOPASSWD:/sbin/sv"
setfacl -R -m u:nobody:rwx /data/srv/httpd/htdocs
for i in "$LINE" "$LINE1" "$LINE2"