diff options
218 files changed, 8645 insertions, 59 deletions
| diff --git a/abs/core-testing/LinHES-config/PKGBUILD b/abs/core-testing/LinHES-config/PKGBUILD index 030d976..68dc6c8 100755 --- a/abs/core-testing/LinHES-config/PKGBUILD +++ b/abs/core-testing/LinHES-config/PKGBUILD @@ -1,9 +1,9 @@  pkgname=LinHES-config  pkgver=1.0 -pkgrel=6 +pkgrel=34  conflicts=(MythVantage-config MythVantage-config-dev LinHES-config-dev )  pkgdesc="Install and configure your system" -depends=(bc libstatgrab  mysql-python expect curl dnsutils parted sg3_utils nmbscan) +depends=(bc libstatgrab  mysql-python expect curl dnsutils parted sg3_utils nmbscan hwd)  arch=('i686')  source=(mythinstall.bin myth_user_call file_time_offset.py install-ui.xml install_proxy.sh install_functions.sh systemconfig.sh install_db_chroot.sh restore_default_settings.sh xconfig.sh timezip.py soundconfig.sh LinHES-release issue MythVantage.sh create_master.sh build_diskless.sh networkconfig.sh timezone.bin autocard.py restore_km_db_chroot.sh) diff --git a/abs/core-testing/LinHES-config/install-ui.xml b/abs/core-testing/LinHES-config/install-ui.xml index 0ec9ddb..b7a67de 100755 --- a/abs/core-testing/LinHES-config/install-ui.xml +++ b/abs/core-testing/LinHES-config/install-ui.xml @@ -1,6 +1,6 @@  <!-- -    This is a myth style theme file for mythwelcome +    This is a myth style theme file for mythvantage      (c) 2005 by a whole bunch of people associated with MythTV @@ -17,7 +17,7 @@         <font name="title" face="Arial">             <color>#ffff00</color>             <dropcolor>#000000</dropcolor> -           <size>24</size> +           <size>22</size>             <shadow>3,3</shadow>             <bold>yes</bold>         </font> @@ -73,7 +73,7 @@                  <multiline>no</multiline>                  <font>title</font>                  <area>50,40,700,40</area> -                <value>LinHes: The Linux Home Entertainment System </value> +                <value>LinHES: The Linux Home Entertainment System </value>              </textarea>              <!-- diff --git a/abs/core-testing/LinHES-config/install_functions.sh b/abs/core-testing/LinHES-config/install_functions.sh index e5912da..07bc4fa 100755 --- a/abs/core-testing/LinHES-config/install_functions.sh +++ b/abs/core-testing/LinHES-config/install_functions.sh @@ -35,7 +35,7 @@ update_db_settings Theme "$pick"  function setupremote { -    mv -f $BASE/etc/lircd.conf $BASE/etc/lircd.conf.`date +%Y-%m-%d-%H-%M` 2>/dev/null +    [ -e $BASE/etc/lircd.conf ] && mv -f $BASE/etc/lircd.conf $BASE/etc/lircd.conf.`date +%Y-%m-%d-%H-%M`       if [ -d $TEMPLATES/remotes/$Remotetype ]      then              cd $TEMPLATES/remotes/$Remotetype @@ -43,12 +43,19 @@ function setupremote {              do                      cat $i >> $BASE/etc/lircd.conf              done -            cp -f lircrc* $BASE/etc/lircrc -            chmod 755 /etc/lircrc +            cp -f lircrc* $BASE/etc/lircrc 2> /dev/null +            [ -e /etc/lircrc ] && chmod 755 /etc/lircrc              update_db_settings HostRemoteType  "$Remotetype" -            /usr/sbin/lircd  -d /dev/lirc0 -            mkdir /root/.mythtv -           ln -s /etc/lircrc /root/.mythtv/lircrc +	    #special case for special remote +	    echo "Starting with support for $Remotype" +	    if [ x$Remotetype = "dvico" ] +	    then +	            /usr/sbin/lircd  -d /dev/usb/hiddev0  +	    else +	            /usr/sbin/lircd  -d /dev/lirc0 +	    fi +	    [ -e /root/.mythtv ] ||  mkdir /root/.mythtv 2>/dev/null +            ln -s /etc/lircrc /root/.mythtv/lircrc 2>/dev/null      fi  } diff --git a/abs/core-testing/LinHES-config/install_proxy.sh b/abs/core-testing/LinHES-config/install_proxy.sh index bc89a1d..57258da 100755 --- a/abs/core-testing/LinHES-config/install_proxy.sh +++ b/abs/core-testing/LinHES-config/install_proxy.sh @@ -168,7 +168,7 @@ then      rm -f  $1  fi -for i in bin boot etc home lib opt root sbin usr var +for i in bin boot etc home lib opt root sbin usr var data  do  echo $i >> $1  done @@ -206,7 +206,7 @@ function upgrade () {          $run copy_it $disk $SQUASHLIST          #copy back ssh keys -        cp -rp /data/var/cache/pacman/pkg/* /new_boot/data/var/cache/pacman/pkg/ +#        cp -rp /data/var/cache/pacman/pkg/* /new_boot/data/var/cache/pacman/pkg/          cp -fp /new_boot/etc.old/ssh/*.pub   /new_boot/etc/ssh/          cp -fp /new_boot/etc.old/ssh/*.key   /new_boot/etc/ssh/          cp -fp /new_boot/etc.old/ssh/*key   /new_boot/etc/ssh/ @@ -225,11 +225,15 @@ function upgrade () {          fi          $run fstab_fix_it $disk UPGRADE -    echo "Writing boot sector" > /tmp/.install_state +	#this is here to copy in the systemconfig file as soon as possible. +        cp -f /etc/systemconfig "$mountpoint"/etc + +        echo "Writing boot sector" > /tmp/.install_state          progress 99          sleep 1          $run grub_it $disk +      echo "Configuring system" > /tmp/.install_state          progress          sleep 1 @@ -264,20 +268,40 @@ function upgrade () {          chroot "$mountpoint" $MV_ROOT/bin/systemconfig.sh misc,hostype,network,advanced,this_is_install          #wrap this in a network check_network, no need to update the db if the import worked. -#####  do I need to start mysql? +        #####  do I need to start mysql?          /etc/rc.d/mysqld stop -        chroot "$mountpoint"   "$MV_ROOT/bin/restore_km_db_chroot.sh"  >  /tmp/chrootdb_km.out +        if [ -f /new_boot/myth/backup/mythconverg.sql.gz ] +        then +            echo "--------------------------------" +            echo "Restoring database" +            echo "--------------------------------" +            chroot "$mountpoint"   "$MV_ROOT/bin/restore_km_db_chroot.sh"  >  /tmp/chrootdb_km.out +        else +            echo "--------------------------------" +            echo "Couldn't find backup file, installing new database" +            echo "--------------------------------" +            touch /tmp/.upgrade_db_failed +            chroot "$mountpoint"   "$MV_ROOT/bin/install_db_chroot.sh"  >  /tmp/chrootdb.out +        fi + +          if [  -f /tmp/etc/KnoppMyth-version ]          then              chroot "$mountpoint" $MV_ROOT/bin/restore_default_settings.sh -c restore -t hostsettings +	    #change permissions of /myth (only needed on km->linhes) +	    chown -R mythtv:mythtv $mountpoint/myth +            chown -R root:root $mountpoint/myth/backup          else              chroot "$mountpoint" $MV_ROOT/bin/restore_default_settings.sh -c restore -t syssettings          fi          # -    #Run second time +        #Run second time          chroot "$mountpoint" $MV_ROOT/bin/systemconfig.sh misc,hostype,network,advanced,this_is_install          chroot "$mountpoint" $MV_ROOT/bin/systemconfig.sh advanced,this_is_install          apply_new_auth + + +          umount "$mountpoint/dev"          umount "$mountpoint/proc" @@ -480,7 +504,12 @@ echo "-----------------------------------------------------------------------3--          * ) -            state=`cat /tmp/.install_state` +	    if [ -f /tmp/.install_state ] +	    then +            	state=`cat /tmp/.install_state` +	    else +		state=" " +	    fi              if  [  x"${state}" =  "xConfiguring system" ]              then                  progress "" diff --git a/abs/core-testing/LinHES-config/restore_km_db_chroot.sh b/abs/core-testing/LinHES-config/restore_km_db_chroot.sh index 35e8fbd..17ad113 100644 --- a/abs/core-testing/LinHES-config/restore_km_db_chroot.sh +++ b/abs/core-testing/LinHES-config/restore_km_db_chroot.sh @@ -29,12 +29,19 @@ if  [ $SystemType = "Master_backend" -o $SystemType = "Standalone"  ]                     #load database                     pacman --noconfirm -R mythdb-initial                     pacman --noconfirm  -S mythdb-initial -                   echo "restoring old database" -                   gunzip -c /myth/backup/mythconverg.sql.gz > /myth/backup/mythconverg.sql -                   mysql mythconverg < /myth/backup/mythconverg.sql + +                   if [ -f /myth/backup/mythconverg.sql.gz ] +                   then +                        echo "restoring old database" +                        gunzip -c /myth/backup/mythconverg.sql.gz > /myth/backup/mythconverg.sql +                        mysql  mythconverg < /myth/backup/mythconverg.sql + +                   else +                        echo "Could not restore old database, mythconverg.sql is missing." +                        touch /tmp/.upgrade_db_failed +                   fi                      if [ -d /data/srv/mysql/mythconverg ] -                    #if [ -d /var/lib/mysql/mythconverg ]                      then                          status=0                      fi diff --git a/abs/core-testing/LinHES-config/systemconfig.sh b/abs/core-testing/LinHES-config/systemconfig.sh index a12546a..d84c0dc 100755 --- a/abs/core-testing/LinHES-config/systemconfig.sh +++ b/abs/core-testing/LinHES-config/systemconfig.sh @@ -204,6 +204,24 @@ function setupremote {                  chmod 755 /etc/lircrc                  daemon_add="lircd $daemon_add"                  sv hup lircd + +		if [ ! -e /home/mythtv/.mythtv/lircrc ] +		then +			if [ ! -d /home/mythtv/.mythtv ] +			then +				mkdir /home/mythtv/.mythtv +				chown mythtv:mythtv /home/mythtv/.mythtv	 +			fi + +			ln -s /etc/lircrc /home/mythtv/.mythtv/lircrc 2> /dev/null +		fi +		if [ ! -e /home/mythtv/.lircrc ] +		then + +			ln -s /etc/lircrc /home/mythtv/.lircrc 2> /dev/null +		fi +		 +                  ;;  esac diff --git a/abs/core-testing/LinHES-config/templates/xorg/xorg.conf.vesa b/abs/core-testing/LinHES-config/templates/xorg/xorg.conf.vesa new file mode 100755 index 0000000..c569819 --- /dev/null +++ b/abs/core-testing/LinHES-config/templates/xorg/xorg.conf.vesa @@ -0,0 +1,72 @@ +# nvidia-xconfig: X configuration file generated by nvidia-xconfig +# nvidia-xconfig:  version 1.0  (buildmeister@builder3)  Tue Aug  1 21:11:12 PDT 2006 + +Section "ServerLayout" +    Identifier     "Layout0" +    Screen      0  "Screen0" +    InputDevice    "Keyboard0" "CoreKeyboard" +    InputDevice    "Mouse0" "CorePointer" +EndSection + +Section "Files" +    RgbPath         "/usr/X11R6/lib/X11/rgb" +EndSection + +Section "Module" +    Load           "dbe" +    Load           "extmod" +    Load           "type1" +    Load           "freetype" +   +EndSection + +Section "InputDevice" +    # generated from default +    Identifier     "Mouse0" +    Driver         "mouse" +    Option         "Protocol" "auto" +    Option         "Device" "/dev/psaux" +    Option         "Emulate3Buttons" "no" +    Option         "ZAxisMapping" "4 5" +EndSection + +Section "InputDevice" +    # generated from default +    Identifier     "Keyboard0" +    Driver         "keyboard" +EndSection + +Section "Monitor" +    Identifier     "Monitor0" +    VendorName     "Unknown" +    ModelName      "Unknown" +    HorizSync       30.0 - 110.0 +    VertRefresh     50.0 - 150.0 +    Option         "DPMS" "false" +    Modeline  "1280x720" 74.25   1280 1316 1452 1644    720  720  723  751 -hsync +vsync +    Modeline  "1280x720_60.00" 74.25 1280 1352 1432 1648 720 725 730 750 -hsync -vsync +    ModeLine  "848x480" 34.0 848 880 1016 1072 480 494 495 527 -hsync -vsync +    Modeline  "800x600" 38.34 800 832 928 1024 600 604 608 624 -HSync -VSync  +    ModeLine "NTSC-DVD-72p" 32.432 720 736 800 858 480 484 492 525 +EndSection + +Section "Device" +    Identifier     "Device0" +    Driver         "vesa" +    VendorName     "Generic Corporation" +    Option "DPI" "100 x 100" + + +EndSection + +Section "Screen" +    Identifier     "Screen0" +    Device         "Device0" +    Monitor        "Monitor0" +    DefaultDepth    24 +    SubSection     "Display" +        Depth       24 +        Modes     "1280x720"  +    EndSubSection +EndSection + diff --git a/abs/core-testing/LinHES-config/timezone.bin b/abs/core-testing/LinHES-config/timezone.binBinary files differ index a11d65a..cff931a 100755 --- a/abs/core-testing/LinHES-config/timezone.bin +++ b/abs/core-testing/LinHES-config/timezone.bin diff --git a/abs/core-testing/LinHES-config/xconfig.sh b/abs/core-testing/LinHES-config/xconfig.sh index 42603d6..4984dc5 100755 --- a/abs/core-testing/LinHES-config/xconfig.sh +++ b/abs/core-testing/LinHES-config/xconfig.sh @@ -4,10 +4,17 @@ BASE=""  #TEMPLATES="/usr/share/templates"  function Xvalues { -    VGACARDTYPE=`lspci|grep -i vga|sort -r|head -n 1| cut -d: -f3|cut -d" " -f 2` +    CMDLINE=$(cat /proc/cmdline) +    echo $CMDLINE |grep -q forceXvesa +    if [ $? = 0 ] +    then +	    VGACARDTYPE=vesa +    else +	    VGACARDTYPE=`lspci|grep -i vga|sort -r|head -n 1| cut -d: -f3|cut -d" " -f 2` +    fi      echo $VGACARDTYPE      currentmode=`cat $BASE/etc/X11/xorg.conf |grep Modes|awk -Fs ' { print $2 } '` -    } +}  function presetupX {  if [ x$XUseAdvanced =  x1 ] @@ -192,6 +199,9 @@ function setupX {                      fi                                  ;; +	     vesa)  sed -e "s/^.*Modes.*$/\t Modes \"${Xres}\"/" $TEMPLATES/xorg/xorg.conf.vesa > $XORG_CONF + +  	*)  #XCONF=`hwd -x |grep etc`          XCONF=`hwd -x |grep etc|tr -d [:cntrl:]|cut -d\/ -f 2-` diff --git a/abs/core-testing/LinHES-system/LinHES-run b/abs/core-testing/LinHES-system/LinHES-run index 0fc10fd..f04d5e0 100644 --- a/abs/core-testing/LinHES-system/LinHES-run +++ b/abs/core-testing/LinHES-system/LinHES-run @@ -31,7 +31,7 @@ then          if [ ! $STATUS = 2 ]          then                  sudo sv stop mythbackend -                xterm -e /usr/bin/mythtv-setup +                xterm -fn *18* -e /usr/bin/mythtv-setup                  sudo sv start mythbackend                  nice -n 19 mythfilldatabase --quiet &          fi @@ -49,7 +49,7 @@ fi  echo "====================================================================="  echo "Starting $STARTCMD" - +firstboot.sh &  # while [ x = x ]  # do diff --git a/abs/core-testing/LinHES-system/LinHES.install b/abs/core-testing/LinHES-system/LinHES.install index e327edc..2d2bdf2 100644 --- a/abs/core-testing/LinHES-system/LinHES.install +++ b/abs/core-testing/LinHES-system/LinHES.install @@ -8,7 +8,7 @@ pre_install() {  # arg 1:  the new package version  post_install() { -MVDIR=/usr/LinHES/bin +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 diff --git a/abs/core-testing/LinHES-system/PKGBUILD b/abs/core-testing/LinHES-system/PKGBUILD index 0660745..21f196d 100644 --- a/abs/core-testing/LinHES-system/PKGBUILD +++ b/abs/core-testing/LinHES-system/PKGBUILD @@ -1,6 +1,6 @@  pkgname=LinHES-system  pkgver=1.0 -pkgrel=8 +pkgrel=12  arch=('i686')  MVDIR=$startdir/pkg/usr/LH  BINDIR=$startdir/pkg/usr/bin @@ -8,7 +8,7 @@ install=LinHES.install  pkgdesc="scripts and things related to having a automated system"  depends=() -binfiles="LinHES-start optimize_mythdb.py myth_mtc.py myth_mtc.sh LinHES-run" +binfiles="LinHES-start optimize_mythdb.py myth_mtc.py myth_mtc.sh LinHES-run firstboot.sh"  source=(LinHES-session LinHES-profile.sh $binfiles) @@ -16,7 +16,7 @@ build() {          cd $startdir/src          install -m755 -D LinHES-session $startdir/pkg/etc/X11/Sessions/LinHES  	install -m755 -D LinHES-profile.sh $startdir/pkg/etc/profile.d/LinHES-profile.sh -####### install to /usr/MythVantage/bin/ +####### install to /usr/LH/bin  #mkdir -p $BINDIR  for i in $binfiles diff --git a/abs/core-testing/LinHES-system/firstboot.sh b/abs/core-testing/LinHES-system/firstboot.sh new file mode 100755 index 0000000..366874a --- /dev/null +++ b/abs/core-testing/LinHES-system/firstboot.sh @@ -0,0 +1,44 @@ +#!/bin/bash +. ~/.configured +ATTEMPT=0 +function try_smolt { +	((ATTEMPT=ATTEMPT+1)) +	echo $ATTEMPT +	status=$(echo "jump mythsmolt" | telnet localhost 6546 2>&1) +	echo $status|grep -q refused + 	status=$? +	if [ $status  != 0  ] +	then +		fb_status=0 +		echo "FB=NO" > ~/.configured +	fi +	if [ $ATTEMPT = 200 ] +	then +		fb_status=0 +	fi +} + +if [ ! -e /tmp/debug ] +then +	if [ ! -e /tmp/nomfe ] +	then +		if [ ! -e ~/.mythtv/pub-uuid ] +		then +			if [ x$FB != xNO ] +			then +				fb_status=4 +				while [ $fb_status != 0 ] +				do +					try_smolt +					if [ $fb_status != 0  ] +					then +						sleep 1 +					fi +				done +			fi +		fi +	fi +fi + + + diff --git a/abs/core-testing/LinHES-system/myth_mtc.py b/abs/core-testing/LinHES-system/myth_mtc.py index faeee84..5505b0a 100755 --- a/abs/core-testing/LinHES-system/myth_mtc.py +++ b/abs/core-testing/LinHES-system/myth_mtc.py @@ -112,10 +112,10 @@ def run_stuff():          optimize()  	print "Running backup" -        os.system('/usr/MythVantage/bin/backup_job') +        os.system('/usr/LH/bin/backup_job')  	print "Running system_update" -        os.system('/usr/MythVantage/bin/update_system') +        os.system('/usr/LH/bin/update_system')          continue_loop=False      else:          continue_loop=True diff --git a/abs/core-testing/ddcxinfo-arch/PKGBUILD b/abs/core-testing/ddcxinfo-arch/PKGBUILD new file mode 100644 index 0000000..108a97e --- /dev/null +++ b/abs/core-testing/ddcxinfo-arch/PKGBUILD @@ -0,0 +1,21 @@ +# $Id: PKGBUILD 356 2008-04-18 22:56:27Z aaron $ +# Maintainer: damir <damir@archlinux.org> +# TUR: Ben <ben@benmazer.net> +# Contributor: Elia Yehuda <z4ziggy@user-contributions.org> + +pkgname=ddcxinfo-arch +pkgver=0.8 +pkgrel=1 +pkgdesc="utility to probe non/ddc monitors - used by hwd" +url="http://user-contributions.org/projects/ddcxinfo-arch/" +depends=('glibc') +arch=i686 +source=(http://user-contributions.org/projects/ddcxinfo-arch/source/$pkgname-$pkgver.tar.gz) + +md5sums=('ca734d958a54bef03a543479f7ab8b00') + +build() { +  cd $startdir/src/$pkgname-$pkgver +  make ddcxinfo-arch || return 1 +  install -D -m755 ddcxinfo-arch $startdir/pkg/usr/sbin/ddcxinfo-arch +} diff --git a/abs/core-testing/hwd/PKGBUILD b/abs/core-testing/hwd/PKGBUILD new file mode 100644 index 0000000..6073e2b --- /dev/null +++ b/abs/core-testing/hwd/PKGBUILD @@ -0,0 +1,22 @@ +# $Id: PKGBUILD 3106 2008-06-19 18:56:52Z damir $ +# Maintainer: damir <damir@archlinux.org> +# Contributor: Markku (rasat at Arch Linux Forums) + +pkgname=hwd +pkgver=5.3.4 +pkgrel=1 +pkgdesc="Hardware detect for Arch Linux (devfs and udev)." +url="http://user-contributions.org/projects/hwd/hwd.html" +arch=('i686' 'x86_64') +license=('GPL') +depends=('bash' 'pciutils' 'usbutils' 'ddcxinfo-arch' 'wget') +install=hwd.install +source=(http://user-contributions.org/projects/hwd/src/$pkgname-$pkgver.bin.tar.gz) + + +build() { +  cd $startdir/src/$pkgname-$pkgver +  cp -R $startdir/src/$pkgname-$pkgver/{etc,usr} $startdir/pkg/ || return 1 +} + +md5sums=('002cfb6de516442203073084b6c1a7f9') diff --git a/abs/core-testing/hwd/hwd.install b/abs/core-testing/hwd/hwd.install new file mode 100644 index 0000000..e4c28cb --- /dev/null +++ b/abs/core-testing/hwd/hwd.install @@ -0,0 +1,15 @@ +# arg 1:  the new package version +post_install() { +    echo "==> Run 'hwd -u' to update xorgtable, pci-, and usb.ids." +} + +# arg 1:  the new package version +# arg 2:  the old package version +post_upgrade() { +    echo "==> Run 'hwd -u' to update xorgtable, pci-, and usb.ids." +} + +# arg 1:  the old package version +pre_remove() { +    rm -R /etc/hwd >/dev/null 2>&1 +} diff --git a/abs/core-testing/less/PKGBUILD b/abs/core-testing/less/PKGBUILD index b703def..28cbe39 100644 --- a/abs/core-testing/less/PKGBUILD +++ b/abs/core-testing/less/PKGBUILD @@ -2,7 +2,7 @@  # Maintainer: judd <jvinet@zeroflux.org>  pkgname=less  pkgver=418 -pkgrel=10 +pkgrel=12  pkgdesc="A terminal based program for viewing text files"  license=('GPL3')  arch=('i686' 'x86_64') diff --git a/abs/core-testing/mysql/PKGBUILD b/abs/core-testing/mysql/PKGBUILD index 87f8528..f854e9a 100644 --- a/abs/core-testing/mysql/PKGBUILD +++ b/abs/core-testing/mysql/PKGBUILD @@ -3,7 +3,7 @@  # Contributor: judd <jvinet@zeroflux.org>  pkgname=mysql  pkgver=5.0.60 -pkgrel=5 +pkgrel=6  pkgdesc="A fast SQL database server"  arch=(i686 x86_64)  backup=(etc/my.cnf etc/conf.d/mysqld) diff --git a/abs/core-testing/mysql/mysqld b/abs/core-testing/mysql/mysqld index e7f90d2..8fd1b6c 100755 --- a/abs/core-testing/mysql/mysqld +++ b/abs/core-testing/mysql/mysqld @@ -22,7 +22,7 @@ if [ ! `egrep '^mysql:' /etc/passwd` ]; then  fi  if [ ! -d $MYSQLD_ROOT ]; then -  mkdir $MYSQLD_ROOT +  mkdir -p $MYSQLD_ROOT 2> /dev/null    /usr/bin/mysql_install_db --datadir=$MYSQLD_ROOT --user=mysql 2>/dev/null > /dev/null    chown -R mysql.mysql $MYSQLD_ROOT  fi diff --git a/abs/core-testing/mythtv/stable/mythdb-initial/PKGBUILD b/abs/core-testing/mythtv/stable/mythdb-initial/PKGBUILD index 8fda243..447ff84 100755 --- a/abs/core-testing/mythtv/stable/mythdb-initial/PKGBUILD +++ b/abs/core-testing/mythtv/stable/mythdb-initial/PKGBUILD @@ -1,6 +1,6 @@  pkgname=mythdb-initial  pkgver=1 -pkgrel=6 +pkgrel=7  pkgdesc="setup the initial mythtv database for linhes"  url=""  license="" diff --git a/abs/core-testing/mythtv/stable/mythdb-initial/mc.sql b/abs/core-testing/mythtv/stable/mythdb-initial/mc.sql index ff60f94..79457a5 100644 --- a/abs/core-testing/mythtv/stable/mythdb-initial/mc.sql +++ b/abs/core-testing/mythtv/stable/mythdb-initial/mc.sql @@ -2317,7 +2317,7 @@ SET character_set_client = @saved_cs_client;  LOCK TABLES `settings` WRITE;  /*!40000 ALTER TABLE `settings` DISABLE KEYS */; -INSERT INTO `settings` (`value`, `data`, `hostname`) VALUES ('mythfilldatabaseLastRunStart',NULL,NULL),('mythfilldatabaseLastRunEnd',NULL,NULL),('mythfilldatabaseLastRunStatus',NULL,NULL),('DataDirectMessage',NULL,NULL),('HaveRepeats','0',NULL),('DBSchemaVer','1214',NULL),('DefaultTranscoder','0',NULL),('MythFillSuggestedRunTime','1970-01-01T00:00:00',NULL),('MythFillGrabberSuggestsTime','1',NULL),('MythFillFixProgramIDsHasRunOnce','1','larch5'),('Language','EN','larch5'),('BackendServerIP','127.0.0.1','larch5'),('BackendServerPort','6543','larch5'),('BackendStatusPort','6544','larch5'),('SecurityPin','','larch5'),('MasterServerIP','127.0.0.1',NULL),('MasterServerPort','6543',NULL),('TVFormat','NTSC',NULL),('VbiFormat','None',NULL),('FreqTable','us-bcast',NULL),('TimeOffset','None',NULL),('MasterBackendOverride','1',NULL),('DeletesFollowLinks','1',NULL),('TruncateDeletesSlowly','0','larch5'),('HDRingbufferSize','9400',NULL),('MiscStatusScript','','larch5'),('DisableFirewireReset','0','larch5'),('EITTransportTimeout','5',NULL),('EITIgnoresSource','0',NULL),('EITCrawIdleStart','60',NULL),('startupCommand','',NULL),('blockSDWUwithoutClient','1',NULL),('idleWaitForRecordingTime','15',NULL),('StartupSecsBeforeRecording','120',NULL),('WakeupTimeFormat','hh:mm yyyy-MM-dd',NULL),('SetWakeuptimeCommand','',NULL),('ServerHaltCommand','sudo /sbin/halt -p',NULL),('preSDWUCheckCommand','',NULL),('WOLbackendConnectRetry','5',NULL),('WOLbackendCommand','',NULL),('WOLslaveBackendsCommand','',NULL),('JobQueueMaxSimultaneousJobs','1','larch5'),('JobQueueCheckFrequency','60','larch5'),('JobQueueWindowStart','00:00','larch5'),('JobQueueWindowEnd','23:59','larch5'),('JobQueueCPU','0','larch5'),('JobAllowCommFlag','1','larch5'),('JobAllowTranscode','1','larch5'),('JobAllowUserJob1','0','larch5'),('JobAllowUserJob2','0','larch5'),('JobAllowUserJob3','0','larch5'),('JobAllowUserJob4','0','larch5'),('JobsRunOnRecordHost','0',NULL),('AutoCommflagWhileRecording','0',NULL),('JobQueueCommFlagCommand','mythcommflag',NULL),('JobQueueTranscodeCommand','mythtranscode',NULL),('AutoTranscodeBeforeAutoCommflag','0',NULL),('SaveTranscoding','0',NULL),('UserJobDesc1','User Job #1',NULL),('UserJob1','',NULL),('UserJobDesc2','User Job #2',NULL),('UserJob2','',NULL),('UserJobDesc3','User Job #3',NULL),('UserJob3','',NULL),('UserJobDesc4','User Job #4',NULL),('UserJob4','',NULL),('DefaultVideoPlaybackProfile','CPU+','larch5'),('RealtimePriority','1','larch5'),('DecodeExtraAudio','1','larch5'),('AudioNag','1','larch5'),('UseVideoTimebase','0','larch5'),('ClearSavedPosition','1','larch5'),('AltClearSavedPosition','1','larch5'),('JumpToProgramOSD','1','larch5'),('ContinueEmbeddedTVPlay','0','larch5'),('AutomaticSetWatched','0','larch5'),('AlwaysStreamFiles','1','larch5'),('UseOpenGLVSync','0','larch5'),('UseOutputPictureControls','1','larch5'),('AspectOverride','0','larch5'),('AdjustFill','0','larch5'),('LetterboxColour','0','larch5'),('PIPLocation','0','larch5'),('PlaybackExitPrompt','2','larch5'),('EndOfRecordingExitPrompt','1','larch5'),('PlayBoxOrdering','1','larch5'),('PlayBoxEpisodeSort','Date','larch5'),('GeneratePreviewPixmaps','0','larch5'),('PreviewPixmapOffset','64',NULL),('PreviewFromBookmark','1','larch5'),('PlaybackPreview','1','larch5'),('PlaybackBoxStartInTitle','1','larch5'),('ShowGroupInfo','0','larch5'),('AllRecGroupPassword','',NULL),('DisplayRecGroup','All Programs','larch5'),('QueryInitialFilter','0','larch5'),('RememberRecGroup','1','larch5'),('DispRecGroupAsAllProg','0','larch5'),('LiveTVInAllPrograms','0','larch5'),('DisplayGroupDefaultView','0','larch5'),('DisplayGroupTitleSort','0','larch5'),('PlaybackWatchList','1','larch5'),('PlaybackWLStart','0','larch5'),('PlaybackWLAutoExpire','0','larch5'),('PlaybackWLMaxAge','60','larch5'),('PlaybackWLBlackOut','2','larch5'),('SmartForward','0','larch5'),('StickyKeys','0','larch5'),('FFRewReposTime','100','larch5'),('FFRewReverse','1','larch5'),('ExactSeeking','0','larch5'),('AutoCommercialSkip','0','larch5'),('MaximumCommercialSkip','3600',NULL),('CommSkipAllBlanks','1',NULL),('PVR350OutputEnable','0','larch5'),('PVR350EPGAlphaValue','164','larch5'),('PVR350InternalAudioOnly','0','larch5'),('OSDTheme','blueosd','larch5'),('OSDGeneralTimeout','2','larch5'),('OSDProgramInfoTimeout','3','larch5'),('OSDFont','FreeMono.ttf','larch5'),('OSDThemeFontSizeType','default','larch5'),('EnableMHEG','0','larch5'),('PersistentBrowseMode','1','larch5'),('OSDNotifyTimeout','5','larch5'),('UDPNotifyPort','6948','larch5'),('OSDCCFont','FreeMono.ttf','larch5'),('CCBackground','0','larch5'),('DefaultCCMode','0','larch5'),('Prefer708Captions','1','larch5'),('OSDCC708TextZoom','100','larch5'),('OSDCC708DefaultFontType','MonoSerif','larch5'),('OSDCC708MonoSerifFont','FreeMono.ttf','larch5'),('OSDCC708PropSerifFont','FreeMono.ttf','larch5'),('OSDCC708MonoSansSerifFont','FreeMono.ttf','larch5'),('OSDCC708PropSansSerifFont','FreeMono.ttf','larch5'),('OSDCC708CasualFont','FreeMono.ttf','larch5'),('OSDCC708CursiveFont','FreeMono.ttf','larch5'),('OSDCC708CapitalsFont','FreeMono.ttf','larch5'),('OSDCC708MonoSerifItalicFont','FreeMono.ttf','larch5'),('OSDCC708PropSerifItalicFont','FreeMono.ttf','larch5'),('OSDCC708MonoSansSerifItalicFont','FreeMono.ttf','larch5'),('OSDCC708PropSansSerifItalicFont','FreeMono.ttf','larch5'),('OSDCC708CasualItalicFont','FreeMono.ttf','larch5'),('OSDCC708CursiveItalicFont','FreeMono.ttf','larch5'),('OSDCC708CapitalsItalicFont','FreeMono.ttf','larch5'),('ChannelOrdering','channum','larch5'),('ChannelFormat','<num> <sign>','larch5'),('LongChannelFormat','<num> <name>','larch5'),('SmartChannelChange','0','larch5'),('LastFreeCard','0',NULL),('LiveTVPriority','0',NULL),('AutoExpireMethod','2',NULL),('AutoExpireDefault','1',NULL),('RerecordWatched','1',NULL),('AutoExpireWatchedPriority','0',NULL),('AutoExpireLiveTVMaxAge','1',NULL),('AutoExpireDayPriority','3',NULL),('AutoExpireExtraSpace','1',NULL),('AutoExpireInsteadOfDelete','0',NULL),('DeletedFifoOrder','0',NULL),('CommercialSkipMethod','255',NULL),('AggressiveCommDetect','1',NULL),('AutoCommercialFlag','1',NULL),('AutoTranscode','0',NULL),('AutoRunUserJob1','0',NULL),('AutoRunUserJob2','0',NULL),('AutoRunUserJob3','0',NULL),('AutoRunUserJob4','0',NULL),('OverTimeCategory','category name',NULL),('CategoryOverTime','30',NULL),('EPGFillType','12','larch5'),('EPGShowCategoryColors','1','larch5'),('EPGShowCategoryText','1','larch5'),('EPGScrollType','1','larch5'),('EPGShowChannelIcon','1','larch5'),('EPGShowFavorites','0','larch5'),('WatchTVGuide','0','larch5'),('chanPerPage','5','larch5'),('timePerPage','4','larch5'),('UnknownTitle','Unknown','larch5'),('UnknownCategory','Unknown','larch5'),('DefaultTVChannel','3','larch5'),('SelectChangesChannel','0','larch5'),('SelChangeRecThreshold','16','larch5'),('EPGEnableJumpToChannel','0',NULL),('Theme','Iulius','larch5'),('RandomTheme','0','larch5'),('ThemeCacheSize','1','larch5'),('ThemePainter','qt','larch5'),('Style','Desktop Style','larch5'),('ThemeFontSizeType','default','larch5'),('MenuTheme','default','larch5'),('XineramaScreen','0','larch5'),('XineramaMonitorAspectRatio','1.3333','larch5'),('GuiSizeForTV','1','larch5'),('HideMouseCursor','1','larch5'),('RunFrontendInWindow','0','larch5'),('UseVideoModes','0','larch5'),('GuiVidModeResolution','640x480','larch5'),('TVVidModeResolution','320x200','larch5'),('TVVidModeForceAspect','0.0','larch5'),('TVVidModeResolution0','320x200','larch5'),('TVVidModeForceAspect0','0.0','larch5'),('TVVidModeResolution1','320x200','larch5'),('TVVidModeForceAspect1','0.0','larch5'),('TVVidModeResolution2','320x200','larch5'),('TVVidModeForceAspect2','0.0','larch5'),('ISO639Language0','eng','larch5'),('ISO639Language1','eng','larch5'),('DateFormat','ddd MMM d','larch5'),('ShortDateFormat','M/d','larch5'),('TimeFormat','h:mm AP','larch5'),('QtFontSmall','12','larch5'),('QtFontMedium','16','larch5'),('QtFontBig','25','larch5'),('PlayBoxTransparency','1','larch5'),('PlayBoxShading','0','larch5'),('UseVirtualKeyboard','1','larch5'),('LCDEnable','0','larch5'),('LCDShowTime','1','larch5'),('LCDShowMenu','1','larch5'),('LCDShowMusic','1','larch5'),('LCDShowMusicItems','ArtistTitle','larch5'),('LCDShowChannel','1','larch5'),('LCDShowRecStatus','0','larch5'),('LCDShowVolume','1','larch5'),('LCDShowGeneric','1','larch5'),('LCDBacklightOn','1','larch5'),('LCDHeartBeatOn','0','larch5'),('LCDBigClock','0','larch5'),('LCDKeyString','ABCDEF','larch5'),('LCDPopupTime','5','larch5'),('AudioOutputDevice','ALSA:default','larch5'),('PassThruOutputDevice','Default','larch5'),('MaxChannels','2','larch5'),('AudioUpmixType','0','larch5'),('AC3PassThru','0','larch5'),('DTSPassThru','0','larch5'),('AggressiveSoundcardBuffer','0','larch5'),('MythControlsVolume','1','larch5'),('MixerDevice','ALSA:default','larch5'),('MixerControl','PCM','larch5'),('MasterMixerVolume','100','larch5'),('PCMMixerVolume','50','larch5'),('IndividualMuteControl','0','larch5'),('LircKeyPressedApp','','larch5'),('AllowQuitShutdown','4','larch5'),('NoPromptOnExit','1','larch5'),('UseArrowAccels','1','larch5'),('NetworkControlEnabled','0','larch5'),('NetworkControlPort','6546','larch5'),('MonitorDrives','0','larch5'),('MediaChangeEvents','0','larch5'),('IgnoreDevices','','larch5'),('SetupPinCodeRequired','0','larch5'),('OverrideExitMenu','0','larch5'),('HaltCommand','sudo /sbin/halt','larch5'),('RebootCommand','sudo /sbin/reboot','larch5'),('EnableXbox','0','larch5'),('LogEnabled','0',NULL),('LogMaxCount','100','larch5'),('LogPrintLevel','8','larch5'),('LogCleanEnabled','0','larch5'),('LogCleanPeriod','14','larch5'),('LogCleanDays','14','larch5'),('LogCleanMax','30','larch5'),('MythFillEnabled','1',NULL),('MythFillDatabasePath','mythfilldatabase',NULL),('MythFillDatabaseArgs','',NULL),('MythFillDatabaseLog','',NULL),('MythFillPeriod','1',NULL),('MythFillMinHour','2',NULL),('MythFillMaxHour','5',NULL),('SchedMoveHigher','1',NULL),('SchedOpenEnd','0',NULL),('ComplexPriority','0',NULL),('PrefInputPriority','2',NULL),('SingleRecordRecPriority','1',NULL),('FindOneRecordRecPriority','-1',NULL),('ArchiveDBSchemaVer','1001',NULL),('MythArchiveTempDir','/myth/tmp','larch5'),('MythArchiveShareDir','/usr/share/mythtv/mytharchive/','larch5'),('MythArchiveVideoFormat','NTSC','larch5'),('MythArchiveFileFilter','*.mpg *.mov *.avi *.mpeg *.nuv','larch5'),('MythArchiveDVDLocation','/dev/dvd','larch5'),('MythArchiveDVDPlayerCmd','Internal','larch5'),('MythArchiveEncodeToAc3','0','larch5'),('MythArchiveCopyRemoteFiles','0','larch5'),('MythArchiveAlwaysUseMythTranscode','1','larch5'),('MythArchiveUseProjectX','0','larch5'),('MythArchiveAddSubtitles','0','larch5'),('MythArchiveUseFIFO','1','larch5'),('MythArchiveDefaultEncProfile','SP','larch5'),('MythArchiveMainMenuAR','16:9','larch5'),('MythArchiveChapterMenuAR','Video','larch5'),('MythArchiveDateFormat','%a  %b  %d','larch5'),('MythArchiveTimeFormat','%I:%M %p','larch5'),('MythArchiveFfmpegCmd','ffmpeg','larch5'),('MythArchiveMplexCmd','mplex','larch5'),('MythArchiveDvdauthorCmd','dvdauthor','larch5'),('MythArchiveSpumuxCmd','spumux','larch5'),('MythArchiveMpeg2encCmd','mpeg2enc','larch5'),('MythArchiveMkisofsCmd','mkisofs','larch5'),('MythArchiveGrowisofsCmd','growisofs','larch5'),('MythArchiveTcrequantCmd','tcrequant','larch5'),('MythArchiveJpeg2yuvCmd','jpeg2yuv','larch5'),('MythArchiveProjectXCmd','projectx','larch5'),('FlixDBSchemaVer','1001',NULL),('GalleryDBSchemaVer','1000',NULL),('GalleryDir','/myth/gallery','larch5'),('GalleryThumbnailLocation','1','larch5'),('GallerySortOrder','20','larch5'),('GalleryImportDirs','/mnt/cdrom:/mnt/camera','larch5'),('GalleryMoviePlayerCmd','mplayer -fs %s','larch5'),('SlideshowUseOpenGL','0','larch5'),('SlideshowDelay','5','larch5'),('SlideshowOpenGLTransition','none','larch5'),('SlideshowOpenGLTransitionLength','2000','larch5'),('SlideshowTransition','random','larch5'),('SlideshowBackground','black','larch5'),('GameDBSchemaVer','1012',NULL),('MusicDBSchemaVer','1013',NULL),('VisualMode','','larch5'),('MusicLocation','/myth/music/','larch5'),('MusicAudioDevice','default','larch5'),('CDDevice','/dev/cdrom','larch5'),('AutoLookupCD','1','larch5'),('AutoPlayCD','0','larch5'),('KeyboardAccelerators','1','larch5'),('TreeLevels','splitartist artist album title','larch5'),('ArtistTreeGroups','0','larch5'),('NonID3FileNameFormat','GENRE/ARTIST/ALBUM/TRACK_TITLE','larch5'),('Ignore_ID3','0','larch5'),('MusicTagEncoding','utf16','larch5'),('CDWriterEnabled','1','larch5'),('CDDiskSize','1','larch5'),('CDCreateDir','1','larch5'),('CDWriteSpeed','0','larch5'),('CDBlankType','fast','larch5'),('PlayMode','none','larch5'),('ResumeMode','off','larch5'),('MaxSearchResults','300','larch5'),('MusicShowRatings','0','larch5'),('ShowWholeTree','0','larch5'),('ListAsShuffled','0','larch5'),('IntelliRatingWeight','35','larch5'),('IntelliPlayCountWeight','25','larch5'),('IntelliLastPlayWeight','25','larch5'),('IntelliRandomWeight','15','larch5'),('VisualCycleOnSongChange','0','larch5'),('VisualAlbumArtOnSongChange','0','larch5'),('VisualRandomize','0','larch5'),('VisualModeDelay','0','larch5'),('VisualScaleWidth','1','larch5'),('VisualScaleHeight','1','larch5'),('ParanoiaLevel','Full','larch5'),('FilenameTemplate','ARTIST/ALBUM/TRACK-TITLE','larch5'),('NoWhitespace','0','larch5'),('PostCDRipScript','','larch5'),('EjectCDAfterRipping','1','larch5'),('EncoderType','ogg','larch5'),('DefaultRipQuality','1','larch5'),('Mp3UseVBR','0','larch5'),('PhoneDBSchemaVer','1001',NULL),('SipRegisterWithProxy','1','larch5'),('SipProxyName','fwd.pulver.com','larch5'),('SipProxyAuthName','','larch5'),('SipProxyAuthPassword','','larch5'),('MySipName','Me','larch5'),('SipAutoanswer','0','larch5'),('SipBindInterface','eth0','larch5'),('SipLocalPort','5060','larch5'),('NatTraversalMethod','None','larch5'),('NatIpAddress','http://checkip.dyndns.org','larch5'),('AudioLocalPort','21232','larch5'),('VideoLocalPort','21234','larch5'),('MicrophoneDevice','None','larch5'),('CodecPriorityList','GSM;G.711u;G.711a','larch5'),('PlayoutAudioCall','40','larch5'),('PlayoutVideoCall','110','larch5'),('TxResolution','176x144','larch5'),('TransmitFPS','5','larch5'),('TransmitBandwidth','256','larch5'),('CaptureResolution','352x288','larch5'),('TimeToAnswer','10','larch5'),('DefaultVxmlUrl','http://127.0.0.1/vxml/index.vxml','larch5'),('DefaultVoicemailPrompt','I am not at home, please leave a message after the tone','larch5'),('mythvideo.DBSchemaVer','1016',NULL),('VideoStartupDir','/myth/video','larch5'),('VideoArtworkDir','/myth/video/.covers','larch5'),('Default MythVideo View','2','larch5'),('VideoListUnknownFiletypes','1','larch5'),('VideoBrowserNoDB','1','larch5'),('VideoGalleryNoDB','1','larch5'),('VideoTreeNoDB','1','larch5'),('VideoTreeLoadMetaData','1','larch5'),('VideoNewBrowsable','1','larch5'),('mythvideo.sort_ignores_case','1','larch5'),('mythvideo.db_folder_view','1','larch5'),('mythvideo.VideoTreeRemember','1','larch5'),('mythvideo.ImageCacheSize','50','larch5'),('DVDDeviceLocation','/dev/dvd','larch5'),('VCDDeviceLocation','/dev/cdrom','larch5'),('DVDOnInsertDVD','1','larch5'),('DVDDriveSpeed','2','larch5'),('EnableDVDBookmark','1','larch5'),('DVDBookmarkPrompt','1','larch5'),('DVDBookmarkDays','10','larch5'),('MovieListCommandLine','/usr/share/mythtv/mythvideo/scripts/imdb.pl -M tv=no;video=no','larch5'),('MoviePosterCommandLine','/usr/share/mythtv/mythvideo/scripts/imdb.pl -P','larch5'),('MovieDataCommandLine','/usr/share/mythtv/mythvideo/scripts/imdb.pl -D','larch5'),('VideoGalleryColsPerPage','4','larch5'),('VideoGalleryRowsPerPage','3','larch5'),('VideoGallerySubtitle','1','larch5'),('VideoDefaultParentalLevel','4','larch5'),('VideoAggressivePC','0','larch5'),('mythvideo.ParentalLevelFromRating','0','larch5'),('mythvideo.AutoR2PL1','G','larch5'),('mythvideo.AutoR2PL2','PG','larch5'),('mythvideo.AutoR2PL3','PG-13','larch5'),('mythvideo.AutoR2PL4','R:NC-17','larch5'),('VideoDefaultPlayer','mplayer -fs -zoom -quiet -vo xv %s','larch5'),('mythdvd.DVDPlayerCommand','Internal','larch5'),('VCDPlayerCommand','mplayer vcd:// -cdrom-device %d -fs -zoom -vo xv','larch5'),('DVDRipLocation','/myth/tmp','larch5'),('TitlePlayCommand','mplayer dvd://%t -dvd-device %d -fs -zoom -vo xv -aid %a -channels %c','larch5'),('SubTitleCommand','-sid %s','larch5'),('TranscodeCommand','transcode','larch5'),('MTDPort','2442','larch5'),('MTDNiceLevel','20','larch5'),('MTDConcurrentTranscodes','1','larch5'),('MTDLogFlag','0','larch5'),('MTDac3Flag','0','larch5'),('MTDxvidFlag','1','larch5'),('mythvideo.TrustTranscodeFRDetect','1','larch5'),('WeatherDBSchemaVer','1000',NULL),('TVVidModeRefreshRate','0','larch5'),('TVVidModeRefreshRate0','0','larch5'),('TVVidModeRefreshRate1','0','larch5'),('TVVidModeRefreshRate2','0','larch5'),('GalleryRecursiveSlideshow','1','larch5'),('WebBrowserZoomLevel','20','larch5'),('WebBrowserCommand','/usr/bin/mythbrowser','larch5'),('WebBrowserScrollMode','1','larch5'),('WebBrowserScrollSpeed','4','larch5'),('WebBrowserHideScrollbars','0','larch5'),('RepeatMode','all','larch5'),('MusicAutoShowPlayer','1','larch5'),('HOSTOSsize','5','larch5'),('HostMyhostname','type_hostname_here','larch5'); +INSERT INTO `settings` (`value`, `data`, `hostname`) VALUES ('mythfilldatabaseLastRunStart',NULL,NULL),('mythfilldatabaseLastRunEnd',NULL,NULL),('mythfilldatabaseLastRunStatus',NULL,NULL),('DataDirectMessage',NULL,NULL),('HaveRepeats','0',NULL),('DBSchemaVer','1214',NULL),('DefaultTranscoder','0',NULL),('MythFillSuggestedRunTime','1970-01-01T00:00:00',NULL),('MythFillGrabberSuggestsTime','1',NULL),('MythFillFixProgramIDsHasRunOnce','1','larch5'),('Language','EN','larch5'),('BackendServerIP','127.0.0.1','larch5'),('BackendServerPort','6543','larch5'),('BackendStatusPort','6544','larch5'),('SecurityPin','','larch5'),('MasterServerIP','127.0.0.1',NULL),('MasterServerPort','6543',NULL),('TVFormat','NTSC',NULL),('VbiFormat','None',NULL),('FreqTable','us-bcast',NULL),('TimeOffset','None',NULL),('MasterBackendOverride','1',NULL),('DeletesFollowLinks','1',NULL),('TruncateDeletesSlowly','0','larch5'),('HDRingbufferSize','9400',NULL),('MiscStatusScript','','larch5'),('DisableFirewireReset','0','larch5'),('EITTransportTimeout','5',NULL),('EITIgnoresSource','0',NULL),('EITCrawIdleStart','60',NULL),('startupCommand','',NULL),('blockSDWUwithoutClient','1',NULL),('idleWaitForRecordingTime','15',NULL),('StartupSecsBeforeRecording','120',NULL),('WakeupTimeFormat','hh:mm yyyy-MM-dd',NULL),('SetWakeuptimeCommand','',NULL),('ServerHaltCommand','sudo /sbin/halt -p',NULL),('preSDWUCheckCommand','',NULL),('WOLbackendConnectRetry','5',NULL),('WOLbackendCommand','',NULL),('WOLslaveBackendsCommand','',NULL),('JobQueueMaxSimultaneousJobs','1','larch5'),('JobQueueCheckFrequency','60','larch5'),('JobQueueWindowStart','00:00','larch5'),('JobQueueWindowEnd','23:59','larch5'),('JobQueueCPU','0','larch5'),('JobAllowCommFlag','1','larch5'),('JobAllowTranscode','1','larch5'),('JobAllowUserJob1','0','larch5'),('JobAllowUserJob2','0','larch5'),('JobAllowUserJob3','0','larch5'),('JobAllowUserJob4','0','larch5'),('JobsRunOnRecordHost','0',NULL),('AutoCommflagWhileRecording','0',NULL),('JobQueueCommFlagCommand','mythcommflag',NULL),('JobQueueTranscodeCommand','mythtranscode',NULL),('AutoTranscodeBeforeAutoCommflag','0',NULL),('SaveTranscoding','0',NULL),('UserJobDesc1','User Job #1',NULL),('UserJob1','',NULL),('UserJobDesc2','User Job #2',NULL),('UserJob2','',NULL),('UserJobDesc3','User Job #3',NULL),('UserJob3','',NULL),('UserJobDesc4','User Job #4',NULL),('UserJob4','',NULL),('DefaultVideoPlaybackProfile','CPU+','larch5'),('RealtimePriority','1','larch5'),('DecodeExtraAudio','1','larch5'),('AudioNag','1','larch5'),('UseVideoTimebase','0','larch5'),('ClearSavedPosition','1','larch5'),('AltClearSavedPosition','1','larch5'),('JumpToProgramOSD','1','larch5'),('ContinueEmbeddedTVPlay','0','larch5'),('AutomaticSetWatched','0','larch5'),('AlwaysStreamFiles','1','larch5'),('UseOpenGLVSync','0','larch5'),('UseOutputPictureControls','1','larch5'),('AspectOverride','0','larch5'),('AdjustFill','0','larch5'),('LetterboxColour','0','larch5'),('PIPLocation','0','larch5'),('PlaybackExitPrompt','2','larch5'),('EndOfRecordingExitPrompt','1','larch5'),('PlayBoxOrdering','1','larch5'),('PlayBoxEpisodeSort','Date','larch5'),('GeneratePreviewPixmaps','0','larch5'),('PreviewPixmapOffset','64',NULL),('PreviewFromBookmark','1','larch5'),('PlaybackPreview','1','larch5'),('PlaybackBoxStartInTitle','1','larch5'),('ShowGroupInfo','0','larch5'),('AllRecGroupPassword','',NULL),('DisplayRecGroup','All Programs','larch5'),('QueryInitialFilter','0','larch5'),('RememberRecGroup','1','larch5'),('DispRecGroupAsAllProg','0','larch5'),('LiveTVInAllPrograms','0','larch5'),('DisplayGroupDefaultView','0','larch5'),('DisplayGroupTitleSort','0','larch5'),('PlaybackWatchList','1','larch5'),('PlaybackWLStart','0','larch5'),('PlaybackWLAutoExpire','0','larch5'),('PlaybackWLMaxAge','60','larch5'),('PlaybackWLBlackOut','2','larch5'),('SmartForward','0','larch5'),('StickyKeys','0','larch5'),('FFRewReposTime','100','larch5'),('FFRewReverse','1','larch5'),('ExactSeeking','0','larch5'),('AutoCommercialSkip','0','larch5'),('MaximumCommercialSkip','3600',NULL),('CommSkipAllBlanks','1',NULL),('PVR350OutputEnable','0','larch5'),('PVR350EPGAlphaValue','164','larch5'),('PVR350InternalAudioOnly','0','larch5'),('OSDTheme','blueosd','larch5'),('OSDGeneralTimeout','2','larch5'),('OSDProgramInfoTimeout','3','larch5'),('OSDFont','FreeMono.ttf','larch5'),('OSDThemeFontSizeType','default','larch5'),('EnableMHEG','0','larch5'),('PersistentBrowseMode','1','larch5'),('OSDNotifyTimeout','5','larch5'),('UDPNotifyPort','6948','larch5'),('OSDCCFont','FreeMono.ttf','larch5'),('CCBackground','0','larch5'),('DefaultCCMode','0','larch5'),('Prefer708Captions','1','larch5'),('OSDCC708TextZoom','100','larch5'),('OSDCC708DefaultFontType','MonoSerif','larch5'),('OSDCC708MonoSerifFont','FreeMono.ttf','larch5'),('OSDCC708PropSerifFont','FreeMono.ttf','larch5'),('OSDCC708MonoSansSerifFont','FreeMono.ttf','larch5'),('OSDCC708PropSansSerifFont','FreeMono.ttf','larch5'),('OSDCC708CasualFont','FreeMono.ttf','larch5'),('OSDCC708CursiveFont','FreeMono.ttf','larch5'),('OSDCC708CapitalsFont','FreeMono.ttf','larch5'),('OSDCC708MonoSerifItalicFont','FreeMono.ttf','larch5'),('OSDCC708PropSerifItalicFont','FreeMono.ttf','larch5'),('OSDCC708MonoSansSerifItalicFont','FreeMono.ttf','larch5'),('OSDCC708PropSansSerifItalicFont','FreeMono.ttf','larch5'),('OSDCC708CasualItalicFont','FreeMono.ttf','larch5'),('OSDCC708CursiveItalicFont','FreeMono.ttf','larch5'),('OSDCC708CapitalsItalicFont','FreeMono.ttf','larch5'),('ChannelOrdering','channum','larch5'),('ChannelFormat','<num> <sign>','larch5'),('LongChannelFormat','<num> <name>','larch5'),('SmartChannelChange','0','larch5'),('LastFreeCard','0',NULL),('LiveTVPriority','0',NULL),('AutoExpireMethod','2',NULL),('AutoExpireDefault','1',NULL),('RerecordWatched','1',NULL),('AutoExpireWatchedPriority','0',NULL),('AutoExpireLiveTVMaxAge','1',NULL),('AutoExpireDayPriority','3',NULL),('AutoExpireExtraSpace','1',NULL),('AutoExpireInsteadOfDelete','0',NULL),('DeletedFifoOrder','0',NULL),('CommercialSkipMethod','255',NULL),('AggressiveCommDetect','1',NULL),('AutoCommercialFlag','1',NULL),('AutoTranscode','0',NULL),('AutoRunUserJob1','0',NULL),('AutoRunUserJob2','0',NULL),('AutoRunUserJob3','0',NULL),('AutoRunUserJob4','0',NULL),('OverTimeCategory','category name',NULL),('CategoryOverTime','30',NULL),('EPGFillType','12','larch5'),('EPGShowCategoryColors','1','larch5'),('EPGShowCategoryText','1','larch5'),('EPGScrollType','1','larch5'),('EPGShowChannelIcon','1','larch5'),('EPGShowFavorites','0','larch5'),('WatchTVGuide','0','larch5'),('chanPerPage','5','larch5'),('timePerPage','4','larch5'),('UnknownTitle','Unknown','larch5'),('UnknownCategory','Unknown','larch5'),('DefaultTVChannel','3','larch5'),('SelectChangesChannel','0','larch5'),('SelChangeRecThreshold','16','larch5'),('EPGEnableJumpToChannel','0',NULL),('Theme','Iulius','larch5'),('RandomTheme','0','larch5'),('ThemeCacheSize','1','larch5'),('ThemePainter','qt','larch5'),('Style','Desktop Style','larch5'),('ThemeFontSizeType','default','larch5'),('MenuTheme','default','larch5'),('XineramaScreen','0','larch5'),('XineramaMonitorAspectRatio','1.3333','larch5'),('GuiSizeForTV','1','larch5'),('HideMouseCursor','1','larch5'),('RunFrontendInWindow','0','larch5'),('UseVideoModes','0','larch5'),('GuiVidModeResolution','640x480','larch5'),('TVVidModeResolution','320x200','larch5'),('TVVidModeForceAspect','0.0','larch5'),('TVVidModeResolution0','320x200','larch5'),('TVVidModeForceAspect0','0.0','larch5'),('TVVidModeResolution1','320x200','larch5'),('TVVidModeForceAspect1','0.0','larch5'),('TVVidModeResolution2','320x200','larch5'),('TVVidModeForceAspect2','0.0','larch5'),('ISO639Language0','eng','larch5'),('ISO639Language1','eng','larch5'),('DateFormat','ddd MMM d','larch5'),('ShortDateFormat','M/d','larch5'),('TimeFormat','h:mm AP','larch5'),('QtFontSmall','12','larch5'),('QtFontMedium','16','larch5'),('QtFontBig','25','larch5'),('PlayBoxTransparency','1','larch5'),('PlayBoxShading','0','larch5'),('UseVirtualKeyboard','1','larch5'),('LCDEnable','0','larch5'),('LCDShowTime','1','larch5'),('LCDShowMenu','1','larch5'),('LCDShowMusic','1','larch5'),('LCDShowMusicItems','ArtistTitle','larch5'),('LCDShowChannel','1','larch5'),('LCDShowRecStatus','0','larch5'),('LCDShowVolume','1','larch5'),('LCDShowGeneric','1','larch5'),('LCDBacklightOn','1','larch5'),('LCDHeartBeatOn','0','larch5'),('LCDBigClock','0','larch5'),('LCDKeyString','ABCDEF','larch5'),('LCDPopupTime','5','larch5'),('AudioOutputDevice','ALSA:default','larch5'),('PassThruOutputDevice','Default','larch5'),('MaxChannels','2','larch5'),('AudioUpmixType','0','larch5'),('AC3PassThru','0','larch5'),('DTSPassThru','0','larch5'),('AggressiveSoundcardBuffer','0','larch5'),('MythControlsVolume','1','larch5'),('MixerDevice','ALSA:default','larch5'),('MixerControl','PCM','larch5'),('MasterMixerVolume','100','larch5'),('PCMMixerVolume','50','larch5'),('IndividualMuteControl','0','larch5'),('LircKeyPressedApp','','larch5'),('AllowQuitShutdown','4','larch5'),('NoPromptOnExit','1','larch5'),('UseArrowAccels','1','larch5'),('NetworkControlEnabled','0','larch5'),('NetworkControlPort','6546','larch5'),('MonitorDrives','0','larch5'),('MediaChangeEvents','0','larch5'),('IgnoreDevices','','larch5'),('SetupPinCodeRequired','0','larch5'),('OverrideExitMenu','0','larch5'),('HaltCommand','sudo /sbin/halt','larch5'),('RebootCommand','sudo /sbin/reboot','larch5'),('EnableXbox','0','larch5'),('LogEnabled','0',NULL),('LogMaxCount','100','larch5'),('LogPrintLevel','8','larch5'),('LogCleanEnabled','0','larch5'),('LogCleanPeriod','14','larch5'),('LogCleanDays','14','larch5'),('LogCleanMax','30','larch5'),('MythFillEnabled','1',NULL),('MythFillDatabasePath','mythfilldatabase',NULL),('MythFillDatabaseArgs','',NULL),('MythFillDatabaseLog','',NULL),('MythFillPeriod','1',NULL),('MythFillMinHour','2',NULL),('MythFillMaxHour','5',NULL),('SchedMoveHigher','1',NULL),('SchedOpenEnd','0',NULL),('ComplexPriority','0',NULL),('PrefInputPriority','2',NULL),('SingleRecordRecPriority','1',NULL),('FindOneRecordRecPriority','-1',NULL),('ArchiveDBSchemaVer','1001',NULL),('MythArchiveTempDir','/myth/tmp','larch5'),('MythArchiveShareDir','/usr/share/mythtv/mytharchive/','larch5'),('MythArchiveVideoFormat','NTSC','larch5'),('MythArchiveFileFilter','*.mpg *.mov *.avi *.mpeg *.nuv','larch5'),('MythArchiveDVDLocation','/dev/dvd','larch5'),('MythArchiveDVDPlayerCmd','Internal','larch5'),('MythArchiveEncodeToAc3','0','larch5'),('MythArchiveCopyRemoteFiles','0','larch5'),('MythArchiveAlwaysUseMythTranscode','1','larch5'),('MythArchiveUseProjectX','0','larch5'),('MythArchiveAddSubtitles','0','larch5'),('MythArchiveUseFIFO','1','larch5'),('MythArchiveDefaultEncProfile','SP','larch5'),('MythArchiveMainMenuAR','16:9','larch5'),('MythArchiveChapterMenuAR','Video','larch5'),('MythArchiveDateFormat','%a  %b  %d','larch5'),('MythArchiveTimeFormat','%I:%M %p','larch5'),('MythArchiveFfmpegCmd','ffmpeg','larch5'),('MythArchiveMplexCmd','mplex','larch5'),('MythArchiveDvdauthorCmd','dvdauthor','larch5'),('MythArchiveSpumuxCmd','spumux','larch5'),('MythArchiveMpeg2encCmd','mpeg2enc','larch5'),('MythArchiveMkisofsCmd','mkisofs','larch5'),('MythArchiveGrowisofsCmd','growisofs','larch5'),('MythArchiveTcrequantCmd','tcrequant','larch5'),('MythArchiveJpeg2yuvCmd','jpeg2yuv','larch5'),('MythArchiveProjectXCmd','projectx','larch5'),('FlixDBSchemaVer','1001',NULL),('GalleryDBSchemaVer','1000',NULL),('GalleryDir','/myth/gallery','larch5'),('GalleryThumbnailLocation','1','larch5'),('GallerySortOrder','20','larch5'),('GalleryImportDirs','/mnt/cdrom:/mnt/camera','larch5'),('GalleryMoviePlayerCmd','mplayer -fs %s','larch5'),('SlideshowUseOpenGL','0','larch5'),('SlideshowDelay','5','larch5'),('SlideshowOpenGLTransition','none','larch5'),('SlideshowOpenGLTransitionLength','2000','larch5'),('SlideshowTransition','random','larch5'),('SlideshowBackground','black','larch5'),('GameDBSchemaVer','1012',NULL),('MusicDBSchemaVer','1013',NULL),('VisualMode','','larch5'),('MusicLocation','/myth/music/','larch5'),('MusicAudioDevice','default','larch5'),('CDDevice','/dev/cdrom','larch5'),('AutoLookupCD','1','larch5'),('AutoPlayCD','0','larch5'),('KeyboardAccelerators','1','larch5'),('TreeLevels','splitartist artist album title','larch5'),('ArtistTreeGroups','0','larch5'),('NonID3FileNameFormat','GENRE/ARTIST/ALBUM/TRACK_TITLE','larch5'),('Ignore_ID3','0','larch5'),('MusicTagEncoding','utf16','larch5'),('CDWriterEnabled','1','larch5'),('CDDiskSize','1','larch5'),('CDCreateDir','1','larch5'),('CDWriteSpeed','0','larch5'),('CDBlankType','fast','larch5'),('PlayMode','none','larch5'),('ResumeMode','off','larch5'),('MaxSearchResults','300','larch5'),('MusicShowRatings','0','larch5'),('ShowWholeTree','0','larch5'),('ListAsShuffled','0','larch5'),('IntelliRatingWeight','35','larch5'),('IntelliPlayCountWeight','25','larch5'),('IntelliLastPlayWeight','25','larch5'),('IntelliRandomWeight','15','larch5'),('VisualCycleOnSongChange','0','larch5'),('VisualAlbumArtOnSongChange','0','larch5'),('VisualRandomize','0','larch5'),('VisualModeDelay','0','larch5'),('VisualScaleWidth','1','larch5'),('VisualScaleHeight','1','larch5'),('ParanoiaLevel','Full','larch5'),('FilenameTemplate','ARTIST/ALBUM/TRACK-TITLE','larch5'),('NoWhitespace','0','larch5'),('PostCDRipScript','','larch5'),('EjectCDAfterRipping','1','larch5'),('EncoderType','ogg','larch5'),('DefaultRipQuality','1','larch5'),('Mp3UseVBR','0','larch5'),('PhoneDBSchemaVer','1001',NULL),('SipRegisterWithProxy','1','larch5'),('SipProxyName','fwd.pulver.com','larch5'),('SipProxyAuthName','','larch5'),('SipProxyAuthPassword','','larch5'),('MySipName','Me','larch5'),('SipAutoanswer','0','larch5'),('SipBindInterface','eth0','larch5'),('SipLocalPort','5060','larch5'),('NatTraversalMethod','None','larch5'),('NatIpAddress','http://checkip.dyndns.org','larch5'),('AudioLocalPort','21232','larch5'),('VideoLocalPort','21234','larch5'),('MicrophoneDevice','None','larch5'),('CodecPriorityList','GSM;G.711u;G.711a','larch5'),('PlayoutAudioCall','40','larch5'),('PlayoutVideoCall','110','larch5'),('TxResolution','176x144','larch5'),('TransmitFPS','5','larch5'),('TransmitBandwidth','256','larch5'),('CaptureResolution','352x288','larch5'),('TimeToAnswer','10','larch5'),('DefaultVxmlUrl','http://127.0.0.1/vxml/index.vxml','larch5'),('DefaultVoicemailPrompt','I am not at home, please leave a message after the tone','larch5'),('mythvideo.DBSchemaVer','1016',NULL),('VideoStartupDir','/myth/video','larch5'),('VideoArtworkDir','/myth/video/.covers','larch5'),('Default MythVideo View','2','larch5'),('VideoListUnknownFiletypes','1','larch5'),('VideoBrowserNoDB','1','larch5'),('VideoGalleryNoDB','1','larch5'),('VideoTreeNoDB','1','larch5'),('VideoTreeLoadMetaData','1','larch5'),('VideoNewBrowsable','1','larch5'),('mythvideo.sort_ignores_case','1','larch5'),('mythvideo.db_folder_view','1','larch5'),('mythvideo.VideoTreeRemember','1','larch5'),('mythvideo.ImageCacheSize','50','larch5'),('DVDDeviceLocation','/dev/dvd','larch5'),('VCDDeviceLocation','/dev/cdrom','larch5'),('DVDOnInsertDVD','1','larch5'),('DVDDriveSpeed','2','larch5'),('EnableDVDBookmark','1','larch5'),('DVDBookmarkPrompt','1','larch5'),('DVDBookmarkDays','10','larch5'),('MovieListCommandLine','/usr/share/mythtv/mythvideo/scripts/imdb.pl -M tv=no;video=no','larch5'),('MoviePosterCommandLine','/usr/share/mythtv/mythvideo/scripts/imdb.pl -P','larch5'),('MovieDataCommandLine','/usr/share/mythtv/mythvideo/scripts/imdb.pl -D','larch5'),('VideoGalleryColsPerPage','4','larch5'),('VideoGalleryRowsPerPage','3','larch5'),('VideoGallerySubtitle','1','larch5'),('VideoDefaultParentalLevel','4','larch5'),('VideoAggressivePC','0','larch5'),('mythvideo.ParentalLevelFromRating','0','larch5'),('mythvideo.AutoR2PL1','G','larch5'),('mythvideo.AutoR2PL2','PG','larch5'),('mythvideo.AutoR2PL3','PG-13','larch5'),('mythvideo.AutoR2PL4','R:NC-17','larch5'),('VideoDefaultPlayer','mplayer -fs -zoom -quiet -vo xv %s','larch5'),('mythdvd.DVDPlayerCommand','Internal','larch5'),('VCDPlayerCommand','mplayer vcd:// -cdrom-device %d -fs -zoom -vo xv','larch5'),('DVDRipLocation','/myth/tmp','larch5'),('TitlePlayCommand','mplayer dvd://%t -dvd-device %d -fs -zoom -vo xv -aid %a -channels %c','larch5'),('SubTitleCommand','-sid %s','larch5'),('TranscodeCommand','transcode','larch5'),('MTDPort','2442','larch5'),('MTDNiceLevel','20','larch5'),('MTDConcurrentTranscodes','1','larch5'),('MTDLogFlag','0','larch5'),('MTDac3Flag','0','larch5'),('MTDxvidFlag','1','larch5'),('mythvideo.TrustTranscodeFRDetect','1','larch5'),('WeatherDBSchemaVer','1000',NULL),('TVVidModeRefreshRate','0','larch5'),('TVVidModeRefreshRate0','0','larch5'),('TVVidModeRefreshRate1','0','larch5'),('TVVidModeRefreshRate2','0','larch5'),('GalleryRecursiveSlideshow','1','larch5'),('WebBrowserZoomLevel','20','larch5'),('WebBrowserCommand','/usr/bin/mythbrowser','larch5'),('WebBrowserScrollMode','1','larch5'),('WebBrowserScrollSpeed','4','larch5'),('WebBrowserHideScrollbars','0','larch5'),('RepeatMode','all','larch5'),('MusicAutoShowPlayer','1','larch5'),('HOSTOSsize','5','larch5'),('HostMyhostname','type_hostname_here','larch5'),('NetworkControlEnabled','1','larch5');  /*!40000 ALTER TABLE `settings` ENABLE KEYS */;  UNLOCK TABLES; diff --git a/abs/core-testing/nvidia-71xx-utils/PKGBUILD b/abs/core-testing/nvidia-71xx-utils/PKGBUILD new file mode 100644 index 0000000..8d3ac30 --- /dev/null +++ b/abs/core-testing/nvidia-71xx-utils/PKGBUILD @@ -0,0 +1,63 @@ +# $Id: PKGBUILD 5949 2008-07-21 20:32:38Z thomas $ +# Maintainer: Tobias Powalowski <tpowa@archlinux.org> +# Contributor: James Rayner <iphitus@gmail.com> + +pkgname=nvidia-71xx-utils +pkgver=71.86.06 +pkgrel=1 +pkgdesc="NVIDIA legacy drivers utilities and libraries, 71xx branch." +arch=(i686 x86_64) +[ "$CARCH" = "i686"   ] && ARCH=x86 	  +[ "$CARCH" = "x86_64" ] && ARCH=x86_64 +url="http://www.nvidia.com/" +depends=('xorg-server') +conflicts=('libgl' 'libgl-dri' 'ati-fglrx-utils' 'nvidia-utils' \ +           'nvidia-96xx-utils' 'nvidia-legacy-utils') +replaces=('nvidia-legacy-utils') +provides=('libgl') +license=('custom') +install=nvidia-71xx.install +source=(http://us.download.nvidia.com/XFree86/Linux-${ARCH}/${pkgver}/NVIDIA-Linux-${ARCH}-${pkgver}-pkg0.run \ +        supported-cards.txt) +options=(docs !strip) +md5sums=('61e4511d1bbb2962ca139091210b61ea' +         '6363d7e494d33729609540088e33e73f') +[ "$CARCH" = "x86_64" ] && md5sums=('205599549ddd6fadecfbc1adb090dfe2' +         '6363d7e494d33729609540088e33e73f') + +build() +{ +  # override nvida install routine and do it the long way. +  cd $startdir/src/ +  sh NVIDIA-Linux-${ARCH}-${pkgver}-pkg0.run --extract-only +  cd NVIDIA-Linux-${ARCH}-${pkgver}-pkg0/usr/ + +  mkdir -p $startdir/pkg/usr/{lib,bin,share/applications,share/pixmaps} +  mkdir -p $startdir/pkg/usr/lib/xorg/modules/{extensions,drivers} +  mkdir -p $startdir/pkg/usr/share/licenses/nvidia-71xx/ +   +  install lib/{libGLcore.so.${pkgver},libGL.so.${pkgver},tls/libnvidia-tls.so.${pkgver}} \ +       $startdir/pkg/usr/lib/ || return 1 +  install X11R6/lib/libXv* $startdir/pkg/usr/lib/ || return 1 +  install -m644 share/applications/nvidia-settings.desktop $startdir/pkg/usr/share/applications/ || return 1 +  # fix nvidia .desktop file +  sed -e 's:__UTILS_PATH__:/usr/bin:' -e 's:__PIXMAP_PATH__:/usr/share/pixmaps:' -i $startdir/pkg/usr/share/applications/nvidia-settings.desktop +  install -m644 share/pixmaps/nvidia-settings.png $startdir/pkg/usr/share/pixmaps/ || return 1 +  install X11R6/lib/modules/drivers/nvidia_drv.so $startdir/pkg/usr/lib/xorg/modules/drivers || return 1 +  install X11R6/lib/modules/extensions/libglx.so.$pkgver $startdir/pkg/usr/lib/xorg/modules/extensions || return 1 +  install -m755 bin/nvidia-{settings,bug-report.sh} $startdir/pkg/usr/bin/ || return 1 +  cd $startdir/pkg/usr/lib/ +  ln -s /usr/lib/libGL.so.$pkgver libGL.so || return 1 +  ln -s /usr/lib/libGL.so.$pkgver libGL.so.1 || return 1 +  ln -s /usr/lib/libGLcore.so.$pkgver libGLcore.so.1 || return 1 +  ln -s /usr/lib/libnvidia-tls.so.$pkgver libnvidia-tls.so.1 || return 1 +  cd $startdir/pkg/usr/lib/xorg/modules/extensions +  ln -s /usr/lib/xorg/modules/extensions/libglx.so.$pkgver libglx.so || return 1 + +  install -m644 $startdir/src/NVIDIA-Linux-${ARCH}-${pkgver}-pkg0/LICENSE $startdir/pkg/usr/share/licenses/nvidia-71xx/ || return 1 +  install -D -m644 $startdir/src/NVIDIA-Linux-${ARCH}-${pkgver}-pkg0/usr/share/doc/README $startdir/pkg/usr/share/doc/nvidia/README || return 1 +  install -D -m644 $startdir/src/supported-cards.txt $startdir/pkg/usr/share/doc/nvidia/supported-cards.txt || return 1 +   +  find $startdir/pkg/usr -type d -exec chmod 755 {} \; +  # phew :) +} diff --git a/abs/core-testing/nvidia-71xx-utils/nvidia-71xx.install b/abs/core-testing/nvidia-71xx-utils/nvidia-71xx.install new file mode 100644 index 0000000..cea8f32 --- /dev/null +++ b/abs/core-testing/nvidia-71xx-utils/nvidia-71xx.install @@ -0,0 +1,29 @@ +# arg 1:  the new package version +post_install() { + +  echo ------------------------------- +  echo By using this package you accept the NVIDIA license,  +  echo which has been installed in /usr/share/licenses/nvidia-71xx/LICENSE +  echo If you do not accept this license, you must remove the package immediately. +  echo Dont forget to update your /etc/X11/xorg.conf +  echo In order to use nvidia-settings, you need to install 'gtk2' package. +  echo ------------------------------- + +  ### removing outdated workaround +  if grep 'create-nvidia-nodes.sh' /etc/modprobe.conf >/dev/null 2>&1; then  +     cat /etc/modprobe.conf | grep -v 'create-nvidia-nodes.sh' \ +     >/tmp/.pacnvidia +     mv /tmp/.pacnvidia /etc/modprobe.conf +     chmod 644 etc/modprobe.conf +  fi +} + +# arg 1:  the new package version +# arg 2:  the old package version +post_upgrade() { +  post_install $1 +} + +op=$1 +shift +$op $* diff --git a/abs/core-testing/nvidia-71xx-utils/supported-cards.txt b/abs/core-testing/nvidia-71xx-utils/supported-cards.txt new file mode 100644 index 0000000..d4f26ea --- /dev/null +++ b/abs/core-testing/nvidia-71xx-utils/supported-cards.txt @@ -0,0 +1,236 @@ +Archlinux currently manages three branches of the NVIDIA binary driver: + +nvidia (latest nvidia release) +nvidia-96xx (96xx legacy branch) +nvidia-71xx (71xx legacy branch) + +This excerpt from the NVIDIA 1.0.9746 README lists the supported devices +for each of those: + +______________________________________________________________________________ + +Appendix A. Supported NVIDIA Graphics Chips +______________________________________________________________________________ + +For the most complete and accurate listing of supported GPUs, please see the +Supported Products List, available from the NVIDIA Linux x86 Graphics Driver +download page. Please go to http://www.nvidia.com/object/unix.html, follow the +Archive link under the Linux x86 heading, follow the link for the 1.0-9746 +driver, and then go to the Supported Products List. + + +    NVIDIA chip name                      Device PCI ID +    ----------------------------------    ---------------------------------- +    GeForce 6800 Ultra                    0x0040 +    GeForce 6800                          0x0041 +    GeForce 6800 XE                       0x0043 +    GeForce 6800 XT                       0x0044 +    GeForce 6800 GT                       0x0045 +    GeForce 6800 GT                       0x0046 +    GeForce 6800 GS                       0x0047 +    GeForce 6800 XT                       0x0048 +    Quadro FX 4000                        0x004E +    GeForce 7800 GTX                      0x0090 +    GeForce 7800 GTX                      0x0091 +    GeForce 7800 GT                       0x0092 +    GeForce 7800 GS                       0x0093 +    GeForce Go 7800                       0x0098 +    GeForce Go 7800 GTX                   0x0099 +    Quadro FX 4500                        0x009D +    GeForce 6800 GS                       0x00C0 +    GeForce 6800                          0x00C1 +    GeForce 6800 LE                       0x00C2 +    GeForce 6800 XT                       0x00C3 +    GeForce Go 6800                       0x00C8 +    GeForce Go 6800 Ultra                 0x00C9 +    Quadro FX Go1400                      0x00CC +    Quadro FX 3450/4000 SDI               0x00CD +    Quadro FX 1400                        0x00CE +    GeForce 6800 Ultra/GeForce 6800       0x00F0 +    GeForce 6600 GT                       0x00F1 +    GeForce 6600                          0x00F2 +    GeForce 6200                          0x00F3 +    GeForce 6600 LE                       0x00F4 +    GeForce 7800 GS                       0x00F5 +    GeForce 6800 GS                       0x00F6 +    Quadro FX 3400/4400                   0x00F8 +    GeForce 6800 Ultra                    0x00F9 +    GeForce PCX 5750                      0x00FA +    GeForce PCX 5900                      0x00FB +    GeForce PCX 5300/Quadro FX 330        0x00FC +    Quadro NVS 280 PCI-E/Quadro FX 330    0x00FD +    Quadro FX 1300                        0x00FE +    GeForce PCX 4300                      0x00FF +    GeForce 6600 GT                       0x0140 +    GeForce 6600                          0x0141 +    GeForce 6600 LE                       0x0142 +    GeForce 6600 VE                       0x0143 +    GeForce Go 6600                       0x0144 +    GeForce 6610 XL                       0x0145 +    GeForce Go 6600 TE/6200 TE            0x0146 +    GeForce 6700 XL                       0x0147 +    GeForce Go 6600                       0x0148 +    GeForce Go 6600 GT                    0x0149 +    Quadro NVS 440                        0x014A +    Quadro FX 550                         0x014C +    Quadro FX 540                         0x014E +    GeForce 6200                          0x014F +    GeForce 6500                          0x0160 +    GeForce 6200 TurboCache(TM)           0x0161 +    GeForce 6200 LE                       0x0163 +    GeForce Go 6200                       0x0164 +    Quadro NVS 285                        0x0165 +    GeForce Go 6400                       0x0166 +    GeForce Go 6200                       0x0167 +    GeForce Go 6400                       0x0168 +    GeForce 8800 GTX                      0x0191 +    GeForce 8800 GTS                      0x0193 +    GeForce 7300 LE                       0x01D1 +    GeForce 7300 SE                       0x01D3 +    Quadro NVS 110M/GeForce Go 7300       0x01D7 +    GeForce Go 7400                       0x01D8 +    Quadro NVS 110M                       0x01DA +    Quadro NVS 120M                       0x01DB +    Quadro FX 350M                        0x01DC +    Quadro FX 350                         0x01DE +    GeForce 7300 GS                       0x01DF +    GeForce 6800                          0x0211 +    GeForce 6800 LE                       0x0212 +    GeForce 6800 GT                       0x0215 +    GeForce 6800 XT                       0x0218 +    GeForce 6200                          0x0221 +    GeForce 6150                          0x0240 +    GeForce 6150 LE                       0x0241 +    GeForce 6100                          0x0242 +    GeForce Go 6100                       0x0247 +    GeForce 7900 GTX                      0x0290 +    GeForce 7900 GT/GTO                   0x0291 +    GeForce 7900 GS                       0x0292 +    GeForce 7950 GX2                      0x0294 +    GeForce Go 7900 GS                    0x0298 +    GeForce Go 7900 GTX                   0x0299 +    Quadro FX 2500M                       0x029A +    Quadro FX 1500M                       0x029B +    Quadro FX 5500                        0x029C +    Quadro FX 3500M                       0x029D +    Quadro FX 1500                        0x029E +    Quadro FX 4500 X2                     0x029F +    GeForce 7600 GS                       0x02E1 +    GeForce FX 5800 Ultra                 0x0301 +    GeForce FX 5800                       0x0302 +    Quadro FX 2000                        0x0308 +    Quadro FX 1000                        0x0309 +    GeForce FX 5600 Ultra                 0x0311 +    GeForce FX 5600                       0x0312 +    GeForce FX 5600XT                     0x0314 +    GeForce FX Go5600                     0x031A +    GeForce FX Go5650                     0x031B +    Quadro FX Go700                       0x031C +    GeForce FX 5200                       0x0320 +    GeForce FX 5200 Ultra                 0x0321 +    GeForce FX 5200                       0x0322 +    GeForce FX 5200LE                     0x0323 +    GeForce FX Go5200                     0x0324 +    GeForce FX Go5250                     0x0325 +    GeForce FX 5500                       0x0326 +    GeForce FX 5100                       0x0327 +    GeForce FX Go5200 32M/64M             0x0328 +    Quadro NVS 55/280 PCI                 0x032A +    Quadro FX 500/FX 600                  0x032B +    GeForce FX Go53xx                     0x032C +    GeForce FX Go5100                     0x032D +    GeForce FX 5900 Ultra                 0x0330 +    GeForce FX 5900                       0x0331 +    GeForce FX 5900XT                     0x0332 +    GeForce FX 5950 Ultra                 0x0333 +    GeForce FX 5900ZT                     0x0334 +    Quadro FX 3000                        0x0338 +    Quadro FX 700                         0x033F +    GeForce FX 5700 Ultra                 0x0341 +    GeForce FX 5700                       0x0342 +    GeForce FX 5700LE                     0x0343 +    GeForce FX 5700VE                     0x0344 +    GeForce FX Go5700                     0x0347 +    GeForce FX Go5700                     0x0348 +    Quadro FX Go1000                      0x034C +    Quadro FX 1100                        0x034E +    GeForce 7600 GT                       0x0391 +    GeForce 7600 GS                       0x0392 +    GeForce 7300 GT                       0x0393 +    GeForce Go 7600                       0x0398 +    Quadro FX 560                         0x039E + + +Below are the legacy GPUs that are no longer supported in the unified driver. +These GPUs will continue to be maintained through the special legacy NVIDIA +GPU driver releases. + +The 1.0-96xx driver supports the following set of GPUs: + + +    NVIDIA chip name                      Device PCI ID +    ----------------------------------    ---------------------------------- +    GeForce2 MX/MX 400                    0x0110 +    GeForce2 MX 100/200                   0x0111 +    GeForce2 Go                           0x0112 +    Quadro2 MXR/EX/Go                     0x0113 +    GeForce4 MX 460                       0x0170 +    GeForce4 MX 440                       0x0171 +    GeForce4 MX 420                       0x0172 +    GeForce4 MX 440-SE                    0x0173 +    GeForce4 440 Go                       0x0174 +    GeForce4 420 Go                       0x0175 +    GeForce4 420 Go 32M                   0x0176 +    GeForce4 460 Go                       0x0177 +    Quadro4 550 XGL                       0x0178 +    GeForce4 440 Go 64M                   0x0179 +    Quadro NVS                            0x017A +    Quadro4 500 GoGL                      0x017C +    GeForce4 410 Go 16M                   0x017D +    GeForce4 MX 440 with AGP8X            0x0181 +    GeForce4 MX 440SE with AGP8X          0x0182 +    GeForce4 MX 420 with AGP8X            0x0183 +    GeForce4 MX 4000                      0x0185 +    Quadro4 580 XGL                       0x0188 +    Quadro NVS 280 SD                     0x018A +    Quadro4 380 XGL                       0x018B +    Quadro NVS 50 PCI                     0x018C +    GeForce2 Integrated GPU               0x01A0 +    GeForce4 MX Integrated GPU            0x01F0 +    GeForce3                              0x0200 +    GeForce3 Ti 200                       0x0201 +    GeForce3 Ti 500                       0x0202 +    Quadro DCC                            0x0203 +    GeForce4 Ti 4600                      0x0250 +    GeForce4 Ti 4400                      0x0251 +    GeForce4 Ti 4200                      0x0253 +    Quadro4 900 XGL                       0x0258 +    Quadro4 750 XGL                       0x0259 +    Quadro4 700 XGL                       0x025B +    GeForce4 Ti 4800                      0x0280 +    GeForce4 Ti 4200 with AGP8X           0x0281 +    GeForce4 Ti 4800 SE                   0x0282 +    GeForce4 4200 Go                      0x0286 +    Quadro4 980 XGL                       0x0288 +    Quadro4 780 XGL                       0x0289 +    Quadro4 700 GoGL                      0x028C + + +The 1.0-71xx driver supports the following set of GPUs: + + +    NVIDIA chip name                      Device PCI ID +    ----------------------------------    ---------------------------------- +    RIVA TNT                              0x0020 +    RIVA TNT2/TNT2 Pro                    0x0028 +    RIVA TNT2 Ultra                       0x0029 +    Vanta/Vanta LT                        0x002C +    RIVA TNT2 Model 64/Model 64 Pro       0x002D +    Aladdin TNT2                          0x00A0 +    GeForce 256                           0x0100 +    GeForce DDR                           0x0101 +    Quadro                                0x0103 +    GeForce2 GTS/GeForce2 Pro             0x0150 +    GeForce2 Ti                           0x0151 +    GeForce2 Ultra                        0x0152 +    Quadro2 Pro                           0x0153 diff --git a/abs/core-testing/nvidia-71xx/NVIDIA_173.14.12_2.6.27.patch b/abs/core-testing/nvidia-71xx/NVIDIA_173.14.12_2.6.27.patch new file mode 100644 index 0000000..1ba936b --- /dev/null +++ b/abs/core-testing/nvidia-71xx/NVIDIA_173.14.12_2.6.27.patch @@ -0,0 +1,87 @@ +diff -Nru NVIDIA-Linux-x86-173.14.12-pkg0.orig/usr/src/nv/nv.c NVIDIA-Linux-x86-173.14.12-pkg0/usr/src/nv/nv.c +--- usr/src/nv/nv.c	2008-07-18 03:42:50.000000000 +0200 ++++ NVIDIA-Linux-x86-173.14.12-pkg0/usr/src/nv/nv.c	2008-08-12 00:35:45.000000000 +0200 +@@ -1296,14 +1296,22 @@ +             if (get_cpu() == cpu) +                 __nv_setup_pat_entries(NULL); +             else ++	    	#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 27) ++		smp_call_function(__nv_setup_pat_entries, hcpu, 1); ++		#else +                 smp_call_function(__nv_setup_pat_entries, hcpu, 1, 1); ++		#endif +             put_cpu(); +             break; +         case CPU_DOWN_PREPARE: +             if (get_cpu() == cpu) +                 __nv_restore_pat_entries(NULL); +             else ++	    	#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 27) ++		smp_call_function(__nv_restore_pat_entries, hcpu, 1); ++		#else +                 smp_call_function(__nv_restore_pat_entries, hcpu, 1, 1); ++		#endif +             put_cpu(); +             break; +     } +diff -Nru NVIDIA-Linux-x86-173.14.12-pkg0.orig/usr/src/nv/nv-linux.h NVIDIA-Linux-x86-173.14.12-pkg0/usr/src/nv/nv-linux.h +--- usr/src/nv/nv-linux.h	2008-07-18 03:42:51.000000000 +0200 ++++ NVIDIA-Linux-x86-173.14.12-pkg0/usr/src/nv/nv-linux.h	2008-08-12 00:44:27.000000000 +0200 +@@ -104,7 +104,10 @@ + #endif +  + #include <linux/spinlock.h> ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 27) ++#else + #include <asm/semaphore.h> ++#endif + #include <linux/completion.h> + #include <linux/highmem.h> +  +@@ -665,13 +668,21 @@ + #if defined(preempt_disable) +     preempt_disable(); + #endif ++    #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 27) ++    ret = smp_call_function(func, info, 1); ++    #else +     ret = smp_call_function(func, info, 1, 1); ++    #endif +     func(info); + #if defined(preempt_enable) +     preempt_enable(); + #endif + #else ++    #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 27) ++    ret = on_each_cpu(func, info, 1); ++    #else +     ret = on_each_cpu(func, info, 1, 1); ++    #endif + #endif +     return ret; + } +diff -Nru NVIDIA-Linux-x86-173.14.12-pkg0.orig/usr/src/nv/os-interface.c NVIDIA-Linux-x86-173.14.12-pkg0/usr/src/nv/os-interface.c +--- usr/src/nv/os-interface.c	2008-07-18 03:42:50.000000000 +0200 ++++ NVIDIA-Linux-x86-173.14.12-pkg0/usr/src/nv/os-interface.c	2008-08-12 00:48:07.000000000 +0200 +@@ -48,7 +48,11 @@ + #endif +     local_bh_disable(); +     atomic_set(&os_smp_barrier, 1); ++    #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 27) ++    ret = smp_call_function(ipi_handler, NULL, 0); ++    #else +     ret = smp_call_function(ipi_handler, NULL, 1, 0); ++    #endif + #endif +     return (ret == 0) ? RM_OK : RM_ERROR; + } +@@ -704,7 +708,9 @@ +     U032 sig + ) + { ++    #if LINUX_VERSION_CODE <= KERNEL_VERSION(2, 6, 26) +     return kill_proc(pid, sig, 1) ? RM_ERR_OPERATING_SYSTEM : RM_OK; ++    #endif + } +  + /*******************************************************************************/ diff --git a/abs/core-testing/nvidia-71xx/PKGBUILD b/abs/core-testing/nvidia-71xx/PKGBUILD new file mode 100644 index 0000000..e879abe --- /dev/null +++ b/abs/core-testing/nvidia-71xx/PKGBUILD @@ -0,0 +1,45 @@ +# $Id: PKGBUILD 14777 2008-10-10 15:34:50Z thomas $ +# Maintainer : Tobias Powalowski <tpowa@archlinux.org> + +pkgname=nvidia-71xx +pkgver=71.86.06 +_kernver='2.6.26-ARCH' +pkgrel=3 +pkgdesc="NVIDIA legacy drivers for kernel26, 71xx branch" +arch=(i686 x86_64) +[ "$CARCH" = "i686"   ] && ARCH=x86 +[ "$CARCH" = "x86_64" ] && ARCH=x86_64 +url="http://www.nvidia.com/" +depends=('nvidia-71xx-utils' 'kernel26>=2.6.26' 'kernel26<2.6.28') +conflicts=('nvidia' 'nvidia-96xx' 'nvidia-legacy') +replaces=('nvidia-legacy') +license=('custom') +source=(http://us.download.nvidia.com/XFree86/Linux-${ARCH}/${pkgver}/NVIDIA-Linux-${ARCH}-${pkgver}-pkg0.run +        NVIDIA_173.14.12_2.6.27.patch) +install="nvidia-71xx.install" +md5sums=('61e4511d1bbb2962ca139091210b61ea' +         'cd4a68b5a88be6976b90cd0df6bfe89e') +[ "$CARCH" = "x86_64" ] && md5sums=('205599549ddd6fadecfbc1adb090dfe2' +                                    'cd4a68b5a88be6976b90cd0df6bfe89e') + +build() {   +  cd $startdir/src  + +  # Extract +  cd $startdir/src/ +  sh NVIDIA-Linux-${ARCH}-${pkgver}-pkg0.run --extract-only +  cd NVIDIA-Linux-${ARCH}-${pkgver}-pkg0 + +  # Any extra patches are applied in here... +  patch -Np1 -i ../NVIDIA_173.14.12_2.6.27.patch || return 1 + +  cd usr/src/nv/ +  ln -s Makefile.kbuild Makefile +  make SYSSRC=/lib/modules/$_kernver/build module || return 1 +   +  # install kernel module +  mkdir -p $startdir/pkg/lib/modules/${_kernver}/kernel/drivers/video/ +  install -m644 nvidia.ko $startdir/pkg/lib/modules/${_kernver}/kernel/drivers/video/ || return 1 + +  sed -i -e "s/KERNEL_VERSION='.*'/KERNEL_VERSION='${_kernver}'/" $startdir/*.install +} diff --git a/abs/core-testing/nvidia-71xx/nvidia-71xx.install b/abs/core-testing/nvidia-71xx/nvidia-71xx.install new file mode 100644 index 0000000..18b7435 --- /dev/null +++ b/abs/core-testing/nvidia-71xx/nvidia-71xx.install @@ -0,0 +1,23 @@ +# arg 1:  the new package version +post_install() { +  KERNEL_VERSION='2.6.26-ARCH' +  depmod -v $KERNEL_VERSION  > /dev/null 2>&1		  +} + +# arg 1:  the new package version +# arg 2:  the old package version +post_upgrade() { +  post_install $1 +  rmmod nvidia >/dev/null 2>&1 || echo 'In order to use the new nvidia module, exit Xserver and unload it manually.' +} + +# arg 1:  the old package version +post_remove() { +  KERNEL_VERSION='2.6.26-ARCH' +  depmod -v $KERNEL_VERSION	 > /dev/null 2>&1 +  rmmod nvidia >/dev/null 2>&1 +} + +op=$1 +shift +$op $* diff --git a/abs/core-testing/nvidia-96xx-utils/PKGBUILD b/abs/core-testing/nvidia-96xx-utils/PKGBUILD new file mode 100644 index 0000000..b745a3c --- /dev/null +++ b/abs/core-testing/nvidia-96xx-utils/PKGBUILD @@ -0,0 +1,65 @@ +# $Id: PKGBUILD 5959 2008-07-21 20:38:14Z thomas $ +# Maintainer: Tobias Powalowski <tpowa@archlinux.org> +# Contributor: James Rayner <iphitus@gmail.com> + +pkgname=nvidia-96xx-utils +pkgver=96.43.07 +pkgrel=1 +pkgdesc="NVIDIA legacy drivers utilities and libraries, 96xx branch." +arch=(i686 x86_64) +license=('custom') +[ "$CARCH" = "i686"   ] && ARCH=x86 	  +[ "$CARCH" = "x86_64" ] && ARCH=x86_64 +url="http://www.nvidia.com/" +depends=('xorg-server') +conflicts=('libgl' 'libgl-dri' 'ati-fglrx-utils' 'nvidia-utils' \ +           'nvidia-71xx-utils' 'nvidia-legacy-utils') +provides=('libgl') +install=nvidia-96xx.install +source=(http://us.download.nvidia.com/XFree86/Linux-${ARCH}/${pkgver}/NVIDIA-Linux-${ARCH}-${pkgver}-pkg0.run \ +        supported-cards.txt) +md5sums=('8fa2b7c5e4629850d4bd33033ec46166' +         '6363d7e494d33729609540088e33e73f') +[ "$CARCH" = "x86_64" ] && md5sums=('c03bd2469292d91dde8767af1418c4e1' +         '6363d7e494d33729609540088e33e73f') +options=(docs !strip) + +build() +{ +  # override nvida install routine and do it the long way. +  cd $startdir/src/ +  sh NVIDIA-Linux-${ARCH}-${pkgver}-pkg0.run --extract-only +  cd NVIDIA-Linux-${ARCH}-${pkgver}-pkg0/usr/ + +  mkdir -p $startdir/pkg/usr/{lib,bin,share/applications,share/pixmaps,man/man1} +  mkdir -p $startdir/pkg/usr/lib/xorg/modules/{extensions,drivers} +  mkdir -p $startdir/pkg/usr/share/licenses/nvidia-96xx/ +   +  install lib/{libGLcore.so.${pkgver},libGL.so.${pkgver},libnvidia-cfg.so.${pkgver},tls/libnvidia-tls.so.${pkgver}} \ +       $startdir/pkg/usr/lib/ || return 1 +  install -m644 share/man/man1/* $startdir/pkg/usr/man/man1/ || return 1 +  rm $startdir/pkg/usr/man/man1/nvidia-installer.1.gz || return 1 +  install X11R6/lib/libXv* $startdir/pkg/usr/lib/ || return 1 +  install -m644 share/applications/nvidia-settings.desktop $startdir/pkg/usr/share/applications/ || return 1 +  # fix nvidia .desktop file +  sed -e 's:__UTILS_PATH__:/usr/bin:' -e 's:__PIXMAP_PATH__:/usr/share/pixmaps:' -i $startdir/pkg/usr/share/applications/nvidia-settings.desktop +  install -m644 share/pixmaps/nvidia-settings.png $startdir/pkg/usr/share/pixmaps/ || return 1 +  install X11R6/lib/modules/drivers/nvidia_drv.so $startdir/pkg/usr/lib/xorg/modules/drivers || return 1 +  install X11R6/lib/modules/extensions/libglx.so.$pkgver $startdir/pkg/usr/lib/xorg/modules/extensions || return 1 +  install -m755 bin/nvidia-{settings,xconfig,bug-report.sh} $startdir/pkg/usr/bin/ || return 1 +  cd $startdir/pkg/usr/lib/ +  ln -s /usr/lib/libGL.so.$pkgver libGL.so || return 1 +  ln -s /usr/lib/libGL.so.$pkgver libGL.so.1 || return 1 +  ln -s /usr/lib/libGLcore.so.$pkgver libGLcore.so.1 || return 1 +  ln -s /usr/lib/libnvidia-cfg.so.$pkgver libnvidia-cfg.so.1 || return 1 +  ln -s /usr/lib/libnvidia-tls.so.$pkgver libnvidia-tls.so.1 || return 1 +  cd $startdir/pkg/usr/lib/xorg/modules/extensions +  ln -s /usr/lib/xorg/modules/extensions/libglx.so.$pkgver libglx.so || return 1 + +  install -m644 $startdir/src/NVIDIA-Linux-${ARCH}-${pkgver}-pkg0/LICENSE $startdir/pkg/usr/share/licenses/nvidia-96xx/ || return 1 +  install -D -m644 $startdir/src/NVIDIA-Linux-${ARCH}-${pkgver}-pkg0/usr/share/doc/README.txt $startdir/pkg/usr/share/doc/nvidia/README || return 1 +  install -D -m644 $startdir/src/supported-cards.txt $startdir/pkg/usr/share/doc/nvidia/supported-cards.txt || return 1 +   +  find $startdir/pkg/usr -type d -exec chmod 755 {} \; +  # phew :) +} diff --git a/abs/core-testing/nvidia-96xx-utils/nvidia-96xx.install b/abs/core-testing/nvidia-96xx-utils/nvidia-96xx.install new file mode 100644 index 0000000..bb1fff2 --- /dev/null +++ b/abs/core-testing/nvidia-96xx-utils/nvidia-96xx.install @@ -0,0 +1,22 @@ +# arg 1:  the new package version +post_install() { + +  echo ------------------------------- +  echo By using this package you accept the NVIDIA license,  +  echo which has been installed in /usr/share/licenses/nvidia/LICENSE +  echo If you do not accept this license, you must remove the package immediately. +  echo Dont forget to update your /etc/X11/xorg.conf +  echo In order to use nvidia-settings, you need to install 'gtk2' package. +  echo ------------------------------- +	  +} + +# arg 1:  the new package version +# arg 2:  the old package version +post_upgrade() { +  post_install $1 +} + +op=$1 +shift +$op $* diff --git a/abs/core-testing/nvidia-96xx-utils/supported-cards.txt b/abs/core-testing/nvidia-96xx-utils/supported-cards.txt new file mode 100644 index 0000000..d4f26ea --- /dev/null +++ b/abs/core-testing/nvidia-96xx-utils/supported-cards.txt @@ -0,0 +1,236 @@ +Archlinux currently manages three branches of the NVIDIA binary driver: + +nvidia (latest nvidia release) +nvidia-96xx (96xx legacy branch) +nvidia-71xx (71xx legacy branch) + +This excerpt from the NVIDIA 1.0.9746 README lists the supported devices +for each of those: + +______________________________________________________________________________ + +Appendix A. Supported NVIDIA Graphics Chips +______________________________________________________________________________ + +For the most complete and accurate listing of supported GPUs, please see the +Supported Products List, available from the NVIDIA Linux x86 Graphics Driver +download page. Please go to http://www.nvidia.com/object/unix.html, follow the +Archive link under the Linux x86 heading, follow the link for the 1.0-9746 +driver, and then go to the Supported Products List. + + +    NVIDIA chip name                      Device PCI ID +    ----------------------------------    ---------------------------------- +    GeForce 6800 Ultra                    0x0040 +    GeForce 6800                          0x0041 +    GeForce 6800 XE                       0x0043 +    GeForce 6800 XT                       0x0044 +    GeForce 6800 GT                       0x0045 +    GeForce 6800 GT                       0x0046 +    GeForce 6800 GS                       0x0047 +    GeForce 6800 XT                       0x0048 +    Quadro FX 4000                        0x004E +    GeForce 7800 GTX                      0x0090 +    GeForce 7800 GTX                      0x0091 +    GeForce 7800 GT                       0x0092 +    GeForce 7800 GS                       0x0093 +    GeForce Go 7800                       0x0098 +    GeForce Go 7800 GTX                   0x0099 +    Quadro FX 4500                        0x009D +    GeForce 6800 GS                       0x00C0 +    GeForce 6800                          0x00C1 +    GeForce 6800 LE                       0x00C2 +    GeForce 6800 XT                       0x00C3 +    GeForce Go 6800                       0x00C8 +    GeForce Go 6800 Ultra                 0x00C9 +    Quadro FX Go1400                      0x00CC +    Quadro FX 3450/4000 SDI               0x00CD +    Quadro FX 1400                        0x00CE +    GeForce 6800 Ultra/GeForce 6800       0x00F0 +    GeForce 6600 GT                       0x00F1 +    GeForce 6600                          0x00F2 +    GeForce 6200                          0x00F3 +    GeForce 6600 LE                       0x00F4 +    GeForce 7800 GS                       0x00F5 +    GeForce 6800 GS                       0x00F6 +    Quadro FX 3400/4400                   0x00F8 +    GeForce 6800 Ultra                    0x00F9 +    GeForce PCX 5750                      0x00FA +    GeForce PCX 5900                      0x00FB +    GeForce PCX 5300/Quadro FX 330        0x00FC +    Quadro NVS 280 PCI-E/Quadro FX 330    0x00FD +    Quadro FX 1300                        0x00FE +    GeForce PCX 4300                      0x00FF +    GeForce 6600 GT                       0x0140 +    GeForce 6600                          0x0141 +    GeForce 6600 LE                       0x0142 +    GeForce 6600 VE                       0x0143 +    GeForce Go 6600                       0x0144 +    GeForce 6610 XL                       0x0145 +    GeForce Go 6600 TE/6200 TE            0x0146 +    GeForce 6700 XL                       0x0147 +    GeForce Go 6600                       0x0148 +    GeForce Go 6600 GT                    0x0149 +    Quadro NVS 440                        0x014A +    Quadro FX 550                         0x014C +    Quadro FX 540                         0x014E +    GeForce 6200                          0x014F +    GeForce 6500                          0x0160 +    GeForce 6200 TurboCache(TM)           0x0161 +    GeForce 6200 LE                       0x0163 +    GeForce Go 6200                       0x0164 +    Quadro NVS 285                        0x0165 +    GeForce Go 6400                       0x0166 +    GeForce Go 6200                       0x0167 +    GeForce Go 6400                       0x0168 +    GeForce 8800 GTX                      0x0191 +    GeForce 8800 GTS                      0x0193 +    GeForce 7300 LE                       0x01D1 +    GeForce 7300 SE                       0x01D3 +    Quadro NVS 110M/GeForce Go 7300       0x01D7 +    GeForce Go 7400                       0x01D8 +    Quadro NVS 110M                       0x01DA +    Quadro NVS 120M                       0x01DB +    Quadro FX 350M                        0x01DC +    Quadro FX 350                         0x01DE +    GeForce 7300 GS                       0x01DF +    GeForce 6800                          0x0211 +    GeForce 6800 LE                       0x0212 +    GeForce 6800 GT                       0x0215 +    GeForce 6800 XT                       0x0218 +    GeForce 6200                          0x0221 +    GeForce 6150                          0x0240 +    GeForce 6150 LE                       0x0241 +    GeForce 6100                          0x0242 +    GeForce Go 6100                       0x0247 +    GeForce 7900 GTX                      0x0290 +    GeForce 7900 GT/GTO                   0x0291 +    GeForce 7900 GS                       0x0292 +    GeForce 7950 GX2                      0x0294 +    GeForce Go 7900 GS                    0x0298 +    GeForce Go 7900 GTX                   0x0299 +    Quadro FX 2500M                       0x029A +    Quadro FX 1500M                       0x029B +    Quadro FX 5500                        0x029C +    Quadro FX 3500M                       0x029D +    Quadro FX 1500                        0x029E +    Quadro FX 4500 X2                     0x029F +    GeForce 7600 GS                       0x02E1 +    GeForce FX 5800 Ultra                 0x0301 +    GeForce FX 5800                       0x0302 +    Quadro FX 2000                        0x0308 +    Quadro FX 1000                        0x0309 +    GeForce FX 5600 Ultra                 0x0311 +    GeForce FX 5600                       0x0312 +    GeForce FX 5600XT                     0x0314 +    GeForce FX Go5600                     0x031A +    GeForce FX Go5650                     0x031B +    Quadro FX Go700                       0x031C +    GeForce FX 5200                       0x0320 +    GeForce FX 5200 Ultra                 0x0321 +    GeForce FX 5200                       0x0322 +    GeForce FX 5200LE                     0x0323 +    GeForce FX Go5200                     0x0324 +    GeForce FX Go5250                     0x0325 +    GeForce FX 5500                       0x0326 +    GeForce FX 5100                       0x0327 +    GeForce FX Go5200 32M/64M             0x0328 +    Quadro NVS 55/280 PCI                 0x032A +    Quadro FX 500/FX 600                  0x032B +    GeForce FX Go53xx                     0x032C +    GeForce FX Go5100                     0x032D +    GeForce FX 5900 Ultra                 0x0330 +    GeForce FX 5900                       0x0331 +    GeForce FX 5900XT                     0x0332 +    GeForce FX 5950 Ultra                 0x0333 +    GeForce FX 5900ZT                     0x0334 +    Quadro FX 3000                        0x0338 +    Quadro FX 700                         0x033F +    GeForce FX 5700 Ultra                 0x0341 +    GeForce FX 5700                       0x0342 +    GeForce FX 5700LE                     0x0343 +    GeForce FX 5700VE                     0x0344 +    GeForce FX Go5700                     0x0347 +    GeForce FX Go5700                     0x0348 +    Quadro FX Go1000                      0x034C +    Quadro FX 1100                        0x034E +    GeForce 7600 GT                       0x0391 +    GeForce 7600 GS                       0x0392 +    GeForce 7300 GT                       0x0393 +    GeForce Go 7600                       0x0398 +    Quadro FX 560                         0x039E + + +Below are the legacy GPUs that are no longer supported in the unified driver. +These GPUs will continue to be maintained through the special legacy NVIDIA +GPU driver releases. + +The 1.0-96xx driver supports the following set of GPUs: + + +    NVIDIA chip name                      Device PCI ID +    ----------------------------------    ---------------------------------- +    GeForce2 MX/MX 400                    0x0110 +    GeForce2 MX 100/200                   0x0111 +    GeForce2 Go                           0x0112 +    Quadro2 MXR/EX/Go                     0x0113 +    GeForce4 MX 460                       0x0170 +    GeForce4 MX 440                       0x0171 +    GeForce4 MX 420                       0x0172 +    GeForce4 MX 440-SE                    0x0173 +    GeForce4 440 Go                       0x0174 +    GeForce4 420 Go                       0x0175 +    GeForce4 420 Go 32M                   0x0176 +    GeForce4 460 Go                       0x0177 +    Quadro4 550 XGL                       0x0178 +    GeForce4 440 Go 64M                   0x0179 +    Quadro NVS                            0x017A +    Quadro4 500 GoGL                      0x017C +    GeForce4 410 Go 16M                   0x017D +    GeForce4 MX 440 with AGP8X            0x0181 +    GeForce4 MX 440SE with AGP8X          0x0182 +    GeForce4 MX 420 with AGP8X            0x0183 +    GeForce4 MX 4000                      0x0185 +    Quadro4 580 XGL                       0x0188 +    Quadro NVS 280 SD                     0x018A +    Quadro4 380 XGL                       0x018B +    Quadro NVS 50 PCI                     0x018C +    GeForce2 Integrated GPU               0x01A0 +    GeForce4 MX Integrated GPU            0x01F0 +    GeForce3                              0x0200 +    GeForce3 Ti 200                       0x0201 +    GeForce3 Ti 500                       0x0202 +    Quadro DCC                            0x0203 +    GeForce4 Ti 4600                      0x0250 +    GeForce4 Ti 4400                      0x0251 +    GeForce4 Ti 4200                      0x0253 +    Quadro4 900 XGL                       0x0258 +    Quadro4 750 XGL                       0x0259 +    Quadro4 700 XGL                       0x025B +    GeForce4 Ti 4800                      0x0280 +    GeForce4 Ti 4200 with AGP8X           0x0281 +    GeForce4 Ti 4800 SE                   0x0282 +    GeForce4 4200 Go                      0x0286 +    Quadro4 980 XGL                       0x0288 +    Quadro4 780 XGL                       0x0289 +    Quadro4 700 GoGL                      0x028C + + +The 1.0-71xx driver supports the following set of GPUs: + + +    NVIDIA chip name                      Device PCI ID +    ----------------------------------    ---------------------------------- +    RIVA TNT                              0x0020 +    RIVA TNT2/TNT2 Pro                    0x0028 +    RIVA TNT2 Ultra                       0x0029 +    Vanta/Vanta LT                        0x002C +    RIVA TNT2 Model 64/Model 64 Pro       0x002D +    Aladdin TNT2                          0x00A0 +    GeForce 256                           0x0100 +    GeForce DDR                           0x0101 +    Quadro                                0x0103 +    GeForce2 GTS/GeForce2 Pro             0x0150 +    GeForce2 Ti                           0x0151 +    GeForce2 Ultra                        0x0152 +    Quadro2 Pro                           0x0153 diff --git a/abs/core-testing/nvidia-96xx/NVIDIA_173.14.12_2.6.27.patch b/abs/core-testing/nvidia-96xx/NVIDIA_173.14.12_2.6.27.patch new file mode 100644 index 0000000..1ba936b --- /dev/null +++ b/abs/core-testing/nvidia-96xx/NVIDIA_173.14.12_2.6.27.patch @@ -0,0 +1,87 @@ +diff -Nru NVIDIA-Linux-x86-173.14.12-pkg0.orig/usr/src/nv/nv.c NVIDIA-Linux-x86-173.14.12-pkg0/usr/src/nv/nv.c +--- usr/src/nv/nv.c	2008-07-18 03:42:50.000000000 +0200 ++++ NVIDIA-Linux-x86-173.14.12-pkg0/usr/src/nv/nv.c	2008-08-12 00:35:45.000000000 +0200 +@@ -1296,14 +1296,22 @@ +             if (get_cpu() == cpu) +                 __nv_setup_pat_entries(NULL); +             else ++	    	#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 27) ++		smp_call_function(__nv_setup_pat_entries, hcpu, 1); ++		#else +                 smp_call_function(__nv_setup_pat_entries, hcpu, 1, 1); ++		#endif +             put_cpu(); +             break; +         case CPU_DOWN_PREPARE: +             if (get_cpu() == cpu) +                 __nv_restore_pat_entries(NULL); +             else ++	    	#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 27) ++		smp_call_function(__nv_restore_pat_entries, hcpu, 1); ++		#else +                 smp_call_function(__nv_restore_pat_entries, hcpu, 1, 1); ++		#endif +             put_cpu(); +             break; +     } +diff -Nru NVIDIA-Linux-x86-173.14.12-pkg0.orig/usr/src/nv/nv-linux.h NVIDIA-Linux-x86-173.14.12-pkg0/usr/src/nv/nv-linux.h +--- usr/src/nv/nv-linux.h	2008-07-18 03:42:51.000000000 +0200 ++++ NVIDIA-Linux-x86-173.14.12-pkg0/usr/src/nv/nv-linux.h	2008-08-12 00:44:27.000000000 +0200 +@@ -104,7 +104,10 @@ + #endif +  + #include <linux/spinlock.h> ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 27) ++#else + #include <asm/semaphore.h> ++#endif + #include <linux/completion.h> + #include <linux/highmem.h> +  +@@ -665,13 +668,21 @@ + #if defined(preempt_disable) +     preempt_disable(); + #endif ++    #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 27) ++    ret = smp_call_function(func, info, 1); ++    #else +     ret = smp_call_function(func, info, 1, 1); ++    #endif +     func(info); + #if defined(preempt_enable) +     preempt_enable(); + #endif + #else ++    #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 27) ++    ret = on_each_cpu(func, info, 1); ++    #else +     ret = on_each_cpu(func, info, 1, 1); ++    #endif + #endif +     return ret; + } +diff -Nru NVIDIA-Linux-x86-173.14.12-pkg0.orig/usr/src/nv/os-interface.c NVIDIA-Linux-x86-173.14.12-pkg0/usr/src/nv/os-interface.c +--- usr/src/nv/os-interface.c	2008-07-18 03:42:50.000000000 +0200 ++++ NVIDIA-Linux-x86-173.14.12-pkg0/usr/src/nv/os-interface.c	2008-08-12 00:48:07.000000000 +0200 +@@ -48,7 +48,11 @@ + #endif +     local_bh_disable(); +     atomic_set(&os_smp_barrier, 1); ++    #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 27) ++    ret = smp_call_function(ipi_handler, NULL, 0); ++    #else +     ret = smp_call_function(ipi_handler, NULL, 1, 0); ++    #endif + #endif +     return (ret == 0) ? RM_OK : RM_ERROR; + } +@@ -704,7 +708,9 @@ +     U032 sig + ) + { ++    #if LINUX_VERSION_CODE <= KERNEL_VERSION(2, 6, 26) +     return kill_proc(pid, sig, 1) ? RM_ERR_OPERATING_SYSTEM : RM_OK; ++    #endif + } +  + /*******************************************************************************/ diff --git a/abs/core-testing/nvidia-96xx/PKGBUILD b/abs/core-testing/nvidia-96xx/PKGBUILD new file mode 100644 index 0000000..3ccbbfe --- /dev/null +++ b/abs/core-testing/nvidia-96xx/PKGBUILD @@ -0,0 +1,44 @@ +# $Id: PKGBUILD 14780 2008-10-10 15:35:36Z thomas $ +# Maintainer : Tobias Powalowski <tpowa@archlinux.org> + +pkgname=nvidia-96xx +pkgver=96.43.07 +_kernver='2.6.26-ARCH' +pkgrel=6 +pkgdesc="NVIDIA legacy drivers for kernel26, 96xx branch" +arch=(i686 x86_64) +license=('custom:NVIDIA') +[ "$CARCH" = "i686"   ] && ARCH=x86 +[ "$CARCH" = "x86_64" ] && ARCH=x86_64 +url="http://www.nvidia.com/" +depends=('kernel26>=2.6.26' 'kernel26<2.6.28' 'nvidia-96xx-utils') +conflicts=('nvidia' 'nvidia-71xx' 'nvidia-legacy') +install=nvidia-96xx.install +license=('custom') +source=(http://us.download.nvidia.com/XFree86/Linux-$ARCH/${pkgver}/NVIDIA-Linux-$ARCH-${pkgver}-pkg0.run +        NVIDIA_173.14.12_2.6.27.patch) +md5sums=('8fa2b7c5e4629850d4bd33033ec46166' +         'cd4a68b5a88be6976b90cd0df6bfe89e') +[ "$CARCH" = "x86_64" ] && md5sums=('c03bd2469292d91dde8767af1418c4e1' +                                    'cd4a68b5a88be6976b90cd0df6bfe89e') + +build() +{ +  # Extract +  cd $startdir/src/ +  sh NVIDIA-Linux-$ARCH-${pkgver}-pkg0.run --extract-only +  cd NVIDIA-Linux-$ARCH-${pkgver}-pkg0 +   +  # Any extra patches are applied in here... +  patch -Np1 -i ../NVIDIA_173.14.12_2.6.27.patch || return 1 + +  cd usr/src/nv/ +  ln -s Makefile.kbuild Makefile +  make SYSSRC=/lib/modules/$_kernver/build module || return 1 +   +  # install kernel module +  mkdir -p $startdir/pkg/lib/modules/${_kernver}/kernel/drivers/video/ +  install -m644 nvidia.ko $startdir/pkg/lib/modules/${_kernver}/kernel/drivers/video/ || return 1 + +  sed -i -e "s/KERNEL_VERSION='.*'/KERNEL_VERSION='${_kernver}'/" $startdir/*.install +} diff --git a/abs/core-testing/nvidia-96xx/nvidia-96xx.install b/abs/core-testing/nvidia-96xx/nvidia-96xx.install new file mode 100644 index 0000000..dbbec39 --- /dev/null +++ b/abs/core-testing/nvidia-96xx/nvidia-96xx.install @@ -0,0 +1,22 @@ +# arg 1:  the new package version +post_install() { +  KERNEL_VERSION='2.6.26-ARCH' +  depmod -v $KERNEL_VERSION  > /dev/null 2>&1		  +} + +# arg 1:  the new package version +# arg 2:  the old package version +post_upgrade() { +  post_install $1 +  rmmod nvidia || echo 'In order to use the new nvidia module, exit Xserver and unload it manually.' +} + +# arg 1:  the old package version +post_remove() { +  KERNEL_VERSION='2.6.26-ARCH' +  depmod -v $KERNEL_VERSION	 > /dev/null 2>&1	  +} + +op=$1 +shift +$op $* diff --git a/abs/core-testing/php/PKGBUILD b/abs/core-testing/php/PKGBUILD index f824ec7..4b0a18b 100644 --- a/abs/core-testing/php/PKGBUILD +++ b/abs/core-testing/php/PKGBUILD @@ -1,6 +1,6 @@  pkgname=php  pkgver=5.2.6 -pkgrel=7 +pkgrel=12  _suhosinver=0.9.6.2  pkgdesc='A high-level scripting language'  arch=('i686' 'x86_64') diff --git a/abs/core-testing/php/__changelog b/abs/core-testing/php/__changelog new file mode 100644 index 0000000..215af9b --- /dev/null +++ b/abs/core-testing/php/__changelog @@ -0,0 +1,3 @@ +modified php.ini +set base dir to /data/srv/httpd/htdocs +added /data/srv/tmp to basedir diff --git a/abs/core-testing/php/php.ini b/abs/core-testing/php/php.ini index bc0e862..50b0291 100644 --- a/abs/core-testing/php/php.ini +++ b/abs/core-testing/php/php.ini @@ -249,7 +249,7 @@ safe_mode_protected_env_vars = LD_LIBRARY_PATH  ; and below.  This directive makes most sense if used in a per-directory  ; or per-virtualhost web server configuration file. This directive is  ; *NOT* affected by whether Safe Mode is turned On or Off. -open_basedir = /srv/http/:/home/:/tmp/:/usr/share/pear/ +open_basedir = /data/srv/httpd/htdocs/:/home/:/tmp/:/usr/share/pear/:/data/srv/tmp  ; This directive allows you to disable certain functions for security reasons.  ; It receives a comma-delimited list of function names. This directive is diff --git a/abs/core-testing/qt/PKGBUILD b/abs/core-testing/qt/PKGBUILD new file mode 100644 index 0000000..a06b7e0 --- /dev/null +++ b/abs/core-testing/qt/PKGBUILD @@ -0,0 +1,100 @@ +# $Id: PKGBUILD 18501 2008-11-06 12:11:46Z pierre $ +# Maintainer: Pierre Schmitz <pierre@archlinux.de> + +pkgname=qt +pkgver=4.4.3 +pkgrel=2 +_qtcopyver=880178 +pkgdesc="The QT gui toolkit." +arch=('i686' 'x86_64') +url="http://www.trolltech.com/products/qt" +license=('GPL3') +options=('!libtool' '!docs') +depends=('libpng' 'libxi' 'mesa' 'fontconfig' 'libxrandr' 'glib2' 'libtiff' 'libmng' 'sqlite3' 'dbus' 'libxcursor' 'libxinerama') +optdepends=('postgresql-libs' 'libmysqlclient' 'unixodbc') +makedepends=('inputproto' 'postgresql-libs' 'mysql' 'unixodbc' 'libxfixes') +provides=("qt4=${pkgver}") +replaces=('qt4') +conflicts=('qt4') +_pkgfqn=qt-x11-opensource-src-$pkgver +# svn export -r -${_qtcopyver} svn://anonsvn.kde.org/home/kde/trunk/qt-copy/patches/ qt-copy-patches-${_qtcopyver} +source=("ftp://ftp.trolltech.com/qt/source/${_pkgfqn}.tar.bz2" +        "ftp://ftp.archlinux.org/other/qt/qt-copy-patches-${_qtcopyver}.tar.bz2" +        'qt4-assistant.desktop' 'qt4-designer.desktop' 'qt4-linguist.desktop') +md5sums=('00e00c6324d342a7b0d8653112b4f08c' +         'd3a40d783528a86174b62ecfc136b031' +         'c95e1697bf2b923199c3b8cd7d485a17' +         '00333dca87e24767383217ba378b5980' +         '71f7ac8206c19da7ecf71cdb391f0452') + +build() { +	unset QMAKESPEC +	export QT4DIR=$srcdir/$_pkgfqn +	export PATH=${QT4DIR}/bin:${PATH} +	export LD_LIBRARY_PATH=${QT4DIR}/lib:${LD_LIBRARY_PATH} + +	cd $srcdir/$_pkgfqn +	for i in $srcdir/qt-copy-patches-${_qtcopyver}/*; do +		echo "applying $i" +		patch -p0 -i $i || return 1 +	done + +	# remove unwanted mkspecs +	cd mkspecs/ +	find . -maxdepth 1 -regextype posix-egrep -type d ! -regex "./linux.*|./common|./features|./qws" -exec rm -rf "{}" \; +	cd qws +	find . -maxdepth 1 -regextype posix-egrep -type d ! -regex "./linux.*" -exec rm -rf "{}" \; +	cd ../../ + +	sed -i 's|-cp -P -f|-cp -L -f|' qmake/Makefile.unix +	sed -i "s|-O2|$CXXFLAGS|" mkspecs/common/g++.conf +	# fix postgres build +	sed -e '/pg_config --libs/d' -i configure +	# do not compile demos, examples and docs +	sed -i 's|CFG_NOBUILD_PARTS=""|CFG_NOBUILD_PARTS="demos examples docs"|' configure + +	./configure -confirm-license \ +		-prefix /usr \ +		-docdir /usr/share/doc/qt \ +		-plugindir /usr/lib/qt/plugins \ +		-datadir /usr/share/qt \ +		-translationdir /usr/share/qt/translations \ +		-sysconfdir /etc \ +		-examplesdir /usr/share/doc/qt/examples \ +		-demosdir /usr/share/doc/qt/demos \ +		-no-exceptions \ +		-plugin-sql-{psql,mysql,sqlite,odbc} \ +		-system-sqlite \ +		-no-phonon \ +		-dbus-linked \ +		-webkit \ +		-no-separate-debug-info \ +		-nomake examples \ +		-nomake docs \ +		-nomake demos \ +		-assistant-webkit \ +		-system-libpng \ +		-system-libjpeg \ +		-system-zlib \ +		-openssl-linked \ +		-reduce-relocations \ +		-xinerama \ +		-xcursor \ +		-xfixes \ +		-optimized-qmake || return 1 + +	make || return 1 +	make INSTALL_ROOT=$pkgdir install || return 1 + +	install -D -m644 tools/assistant/tools/assistant/images/assistant.png ${pkgdir}/usr/share/pixmaps/assistant.png +	install -D -m644 tools/linguist/linguist/images/appicon.png ${pkgdir}/usr/share/pixmaps/linguist.png +	install -D -m644 tools/designer/src/designer/images/designer.png ${pkgdir}/usr/share/pixmaps/designer.png +	install -d ${pkgdir}/usr/share/applications +	install -m644 ${srcdir}/qt4-{linguist,designer,assistant}.desktop ${pkgdir}/usr/share/applications/ + +	# cleanup and path fixes +	find $pkgdir/usr/lib -type f -name '*prl' -print -exec sed -i -e "/^QMAKE_PRL_BUILD_DIR/d" {} \; +	sed -i -e "s|-L$srcdir/${_pkgfqn}/lib||g" $pkgdir/usr/lib/pkgconfig/*.pc +	sed -i -e "s|$srcdir/${_pkgfqn}/bin/moc|/usr/bin/moc|g" $pkgdir/usr/lib/pkgconfig/*.pc +	sed -i -e "s|$srcdir/${_pkgfqn}/bin/uic|/usr/bin/uic|g" $pkgdir/usr/lib/pkgconfig/*.pc +} diff --git a/abs/core-testing/qt/__changelog b/abs/core-testing/qt/__changelog new file mode 100644 index 0000000..2abf977 --- /dev/null +++ b/abs/core-testing/qt/__changelog @@ -0,0 +1 @@ +remove cups support diff --git a/abs/core-testing/qt/qt4-assistant.desktop b/abs/core-testing/qt/qt4-assistant.desktop new file mode 100644 index 0000000..5d64aba --- /dev/null +++ b/abs/core-testing/qt/qt4-assistant.desktop @@ -0,0 +1,10 @@ +[Desktop Entry] +Encoding=UTF-8 +Exec=/usr/bin/assistant +Name=Qt 4 Assistant +GenericName=Qt4 Document Browser +X-KDE-StartupNotify=true +Icon=/usr/share/pixmaps/assistant.png +Terminal=false +Type=Application +Categories=Qt;Development;Documentation diff --git a/abs/core-testing/qt/qt4-designer.desktop b/abs/core-testing/qt/qt4-designer.desktop new file mode 100644 index 0000000..f4f91e8 --- /dev/null +++ b/abs/core-testing/qt/qt4-designer.desktop @@ -0,0 +1,11 @@ +[Desktop Entry] +Encoding=UTF-8 +Exec=/usr/bin/designer +Name=Qt 4 Designer +GenericName=Interface Designer +X-KDE-StartupNotify=true +MimeType=application/x-designer +Icon=/usr/share/pixmaps/designer.png +Terminal=false +Type=Application +Categories=Qt;Development;GUIDesigner diff --git a/abs/core-testing/qt/qt4-linguist.desktop b/abs/core-testing/qt/qt4-linguist.desktop new file mode 100644 index 0000000..fee679e --- /dev/null +++ b/abs/core-testing/qt/qt4-linguist.desktop @@ -0,0 +1,11 @@ +[Desktop Entry] +Encoding=UTF-8 +Exec=/usr/bin/linguist +Name=Qt 4 Linguist +GenericName=Translation Tool +X-KDE-StartupNotify=true +MimeType=application/x-linguist +Terminal=false +Type=Application +Icon=/usr/share/pixmaps/linguist.png +Categories=Qt;Development;Translation diff --git a/abs/core-testing/runit-scripts/PKGBUILD b/abs/core-testing/runit-scripts/PKGBUILD index 17758de..7d68dd4 100755 --- a/abs/core-testing/runit-scripts/PKGBUILD +++ b/abs/core-testing/runit-scripts/PKGBUILD @@ -1,6 +1,6 @@  pkgname=runit-scripts  pkgver=1.8.0 -pkgrel=3 +pkgrel=5  pkgdesc="collection of startup scripts for runit"  url="http://smarden.org/runit/"  license="BSD" diff --git a/abs/core-testing/runit-scripts/runitscripts/services/lircd/run b/abs/core-testing/runit-scripts/runitscripts/services/lircd/run index 4457b37..57b1b48 100755 --- a/abs/core-testing/runit-scripts/runitscripts/services/lircd/run +++ b/abs/core-testing/runit-scripts/runitscripts/services/lircd/run @@ -2,6 +2,16 @@  exec 2>&1  run_lircd2=false  . /etc/systemconfig + +function dvico_detect { + + +  if [ x$Remotetype = "dvico" ] +  then +                DEVICE="/dev/usb/hiddev0" +  fi +} +  function imon_detect {  if [ -e /dev/lirc_imon ]  then @@ -27,6 +37,7 @@ case $ReceiverType in  		DEVICE=`ls  /dev/lirc[0-9] 2>/dev/null |sort |sed '/./,$!d'|head -n 1 `  		imon_detect +		dvico_detect  	;;  esac diff --git a/abs/core-testing/runit-scripts/runitscripts/services/nfsd/run b/abs/core-testing/runit-scripts/runitscripts/services/nfsd/run index 6610fe9..d8435a6 100755 --- a/abs/core-testing/runit-scripts/runitscripts/services/nfsd/run +++ b/abs/core-testing/runit-scripts/runitscripts/services/nfsd/run @@ -5,7 +5,7 @@ exec 2>&1  # (the statd service must ensure portmap is running first)  svwaitup /var/service/nfslock >/dev/null 2>/dev/null -source /etc/conf.d/nfsd +source /etc/conf.d/nfs  # Re-export all directories in /etc/exports  /usr/sbin/exportfs -ra > /dev/null 2>/dev/null diff --git a/abs/extra-testing/postgresql-libs/PKGBUILD b/abs/extra-testing/postgresql-libs/PKGBUILD new file mode 100644 index 0000000..50ba785 --- /dev/null +++ b/abs/extra-testing/postgresql-libs/PKGBUILD @@ -0,0 +1,58 @@ +# $Id: PKGBUILD 18408 2008-11-04 22:14:34Z douglas $ +# Maintainer: Paul Mattal <paul@archlinux.org> + +pkgname=postgresql-libs +pkgver=8.3.5 +pkgrel=1 +pkgdesc="Libraries for use with PostgreSQL" +arch=(i686 x86_64) +license=('BSD') +url="http://www.postgresql.org/" +depends=('openssl>=0.9.8b' 'zlib' 'readline') +options=('!makeflags') +source=(ftp://ftp.postgresql.org/pub/source/v${pkgver}/postgresql-${pkgver}.tar.bz2) + +build() { +  cd $startdir/src/postgresql-$pkgver || return 1 + +  # configure +  ./configure --prefix=/usr --with-openssl --datadir=/usr/share/postgresql \ +  --with-pam \ +  	|| return 1 + +  # make and install +  for dir in src/interfaces src/bin/pg_config; do +    pushd ${dir} || return 1 +    make || return 1 +    make DESTDIR=${startdir}/pkg install || return 1 +    popd +  done + +  cd src/include || return 1 +  make || return 1 + +  set -e +  mkdir -p $startdir/pkg/usr/include/postgresql/{internal,internal/libpq} \ +  	|| return 1 +  mkdir -p $startdir/pkg/usr/include/libpq || return 1 + +  # These headers are needed by the public headers of the interfaces. +  install -m644 pg_config.h $startdir/pkg/usr/include/ || return 1 +  install -m644 pg_config_os.h $startdir/pkg/usr/include/ || return 1 +  install -m644 postgres_ext.h $startdir/pkg/usr/include/ || return 1 +  install -m644 libpq/libpq-fs.h $startdir/pkg/usr/include/libpq/ || return 1 +  install -m644 pg_config_manual.h $startdir/pkg/usr/include/ || return 1 + +  # These headers are needed by the not-so-public headers of the interfaces. +  install -m644 c.h $startdir/pkg/usr/include/postgresql/internal/ || return 1 +  install -m644 port.h $startdir/pkg/usr/include/postgresql/internal/ \ +  	|| return 1 +  install -m644 postgres_fe.h $startdir/pkg/usr/include/postgresql/internal/ \ +  	|| return 1 +  install -m644 libpq/pqcomm.h $startdir/pkg/usr/include/postgresql/internal/libpq/ || return 1 +  +  install -D -m644 ../../COPYRIGHT $startdir/pkg/usr/share/licenses/$pkgname/LICENSE || return 1 + +  set +e +} +md5sums=('3bc028774d7a79e926be0c6a9c7ca209') diff --git a/abs/extra-testing/unixodbc/PKGBUILD b/abs/extra-testing/unixodbc/PKGBUILD new file mode 100644 index 0000000..b8c2690 --- /dev/null +++ b/abs/extra-testing/unixodbc/PKGBUILD @@ -0,0 +1,24 @@ +# $Id: PKGBUILD 9389 2008-08-17 06:44:49Z allan $ +# Maintainer: Judd Vinet <jvinet@zeroflux.org> +# Contributor: Tom Newsom <Jeepster@gmx.co.uk> + +pkgname=unixodbc +pkgver=2.2.12 +pkgrel=2 +pkgdesc="ODBC is an open specification for providing application developers with a predictable API with which to access Data Sources" +arch=(i686 x86_64) +license=('GPL2') +url="http://www.unixodbc.org/" +backup=('etc/odbc.ini' 'etc/odbcinst.ini') +depends=('readline') +source=(http://www.unixodbc.org/unixODBC-$pkgver.tar.gz) +md5sums=('9a116aad4059c31d231b626ffdf1869a') + +build() { +  cd $startdir/src/unixODBC-$pkgver +  sed -i 's/YY_FLUSH_BUFFER/yy_flush_buffer(YY_CURRENT_BUFFER)/' sqp/lex.l +  ./configure --prefix=/usr --sysconfdir=/etc --enable-gui=no +  make || return 1 +  make DESTDIR=$startdir/pkg install +  find $startdir/pkg -name '*.la' -exec rm {} \; +} diff --git a/abs/mv-core/MythVantage-config/PKGBUILD b/abs/mv-core/MythVantage-config/PKGBUILD index 619c755..377083b 100755 --- a/abs/mv-core/MythVantage-config/PKGBUILD +++ b/abs/mv-core/MythVantage-config/PKGBUILD @@ -1,10 +1,10 @@  pkgname=MythVantage-config  pkgver=3.2 -pkgrel=131 +pkgrel=142  pkgdesc="The Gui-installer"  depends=(bc mysql-python expect curl dnsutils sg3_utils parted)  arch=('i686') -source=(mythinstall.bin install-ui.xml  bpopup-ui.xml  mythbeselect.bin install_proxy.sh install_functions.sh startx systemconfig.sh install_db_chroot.sh restore_default_settings.sh live-install.sh xconfig.sh timezip.py soundconfig.sh mythvantage-release issue autocard.py MythVantage.sh create_master.sh build_diskless.sh networkconfig.sh ) +source=(mythinstall.bin install-ui.xml  bpopup-ui.xml  mythbeselect.bin install_proxy.sh install_functions.sh startx systemconfig.sh install_db_chroot.sh restore_default_settings.sh live-install.sh xconfig.sh timezip.py soundconfig.sh mythvantage-release issue autocard.py MythVantage.sh create_master.sh build_diskless.sh networkconfig.sh myth_user_call )  install=live.install  build() { @@ -25,6 +25,7 @@ build() {  #copy in all the installer specific stuff      #cp -rp ../templates $MVDIR/      rsync -r --exclude=.svn ../templates $MVDIR/ +   install -m0700 myth_user_call  $MVDIR/bin/myth_user_call      install -m 0755 install_proxy.sh  $MVDIR/bin/install_proxy.sh      install -m 0755 install_functions.sh  $MVDIR/bin/install_functions.sh      install -m 0755 systemconfig.sh  $MVDIR/bin/systemconfig.sh diff --git a/abs/mv-core/MythVantage-config/install_functions.sh b/abs/mv-core/MythVantage-config/install_functions.sh index cf247cb..84f9c94 100755 --- a/abs/mv-core/MythVantage-config/install_functions.sh +++ b/abs/mv-core/MythVantage-config/install_functions.sh @@ -60,7 +60,8 @@ do      lsusb -d "$USBID" > /dev/null 2>/dev/null      if [ $? = 0 ]      then -        Remotetype=`echo "$line"|cut -f2` +       # Remotetype=`echo "$line"|cut -f2` +	 Remotetype=`echo "$line"|cut -d"|" -f2`          echo "found $Remotetype"          setupremote          break diff --git a/abs/mv-core/MythVantage-config/install_proxy.sh b/abs/mv-core/MythVantage-config/install_proxy.sh index 4f8e088..d0be6c3 100755 --- a/abs/mv-core/MythVantage-config/install_proxy.sh +++ b/abs/mv-core/MythVantage-config/install_proxy.sh @@ -31,6 +31,25 @@ fi  } +function apply_new_auth () { +#check if file is present +    if  [ -f  /root/myth_user_call.out ] +    then +        #read in file, running each command in chroot +        exec 4</root/myth_user_call.out +        while read LINE <&4 +        do +            if [ ! x"$LINE" = x ] +            then +                #run commands in chroot +                chroot "$mountpoint"   $MV_ROOT/bin/myth_user_call -i $LINE > /tmp/user_auth.update +            fi +        done +        rm -f /root/myth_user_call.out +    else +        echo "No new password changes to apply" +    fi +} @@ -87,7 +106,7 @@ full_install () {          cp -f $MV_ROOT/bin/*.sh "$mountpoint"$MV_ROOT/bin/          chmod -R 755 ${mountpoint}/root          cp /etc/mtab "$mountpoint"/etc/mtab - +	apply_new_auth      if  [ $SystemType = "Master_backend" -o $SystemType = "Standalone"  ]      then @@ -216,6 +235,7 @@ function upgrade () {      #Run second time          chroot "$mountpoint" $MV_ROOT/bin/systemconfig.sh misc,hostype,network,advanced,this_is_install          chroot "$mountpoint" $MV_ROOT/bin/systemconfig.sh advanced,this_is_install +	apply_new_auth          umount "$mountpoint/dev"          umount "$mountpoint/proc"      echo "Done" > /tmp/.install_state diff --git a/abs/mv-core/MythVantage-config/myth_user_call b/abs/mv-core/MythVantage-config/myth_user_call new file mode 100644 index 0000000..d95e468 --- /dev/null +++ b/abs/mv-core/MythVantage-config/myth_user_call @@ -0,0 +1,164 @@ +#!/bin/bash +#Wrapper script to manage USERNAME accounts + web security +# myth_USERNAME_all -c add -u USERNAME +# myth_USERNAME_all -c delete -u USERNAME +# myth_USERNAME_all -c pass  -u USERNAME -p pass +# myth_USERNAME_all -c web  -u USERNAME -p pass + +INIT_CHECK=TRUE +FULL_CALL="$@" +function CHROOT_CHECK { +    INIT=`ps -p 1 -o comm=` +    if [ x$INIT = xrunit ] +    then +       CHROOT_NEEDED=FALSE +    else +       CHROOT_NEEDED=TRUE +    fi +} + +function store_commands () { +    echo "$FULL_CALL" >> /root/myth_user_call.out +    chmod 600 /root/myth_user_call.out +} + + +function add_user() { +    if [ $CHROOT_NEEDED = TRUE ] +    then +        echo "calling myth_call_user in chroot to add user" +        store_commands +    else +        echo "adding user $USERNAME" +	useradd -m -s /bin/bash $USERNAME -G audio,video,optical,storage,users +    fi + +} + + +function del_user() { +    if [ $CHROOT_NEEDED = TRUE ] +    then +        echo "calling myth_call_user in chroot to delete user" +        store_commands +    else +        echo "removing  user $USERNAME" +        userdel $USERNAME +    fi + +} + + +function pass_change() { +    if [ $CHROOT_NEEDED = TRUE ] +    then +        echo "calling myth_call_user in chroot to change password" +        store_commands +    else +        echo "changing password for $USERNAME" +        echo $USERNAME:$PASSWORD | chpasswd +    fi + +} + + +function web_security { +    echo "this is just a stub" + +} + +function ARG_ERR()  { +        if [  x$OPTARG = "x" ] +        then +            echo "$SWITCH NEEDS AND ARG" +            exit 11 +        fi +} + + +function print_help { + +    echo "Valid options are:" +    echo "  -c (add|delete|pass|web)" +    echo "  -u  USERNAMEname" +    echo "  -p  password" +    exit 1 +} + +if [ $# -eq 0 ] +then +    print_help +fi + +declare -r OPTSTRING="c:u:p:i" +while getopts "$OPTSTRING"  SWITCH +do +    case $SWITCH in + +            c)  ARG_ERR +                OPERATION=$OPTARG +                ;; +            u)  ARG_ERR +                USERNAME=$OPTARG +                ;; +            p)  ARG_ERR +                PASSWORD=$OPTARG +                ;; +            i)  INIT_CHECK=FALSE + +    esac +done + +if [ $INIT_CHECK = TRUE ] +then +    CHROOT_CHECK +else +    CHROOT_NEEDED=FALSE +fi + +case $OPERATION in +    add) +            if [ x$USERNAME = x ] +            then +                print_help +            fi +            add_user +        ;; +    delete) +            if [ x$USERNAME = x ] +            then +                print_help +            fi +            del_user +        ;; +    pass) +            if [ x$USERNAME = x ] +            then +                print_help +            fi + +            if [ x$PASSWORD = x ] +            then +                print_help +            fi +            pass_change +        ;; + +    web) +            if [ x$USERNAME = x ] +            then +                print_help +            fi + + +            if [ x$PASSWORD = x ] +            then +                print_help +            fi +            echo "adding webUSERNAME $USERNAME with $PASS" +            ;; +    *)  print_help +        ;; +esac + + diff --git a/abs/mv-core/MythVantage-config/systemconfig.sh b/abs/mv-core/MythVantage-config/systemconfig.sh index 9ee69ac..a038286 100755 --- a/abs/mv-core/MythVantage-config/systemconfig.sh +++ b/abs/mv-core/MythVantage-config/systemconfig.sh @@ -31,6 +31,7 @@ if [ x$1 = x"Mysql_only" ]  if [ -f /etc/systemconfig ]  then  	. /etc/systemconfig +setup_MYTH_vars  TEMPNET="Hostip"$default_interface  echo $TEMPNET  eval MYTHIP=\$${TEMPNET} diff --git a/abs/mv-core/MythVantage-config/templates/remotes/receiver_usb.id b/abs/mv-core/MythVantage-config/templates/remotes/receiver_usb.id index b99f91b..4070964 100644 --- a/abs/mv-core/MythVantage-config/templates/remotes/receiver_usb.id +++ b/abs/mv-core/MythVantage-config/templates/remotes/receiver_usb.id @@ -1,4 +1,33 @@ -0bc7:0005	snapstream_firefly	X10 Wireless Technology, Inc. -0e9c:0000	streamzap	Streamzap, Inc. Streamzap Remote Control -0471:0815	mceusb	Microsoft usb receiver_transmitter rc6 -	 +0bc7:0005|snapstream_firefly|    "X10 Wireless Technology, Inc." +0bc7:0008|SnapStream_Firefly|    "SnapStream Firefly" +10c4:0003|CommandIR_Tranceiver|     " CommandIR Transceiver" +0bc7:0004|ATI_Remote_Wonder|    " ATI Remote Wonder" +0e9c:0000|streamzap|    "Streamzap Remote" +0fe9:9010|dvico|   "DVICO Remote:" +6253:0100|Twinhan_USB|  "the VisionPlus is a Twinhan clone " +1509:9242|MCEUSB-new|  "FIC eHome Infrared Transceiver 1509/9242" +1934:0602|MCEUSB-new|  "Fintek eHome Infrared Transceiver 1934/0602" +147a:e015|MCEUSB-new|  "Formosa eHome Infrared Transceiver 147a/e015" +147a:e017|MCEUSB-new|  "Formosa aim / Trust MCE Infrared Receiver147a/e017" +147a:e018|MCEUSB-new|  "Formosa Industrial Computing 147a/e018" +107b:3009|MCEUSB-new|  "Gateway eHome Infrared Transceiver 107b/3009" +195d:7002|MCEUSB-new|  "Itron ione Libra Q-11 195d/7002" +043e:9803|MCEUSB-new|  "LG eHome Infrared Transceiver 043e/9803" +045e:00a0|MCEUSB-new|  "Microsoft MCE Infrared Transceiver 045e/00a0" +03ee:2501|MCEUSB-new|  "Mitsumi 03ee/2501" +0471:060c|MCEUSB-new|  "Philips Infrared Transciever - HP branded 0471/060C" +0471:060d|MCEUSB-new|  "Philips SRM5100 0471/060d" +0471:0815|MCEUSB-new|  "Philips eHome Infrared Transciever 0471/0815" +2304:0225|MCEUSB-new| "Pinnacle Systems, Inc. 2304/0225" +179d:0010|MCEUSB-new|  "Ricavision internal Infrared Transceiver 179d/0010" +1308:c001|MCEUSB-new|  "Shuttle eHome Infrared Transceiver 1308/c001" +051c:c001|MCEUSB-new|  "Shuttle2 eHome Infrared Transceiver 051c/c001" +0609:031d|MCEUSB-new|  "SMK/Toshiba G83C0004D410 0609/031d" +0609:0322|MCEUSB-new|  "SMK eHome Infrared Transceiver (Sony VAIO)0609/0322" +0609:0334|MCEUSB-new|  "SKM bundled with Hauppauge PVR-150 0609/0334" +1460:9150|MCEUSB-new|  "Tatung eHome Infrared Transceiver 1460/9150" +1784:0001|MCEUSB-new|  "Topseed eHome Infrared Transceiver 1784/0001" +1784:0006|MCEUSB-new|  "Topseed HP eHome Infrared Transceiver 1784/0006" +1784:0007|MCEUSB-new|  "Topseed HP eHome Infrared Transceiver 1784/0007" +1784:0008|MCEUSB-new|  "Topseed eHome Infrared Transceiver 1784/0008" +045e:006d|MCEUSB-old|  "USB Microsoft IR Transceiver Driver 045e/006d" diff --git a/abs/mv-core/MythVantage-config/templates/xorg/xorg.conf.vesa b/abs/mv-core/MythVantage-config/templates/xorg/xorg.conf.vesa new file mode 100755 index 0000000..c569819 --- /dev/null +++ b/abs/mv-core/MythVantage-config/templates/xorg/xorg.conf.vesa @@ -0,0 +1,72 @@ +# nvidia-xconfig: X configuration file generated by nvidia-xconfig +# nvidia-xconfig:  version 1.0  (buildmeister@builder3)  Tue Aug  1 21:11:12 PDT 2006 + +Section "ServerLayout" +    Identifier     "Layout0" +    Screen      0  "Screen0" +    InputDevice    "Keyboard0" "CoreKeyboard" +    InputDevice    "Mouse0" "CorePointer" +EndSection + +Section "Files" +    RgbPath         "/usr/X11R6/lib/X11/rgb" +EndSection + +Section "Module" +    Load           "dbe" +    Load           "extmod" +    Load           "type1" +    Load           "freetype" +   +EndSection + +Section "InputDevice" +    # generated from default +    Identifier     "Mouse0" +    Driver         "mouse" +    Option         "Protocol" "auto" +    Option         "Device" "/dev/psaux" +    Option         "Emulate3Buttons" "no" +    Option         "ZAxisMapping" "4 5" +EndSection + +Section "InputDevice" +    # generated from default +    Identifier     "Keyboard0" +    Driver         "keyboard" +EndSection + +Section "Monitor" +    Identifier     "Monitor0" +    VendorName     "Unknown" +    ModelName      "Unknown" +    HorizSync       30.0 - 110.0 +    VertRefresh     50.0 - 150.0 +    Option         "DPMS" "false" +    Modeline  "1280x720" 74.25   1280 1316 1452 1644    720  720  723  751 -hsync +vsync +    Modeline  "1280x720_60.00" 74.25 1280 1352 1432 1648 720 725 730 750 -hsync -vsync +    ModeLine  "848x480" 34.0 848 880 1016 1072 480 494 495 527 -hsync -vsync +    Modeline  "800x600" 38.34 800 832 928 1024 600 604 608 624 -HSync -VSync  +    ModeLine "NTSC-DVD-72p" 32.432 720 736 800 858 480 484 492 525 +EndSection + +Section "Device" +    Identifier     "Device0" +    Driver         "vesa" +    VendorName     "Generic Corporation" +    Option "DPI" "100 x 100" + + +EndSection + +Section "Screen" +    Identifier     "Screen0" +    Device         "Device0" +    Monitor        "Monitor0" +    DefaultDepth    24 +    SubSection     "Display" +        Depth       24 +        Modes     "1280x720"  +    EndSubSection +EndSection + diff --git a/abs/mv-core/MythVantage-config/timezip.py b/abs/mv-core/MythVantage-config/timezip.py index 505b4a4..18f338f 100755 --- a/abs/mv-core/MythVantage-config/timezip.py +++ b/abs/mv-core/MythVantage-config/timezip.py @@ -20,6 +20,8 @@ def printvars():      print "BEhostname:" + BEhostname      print "zipcode:" + zipcode      print "timezone:" + tz +    print "timezone region:" + tz_region +    print "timezone subregion:" + tz_subregion      print "nfsip:" + nfsip      print "nfstoggle:" + nfstoggle      print "nfsmount:"  + nfsmount @@ -30,6 +32,8 @@ def selectvars():      global BEhostname      global zipcode      global tz +    global tz_region +    global tz_subregion      global nfsip      global nfstoggle      global nfsmount @@ -77,14 +81,29 @@ def selectvars():          tz=result[0]      except TypeError:          tz="" +########## +    cursor.execute("select data from settings where value='HostTimeZoneRegion' and hostname=(%s)",(BEhostname)) +    result = cursor.fetchone() +    try: +        tz_region=result[0] +    except TypeError: +        tz="" +    tempsubregion="HostTimeZoneRegion_" + tz_region +    cursor.execute("select data from settings where value=%s and hostname=(%s)",(tempsubregion,BEhostname)) +    result = cursor.fetchone() +    try: +        tz_subregion=result[0] +    except TypeError: +        tz_subregion="" +###############      if  ( thishostname != BEhostname ):          cursor.execute("select data from settings where value='GlobalServiceHobbitserver'")          result = cursor.fetchone()          try:              hobbitclient=result[0]          except TypeError: -            hobbitclient="0" +            hobbitclient="1" @@ -114,6 +133,27 @@ def insertvars():              cursor.execute("update settings set data=(%s) where hostname=(%s) and value='HostTimeZone'",(tz,thishostname))              print "updating timezone" +    cursor.execute("select *  from settings where value='HostTimeZoneRegion' and hostname=(%s)",(thishostname)) +    result = cursor.fetchone() +    if ( tz != ""): +         if (result == None): +            cursor.execute("INSERT INTO  settings (value,data,hostname) VALUES ('HostTimeZoneRegion',(%s),(%s))",(tz_region,thishostname)) +            print "inserting timezone region" +         else: +            cursor.execute("update settings set data=(%s) where hostname=(%s) and value='HostTimeZoneRegion'",(tz_region,thishostname)) +            print "updating timezone region" + +    tempsubregion="HostTimeZoneRegion_" + tz_region +    cursor.execute("select *  from settings where value=%s and hostname=(%s)",(tempsubregion,thishostname)) +    result = cursor.fetchone() +    if ( tz != ""): +         if (result == None): +            cursor.execute("INSERT INTO  settings (value,data,hostname) VALUES ((%s),(%s),(%s))",(tempsubregion,tz_subregion,thishostname)) +            print "inserting timezone subregion" +         else: +            cursor.execute("update settings set data=(%s) where hostname=(%s) and value=(%s)",(tempsubregion,tz_subregion,thishostname)) +            print "updating timezone subregion" +  #start of NFSIP      cursor.execute("select data from settings where value='HostCentralNFSIP' and hostname=(%s)",(thishostname)) @@ -157,6 +197,9 @@ def main(argv):      global BEhostname      global zipcode      global tz +    global tz_region +    global tz_subregion +      global nfsip      global hobbitclient      try: diff --git a/abs/mv-core/MythVantage-config/timezone.bin b/abs/mv-core/MythVantage-config/timezone.binBinary files differ new file mode 100755 index 0000000..cff931a --- /dev/null +++ b/abs/mv-core/MythVantage-config/timezone.bin diff --git a/abs/mv-core/MythVantage-config/xconfig.sh b/abs/mv-core/MythVantage-config/xconfig.sh index 42603d6..4984dc5 100755 --- a/abs/mv-core/MythVantage-config/xconfig.sh +++ b/abs/mv-core/MythVantage-config/xconfig.sh @@ -4,10 +4,17 @@ BASE=""  #TEMPLATES="/usr/share/templates"  function Xvalues { -    VGACARDTYPE=`lspci|grep -i vga|sort -r|head -n 1| cut -d: -f3|cut -d" " -f 2` +    CMDLINE=$(cat /proc/cmdline) +    echo $CMDLINE |grep -q forceXvesa +    if [ $? = 0 ] +    then +	    VGACARDTYPE=vesa +    else +	    VGACARDTYPE=`lspci|grep -i vga|sort -r|head -n 1| cut -d: -f3|cut -d" " -f 2` +    fi      echo $VGACARDTYPE      currentmode=`cat $BASE/etc/X11/xorg.conf |grep Modes|awk -Fs ' { print $2 } '` -    } +}  function presetupX {  if [ x$XUseAdvanced =  x1 ] @@ -192,6 +199,9 @@ function setupX {                      fi                                  ;; +	     vesa)  sed -e "s/^.*Modes.*$/\t Modes \"${Xres}\"/" $TEMPLATES/xorg/xorg.conf.vesa > $XORG_CONF + +  	*)  #XCONF=`hwd -x |grep etc`          XCONF=`hwd -x |grep etc|tr -d [:cntrl:]|cut -d\/ -f 2-` diff --git a/abs/mv-core/MythVantage-system/PKGBUILD b/abs/mv-core/MythVantage-system/PKGBUILD index 7f01ac0..6a10b71 100644 --- a/abs/mv-core/MythVantage-system/PKGBUILD +++ b/abs/mv-core/MythVantage-system/PKGBUILD @@ -1,6 +1,6 @@  pkgname=MythVantage-system  pkgver=1.0 -pkgrel=1 +pkgrel=2  arch=('i686')  MVDIR=$startdir/pkg/usr/MythVantage  BINDIR=$startdir/pkg/usr/bin diff --git a/abs/mv-core/MythVantage-system/STB.install b/abs/mv-core/MythVantage-system/STB.install index d10e0c1..135663e 100644 --- a/abs/mv-core/MythVantage-system/STB.install +++ b/abs/mv-core/MythVantage-system/STB.install @@ -38,8 +38,9 @@ LINE13="nobody    ALL = NOPASSWD: /usr/MythVantage/bin/build_diskless.sh"  LINE14="nobody    ALL = NOPASSWD: /sbin/sv stop dnsmasq"  LINE15="nobody    ALL = NOPASSWD: /sbin/sv start dnsmasq"  LINE16="nobody    ALL = NOPASSWD: /sbin/sv hup  dnsmasq" +LINE17="mythtv    ALL =(ALL) NOPASSWD: ALL" -for i in "$LINE" "$LINE1" "$LINE2" "$LINE3" "$LINE4" "$LINE5" "$LINE7" "$LINE8" "$LINE9"  "$LINE10" "$LINE11" "$LINE12" "$LINE13" "$LINE14" "$LINE15" "$LINE16" +for i in "$LINE" "$LINE1" "$LINE2" "$LINE3" "$LINE4" "$LINE5" "$LINE7" "$LINE8" "$LINE9"  "$LINE10" "$LINE11" "$LINE12" "$LINE13" "$LINE14" "$LINE15" "$LINE16" "$LINE17"  do          cp /etc/sudoers /etc/sudoers.bak          grep -q "$i" /etc/sudoers diff --git a/abs/mv-core/graphviz/PKGBUILD b/abs/mv-core/graphviz/PKGBUILD index c979153..8f127b7 100644 --- a/abs/mv-core/graphviz/PKGBUILD +++ b/abs/mv-core/graphviz/PKGBUILD @@ -1,6 +1,6 @@  pkgname=graphviz  pkgver=2.20.2 -pkgrel=1 +pkgrel=2  pkgdesc="Graph Visualization Software"  arch=(i686)  url="http://www.graphviz.org/About.php" diff --git a/abs/mv-core/keylaunch/PKGBUILD b/abs/mv-core/keylaunch/PKGBUILD index f900c7a..1a7b948 100644 --- a/abs/mv-core/keylaunch/PKGBUILD +++ b/abs/mv-core/keylaunch/PKGBUILD @@ -1,6 +1,6 @@  pkgname=keylaunch  pkgver=1.3.3 -pkgrel=10 +pkgrel=12  arch=('i686')  pkgdesc="KeyLaunch is a small utility for binding commands to a hot key. "  url="http://www.oroborus.org/" diff --git a/abs/mv-core/keylaunch/example_rc b/abs/mv-core/keylaunch/example_rc index ed6519e..bff7c4d 100644 --- a/abs/mv-core/keylaunch/example_rc +++ b/abs/mv-core/keylaunch/example_rc @@ -8,9 +8,8 @@  # .*. Ctrl  # ..* Alt -#key=..*Return:xterm -key=.*.Return:rxvt -key=*..Return:terminal +key=*..Return:xterm -fn *-18-* +key=..*x xterm -fn *-18-*  key=..*S:sudo /usr/local/bin/mythtv-setup  key=.**U:killall -9 unclutter  key=..*h:/usr/MythVantage/bin/mythinstall -h diff --git a/abs/mv-core/myth/release-fixes/Midnight-blue/PKGBUILD b/abs/mv-core/myth/release-fixes/Midnight-blue/PKGBUILD new file mode 100755 index 0000000..eb0eed1 --- /dev/null +++ b/abs/mv-core/myth/release-fixes/Midnight-blue/PKGBUILD @@ -0,0 +1,21 @@ +pkgname=Midnight-blue +pkgver=1 +pkgrel=22 +pkgdesc="" +url="" +license="" +depends=() +makedepends=() +conflicts=() +replaces=() +backup=() +source=(http://www.mythvantage.com/src/Midnight-blue.tgz) +arch=i686 +md5sums=() + +build() { +  cd $startdir/src +  mkdir -p $startdir/pkg/usr/local/share/mythtv/themes +  cp -rp $pkgname $startdir/pkg/usr/local/share/mythtv/themes/ + +} diff --git a/abs/mv-core/myth/release-fixes/Midnight-wide/PKGBUILD b/abs/mv-core/myth/release-fixes/Midnight-wide/PKGBUILD new file mode 100755 index 0000000..9ddc525 --- /dev/null +++ b/abs/mv-core/myth/release-fixes/Midnight-wide/PKGBUILD @@ -0,0 +1,21 @@ +pkgname=Midnight-wide +pkgver=1 +pkgrel=22 +pkgdesc="" +url="" +license="" +depends=() +makedepends=() +conflicts=() +replaces=() +backup=() +source=(http://www.mythvantage.com/src/Midnight-wide.tgz) +arch=i686 +md5sums=() + +build() { +  cd $startdir/src +  mkdir -p $startdir/pkg/usr/local/share/mythtv/themes +  cp -rp $pkgname $startdir/pkg/usr/local/share/mythtv/themes/ + +} diff --git a/abs/mv-core/myth/release-fixes/MythVanage-mythmenu/MythVantage-menu/HOST_SETTINGS.xml b/abs/mv-core/myth/release-fixes/MythVanage-mythmenu/MythVantage-menu/HOST_SETTINGS.xml new file mode 100755 index 0000000..c9b7e20 --- /dev/null +++ b/abs/mv-core/myth/release-fixes/MythVanage-mythmenu/MythVantage-menu/HOST_SETTINGS.xml @@ -0,0 +1,71 @@ +<mythmenu name="HOST_SETTINGS"> + +   <button> +       <type>MV_NETWORK_SETUP_MENU</type> +      <text>Network Settings</text> +      <action>EXEC  mythinstall -s network </action> +   </button> + +   <button> +       <type>MV_SYSTEM_SETUP_MENU</type> +      <text>System type</text> +        <action>EXEC  mythinstall -s hostype </action> +   </button> + +   <button> +       <type>MV_MISC_SETUP_MENU</type> +      <text>Misc Settings</text> +       <action>EXEC  mythinstall -s misc </action> +   </button> + +   <button> +       <type>MV_SOFTWARE_MENU</type> +      <text>Software</text> +       <action>EXEC  mythinstall -s  plugins </action> +   </button> + +   <button> +      <type>MV_SHUTDOWN_SETUP_MENU</type> +      <text>Shutdown settings</text> +        <action>EXEC  mythinstall -s sleep </action> +   </button> + + +<button> +   <type>MV_ADVANCED_X_SETUP_MENU</type> +    <text>Display</text> +    <action>EXEC  mythinstall -s advancedX</action> +</button> + +<button> +   <type>MV_ADVANCED_SETUP_MENU</type> +    <text>Advanced settings</text> +    <action>EXEC  mythinstall -s advanced</action> +</button> + + +<button> +       <type>MV_AUDIO_SETUP_MENU</type> +       <text>Audio settings</text> +        <action>EXEC  mythinstall -s sound </action> +</button> + + +<button> +       <type>MV_ACCESS_SETUP_MENU</type> +       <text>Access</text> +       <action>EXEC  mythinstall -s accesscontrol </action> +</button> +   <!-- +   <button> +       <type>SETUP_MENU</type> +       <text>Settings profile manager</text> +        <action>EXEC  mythinstall -t </action> + +   </button> +   --> + + + + +</mythmenu> diff --git a/abs/mv-core/myth/release-fixes/MythVanage-mythmenu/MythVantage-menu/util_menu.xml b/abs/mv-core/myth/release-fixes/MythVanage-mythmenu/MythVantage-menu/util_menu.xml new file mode 100644 index 0000000..aeecbbb --- /dev/null +++ b/abs/mv-core/myth/release-fixes/MythVanage-mythmenu/MythVantage-menu/util_menu.xml @@ -0,0 +1,121 @@ +<mythmenu name="UTIL"> + +   <button> +      <type>MUSIC_PLAYLIST</type> +      <text>Music Tools</text> +      <text lang="IT">Opzioni Musica</text> +      <text lang="DE">Musik verwalten</text> +      <text lang="IS">Tónlistartól</text> +      <text lang="NL">Muziek Beheren</text> +      <text lang="SV">Musikverktyg</text> +      <text lang="FR">Gestion Musiques</text> +      <text lang="JA">ミュージックツール</text> +      <text lang="FI">Musiikkityökalut</text> +      <text lang="ZH_TW">音樂工具</text> +      <text lang="SI">Glasbena orodja</text> +      <text lang="ET">Muusikatööriistad</text> +      <text lang="NB">Musikkverktøy</text> +      <text lang="DK">Musikværktøjer</text> +      <text lang="ES">Gestionar Música</text> +      <text lang="PT">Gerir Música</text> +      <text lang="CZ">Hudební nástroje</text> +      <text lang="RU">Работа с музыкой</text> +      <text lang="PL">Narzędzia muzyczne</text> +      <text lang="HE">כלי מוסיקה</text> +      <action>PLUGIN mythmusic</action> +      <depends>mythmusic</depends>	 +   </button> + +   <button> +      <type>VIDEO_MANAGER</type> +      <text>Video Manager</text> +      <text lang="IT">Gestione Video</text> +      <text lang="ES">Gestionar Videos</text> +      <text lang="CA">Gestionar vÃdeos</text> +      <text lang="DK">Filmopsætning</text> +      <text lang="DE">Videos verwalten</text> +      <text lang="IS">Kvikmyndatól</text> +      <text lang="PT">Gerir Filmes</text> +      <text lang="SV">Filmhanterare</text> +      <text lang="FR">Gestion Vidéos</text> +      <text lang="NL">Films Beheren</text> +      <text lang="JA">ビデオマネージャー</text> +      <text lang="FI">Videonhallinta</text> +      <text lang="ZH_TW">電影工具</text> +      <text lang="SI">Video orodja</text> +      <text lang="ET">Videohaldus</text> +      <text lang="NB">Videobehandler</text> +      <text lang="CZ">Manažer filmů</text> +      <text lang="RU">Управление фильмами</text> +      <text lang="PL">Zarządca Filmów</text> +      <text lang="HE">מנהל וידאו</text> +      <action>JUMP Video Manager</action> +      <depends>mythvideo</depends> +   </button> +     +   <button> +      <type>SETUP_KEYS</type> +      <text>Edit Keys</text> +      <text lang="IT">Modifica Tasti</text> +      <text lang="FR">Configurer les touches</text> +      <text lang="IS">Stilla takka</text> +      <text lang="DE">Tastenbelegung ändern</text> +      <text lang="FI">Muokkaa Näppäimiä</text> +      <text lang="DK">Redigér tasteindstillinger</text> +      <text lang="SV">Ändra knappar</text> +      <text lang="ES">Editar Teclas</text> +      <text lang="PT">Configurar Teclas</text> +      <text lang="ET">Klahvide muutmine</text> +      <text lang="NL">Toetsen Aanpassen</text> +      <text lang="CZ">Editovat klávesy</text> +      <text lang="JA">キー設定</text> +      <text lang="RU">Редактировать клавиши</text> +      <text lang="SI">Urejanje tipk</text> +      <text lang="PL">Edytuj klawisze</text> +      <text lang="HE">עריכת מקשים</text> +      <action>PLUGIN mythcontrols</action> +      <depends>mythcontrols</depends>	 +   </button> +       +   <button> +      <type>SETUP_MENU</type> +      <text>Setup</text> +      <text lang="IT">Impostazioni</text> +      <text lang="ES">Configurar</text> +      <text lang="CA">Configurar</text> +      <text lang="FR">Paramètres</text> +      <text lang="DE">Konfiguration</text> +      <text lang="DK">Indstillinger</text> +      <text lang="IS">Stillingar</text> +      <text lang="NL">Configuratie</text> +      <text lang="PT">Configurações</text> +      <text lang="SV">Inställningar</text> +      <text lang="JA">設定</text> +      <text lang="FI">Asetukset</text> +      <text lang="ZH_TW">設定</text> +      <text lang="SI">Nastavitve</text> +      <text lang="ET">Sätted</text> +      <text lang="NB">Innstillinger</text> +      <text lang="CZ">Nastavení</text> +      <text lang="RU">Настройки</text> +      <text lang="PL">Ustawienia</text> +      <text lang="HE">הגדרה</text> +      <action>MENU main_settings.xml</action> +   </button> +   <button> +       <type>MV_SETUP_MENU</type> +       <text>MythVantage Settings</text> +       <action>MENU HOST_SETTINGS.xml</action> + +   </button> + +   <button> +       <type>MV_TEMPLATE</type> +       <text>Settings profile manager</text> +        <action>EXEC  mythinstall -t </action> + +   </button> + + + +</mythmenu> diff --git a/abs/mv-core/myth/release-fixes/MythVanage-mythmenu/MythVantage-menu/util_menu.xml.mv b/abs/mv-core/myth/release-fixes/MythVanage-mythmenu/MythVantage-menu/util_menu.xml.mv new file mode 100755 index 0000000..4a94303 --- /dev/null +++ b/abs/mv-core/myth/release-fixes/MythVanage-mythmenu/MythVantage-menu/util_menu.xml.mv @@ -0,0 +1,106 @@ +<mythmenu name="UTIL"> + +   <button> +      <type>MUSIC_PLAYLIST</type> +      <text>Music Tools</text> +      <text lang="DE">Musik verwalten</text> +      <text lang="IS">Tónlistartól</text> +      <text lang="NL">Muziek Beheren</text> +      <text lang="SV">Musikverktyg</text> +      <text lang="FR">Musiques</text> +      <text lang="JA">ミュージックツール</text> +      <text lang="FI">Musiikkityökalut</text> +      <text lang="ZH_TW">音樂工具</text> +      <text lang="SI">Glasbena orodja</text> +      <text lang="ET">Muusikatööriistad</text> +      <text lang="NB">Musikkverktøy</text> +      <text lang="DK">Musikværktøjer</text> +      <text lang="ES">Gestionar Música</text> +      <text lang="PT">Gerir Música</text> +      <text lang="CZ">Hudební nástroje</text> +      <text lang="RU">Работа с музыкой</text> +      <action>PLUGIN mythmusic</action> +      <depends>mythmusic</depends>	 +   </button> + +   <button> +      <type>VIDEO_MANAGER</type> +      <text>Video Manager</text> +      <text lang="ES">Gestionar Videos</text> +      <text lang="CA">Gestionar vÃdeos</text> +      <text lang="DK">Filmopsætning</text> +      <text lang="DE">Videos verwalten</text> +      <text lang="IS">Kvikmyndatól</text> +      <text lang="PT">Gerir Filmes</text> +      <text lang="SV">Filmhanterare</text> +      <text lang="FR">Vidéos</text> +      <text lang="NL">Films Beheren</text> +      <text lang="JA">ビデオマネージャー</text> +      <text lang="FI">Videonhallinta</text> +      <text lang="ZH_TW">電影工具</text> +      <text lang="SI">Video manager</text> +      <text lang="ET">Videohaldus</text> +      <text lang="NB">Videobehandler</text> +      <text lang="CZ">Manažer filmů</text> +      <text lang="RU">Управление фильмами</text> +      <action>JUMP Video Manager</action> +      <depends>mythvideo</depends> +   </button> +     +   <button> +      <type>SETUP_KEYS</type> +      <text>Edit Keys</text> +      <text lang="FR">Configurer les touches</text> +      <text lang="IS">Stilla takka</text> +      <text lang="DE">Tastenbelegung ändern</text> +      <text lang="FI">Muokkaa Näppäimiä</text> +      <text lang="DK">Redigér tasteindstillinger</text> +      <text lang="SV">Ändra knappar</text> +      <text lang="ES">Editar Teclas</text> +      <text lang="PT">Configurar Teclas</text> +      <text lang="ET">Klahvide muutmine</text> +      <text lang="NL">Toetsen Aanpassen</text> +      <text lang="CZ">Editovat klávesy</text> +      <text lang="JA">キー設定</text> +      <text lang="RU">Редактировать клавиши</text> +      <action>PLUGIN mythcontrols</action> +      <depends>mythcontrols</depends>	 +   </button> +       +   <button> +      <type>SETUP_MENU</type> +      <text>Setup</text> +      <text lang="IT">Impostazioni</text> +      <text lang="ES">Configurar</text> +      <text lang="CA">Configurar</text> +      <text lang="FR">Configuration</text> +      <text lang="DE">Konfiguration</text> +      <text lang="DK">Indstillinger</text> +      <text lang="IS">Stillingar</text> +      <text lang="NL">Configuratie</text> +      <text lang="PT">Configurações</text> +      <text lang="SV">Inställningar</text> +      <text lang="JA">設定</text> +      <text lang="FI">Asetukset</text> +      <text lang="ZH_TW">設定</text> +      <text lang="SI">Nastavitve</text> +      <text lang="ET">Sätted</text> +      <text lang="NB">Innstillinger</text> +      <text lang="CZ">Nastavení</text> +      <text lang="RU">Настройки</text> +      <action>MENU main_settings.xml</action> +   </button> +   <button> +       <type>MV_SETUP_MENU</type> +       <text>MythVantage Settings</text> +       <action>MENU HOST_SETTINGS.xml</action> + +   </button> + +   <button> +       <type>MV_TEMPLATE</type> +       <text>Settings profile manager</text> +        <action>EXEC  mythinstall -t </action> + +   </button> +</mythmenu> diff --git a/abs/mv-core/myth/release-fixes/MythVanage-mythmenu/PKGBUILD b/abs/mv-core/myth/release-fixes/MythVanage-mythmenu/PKGBUILD new file mode 100755 index 0000000..888228e --- /dev/null +++ b/abs/mv-core/myth/release-fixes/MythVanage-mythmenu/PKGBUILD @@ -0,0 +1,15 @@ +pkgname=MythVantage-mythmenu +pkgver=1.0 +pkgrel=6 +pkgdesc="Myth menu with MythVantage settings" +#depends=( mythtv-svn ) +source=() +arch=('i686') +build() { +        cd $startdir/src +        rsync -a --exclude=.svn $startdir/MythVantage-menu . +        mkdir -p  -m 755 $startdir/pkg/usr/local/share/mythtv/themes +        cp -rp MythVantage-menu $startdir/pkg/usr/local/share/mythtv/themes + +} + diff --git a/abs/mv-core/myth/release-fixes/basic-amber/PKGBUILD b/abs/mv-core/myth/release-fixes/basic-amber/PKGBUILD new file mode 100755 index 0000000..f31b77f --- /dev/null +++ b/abs/mv-core/myth/release-fixes/basic-amber/PKGBUILD @@ -0,0 +1,20 @@ +pkgname=basic-amber +pkgver=1 +pkgrel=5 +pkgdesc="" +url="" +license="" +depends=() +makedepends=() +conflicts=() +replaces=() +backup=() +source=(http://www.mythvantage.com/src/basic-amber.tgz) +md5sums=() +arch=('i686') +build() { +  cd $startdir/src +  mkdir -p $startdir/pkg/usr/local/share/mythtv/themes +  cp -rp $pkgname $startdir/pkg/usr/local/share/mythtv/themes/ + +} diff --git a/abs/mv-core/myth/release-fixes/basic-blue/PKGBUILD b/abs/mv-core/myth/release-fixes/basic-blue/PKGBUILD new file mode 100755 index 0000000..48e5f8e --- /dev/null +++ b/abs/mv-core/myth/release-fixes/basic-blue/PKGBUILD @@ -0,0 +1,20 @@ +pkgname=basic-blue +pkgver=1 +pkgrel=6 +pkgdesc="" +url="" +license="" +depends=() +makedepends=() +conflicts=() +replaces=() +backup=() +source=(http://www.mythvantage.com/src/basic-blue.tgz) +md5sums=() +arch=('i686') +build() { +  cd $startdir/src +  mkdir -p $startdir/pkg/usr/local/share/mythtv/themes +  #cp -rp $pkgname $startdir/pkg/usr/local/share/mythtv/themes/ +  rsync -a --exclude=.svn $pkgname $startdir/pkg/usr/local/share/mythtv/themes/ +} diff --git a/abs/mv-core/myth/release-fixes/basic-green/PKGBUILD b/abs/mv-core/myth/release-fixes/basic-green/PKGBUILD new file mode 100755 index 0000000..f735150 --- /dev/null +++ b/abs/mv-core/myth/release-fixes/basic-green/PKGBUILD @@ -0,0 +1,20 @@ +pkgname=basic-green +pkgver=1 +pkgrel=5 +pkgdesc="" +url="" +license="" +depends=() +makedepends=() +conflicts=() +replaces=() +backup=() +source=(http://www.mythvantage.com/src/basic-green.tgz) +md5sums=() +arch=('i686') +build() { +  cd $startdir/src +  mkdir -p $startdir/pkg/usr/local/share/mythtv/themes +  cp -rp $pkgname $startdir/pkg/usr/local/share/mythtv/themes/ + +} diff --git a/abs/mv-core/myth/release-fixes/basic-purple/PKGBUILD b/abs/mv-core/myth/release-fixes/basic-purple/PKGBUILD new file mode 100755 index 0000000..ff19c9f --- /dev/null +++ b/abs/mv-core/myth/release-fixes/basic-purple/PKGBUILD @@ -0,0 +1,20 @@ +pkgname=basic-purple +pkgver=1 +pkgrel=5 +pkgdesc="" +url="" +license="" +depends=() +makedepends=() +conflicts=() +replaces=() +backup=() +source=(http://www.mythvantage.com/src/basic-purple.tgz) +md5sums=() +arch=('i686') +build() { +  cd $startdir/src +  mkdir -p $startdir/pkg/usr/local/share/mythtv/themes +  cp -rp $pkgname $startdir/pkg/usr/local/share/mythtv/themes/ + +} diff --git a/abs/mv-core/myth/release-fixes/basic-red/PKGBUILD b/abs/mv-core/myth/release-fixes/basic-red/PKGBUILD new file mode 100755 index 0000000..2b8db8a --- /dev/null +++ b/abs/mv-core/myth/release-fixes/basic-red/PKGBUILD @@ -0,0 +1,20 @@ +pkgname=basic-red +pkgver=1 +pkgrel=5 +pkgdesc="" +url="" +license="" +depends=() +makedepends=() +conflicts=() +replaces=() +backup=() +source=(http://www.mythvantage.com/src/basic-red.tgz) +md5sums=() +arch=('i686') +build() { +  cd $startdir/src +  mkdir -p $startdir/pkg/usr/local/share/mythtv/themes +  cp -rp $pkgname $startdir/pkg/usr/local/share/mythtv/themes/ + +} diff --git a/abs/mv-core/myth/release-fixes/compile-plugins.sh b/abs/mv-core/myth/release-fixes/compile-plugins.sh new file mode 100755 index 0000000..22d03d9 --- /dev/null +++ b/abs/mv-core/myth/release-fixes/compile-plugins.sh @@ -0,0 +1,17 @@ +#!/bin/bash +logdir=`pwd` +rm fail.log +for i in plugins/* +do +	if [ -d $i ] +	then +		mydir=`pwd` +		 +		cd $i +#		versionpkg -mf||exit 1 +		echo "starting $i" +		mp -fsr || echo "$i failed" >> $logdir/fail.log +		cd $mydir +	fi +done +	 diff --git a/abs/mv-core/myth/release-fixes/mythtv-release-fixes/3466-v1.patch b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/3466-v1.patch new file mode 100755 index 0000000..912ce27 --- /dev/null +++ b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/3466-v1.patch @@ -0,0 +1,240 @@ +Index: libs/libmythtv/NuppelVideoPlayer.cpp +=================================================================== +--- libs/libmythtv/NuppelVideoPlayer.cpp	(revision 13535) ++++ libs/libmythtv/NuppelVideoPlayer.cpp	(working copy) +@@ -1475,6 +1475,12 @@ +     } + } +  ++void NuppelVideoPlayer::DrawUnusedRects(bool sync) ++{ ++    if (videoOutput) ++        videoOutput->DrawUnusedRects(sync); ++} ++ + void NuppelVideoPlayer::ResetCaptions(uint mode_override) + { +     uint origMode   = textDisplayMode; +Index: libs/libmythtv/guidegrid.h +=================================================================== +--- libs/libmythtv/guidegrid.h	(revision 13535) ++++ libs/libmythtv/guidegrid.h	(working copy) +@@ -86,8 +86,9 @@ +     void paintEvent(QPaintEvent *); +  +   private slots: +-    void timeout(); +-    void jumpToChannelTimeout(); ++    void timeCheckTimeout(void); ++    void repaintVideoTimeout(void); ++    void jumpToChannelTimeout(void); +  +   private: +     void keyPressEvent(QKeyEvent *e); +@@ -174,6 +175,7 @@ +     QString currentTimeColor; +  +     QTimer *timeCheck; ++    QTimer *videoRepaintTimer; +  +     bool keyDown; +  +Index: libs/libmythtv/tv_play.h +=================================================================== +--- libs/libmythtv/tv_play.h	(revision 13535) ++++ libs/libmythtv/tv_play.h	(working copy) +@@ -112,6 +112,7 @@ +     void StopEmbeddingOutput(void); +     bool IsEmbedding(void); +     void EPGChannelUpdate(uint chanid, QString channum); ++    void DrawUnusedRects(bool sync); +     +     // Recording commands +     int  PlayFromRecorder(int recordernum); +Index: libs/libmythtv/guidegrid.cpp +=================================================================== +--- libs/libmythtv/guidegrid.cpp	(revision 13535) ++++ libs/libmythtv/guidegrid.cpp	(working copy) +@@ -261,9 +261,14 @@ +  +     timeCheck = NULL; +     timeCheck = new QTimer(this); +-    connect(timeCheck, SIGNAL(timeout()), SLOT(timeout()) ); ++    connect(timeCheck, SIGNAL(timeout()), SLOT(timeCheckTimeout()) ); +     timeCheck->start(200); +  ++    videoRepaintTimer = new QTimer(this); ++    QObject::connect(videoRepaintTimer, SIGNAL(timeout()), ++                     this,              SLOT(repaintVideoTimeout())); ++    videoRepaintTimer->start(1000); ++ +     selectState = false; +  +     updateBackground(); +@@ -281,18 +286,46 @@ +     for (int x = 0; x < MAX_DISPLAY_TIMES; x++) +     { +         if (m_timeInfos[x]) ++        { +             delete m_timeInfos[x]; ++            m_timeInfos[x] = NULL; ++        } +     } +  +     for (int y = 0; y < MAX_DISPLAY_CHANS; y++) +     { +         if (m_programs[y]) ++        { +             delete m_programs[y]; ++            m_programs[y] = NULL; ++        } +     } +  +     m_channelInfos.clear(); +  +-    delete theme; ++    if (theme) ++    { ++        delete theme; ++        theme = NULL; ++    } ++ ++    if (jumpToChannelTimer) ++    { ++        jumpToChannelTimer->deleteLater(); ++        jumpToChannelTimer = NULL; ++    } ++ ++    if (timeCheck) ++    { ++        timeCheck->deleteLater(); ++        timeCheck = NULL; ++    } ++ ++    if (videoRepaintTimer) ++    { ++        videoRepaintTimer->deleteLater(); ++        videoRepaintTimer = NULL; ++    } + } +  + void GuideGrid::keyPressEvent(QKeyEvent *e) +@@ -533,7 +566,7 @@ +     return m_channelInfos[idx].chanid; + } +  +-void GuideGrid::timeout() ++void GuideGrid::timeCheckTimeout(void) + { +     timeCheck->changeInterval((int)(60 * 1000)); +     QTime new_time = QTime::currentTime(); +@@ -561,6 +594,12 @@ +     repaint(curInfoRect, false); + } +  ++void GuideGrid::repaintVideoTimeout(void) ++{ ++    timeCheck->changeInterval(1000); ++    update(videoRect); ++} ++ + void GuideGrid::fillChannelInfos(bool gotostartchannel) + { +     m_channelInfos.clear(); +@@ -974,6 +1013,7 @@ +     if (r.intersects(videoRect) && m_player) +     { +         timeCheck->changeInterval((int)(200)); ++        m_player->DrawUnusedRects(false); +     } +  +     qApp->unlock(); +@@ -1794,7 +1834,10 @@ +     ChannelInfo info = m_channelInfos[idx]; +  +     if (m_player) ++    { +         m_player->EPGChannelUpdate(info.chanid, info.chanstr); ++        videoRepaintTimer->start(200); ++    } + } +  + // +Index: libs/libmythtv/NuppelVideoPlayer.h +=================================================================== +--- libs/libmythtv/NuppelVideoPlayer.h	(revision 13535) ++++ libs/libmythtv/NuppelVideoPlayer.h	(working copy) +@@ -118,6 +118,7 @@ +     void StopEmbedding(void); +     void ExposeEvent(void); +     bool IsEmbedding(void); ++    void DrawUnusedRects(bool sync); +  +     // Audio Sets +     void SetNoAudio(void)                     { no_audio_out = true; } +Index: libs/libmythtv/tv_play.cpp +=================================================================== +--- libs/libmythtv/tv_play.cpp	(revision 13535) ++++ libs/libmythtv/tv_play.cpp	(working copy) +@@ -5035,6 +5035,12 @@ +     return false; + } +  ++void TV::DrawUnusedRects(bool sync) ++{ ++    if (nvp) ++        nvp->DrawUnusedRects(sync); ++} ++ + void TV::doEditSchedule(int editType) + { +     if (!playbackinfo) +Index: libs/libmythtv/videoout_xv.cpp +=================================================================== +--- libs/libmythtv/videoout_xv.cpp	(revision 13535) ++++ libs/libmythtv/videoout_xv.cpp	(working copy) +@@ -2465,7 +2465,7 @@ +     } +  +     if ((needrepaint || xv_need_bobdeint_repaint) && +-        (VideoOutputSubType() >= XVideo)) ++        (VideoOutputSubType() >= XVideo) && !embedding) +     { +         DrawUnusedRects(/* don't do a sync*/false); +     } +@@ -2480,12 +2480,6 @@ +  + void VideoOutputXv::DrawUnusedRects(bool sync) + { +-    // Unfortunately, this gets drawn in the wrong place on prebuffering +-    // pauses when embedding and this is rarely useful when embedding +-    // since the background is drawn in guidegrid so we bail here. -- dtk +-    if (embedding)  +-        return; +- +     // boboff assumes the smallest interlaced resolution is 480 lines - 5% +     bool use_bob   = (m_deinterlacing && m_deintfiltername == "bobdeint"); +     int boboff_raw = (int)round(((double)display_video_rect.height()) / +@@ -2512,7 +2506,12 @@ +  +     X11L; +  +-    if (xv_draw_colorkey && needrepaint) ++    // This is used to avoid drawing the colorkey when embedding and ++    // not using overlay. This is needed because we don't paint this ++    // in the vertical retrace period when calling this from the EPG. ++    bool clrdraw = xv_colorkey || !embedding; ++ ++    if (xv_draw_colorkey && needrepaint && clrdraw) +     { +         XSetForeground(XJ_disp, XJ_gc, xv_colorkey); +         XFillRectangle(XJ_disp, XJ_curwin, XJ_gc, +@@ -2521,7 +2520,7 @@ +                        display_visible_rect.width(), +                        display_visible_rect.height() - 2 * boboff); +     } +-    else if (xv_draw_colorkey && xv_need_bobdeint_repaint) ++    else if (xv_draw_colorkey && xv_need_bobdeint_repaint && clrdraw) +     { +         // if this is only for deinterlacing mode switching, draw +         // the border areas, presumably the main image is undamaged. diff --git a/abs/mv-core/myth/release-fixes/mythtv-release-fixes/PKGBUILD b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/PKGBUILD new file mode 100755 index 0000000..c210b55 --- /dev/null +++ b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/PKGBUILD @@ -0,0 +1,79 @@ +pkgname=mythtv-release-fixes +pkgver=18322 +pkgrel=13 +pkgdesc=".21  A personal video recorder for Linux" +url="http://www.mythtv.org" +license="GPL" +depends=('lame' 'libmysqlclient' 'alsa-lib'  'wget' 'qt3' 'x-server' 'freetype2' 'libmpeg2' 'libxml2' 'libraw1394' 'lirc' 'perl-date-manip' 'libavc1394' 'libdc1394' 'libiec61883') +makedepends=('subversion') +conflicts=(mythtv-svn) +replaces=() +backup=() +options=(!strip) +MAKEFLAGS="-j6" + +install='mythtv.install' +#source=(mythbackend myth.sh 3466-v1.patch reload.patch) +source=(mythbackend myth.sh  myth.find_orphans.pl   dbconfig.patch myththemedmenu.cpp.patch myththemedmenu.h.patch screenshots2.diff screenshot_jump.patch pop_be_restart.h.patch pop_be_restart.cpp.patch jump_snapshot.patch smolt_jump.patch) +arch=('i686') +md5sums=() +_svntrunk=http://svn.mythtv.org/svn/branches/release-0-21-fixes/mythtv +#_svntrunk=http://cvs.mythtv.org/svn/trunk/mythtv +_svnmod=mythtv + +build() { + svn co $_svntrunk --config-dir ./ -r $pkgver $_svnmod +        cd $startdir/src/mythtv +	 patch -p0 < ../dbconfig.patch +	 grep snapshot programs/mythfrontend/networkcontrol.cpp|grep -q  jumpMap +	 status=$? + +	if [ $status != 0 ] +	then +		echo "patching for screenshot" +		 patch -p0 < ../screenshots2.diff +		 patch -p0 < ../screenshot_jump.patch +	#	 patch -p0 < ../jump_snapshot.patch + +	else +		echo "screenshot already patched" +	fi +	 patch -p0 < ../myththemedmenu.cpp.patch +	 patch -p0 < ../myththemedmenu.h.patch +	 patch -p0 < ../pop_be_restart.h.patch +	 patch -p0 < ../pop_be_restart.cpp.patch +	 patch -p0 < ../smolt_jump.patch +  	sed -i -e "s/\`(svnversion \$\${SVNTREEDIR} 2>\/dev\/null) || echo Unknown\`/$pkgver/" version.pro +         make distclean +	 make clean +	 ./configure --prefix=/usr/local --enable-xvmc --enable-xvmc-pro --enable-opengl-vsync --enable-dvb --enable-firewire --compile-type=release --with-bindings=perl --disable-audio-arts --disable-xrandr  --disable-audio-jack +	 #./configure --prefix=/usr/local --enable-xvmc --enable-xvmc-pro --enable-opengl-vsync --enable-dvb --enable-firewire --compile-type=release  --disable-audio-arts --disable-xrandr --without-bindings=perl --disable-audio-jack +. /etc/profile + +   make +   make INSTALL_ROOT=$startdir/pkg install +   mkdir -p $startdir/pkg/usr/local/share/mythtv/contrib +   mkdir -p $startdir/pkg/etc/rc.d +   mkdir -p $startdir/pkg/var/log/mythtv +   mkdir -p $startdir/pkg/etc/profile.d +   install -m0755 ../myth.sh $startdir/pkg/etc/profile.d/ +# install contrib +   mkdir -p $startdir/pkg/usr/local/share/mythtv/contrib || return 1 +   #cp -rp contrib/* $startdir/pkg/usr/local/share/mythtv/contrib +    rsync -a --exclude=.svn contrib/* $startdir/pkg/usr/local/share/mythtv/contrib +   echo "-release-fixes"   >  $startdir/pkg/usr/local/share/mythtv/.releasetype +   #install -m0755 themes/*.ttf $startdir/pkg/usr/local/share/mythtv/themes/ +   # set suid on mythfrontend +#   chmod a+s  $startdir/pkg/usr/local/bin/mythfrontend + +#   mkdir -p $startdir/pkg/usr/lib/ +#   mv $startdir/pkg/usr/local/lib/perl5 $startdir/pkg/usr/lib/perl5 +    cd $startdir/src/mythtv/contrib +    gcc -Wall -o firewire_tester firewire_tester.c -liec61883 -lraw1394 +    install -m0755 firewire_tester $startdir/pkg/usr/local/bin/firewire_tester +    install -m0755  $startdir/pkg/usr/local/share/mythtv/contrib/optimize_mythdb.pl  $startdir/pkg/usr/local/bin/optimize_mythdb.pl +    cp $startdir/src/myth.find_orphans.pl $startdir/pkg/usr/local/share/mythtv/contrib/myth.find_orphans.pl +    install -m0755  $startdir/pkg/usr/local/share/mythtv/contrib/myth.find_orphans.pl  $startdir/pkg/usr/local/bin/myth.find_orphans.pl + + +} diff --git a/abs/mv-core/myth/release-fixes/mythtv-release-fixes/dbconfig.patch b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/dbconfig.patch new file mode 100644 index 0000000..1d181ac --- /dev/null +++ b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/dbconfig.patch @@ -0,0 +1,19 @@ +--- libs/libmyth/mythcontext.cpp	2007-10-04 00:20:28.000000000 -0500 ++++ libs/libmyth/mythcontext.cpp.new	2007-11-12 22:54:57.000000000 -0600 +@@ -852,14 +852,14 @@ +         cout << endl << error << endl << endl; +         response = getResponse("Would you like to configure the database " +                                "connection now?", +-                               "yes"); ++                               "no"); +         if (!response || response.left(1).lower() != "y") +             return false; +          +         params.dbHostName = getResponse("Database host name:", +                                         params.dbHostName); +         response = getResponse("Should I test connectivity to this host " +-                               "using the ping command?", "yes"); ++                               "using the ping command?", "no"); +         params.dbHostPing = (!response || response.left(1).lower() != "y"); +  +         params.dbPort     = intResponse("Database non-default port:", diff --git a/abs/mv-core/myth/release-fixes/mythtv-release-fixes/debug_uitypes.cpp.patch b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/debug_uitypes.cpp.patch new file mode 100644 index 0000000..b87b89f --- /dev/null +++ b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/debug_uitypes.cpp.patch @@ -0,0 +1,21 @@ +--- mythtv/libs/libmyth/uitypes.cpp.orig	2007-11-30 14:03:07.000000000 -0600 ++++ mythtv/libs/libmyth/uitypes.cpp	2007-11-30 14:04:09.000000000 -0600 +@@ -3831,15 +3831,15 @@ +     // +     //  Debugging, draw edges around bins +     // +- +-    /* ++    if (m_debug == true) ++    { +     p->setPen(QColor(255,0,0)); +     CornerMap::Iterator it; +     for ( it = bin_corners.begin(); it != bin_corners.end(); ++it ) +     { +         p->drawRect(it.data()); +     } +-    */ ++    } +  + } +  diff --git a/abs/mv-core/myth/release-fixes/mythtv-release-fixes/debug_xmlparse.cpp.patch b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/debug_xmlparse.cpp.patch new file mode 100644 index 0000000..f479bbe --- /dev/null +++ b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/debug_xmlparse.cpp.patch @@ -0,0 +1,14 @@ +--- mythtv/libs/libmyth/xmlparse.cpp.orig	2007-11-30 14:03:00.000000000 -0600 ++++ mythtv/libs/libmyth/xmlparse.cpp	2007-11-30 14:06:22.000000000 -0600 +@@ -2618,6 +2618,11 @@ +                 area = parseRect(getFirstText(info)); +                 normalizeRect(area); +             } ++            if (info.tagName() == "debug") ++            { ++                if  (getFirstText(info) == "true") ++                    container->SetDebug(true); ++            } +             else if (info.tagName() == "image") +             { +                 QString imgname = ""; diff --git a/abs/mv-core/myth/release-fixes/mythtv-release-fixes/jump_snapshot.patch b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/jump_snapshot.patch new file mode 100644 index 0000000..2d2c68b --- /dev/null +++ b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/jump_snapshot.patch @@ -0,0 +1,13 @@ +--- libs/libmythui/mythmainwindow.cpp.orrig	2008-03-19 18:43:08.000000000 +0000 ++++ libs/libmythui/mythmainwindow.cpp	2008-03-19 18:43:51.000000000 +0000 +@@ -1132,7 +1132,9 @@ +  + void MythMainWindow::JumpTo(const QString& destination, bool pop) + { +-    if (d->destinationMap.count(destination) > 0 && d->exitmenucallback == NULL) ++   if (destination == "ScreenShot")  ++        screenShot();  ++   else if (d->destinationMap.count(destination) > 0 && d->exitmenucallback == NULL)  +     { +         d->exitingtomain = true; +         d->popwindows = pop; diff --git a/abs/mv-core/myth/release-fixes/mythtv-release-fixes/myth.find_orphans.pl b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/myth.find_orphans.pl new file mode 100755 index 0000000..c258e1d --- /dev/null +++ b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/myth.find_orphans.pl @@ -0,0 +1,260 @@ +#!/usr/bin/perl + +# check for recording anomolies - +#   based somewhat on greg froese's "myth.rebuilddatabase.pl" +#   -- Lincoln Dale <ltd@interlink.com.au>, September 2006 +# 2007-03-11:  Added pretty print of unknown files vs. orphaned thumbnails. (Robert Kulagowski) + +#  The intent of this script is to be able to find orphaned rows in the 'recorded' table +#  (entries which don't have matching media files) and orphaned media files (potentially +#  taking up gigabytes of otherwise usable disk space) which have no matching row in +#  the 'recorded' db table. +# +#  By default, running the script will simply return a list of problems it finds. +#  Running with --dodbdelete will remove db recorded rows for which there is no matching +#  media file.  Running with --dodelete will delete media files for which there is no +#  matching db record. +# +#  This script may be useful to fix up some orphaned db entries (causes mythweb to run +#  verrry slow) as well as reclaim some disk space from some orphaned media files. +#  (in an ideal world, neither of these would ever happen, but i've seen both happen in reality). +#  This script makes it easy to keep track of whether it has or hasn't happened, even if you +#  have thousands of recordings and terabytes of stored media. +# +#  no warranties expressed or implied.  if you run this and it deletes all your recordings +#  and sets mythtv to fill up all your disk space with The Home Shopping Network, its entirely +#  your fault. + +my $progname = "myth.find_orphans.pl"; +my $revision = "0.20"; + +use DBI; +use Sys::Hostname; +use Getopt::Long; + +# +# options +# + +my $opt_host =		hostname; +my $opt_dbhost = 	"localhost"; +my $opt_database = 	"mythconverg"; +my $opt_user = 		"mythtv"; +my $opt_pass = 		"mythtv"; +my $opt_ext = 		"{nuv,mpg,mpeg,avi}"; +my $opt_dir =		""; +my $opt_dodelete =	0; +my $opt_dodbdelete =	0; +my $debug =		0; +my $opt_help =		0; + +GetOptions( +        'host=s'	=> \$opt_host, +        'dbhost=s'	=> \$opt_dbhost, +        'database=s'	=> \$opt_database, +        'user=s'	=> \$opt_user, +        'pass=s'	=> \$opt_pass, +	'dir=s'		=> \$opt_dir, +	'dodelete'	=> \$opt_dodelete, +	'dodbdelete'	=> \$opt_dodbdelete, +        'debug+'	=> \$debug, +        'help'		=> \$opt_help, +        'h'		=> \$opt_help, +        'v'		=> \$opt_help); + +if ($opt_help) { +	print<<EOF +$progname (rev $revision) +(checks MythTV recording directories for orphaned files) + +options: +	--host=(host)		MythTV backend host ($opt_host) +	--dbhost=(host)		host where MySQL database for backend is ($opt_dbhost) +	--database=(dbname)	MythTV database ($opt_database) +	--user=(user)		MySQL MythTV database user ($opt_user) +	--pass=(pass)		MySQL MythTV database password ($opt_pass) +	--dir=directories	manually specify recording directories (otherwise setting is from database) +	--debug			increase debug level +	--dodbdelete		remove recorded db entries with no matching file (default: don't) +	--dodelete		delete files with no record (default: don't) + +EOF +; +	exit(0); +} + +# +# go go go! +# + +my $valid_recordings = 0; +my $missing_recordings = 0; +my $errors = 0; +my $unknown_files = 0; +my $known_files = 0; +my $unknown_size = 0; +my $known_size = 0; +my $unknown_thumbnail = 0; + +if (!($dbh = DBI->connect("dbi:mysql:database=$opt_database:host=$opt_dbhost","$opt_user","$opt_pass"))) { +	die "Cannot connect to database $opt_database on host $opt_dbhost: $!\n"; +} + +if ($opt_dir eq "") { +	&dir_lookup("SELECT dirname FROM storagegroup WHERE hostname=(?)"); +	&dir_lookup("SELECT data FROM settings WHERE value='RecordFilePrefix' AND hostname=(?)"); + +	printf STDERR "Recording directories ($opt_host): $opt_dir\n" if $debug; +} + +if ($opt_dir eq "") { +	printf "ERROR: no directory found or specified\n"; +	exit 1; +} + +foreach $d (split(/,/,$opt_dir)) { +	$d =~ s/\/$//g; # strip trailing / +	$dirs{$d}++; +} + + +# +# look in recorded table, make sure we can find every file .. +# + +my $q = "SELECT title, subtitle, starttime, endtime, chanid, basename FROM recorded WHERE hostname=(?) ORDER BY starttime"; +$sth = $dbh->prepare($q); +$sth->execute($opt_host) || die "Could not execute ($q): $!\n"; + +while (my @row=$sth->fetchrow_array) { +	($title, $subtitle, $starttime, $endtime, $channel, $basename) = @row; + +	# see if we can find it... +	$loc = find_file($basename); +	if ($loc eq "") { +		printf "Missing media: %s (title:%s, start:%s)\n",$basename,$title,$starttime; +		$missing_recordings++; + +		if ($opt_dodbdelete) { +			my $sql = sprintf "DELETE FROM recorded WHERE basename LIKE \"%s\" LIMIT 1",$basename; +			printf "performing database delete: %s\n",$sql; +			$dbh->do($sql) || die "Could not execute $sql: $!\n"; +		} +	} else { +		$valid_recordings++; +		$seen_basename{$basename}++; +		$seen_basename{$basename.".png"}++; # thumbnail +	} +} + +# +# look in recording directories, see if there are extra files not in database +# + +foreach my $this_dir (keys %dirs) { +	opendir(DIR, $this_dir) || die "cannot open directory $this_dir: $!\n"; +	foreach $this_file (readdir(DIR)) { +		if (-f "$this_dir/$this_file") { + +			next if ($this_file eq "nfslockfile.lock"); +			next if ($this_file =~ m/^mythconv.*/); +			next if ($this_dir eq "/data/database_backup"); + +			my $this_filesize = -s "$this_dir/$this_file"; +			if ($seen_basename{$this_file} == 0) { +				$sorted_filesizes{$this_filesize} .= sprintf "unknown file [%s]: %s/%s\n",pretty_filesize($this_filesize),$this_dir,$this_file; +				$unknown_size += $this_filesize; +				if (substr($this_file,-4) eq ".png") { +					$unknown_thumbnail++; +				} +				else { +					$unknown_files++; +				} +				                                                                          +				if ($opt_dodelete) { +					printf STDERR "deleting  [%s]:  %s/%s\n",pretty_filesize($this_filesize),$this_dir,$this_file; +					unlink "$this_dir/$this_file"; + +					if (-f "$this_dir/$this_file") { +						$errors++; +						printf "ERROR: could not delete $this_dir/$this_file\n"; +					} +				} +			} else { +				$known_files++; +				$known_size += $this_filesize; +				printf "KNOWN file [%s]: %s/%s\n",pretty_filesize($this_filesize),$this_dir,$this_file if $debug; +			} +		} else { +			printf "NOT A FILE: %s/%s\n",$this_dir,$this_file if $debug; +		} +	} +	closedir DIR; +} + + +# +# finished, report results +# + +foreach my $key (sort { $a <=> $b } keys %sorted_filesizes) { +	printf $sorted_filesizes{$key}; +} + +printf "Summary:\n"; +printf "  Host: %s, Directories: %s\n", $opt_host, join(" ",keys %dirs); +printf "  %d ERRORS ENCOUNTERED (see above for details)\n",$errors if ($errors > 0); +printf "  %d valid recording%s, %d missing recording%s %s\n", +	$valid_recordings, ($valid_recordings != 1 ? "s" : ""), +	$missing_recordings, ($missing_recordings != 1 ? "s" : ""), +	($missing_recordings > 0 ? ($opt_dodbdelete ? "were fixed" : "not fixed, check above is valid and use --dodbdelete to fix") : ""); +printf "  %d known media files using %s\n  %d orphaned thumbnails with no corresponding recording\n  %d unknown files using %s %s\n", +	$known_files, pretty_filesize($known_size),  +	$unknown_thumbnail,$unknown_files, pretty_filesize($unknown_size),  +	($unknown_files > 0 ? ($opt_dodelete ? "were fixed" : "not fixed, check above and use --dodelete to clean up if the above output is accurate") : ""); + +exit(0); + +########################################################################### +# filesize bling + +sub pretty_filesize +{ +	local($fsize) = @_; +	return sprintf "%0.1fGB",($fsize / 1000000000) if ($fsize >= 1000000000); +	return sprintf "%0.1fMB",($fsize / 1000000) if ($fsize >= 1000000); +	return sprintf "%0.1fKB",($fsize / 1000) if ($fsize >= 1000); +	return sprintf "%0.0fB",$fsize; +} + +########################################################################### +# find a file in directories without globbing + +sub find_file +{ +	local($fname) = @_; + +	foreach my $d (keys %dirs) { +		my $f = $d."/".$fname; +		if (-e $f) { +			return $f; +		} +	} +	return; +} + +########################################################################### + +sub dir_lookup +{ +	my $query = shift; + +	$sth = $dbh->prepare($query); +	$sth->execute($opt_host) || die "Could not execute ($dir_query)"; +	while (my @row = $sth->fetchrow_array) { +		$opt_dir .= "," if ($opt_dir ne ""); +		$opt_dir .= $row[0]; +	} +} + +########################################################################### diff --git a/abs/mv-core/myth/release-fixes/mythtv-release-fixes/myth.sh b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/myth.sh new file mode 100755 index 0000000..fb7122c --- /dev/null +++ b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/myth.sh @@ -0,0 +1,4 @@ +export PATH=$PATH:/usr/local/bin +# set core file size to 0 +ulimit -c 0 +export MALLOC_CHECK_=0
\ No newline at end of file diff --git a/abs/mv-core/myth/release-fixes/mythtv-release-fixes/mythbackend b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/mythbackend new file mode 100755 index 0000000..f96c6b7 --- /dev/null +++ b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/mythbackend @@ -0,0 +1,37 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +PID=`pidof -o %PPID /usr/bin/mythbackend` +case "$1" in +  start) +    stat_busy "Starting MythTV Backend" +    [ ! -e /var/run/mysqld.pid ] && echo -n "mysqld not started" && stat_fail && exit +    [ -z "$PID" ] && /usr/local/bin/mythbackend -d -l /var/log/mythbackend.log -v quiet +    if [ $? -gt 0 ]; then +      stat_fail +    else +      echo $PID > /var/run/mythbackend.pid +      add_daemon mythbackend +      stat_done +    fi +    ;; +  stop) +    stat_busy "Stopping MythTV Backend" +    [ ! -z "$PID" ]  && kill $PID &>/dev/null +    if [ $? -gt 0 ]; then +      stat_fail +    else +      rm_daemon mythbackend +      stat_done +    fi +    ;; +  restart) +    $0 stop +    $0 start +    ;; +  *) +    echo "usage: $0 {start|stop|restart}" +esac +exit 0 diff --git a/abs/mv-core/myth/release-fixes/mythtv-release-fixes/mythbackend.sh b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/mythbackend.sh new file mode 100755 index 0000000..e7a7b70 --- /dev/null +++ b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/mythbackend.sh @@ -0,0 +1,117 @@ +#!/bin/bash +# +#	/etc/rc.d/init.d/mythbackend +# +# Starts the mythbackend as a daemon +# +# chkconfig: 345 90 10 +# description: Starts the mythbackend process as a daemon after the XWindows \ +#              system is started, in runlevel 5. This allows scheduled \ +#              recordings to occur without manual intervention. +# processname: mythbackend + +# Copyright (c) by Michael Thomson <linux at m-thomson dot net> +# With thanks to Stu Tomlinson <stu at nosnilmot dot com> +# +#  This program is free software; you can redistribute it and/or modify +#  it under the terms of the GNU General Public License as published by +#  the Free Software Foundation; either version 2 of the License, or +#  (at your option) any later version. +# +#  This program is distributed in the hope that it will be useful, +#  but WITHOUT ANY WARRANTY; without even the implied warranty of +#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the +#  GNU General Public License for more details. +# +#  You should have received a copy of the GNU General Public License +#  along with this program; if not, write to the Free Software +#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA + +# Default values to use if none are supplied in the config file. +# User who should start the mythbackend processes +MBE_USER="root" +# Directory holding the mythbackend binary +MBE_LOCATION="/usr/local/bin/" +# Name of mythbackend binary +MBE_PROG="mythbackend" +# Full path to mythbackend log file +MBE_LOGFILE="/var/log/mythtv/mythbackend.log" + +# Source function library. +. /etc/init.d/functions + +# Source config file if available +if [ -f "/etc/sysconfig/mythbackend" ]; then +  . /etc/sysconfig/mythbackend +fi + +test -x ${MBE_LOCATION}${MBE_PROG} || exit 0 + +RETVAL=0 + +# +#	See how we were called. +# + +start() { +	# Check if mythbackend is already running +	if [ ! -f /var/lock/subsys/${MBE_PROG} ]; then +	    echo -n "Starting ${MBE_PROG}: " +	    # /usr/local/bin/mythbackend -d -l /some/log/file +	    #daemon --user ${MBE_USER} ${MBE_LOCATION}${MBE_PROG} -d -l ${MBE_LOGFILE} +	    ${MBE_LOCATION}${MBE_PROG} -d -l ${MBE_LOGFILE} +	    RETVAL=$? +	    [ $RETVAL -eq 0 ] && touch /var/lock/subsys/${MBE_PROG} +	    echo +	fi +	return $RETVAL +} + +stop() { +	echo -n "Stopping ${MBE_PROG}: " +	killproc ${MBE_LOCATION}${MBE_PROG} +	RETVAL=$? +	[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/${MBE_PROG} +	echo +        return $RETVAL +} + + +restart() { +	stop +	start +}	 + +reload() { +	restart +}	 + +status_at() { + 	status ${MBE_LOCATION}${MBE_PROG} +} + +case "$1" in +start) +	start +	;; +stop) +	stop +	;; +reload|restart) +	restart +	;; +condrestart) +	if [ -f /var/lock/subsys/${MBE_PROG} ]; then +	    restart +	fi +	;; +status) +	status_at +	;; +*) +	echo "Usage: $0 {start|stop|restart|condrestart|status}" +	exit 1 +esac + +exit $? +exit $RETVAL diff --git a/abs/mv-core/myth/release-fixes/mythtv-release-fixes/myththemedmenu.cpp.patch b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/myththemedmenu.cpp.patch new file mode 100644 index 0000000..f5baccd --- /dev/null +++ b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/myththemedmenu.cpp.patch @@ -0,0 +1,125 @@ +--- libs/libmythui/myththemedmenu.cpp.orig	2008-01-31 15:26:38.000000000 +0000 ++++ libs/libmythui/myththemedmenu.cpp	2008-02-07 22:24:27.000000000 +0000 +@@ -2102,6 +2102,10 @@ +             } +             lastbutton = NULL; +         } ++        else if (action == "MENU") ++        { ++            parent->doMenu(); ++        } +         else if (action == "EJECT") +         { +             myth_eject(); +@@ -2482,6 +2486,8 @@ +  +     if (d->foundtheme) +         d->parseMenu(menufile); ++ ++    m_menuPopup = NULL; + } +  + MythThemedMenu::~MythThemedMenu(void) +@@ -2592,3 +2598,102 @@ +     MythScreenType::aboutToShow(); +     d->updateLCD(); + } ++void MythThemedMenu::doMenu() ++{ ++    int allowsd = gContext->GetNumSetting("AllowQuitShutdown"); ++    if (m_menuPopup) ++        return; ++    QString label = "System Menu"; ++    MythScreenStack *mainStack = GetMythMainWindow()->GetMainStack(); ++    m_menuPopup = new MythDialogBox(label, mainStack, "menuPopup"); ++    if (m_menuPopup->Create()) ++        mainStack->AddScreen(m_menuPopup); ++ ++ ++    if ( allowsd != 0 && allowsd !=4  ) ++    { ++        m_menuPopup->SetReturnEvent(this,"popmenu_exit"); ++        m_menuPopup->AddButton("Shutdown"); ++        m_menuPopup->AddButton("Reboot"); ++        m_menuPopup->AddButton("About"); ++        m_menuPopup->AddButton("Cancel"); ++    } ++    else ++    { ++        m_menuPopup->SetReturnEvent(this,"popmenu_noexit"); ++        m_menuPopup->AddButton("About"); ++        m_menuPopup->AddButton("Cancel"); ++    } ++} ++ ++void MythThemedMenu::aboutScreen() ++{ ++{ ++        extern const char *myth_source_version; ++        extern const char *myth_source_path; ++        QString distro_line; ++        distro_line=""; ++ ++        QFile file("/etc/os_myth_release"); ++        if ( file.open(IO_ReadOnly | IO_Translate) ) ++        { ++            QTextStream t( &file );        // use a text stream ++            distro_line = t.readLine(); ++            file.close(); ++        } ++ ++        QString label = ""; ++        label.append(QObject::tr("Revision: ") + myth_source_version   + "  \n  Branch:" +  myth_source_path  + "\n" + distro_line ); ++ ++        MythScreenStack *mainStack = GetMythMainWindow()->GetMainStack(); ++        m_menuPopup = new MythDialogBox(label, mainStack, "About"); ++        if (m_menuPopup->Create()) ++            mainStack->AddScreen(m_menuPopup); ++ ++        m_menuPopup->SetReturnEvent(this,"About"); ++        m_menuPopup->AddButton("OK!"); ++    } ++} ++ ++void MythThemedMenu::customEvent(QCustomEvent *event) ++{ ++    if (event->type() == kMythDialogBoxCompletionEventType) ++    { ++        DialogCompletionEvent *dce = ++                dynamic_cast<DialogCompletionEvent*>(event); ++ ++        QString resultid= dce->GetId(); ++        int buttonnum  = dce->GetResult(); ++        if (resultid == "popmenu_exit") ++        { ++            if (buttonnum == 0) ++            { ++                QString halt_cmd = gContext->GetSetting("HaltCommand", ++                        "sudo /sbin/halt -p"); ++                if (!halt_cmd.isEmpty()) ++                    system(halt_cmd.ascii()); ++            } ++ ++            if (buttonnum == 1) ++            { ++                QString reboot_cmd = gContext->GetSetting("RebootCommand", ++                        "sudo /sbin/reboot"); ++                if (!reboot_cmd.isEmpty()) ++                    system(reboot_cmd.ascii()); ++            } ++ ++            if (buttonnum == 2) ++            { ++                aboutScreen(); ++            } ++        } ++ ++        if (resultid == "popmenu_noexit") ++        { ++            if (buttonnum == 0) ++                aboutScreen(); ++        } ++ ++        m_menuPopup = NULL; ++    } ++} diff --git a/abs/mv-core/myth/release-fixes/mythtv-release-fixes/myththemedmenu.h.patch b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/myththemedmenu.h.patch new file mode 100644 index 0000000..9744b11 --- /dev/null +++ b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/myththemedmenu.h.patch @@ -0,0 +1,25 @@ +--- libs/libmythui/myththemedmenu.h.orig	2008-01-31 15:26:45.000000000 +0000 ++++ libs/libmythui/myththemedmenu.h	2008-02-07 21:00:22.000000000 +0000 +@@ -2,6 +2,7 @@ + #define MYTHTHEMEDMENU_H_ +  + #include "mythscreentype.h" ++#include "mythdialogbox.h" +  + class MythMainWindow; + class MythThemedMenuPrivate; +@@ -26,8 +27,14 @@ +  +     void ReloadTheme(void); +     void ReloadExitKey(void); ++ +     virtual void aboutToShow(void); +  ++    void doMenu(); ++    void aboutScreen(); ++    MythDialogBox *m_menuPopup; ++    void customEvent(QCustomEvent *event); ++ +   protected: +     virtual bool keyPressEvent(QKeyEvent *e); +     virtual void gestureEvent(MythUIType *origtype, MythGestureEvent *ge); diff --git a/abs/mv-core/myth/release-fixes/mythtv-release-fixes/mythtv.install b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/mythtv.install new file mode 100755 index 0000000..2c87aee --- /dev/null +++ b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/mythtv.install @@ -0,0 +1,59 @@ + +# arg 1:  the new package version +pre_install () { +        echo "backing up the database" +                dbver=`pacman -Q mythtv-release-fixes | awk  ' { print $2 } '` +        if [ ! -e /data/databases_backup ] +        then +                mkdir -p /data/database_backup +        fi +        mysqldump -u mythtv -pmythtv mythconverg -c > /data/database_backup/${dbver}.dump.sql +} + +post_install() { +  	mkdir -p /data/home +        /usr/sbin/useradd -G users,video,audio,optical  -m -d /data/home/mythtv mythtv +        /usr/sbin/usermod -G users,video,audio,optical mythtv +#        mkdir /var/log/mythtv +#        chown -R mythtv:users /var/log/mythtv +        dbver=`pacman -Q mythtv-release-fixes | awk  ' { print $2 } '` +        if [ ! -e /data/database_backup ] +        then +                mkdir -p /data/database_backup +        fi +	chown mythtv:nobody /data/database_backup +	chmod g+s  /data/database_backup +         +	mysqldump -u mythtv -pmythtv mythconverg -c > /data/database_backup/${dbver}.dump.sql +	grep -q /usr/local/lib  /etc/ld.so.conf +	if [ $? = 1 ] +	then +		echo "/usr/local/lib" >> /etc/ld.so.conf +	fi + +} +pre_upgrade () { + pre_install +} + +# arg 1:  the new package version +# arg 2:  the old package version +post_upgrade() { +  post_install + +  /bin/true +} + +# arg 1:  the old package version +pre_remove() { +  /bin/true +} + +# arg 1:  the old package version +post_remove() { +/bint/true +} + +op=$1 +shift +$op $* diff --git a/abs/mv-core/myth/release-fixes/mythtv-release-fixes/pop_be_restart.cpp.patch b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/pop_be_restart.cpp.patch new file mode 100644 index 0000000..a7a5326 --- /dev/null +++ b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/pop_be_restart.cpp.patch @@ -0,0 +1,51 @@ +--- libs/libmythui/myththemedmenu.cpp.orig	2008-03-17 15:54:00.000000000 -0500 ++++ libs/libmythui/myththemedmenu.cpp	2008-03-17 15:54:09.000000000 -0500 +@@ -2615,12 +2615,14 @@ +         m_menuPopup->SetReturnEvent(this,"popmenu_exit"); +         m_menuPopup->AddButton("Shutdown"); +         m_menuPopup->AddButton("Reboot"); ++        m_menuPopup->AddButton("MythBackend restart"); +         m_menuPopup->AddButton("About"); +         m_menuPopup->AddButton("Cancel"); +     } +     else +     { +         m_menuPopup->SetReturnEvent(this,"popmenu_noexit"); ++        m_menuPopup->AddButton("MythBackend restart"); +         m_menuPopup->AddButton("About"); +         m_menuPopup->AddButton("Cancel"); +     } +@@ -2655,6 +2657,11 @@ +     } + } +  ++void MythThemedMenu::Restartmythbackend() ++{ ++    system("/usr/MythVantage/bin/mythbeselect -restart"); ++} ++ + void MythThemedMenu::customEvent(QCustomEvent *event) + { +     if (event->type() == kMythDialogBoxCompletionEventType) +@@ -2684,6 +2691,10 @@ +  +             if (buttonnum == 2) +             { ++                Restartmythbackend(); ++            } ++            if (buttonnum == 3) ++            { +                 aboutScreen(); +             } +         } +@@ -2691,6 +2702,10 @@ +         if (resultid == "popmenu_noexit") +         { +             if (buttonnum == 0) ++            { ++                Restartmythbackend(); ++            } ++            if (buttonnum == 1) +                 aboutScreen(); +         } +  diff --git a/abs/mv-core/myth/release-fixes/mythtv-release-fixes/pop_be_restart.h.patch b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/pop_be_restart.h.patch new file mode 100644 index 0000000..1fba435 --- /dev/null +++ b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/pop_be_restart.h.patch @@ -0,0 +1,10 @@ +--- libs/libmythui/myththemedmenu.h.orig	2008-03-17 15:48:28.000000000 -0500 ++++ libs/libmythui/myththemedmenu.h	2008-03-17 15:48:30.000000000 -0500 +@@ -32,6 +32,7 @@ +  +     void doMenu(); +     void aboutScreen(); ++    void Restartmythbackend(); +     MythDialogBox *m_menuPopup; +     void customEvent(QCustomEvent *event); +  diff --git a/abs/mv-core/myth/release-fixes/mythtv-release-fixes/reload.patch b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/reload.patch new file mode 100644 index 0000000..9cc2044 --- /dev/null +++ b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/reload.patch @@ -0,0 +1,52 @@ +--- programs/mythfrontend/main.cpp	2007-11-13 15:34:40.000000000 +0000 ++++ programs/mythfrontend/main.cpp.new	2007-11-13 15:36:15.000000000 +0000 +@@ -72,6 +72,9 @@ +     RunProgramGuide(chanid, channum); + } +  ++ ++ ++ + void startFinder(void) + { +     RunProgramFind(); +@@ -761,6 +764,7 @@ +     } + } +  ++ + void InitJumpPoints(void) + { +     REG_JUMP("Reload Theme", "", "", reloadTheme); +@@ -784,6 +788,17 @@ +     TV::SetEmbedPbbFunc(PlaybackBox::RunPlaybackBox); + } +  ++ ++void signal_USR1_handler(int){ ++      VERBOSE(VB_GENERAL, "SIG USR1 received, reloading theme");	 ++      RemoteSendMessage("CLEAR_SETTINGS_CACHE"); ++      gContext->ActivateSettingsCache(false); ++      qApp->processEvents(); ++      GetMythMainWindow()->JumpTo("Reload Theme"); ++      gContext->removeCurrentLocation(); ++      gContext->ActivateSettingsCache(true); ++} ++ + int internal_media_init()  + { +     REG_MEDIAPLAYER("Internal", "MythTV's native media player.",  +@@ -1411,7 +1426,12 @@ +  +         if (!RunMenu(themedir)) +             break; +- ++         struct sigaction new_action, old_action; ++        /* Set up the structure to specify the new action. */ ++        new_action.sa_handler = signal_USR1_handler; ++        ::sigemptyset(&new_action.sa_mask); ++        new_action.sa_flags = 0; ++        ::sigaction (SIGUSR1, &new_action, &old_action); +         qApp->setMainWidget(mainWindow); +         qApp->exec(); +     } while (!(exitstatus = handleExit())); diff --git a/abs/mv-core/myth/release-fixes/mythtv-release-fixes/screenshot_jump.patch b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/screenshot_jump.patch new file mode 100644 index 0000000..8a5dee4 --- /dev/null +++ b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/screenshot_jump.patch @@ -0,0 +1,10 @@ +--- programs/mythfrontend/networkcontrol.cpp.orig	2008-03-16 23:31:05.000000000 +0000 ++++ programs/mythfrontend/networkcontrol.cpp	2008-03-16 23:32:01.000000000 +0000 +@@ -80,6 +80,7 @@ +     jumpMap["zoneminderconsole"]     = "ZoneMinder Console"; +     jumpMap["zoneminderliveview"]    = "ZoneMinder Live View"; +     jumpMap["zoneminderevents"]      = "ZoneMinder Events"; ++    jumpMap["snapshot"]              = "ScreenShot"; +  +     // These jump point names match the (lowercased) locations from gContext +     jumpMap["channelrecpriority"]    = "Channel Recording Priorities"; diff --git a/abs/mv-core/myth/release-fixes/mythtv-release-fixes/screenshots.diff b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/screenshots.diff new file mode 100644 index 0000000..2b5dabe --- /dev/null +++ b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/screenshots.diff @@ -0,0 +1,458 @@ +Index: libs/libmythui/mythmainwindow.cpp +=================================================================== +--- libs/libmythui/mythmainwindow.cpp	(revision 15827) ++++ libs/libmythui/mythmainwindow.cpp	(working copy) +@@ -504,6 +507,81 @@ +     d->repaintRegion = d->repaintRegion.unite(pe->region()); + } +  ++bool MythMainWindow::screenShot(QString fname, int x, int y, int x2, int y2, int w, int h) ++{ ++    bool ret = false; ++ ++    QString extension = fname.section('.', -1, -2); ++ ++    if (extension == "jpg") ++        extension = "JPEG"; ++    else  ++        extension = "PNG"; ++ ++    VERBOSE(VB_GENERAL, QString("MythMainWindow::screenShot saving winId %1 to %2 (%3 x %4) [ %5/%6 - %7/%8]") ++		        .arg(QApplication::desktop()->winId()) ++			.arg(fname) ++			.arg(w) ++			.arg(h) ++			.arg(x) ++			.arg(y) ++			.arg(x2) ++			.arg(y2)); ++ ++    QPixmap p; ++    p = QPixmap::grabWindow( QApplication::desktop()->winId(), x, y, x2, y2); ++ ++    QImage img = p.convertToImage(); ++ ++    if ( w == 0 ) ++        w = img.width(); ++ ++    if ( h == 0 ) ++        h = img.height(); ++ ++    VERBOSE(VB_GENERAL, QString("Scaling to %1 x %2 from %3 x %4") ++		    .arg(w) ++		    .arg(h) ++		    .arg(img.width()) ++		    .arg(img.height())); ++ ++    img = img.smoothScale( w, h , QImage::ScaleMin); ++         ++    if (img.save(fname ,extension)) ++    { ++        VERBOSE(VB_GENERAL, "MythMainWindow::screenShot succeeded"); ++	ret = true; ++    } ++    else  ++    { ++	VERBOSE(VB_GENERAL, "MythMainWindow::screenShot Failed!"); ++	ret = false; ++    } ++ ++    return ret; ++} ++ ++bool MythMainWindow::screenShot(int x, int y, int x2, int y2) ++{ ++    QString fPath = gContext->GetSetting("ScreenShotPath","/tmp/"); ++    QString fName = QString("/%1/myth-screenshot-%2.png") ++	            .arg(gContext->GetSetting("ScreenShotPath","/tmp/")) ++	            .arg(QDateTime::currentDateTime().toString("yyyy-mm-ddThh-mm-ss.zzz")); ++ ++    return screenShot(fName, x, y, x2, y2, 0, 0); ++} ++ ++bool MythMainWindow::screenShot(QString fname, int w, int h) ++{ ++    return screenShot(fname, 0, 0, -1, -1, w, h); ++} ++ ++ ++bool MythMainWindow::screenShot(void) ++{ ++    return screenShot(0,0,-1,-1); ++} ++ + #ifdef USING_APPLEREMOTE + // This may be possible via installEventFilter() instead? +  +Index: libs/libmythui/mythmainwindow.h +=================================================================== +--- libs/libmythui/mythmainwindow.h	(revision 15827) ++++ libs/libmythui/mythmainwindow.h	(working copy) +@@ -101,6 +101,11 @@ +  +     MythPainter *GetCurrentPainter(); +  ++    bool screenShot(QString fname, int x, int y, int x2, int y2, int w, int h); ++    bool screenShot(int x, int y, int x2, int y2); ++    bool screenShot(QString fname, int w, int h); ++    bool screenShot(void); ++ +     void AllowInput(bool allow); +  +     QRect GetUIScreenRect(); +Index: programs/mythfrontend/mediarenderer.cpp +=================================================================== +--- programs/mythfrontend/mediarenderer.cpp	(revision 15827) ++++ programs/mythfrontend/mediarenderer.cpp	(working copy) +@@ -9,6 +9,7 @@ + ///////////////////////////////////////////////////////////////////////////// +  + #include "mediarenderer.h" ++#include "mythfexml.h" + #include "compat.h" +  + ///////////////////////////////////////////////////////////////////////////// +@@ -85,6 +86,11 @@ +                                  "http-get:*:video/mpeg:*," +                                  "http-get:*:video/nupplevideo:*," +                                  "http-get:*:video/x-ms-wmv:*"; ++        // ------------------------------------------------------------------ ++        // Register the MythFEXML protocol...  ++        // ------------------------------------------------------------------ ++        VERBOSE(VB_UPNP, "MediaRenderer::Registering MythFEXML Service." ); ++        m_pHttpServer->RegisterExtension( new MythFEXML( RootDevice() )); +  +         // VERBOSE(VB_UPNP, QString( "MediaRenderer::Registering AVTransport Service." )); +         // m_pHttpServer->RegisterExtension( m_pUPnpAVT = new UPnpAVTransport( RootDevice() )); +Index: programs/mythfrontend/MFEXML_scpd.xml +=================================================================== +--- programs/mythfrontend/MFEXML_scpd.xml	(revision 0) ++++ programs/mythfrontend/MFEXML_scpd.xml	(revision 0) +@@ -0,0 +1,34 @@ ++<?xml version="1.0" encoding="utf-8"?>
 ++<scpd xmlns="urn:schemas-upnp-org:service-1-0">
 ++   <specVersion>
 ++      <major>1</major>
 ++      <minor>0</minor>
 ++   </specVersion>
 ++   <actionList>
 ++      <action>
 ++         <name>GetScreenShot</name>
 ++         <argumentList>
 ++            <argument>
 ++               <name>Height</name>
 ++               <direction>in</direction>
 ++               <relatedStateVariable>A_ARG_TYPE_Height</relatedStateVariable>
 ++            </argument>
 ++            <argument>
 ++               <name>Width</name>
 ++               <direction>in</direction>
 ++               <relatedStateVariable>A_ARG_TYPE_Width</relatedStateVariable>
 ++            </argument>
 ++         </argumentList>
 ++      </action>
 ++   </actionList>
 ++   <serviceStateTable>
 ++      <stateVariable sendEvents="no">
 ++         <name>A_ARG_TYPE_Height</name>
 ++         <dataType>i2</dataType>
 ++      </stateVariable>
 ++      <stateVariable sendEvents="no">
 ++         <name>A_ARG_TYPE_Width</name>
 ++         <dataType>i2</dataType>
 ++      </stateVariable>
 ++   </serviceStateTable>
 ++</scpd>
 +Index: programs/mythfrontend/globalsettings.cpp +=================================================================== +--- programs/mythfrontend/globalsettings.cpp	(revision 15827) ++++ programs/mythfrontend/globalsettings.cpp	(working copy) +@@ -2182,6 +2182,15 @@ +     return ge; + } +  ++static HostLineEdit *ScreenShotPath() ++{ ++    HostLineEdit *ge = new HostLineEdit("ScreenShotPath"); ++    ge->setLabel(QObject::tr("ScreenShotPath")); ++    ge->setValue(""); ++    ge->setHelpText(QObject::tr("Path to screenshot storage location. Should be writable by the frontend")); ++    return ge; ++} ++ + static HostCheckBox *UseArrowAccels() + { +     HostCheckBox *gc = new HostCheckBox("UseArrowAccels"); +@@ -4455,6 +4464,7 @@ +     MythMediaSettings *mediaMon = new MythMediaSettings(); +  +     general->addChild(LircKeyPressedApp()); ++    general->addChild(ScreenShotPath()); +     general->addChild(row); +     general->addChild(NetworkControlPort()); +     general->addChild(mediaMon); +Index: programs/mythfrontend/mythfexml.h +=================================================================== +--- programs/mythfrontend/mythfexml.h	(revision 0) ++++ programs/mythfrontend/mythfexml.h	(revision 0) +@@ -0,0 +1,66 @@ ++////////////////////////////////////////////////////////////////////////////// ++// Program Name: mythxml.h ++//                                                                             ++// Purpose - Myth Frontend XML protocol HttpServerExtension  ++//                                                                             ++////////////////////////////////////////////////////////////////////////////// ++ ++#ifndef MYTHFEXML_H_ ++#define MYTHFEXML_H_ ++ ++#include <qdom.h> ++#include <qdatetime.h>  ++ ++#include "upnp.h" ++#include "eventing.h" ++#include "mythcontext.h" ++ ++typedef enum  ++{ ++    MFEXML_Unknown                =  0, ++    MFEXML_GetScreenShot          =  1 ++ ++} MythFEXMLMethod; ++ ++class MythFEXML : public Eventing ++{ ++    private: ++ ++        QString                      m_sControlUrl; ++        QString                      m_sServiceDescFileName; ++ ++    protected: ++ ++        // Implement UPnpServiceImpl methods that we can ++ ++        virtual QString GetServiceType      () { return "urn:schemas-mythtv-org:service:MythTv:1"; } ++        virtual QString GetServiceId        () { return "urn:mythtv-org:serviceId:MYTHTV_1-0"; } ++        virtual QString GetServiceControlURL() { return m_sControlUrl.mid( 1 ); } ++        virtual QString GetServiceDescURL   () { return m_sControlUrl.mid( 1 ) + "/GetServDesc"; } ++ ++    private: ++ ++        MythFEXMLMethod GetMethod( const QString &sURI ); ++ ++	void    GetScreenShot    ( HTTPRequest *pRequest ); ++ ++    public: ++                 MythFEXML( UPnpDevice *pDevice ); ++        virtual ~MythFEXML(); ++ ++        bool     ProcessRequest( HttpWorkerThread *pThread, HTTPRequest *pRequest ); ++ ++        // Static methods shared with HttpStatus ++ ++}; ++ ++///////////////////////////////////////////////////////////////////////////// ++///////////////////////////////////////////////////////////////////////////// ++// ++//  ++// ++///////////////////////////////////////////////////////////////////////////// ++///////////////////////////////////////////////////////////////////////////// ++#endif ++ ++ +Index: programs/mythfrontend/main.cpp +=================================================================== +--- programs/mythfrontend/main.cpp	(revision 15827) ++++ programs/mythfrontend/main.cpp	(working copy) +@@ -799,6 +799,11 @@ +     } + } +  ++void getScreenShot(void) ++{ ++    (void) gContext->GetMainWindow()->screenShot(); ++} ++ + void InitJumpPoints(void) + { +     REG_JUMP("Reload Theme", "", "", reloadTheme); +@@ -817,6 +822,8 @@ +     REG_JUMP("Status Screen", "", "", showStatus); +     REG_JUMP("Previously Recorded", "", "", startPrevious); +  ++    REG_JUMPEX("ScreenShot","","",getScreenShot,false); ++ +     REG_KEY("qt", "DELETE", "Delete", "D"); +     REG_KEY("qt", "EDIT", "Edit", "E"); +  +Index: programs/mythfrontend/mythfrontend.pro +=================================================================== +--- programs/mythfrontend/mythfrontend.pro	(revision 15827) ++++ programs/mythfrontend/mythfrontend.pro	(working copy) +@@ -15,7 +15,7 @@ + setting.files += util_menu.xml info_settings.xml main_settings.xml + setting.files += recpriorities_settings.xml tv_search.xml tv_lists.xml + setting.files += library.xml manage_recordings.xml optical_menu.xml tvmenu.xml +-setting.files += tv_settings.xml ++setting.files += tv_settings.xml MFEXML_scpd.xml + setting.extra = -ldconfig +  + INSTALLS += setting +@@ -26,13 +26,13 @@ + HEADERS += manualbox.h playbackbox.h viewscheduled.h globalsettings.h + HEADERS += manualschedule.h programrecpriority.h channelrecpriority.h + HEADERS += statusbox.h networkcontrol.h custompriority.h +-HEADERS += mediarenderer.h ++HEADERS += mediarenderer.h mythfexml.h + HEADERS += mythappearance.h +  + SOURCES += main.cpp manualbox.cpp playbackbox.cpp viewscheduled.cpp + SOURCES += globalsettings.cpp manualschedule.cpp programrecpriority.cpp  + SOURCES += channelrecpriority.cpp statusbox.cpp networkcontrol.cpp +-SOURCES += mediarenderer.cpp ++SOURCES += mediarenderer.cpp mythfexml.cpp + SOURCES += custompriority.cpp + SOURCES += mythappearance.cpp +  +Index: programs/mythfrontend/mythfexml.cpp +=================================================================== +--- programs/mythfrontend/mythfexml.cpp	(revision 0) ++++ programs/mythfrontend/mythfexml.cpp	(revision 0) +@@ -0,0 +1,135 @@ ++////////////////////////////////////////////////////////////////////////////// ++// Program Name: MythXML.cpp ++//                                                                             ++// Purpose - Html & XML status HttpServerExtension ++//                                                                             ++// Created By  : David Blain                    Created On : Oct. 24, 2005 ++// Modified By : Daniel Kristjansson            Modified On: Oct. 31, 2007 ++//                                                                             ++////////////////////////////////////////////////////////////////////////////// ++ ++#include "mythfexml.h" ++ ++#include "libmyth/mythcontext.h" ++#include "libmyth/util.h" ++#include "libmyth/mythdbcon.h" ++ ++#include "mythmainwindow.h" ++ ++#include <qtextstream.h> ++#include <qdir.h> ++#include <qfile.h> ++#include <qregexp.h> ++#include <qbuffer.h> ++#include <math.h> ++ ++#include "../../config.h" ++ ++///////////////////////////////////////////////////////////////////////////// ++// ++///////////////////////////////////////////////////////////////////////////// ++ ++MythFEXML::MythFEXML( UPnpDevice *pDevice ) : Eventing( "MythFEXML", "MYTHTV_Event" ) ++{ ++ ++    QString sUPnpDescPath = UPnp::g_pConfig->GetValue( "UPnP/DescXmlPath", m_sSharePath ); ++ ++    m_sServiceDescFileName = sUPnpDescPath + "MFEXML_scpd.xml"; ++    m_sControlUrl          = "/MythFE"; ++ ++    // Add our Service Definition to the device. ++ ++    RegisterService( pDevice ); ++} ++ ++///////////////////////////////////////////////////////////////////////////// ++// ++///////////////////////////////////////////////////////////////////////////// ++ ++MythFEXML::~MythFEXML() ++{ ++} ++ ++///////////////////////////////////////////////////////////////////////////// ++// ++///////////////////////////////////////////////////////////////////////////// ++ ++MythFEXMLMethod MythFEXML::GetMethod( const QString &sURI ) ++{ ++    if (sURI == "GetScreenShot"        ) return MFEXML_GetScreenShot; ++ ++    return( MFEXML_Unknown ); ++} ++ ++///////////////////////////////////////////////////////////////////////////// ++// ++///////////////////////////////////////////////////////////////////////////// ++ ++bool MythFEXML::ProcessRequest( HttpWorkerThread *pThread, HTTPRequest *pRequest ) ++{ ++    try ++    { ++        if (pRequest) ++        { ++            if (pRequest->m_sBaseUrl != m_sControlUrl) ++                return( false ); ++ ++            VERBOSE(VB_UPNP, QString("MythFEXML::ProcessRequest: %1 : %2") ++			             .arg(pRequest->m_sMethod) ++				     .arg(pRequest->m_sRawRequest)); ++ ++            switch( GetMethod( pRequest->m_sMethod )) ++            { ++		case MFEXML_GetScreenShot      : GetScreenShot    ( pRequest ); return true; ++ ++ ++                default:  ++                { ++                    UPnp::FormatErrorResponse( pRequest, UPnPResult_InvalidAction ); ++ ++                    return true; ++                } ++            } ++        } ++    } ++    catch( ... ) ++    { ++        VERBOSE( VB_IMPORTANT, "MythFEXML::ProcessRequest() - Unexpected Exception" ); ++    } ++ ++    return( false ); ++}            ++ ++// ========================================================================== ++// Request handler Methods ++// ========================================================================== ++ ++///////////////////////////////////////////////////////////////////////////// ++// ++///////////////////////////////////////////////////////////////////////////// ++ ++void MythFEXML::GetScreenShot( HTTPRequest *pRequest ) ++{ ++    bool bDefaultPixmap = false; ++ ++    pRequest->m_eResponseType   = ResponseTypeFile; ++ ++    // Optional Parameters ++ ++    int     nWidth    = pRequest->m_mapParams[ "Width"     ].toInt(); ++    int     nHeight   = pRequest->m_mapParams[ "Height"    ].toInt(); ++ ++    // Read Icon file path from database ++ ++    QString sFileName = "/tmp/moo.jpg"; ++ ++ ++    if (!gContext->GetMainWindow()->screenShot(sFileName,nWidth, nHeight)) ++    { ++        VERBOSE(VB_GENERAL, "MythFEXML: Failed to take screenshot. Aborting"); ++	return; ++    } ++ ++    pRequest->m_sFileName = sFileName; ++} ++ diff --git a/abs/mv-core/myth/release-fixes/mythtv-release-fixes/screenshots2.diff b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/screenshots2.diff new file mode 100644 index 0000000..64ce08c --- /dev/null +++ b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/screenshots2.diff @@ -0,0 +1,467 @@ +Index: libs/libmythui/mythmainwindow.cpp +=================================================================== +--- libs/libmythui/mythmainwindow.cpp	(revision 16103) ++++ libs/libmythui/mythmainwindow.cpp	(working copy) +@@ -8,6 +8,8 @@ + #include <qpaintdevicemetrics.h> + #include <qdir.h> + #include <qfile.h> ++#include <math.h> ++ + #ifdef QWS + #include <qwindowsystem_qws.h> + #endif +@@ -504,6 +507,83 @@ +     d->repaintRegion = d->repaintRegion.unite(pe->region()); + } +  ++bool MythMainWindow::screenShot(QString fname, int x, int y, int x2, int y2, int w, int h) ++{ ++    bool ret = false; ++ ++    QString extension = fname.section('.', -1, -1); ++    if (extension == "jpg") ++        extension = "JPEG"; ++    else  ++        extension = "PNG"; ++ ++    VERBOSE(VB_GENERAL, QString("MythMainWindow::screenShot saving winId %1 to %2 (%3 x %4) [ %5/%6 - %7/%8] type %9") ++		        .arg(QApplication::desktop()->winId()) ++			.arg(fname) ++			.arg(w) ++			.arg(h) ++			.arg(x) ++			.arg(y) ++			.arg(x2) ++			.arg(y2) ++			.arg(extension)); ++ ++    QPixmap p; ++    p = QPixmap::grabWindow( QApplication::desktop()->winId(), x, y, x2, y2); ++ ++    QImage img = p.convertToImage(); ++ ++    if ( w == 0 ) ++        w = img.width(); ++ ++    if ( h == 0 ) ++        h = img.height(); ++ ++    VERBOSE(VB_GENERAL, QString("Scaling to %1 x %2 from %3 x %4") ++		    .arg(w) ++		    .arg(h) ++		    .arg(img.width()) ++		    .arg(img.height())); ++ ++    img = img.smoothScale( w, h , QImage::ScaleMin); ++         ++    if (img.save(fname ,extension,100)) ++    { ++        VERBOSE(VB_GENERAL, "MythMainWindow::screenShot succeeded"); ++	ret = true; ++    } ++    else  ++    { ++	VERBOSE(VB_GENERAL, "MythMainWindow::screenShot Failed!"); ++	ret = false; ++    } ++ ++    return ret; ++} ++ ++bool MythMainWindow::screenShot(int x, int y, int x2, int y2) ++{ ++    QString fPath = gContext->GetSetting("ScreenShotPath","/tmp/"); ++    QString fName = QString("/%1/myth-screenshot-%2.png") ++	            .arg(fPath) ++	            .arg(QDateTime::currentDateTime().toString("yyyy-mm-ddThh-mm-ss.zzz")); ++ ++    return screenShot(fName, x, y, x2, y2, 0, 0); ++} ++ ++bool MythMainWindow::screenShot(QString fname, int w, int h) ++{ ++    QRect sLoc = qApp->mainWidget()->geometry(); ++    return screenShot(fname, sLoc.left(),sLoc.top(), sLoc.width(), sLoc.height(), w, h); ++} ++ ++ ++bool MythMainWindow::screenShot(void) ++{ ++    QRect sLoc = qApp->mainWidget()->geometry(); ++    return screenShot(sLoc.left(),sLoc.top(), sLoc.width(), sLoc.height()); ++} ++ + #ifdef USING_APPLEREMOTE + // This may be possible via installEventFilter() instead? +  +Index: libs/libmythui/mythmainwindow.h +=================================================================== +--- libs/libmythui/mythmainwindow.h	(revision 16103) ++++ libs/libmythui/mythmainwindow.h	(working copy) +@@ -101,6 +101,11 @@ +  +     MythPainter *GetCurrentPainter(); +  ++    bool screenShot(QString fname, int x, int y, int x2, int y2, int w, int h); ++    bool screenShot(int x, int y, int x2, int y2); ++    bool screenShot(QString fname, int w, int h); ++    bool screenShot(void); ++ +     void AllowInput(bool allow); +  +     QRect GetUIScreenRect(); +Index: programs/mythfrontend/mediarenderer.cpp +=================================================================== +--- programs/mythfrontend/mediarenderer.cpp	(revision 16103) ++++ programs/mythfrontend/mediarenderer.cpp	(working copy) +@@ -9,6 +9,7 @@ + ///////////////////////////////////////////////////////////////////////////// +  + #include "mediarenderer.h" ++#include "mythfexml.h" + #include "compat.h" +  + ///////////////////////////////////////////////////////////////////////////// +@@ -89,6 +90,11 @@ +                                  "http-get:*:video/mpeg:*," +                                  "http-get:*:video/nupplevideo:*," +                                  "http-get:*:video/x-ms-wmv:*"; ++        // ------------------------------------------------------------------ ++        // Register the MythFEXML protocol...  ++        // ------------------------------------------------------------------ ++        VERBOSE(VB_UPNP, "MediaRenderer::Registering MythFEXML Service." ); ++        m_pHttpServer->RegisterExtension( new MythFEXML( RootDevice() )); +  +         // VERBOSE(VB_UPNP, QString( "MediaRenderer::Registering AVTransport Service." )); +         // m_pHttpServer->RegisterExtension( m_pUPnpAVT = new UPnpAVTransport( RootDevice() )); +Index: programs/mythfrontend/MFEXML_scpd.xml +=================================================================== +--- programs/mythfrontend/MFEXML_scpd.xml	(revision 0) ++++ programs/mythfrontend/MFEXML_scpd.xml	(revision 0) +@@ -0,0 +1,34 @@ ++<?xml version="1.0" encoding="utf-8"?>
 ++<scpd xmlns="urn:schemas-upnp-org:service-1-0">
 ++   <specVersion>
 ++      <major>1</major>
 ++      <minor>0</minor>
 ++   </specVersion>
 ++   <actionList>
 ++      <action>
 ++         <name>GetScreenShot</name>
 ++         <argumentList>
 ++            <argument>
 ++               <name>Height</name>
 ++               <direction>in</direction>
 ++               <relatedStateVariable>A_ARG_TYPE_Height</relatedStateVariable>
 ++            </argument>
 ++            <argument>
 ++               <name>Width</name>
 ++               <direction>in</direction>
 ++               <relatedStateVariable>A_ARG_TYPE_Width</relatedStateVariable>
 ++            </argument>
 ++         </argumentList>
 ++      </action>
 ++   </actionList>
 ++   <serviceStateTable>
 ++      <stateVariable sendEvents="no">
 ++         <name>A_ARG_TYPE_Height</name>
 ++         <dataType>i2</dataType>
 ++      </stateVariable>
 ++      <stateVariable sendEvents="no">
 ++         <name>A_ARG_TYPE_Width</name>
 ++         <dataType>i2</dataType>
 ++      </stateVariable>
 ++   </serviceStateTable>
 ++</scpd>
 +Index: programs/mythfrontend/globalsettings.cpp +=================================================================== +--- programs/mythfrontend/globalsettings.cpp	(revision 16103) ++++ programs/mythfrontend/globalsettings.cpp	(working copy) +@@ -2220,6 +2220,15 @@ +     return ge; + } +  ++static HostLineEdit *ScreenShotPath() ++{ ++    HostLineEdit *ge = new HostLineEdit("ScreenShotPath"); ++    ge->setLabel(QObject::tr("ScreenShotPath")); ++    ge->setValue("/tmp/"); ++    ge->setHelpText(QObject::tr("Path to screenshot storage location. Should be writable by the frontend")); ++    return ge; ++} ++ + static HostCheckBox *UseArrowAccels() + { +     HostCheckBox *gc = new HostCheckBox("UseArrowAccels"); +@@ -4502,6 +4511,7 @@ +     MythMediaSettings *mediaMon = new MythMediaSettings(); +  +     general->addChild(LircKeyPressedApp()); ++    general->addChild(ScreenShotPath()); +     general->addChild(row); +     general->addChild(NetworkControlPort()); +     general->addChild(mediaMon); +Index: programs/mythfrontend/mythfexml.h +=================================================================== +--- programs/mythfrontend/mythfexml.h	(revision 0) ++++ programs/mythfrontend/mythfexml.h	(revision 0) +@@ -0,0 +1,66 @@ ++////////////////////////////////////////////////////////////////////////////// ++// Program Name: mythxml.h ++//                                                                             ++// Purpose - Myth Frontend XML protocol HttpServerExtension  ++//                                                                             ++////////////////////////////////////////////////////////////////////////////// ++ ++#ifndef MYTHFEXML_H_ ++#define MYTHFEXML_H_ ++ ++#include <qdom.h> ++#include <qdatetime.h>  ++ ++#include "upnp.h" ++#include "eventing.h" ++#include "mythcontext.h" ++ ++typedef enum  ++{ ++    MFEXML_Unknown                =  0, ++    MFEXML_GetScreenShot          =  1 ++ ++} MythFEXMLMethod; ++ ++class MythFEXML : public Eventing ++{ ++    private: ++ ++        QString                      m_sControlUrl; ++        QString                      m_sServiceDescFileName; ++ ++    protected: ++ ++        // Implement UPnpServiceImpl methods that we can ++ ++        virtual QString GetServiceType      () { return "urn:schemas-mythtv-org:service:MythTv:1"; } ++        virtual QString GetServiceId        () { return "urn:mythtv-org:serviceId:MYTHTV_1-0"; } ++        virtual QString GetServiceControlURL() { return m_sControlUrl.mid( 1 ); } ++        virtual QString GetServiceDescURL   () { return m_sControlUrl.mid( 1 ) + "/GetServDesc"; } ++ ++    private: ++ ++        MythFEXMLMethod GetMethod( const QString &sURI ); ++ ++	void    GetScreenShot    ( HTTPRequest *pRequest ); ++ ++    public: ++                 MythFEXML( UPnpDevice *pDevice ); ++        virtual ~MythFEXML(); ++ ++        bool     ProcessRequest( HttpWorkerThread *pThread, HTTPRequest *pRequest ); ++ ++        // Static methods shared with HttpStatus ++ ++}; ++ ++///////////////////////////////////////////////////////////////////////////// ++///////////////////////////////////////////////////////////////////////////// ++// ++//  ++// ++///////////////////////////////////////////////////////////////////////////// ++///////////////////////////////////////////////////////////////////////////// ++#endif ++ ++ +Index: programs/mythfrontend/main.cpp +=================================================================== +--- programs/mythfrontend/main.cpp	(revision 16103) ++++ programs/mythfrontend/main.cpp	(working copy) +@@ -800,6 +800,11 @@ +     } + } +  ++void getScreenShot(void) ++{ ++    (void) gContext->GetMainWindow()->screenShot(); ++} ++ + void InitJumpPoints(void) + { +     REG_JUMP("Reload Theme", "", "", reloadTheme); +@@ -818,6 +823,8 @@ +     REG_JUMP("Status Screen", "", "", showStatus); +     REG_JUMP("Previously Recorded", "", "", startPrevious); +  ++    REG_JUMPEX("ScreenShot","","",getScreenShot,false); ++ +     REG_KEY("qt", "DELETE", "Delete", "D"); +     REG_KEY("qt", "EDIT", "Edit", "E"); +  +Index: programs/mythfrontend/mythfrontend.pro +=================================================================== +--- programs/mythfrontend/mythfrontend.pro	(revision 16103) ++++ programs/mythfrontend/mythfrontend.pro	(working copy) +@@ -15,7 +15,7 @@ + setting.files += util_menu.xml info_settings.xml main_settings.xml + setting.files += recpriorities_settings.xml tv_search.xml tv_lists.xml + setting.files += library.xml manage_recordings.xml optical_menu.xml tvmenu.xml +-setting.files += tv_settings.xml ++setting.files += tv_settings.xml MFEXML_scpd.xml + setting.extra = -ldconfig +  + INSTALLS += setting +@@ -26,13 +26,13 @@ + HEADERS += manualbox.h playbackbox.h viewscheduled.h globalsettings.h + HEADERS += manualschedule.h programrecpriority.h channelrecpriority.h + HEADERS += statusbox.h networkcontrol.h custompriority.h +-HEADERS += mediarenderer.h ++HEADERS += mediarenderer.h mythfexml.h + HEADERS += mythappearance.h +  + SOURCES += main.cpp manualbox.cpp playbackbox.cpp viewscheduled.cpp + SOURCES += globalsettings.cpp manualschedule.cpp programrecpriority.cpp  + SOURCES += channelrecpriority.cpp statusbox.cpp networkcontrol.cpp +-SOURCES += mediarenderer.cpp ++SOURCES += mediarenderer.cpp mythfexml.cpp + SOURCES += custompriority.cpp + SOURCES += mythappearance.cpp +  +Index: programs/mythfrontend/mythfexml.cpp +=================================================================== +--- programs/mythfrontend/mythfexml.cpp	(revision 0) ++++ programs/mythfrontend/mythfexml.cpp	(revision 0) +@@ -0,0 +1,133 @@ ++////////////////////////////////////////////////////////////////////////////// ++// Program Name: MythXML.cpp ++//                                                                             ++// Purpose - Html & XML status HttpServerExtension ++//                                                                             ++// Created By  : David Blain                    Created On : Oct. 24, 2005 ++// Modified By : Daniel Kristjansson            Modified On: Oct. 31, 2007 ++//                                                                             ++////////////////////////////////////////////////////////////////////////////// ++ ++#include "mythfexml.h" ++ ++#include "libmyth/mythcontext.h" ++#include "libmyth/util.h" ++#include "libmyth/mythdbcon.h" ++ ++#include "mythmainwindow.h" ++ ++#include <qtextstream.h> ++#include <qdir.h> ++#include <qfile.h> ++#include <qregexp.h> ++#include <qbuffer.h> ++#include <math.h> ++ ++#include "../../config.h" ++ ++///////////////////////////////////////////////////////////////////////////// ++// ++///////////////////////////////////////////////////////////////////////////// ++ ++MythFEXML::MythFEXML( UPnpDevice *pDevice ) : Eventing( "MythFEXML", "MYTHTV_Event" ) ++{ ++ ++    QString sUPnpDescPath = UPnp::g_pConfig->GetValue( "UPnP/DescXmlPath", m_sSharePath ); ++ ++    m_sServiceDescFileName = sUPnpDescPath + "MFEXML_scpd.xml"; ++    m_sControlUrl          = "/MythFE"; ++ ++    // Add our Service Definition to the device. ++ ++    RegisterService( pDevice ); ++} ++ ++///////////////////////////////////////////////////////////////////////////// ++// ++///////////////////////////////////////////////////////////////////////////// ++ ++MythFEXML::~MythFEXML() ++{ ++} ++ ++///////////////////////////////////////////////////////////////////////////// ++// ++///////////////////////////////////////////////////////////////////////////// ++ ++MythFEXMLMethod MythFEXML::GetMethod( const QString &sURI ) ++{ ++    if (sURI == "GetScreenShot"        ) return MFEXML_GetScreenShot; ++ ++    return( MFEXML_Unknown ); ++} ++ ++///////////////////////////////////////////////////////////////////////////// ++// ++///////////////////////////////////////////////////////////////////////////// ++ ++bool MythFEXML::ProcessRequest( HttpWorkerThread *pThread, HTTPRequest *pRequest ) ++{ ++    try ++    { ++        if (pRequest) ++        { ++            if (pRequest->m_sBaseUrl != m_sControlUrl) ++                return( false ); ++ ++            VERBOSE(VB_UPNP, QString("MythFEXML::ProcessRequest: %1 : %2") ++			             .arg(pRequest->m_sMethod) ++				     .arg(pRequest->m_sRawRequest)); ++ ++            switch( GetMethod( pRequest->m_sMethod )) ++            { ++		case MFEXML_GetScreenShot      : GetScreenShot    ( pRequest ); return true; ++ ++ ++                default:  ++                { ++                    UPnp::FormatErrorResponse( pRequest, UPnPResult_InvalidAction ); ++ ++                    return true; ++                } ++            } ++        } ++    } ++    catch( ... ) ++    { ++        VERBOSE( VB_IMPORTANT, "MythFEXML::ProcessRequest() - Unexpected Exception" ); ++    } ++ ++    return( false ); ++}            ++ ++// ========================================================================== ++// Request handler Methods ++// ========================================================================== ++ ++///////////////////////////////////////////////////////////////////////////// ++// ++///////////////////////////////////////////////////////////////////////////// ++ ++void MythFEXML::GetScreenShot( HTTPRequest *pRequest ) ++{ ++    pRequest->m_eResponseType   = ResponseTypeFile; ++ ++    // Optional Parameters ++ ++    int     nWidth    = pRequest->m_mapParams[ "Width"     ].toInt(); ++    int     nHeight   = pRequest->m_mapParams[ "Height"    ].toInt(); ++ ++    // Read Icon file path from database ++ ++    QString sFileName = QString("/%1/myth-screenshot-XML.jpg") ++                    .arg(gContext->GetSetting("ScreenShotPath","/tmp/")); ++ ++    if (!gContext->GetMainWindow()->screenShot(sFileName,nWidth, nHeight)) ++    { ++        VERBOSE(VB_GENERAL, "MythFEXML: Failed to take screenshot. Aborting"); ++	return; ++    } ++ ++    pRequest->m_sFileName = sFileName; ++} ++ diff --git a/abs/mv-core/myth/release-fixes/mythtv-release-fixes/smolt_jump.patch b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/smolt_jump.patch new file mode 100644 index 0000000..ca9bd08 --- /dev/null +++ b/abs/mv-core/myth/release-fixes/mythtv-release-fixes/smolt_jump.patch @@ -0,0 +1,10 @@ +--- programs/mythfrontend/networkcontrol.cpp.orig	2008-03-23 23:00:25.000000000 +0000 ++++ programs/mythfrontend/networkcontrol.cpp	2008-03-23 23:01:33.000000000 +0000 +@@ -81,6 +81,7 @@ +     jumpMap["zoneminderliveview"]    = "ZoneMinder Live View"; +     jumpMap["zoneminderevents"]      = "ZoneMinder Events"; +     jumpMap["snapshot"]              = "ScreenShot"; ++    jumpMap["mythsmolt"]             = "MythSmolt"; +  +     // These jump point names match the (lowercased) locations from gContext +     jumpMap["channelrecpriority"]    = "Channel Recording Priorities"; diff --git a/abs/mv-core/myth/release-fixes/mythtv-themes/PKGBUILD b/abs/mv-core/myth/release-fixes/mythtv-themes/PKGBUILD new file mode 100755 index 0000000..5e6928c --- /dev/null +++ b/abs/mv-core/myth/release-fixes/mythtv-themes/PKGBUILD @@ -0,0 +1,36 @@ +pkgname=mythtv-themes-release-fixes +pkgver=15931                            +pkgrel=4 +pkgdesc="themes for mythtv"  +url="http://www.mythtv.org"  +license="GPL"  +depends=( )  +#makedepends=('sqlite3' 'sed')  +conflicts=()  +replaces=()  +backup=()  +#install='mythtv.install'  +source=()  +arch=('i686') +md5sums=()  +_svntrunk=http://svn.mythtv.org/svn/branches/release-0-21-fixes/myththemes +_svnmod=myththemes + +build() {  +echo svn co $_svntrunk --config-dir ./ -r $pkgver $_svnmod + svn co $_svntrunk --config-dir ./ -r $pkgver $_svnmod +#svn co http://cvs.mythtv.org/svn/trunk/mythtv +#svn co http://cvs.mythtv.org/svn/trunk/mythplugins +#svn co http://cvs.mythtv.org/svn/trunk/myththemes +cd $startdir/src/myththemes +   make distclean +    ./configure   +    #./configure --disable-all --enable-mythweather --enable-fftw --disable-aac   +   make  || return 1 +   make INSTALL_ROOT=$startdir/pkg install +#   cd $startdir/src/$pkgname +#   cd mythmovietime +#   make || return 1 +#   make INSTALL_ROOT=$startdir/pkg install + +} diff --git a/abs/mv-core/myth/release-fixes/plugins/mytharchive/PKGBUILD b/abs/mv-core/myth/release-fixes/plugins/mytharchive/PKGBUILD new file mode 100644 index 0000000..2d6edc1 --- /dev/null +++ b/abs/mv-core/myth/release-fixes/plugins/mytharchive/PKGBUILD @@ -0,0 +1,41 @@ +pkgname=mytharchive-release-fixes +pkgver=17719 +pkgrel=6 +pkgdesc="MythTV plugin that lets you create DVDs from or archive your recorded shows." +arch=('i686') +url="http://www.mythtv.org" +license=('GPL') +depends=('mythtv-release-fixes' 'libxmu' 'mysql-python' 'pil' 'dvdauthor' 'cdrkit' 'dvd+rw-tools' 'mjpegtools' 'transcode' ) +source=() +groups=('mythtv-all-plugins-release-fixes') +#_svntrunk=http://cvs.mythtv.org/svn/trunk/mythplugins +_svntrunk=http://svn.mythtv.org/svn/branches/release-0-21-fixes/mythplugins +_svnmod=mythplugins + + +build() { +   	PLUGIN=mytharchive +   	cd $startdir/src/ +   	svn co $_svntrunk --config-dir ./ -r $pkgver $_svnmod +   	cd $startdir/src/mythplugins + +   	PLUGIN=mytharchive +   	grep -q  programs-libs.pro  $PLUGIN/$PLUGIN/$PLUGIN.pro +	if [ $? != 0 ] +	then +		echo "include ( ../../programs-libs.pro )" >> $PLUGIN/$PLUGIN/$PLUGIN.pro +		msg "appending program lib" +	fi +	msg "Correcting configure    kde3 to kde" +	 sed -i 's#kde3#kde#' configure || return 1 +	make distclean +   	./configure  --enable-opengl --disable-all   --enable-create-archive --enable-create-dvd --enable-mytharchive || return 1 +	qmake mythplugins.pro || return 1 +	make qmake || return 1 +	msg "Correcting Makefile    kde3 to kde" +	sed -i 's#kde3#kde#' ./mytharchive/mytharchive/Makefile || return 1 +   	make -j 2 || return 1 +	make INSTALL_ROOT=$startdir/pkg install +} + + diff --git a/abs/mv-core/myth/release-fixes/plugins/mythbrowser/PKGBUILD b/abs/mv-core/myth/release-fixes/plugins/mythbrowser/PKGBUILD new file mode 100644 index 0000000..0a1b29e --- /dev/null +++ b/abs/mv-core/myth/release-fixes/plugins/mythbrowser/PKGBUILD @@ -0,0 +1,34 @@ + +pkgname=mythbrowser-release-fixes +pkgver=17284 +pkgrel=2 +pkgdesc="Mini web browser for MythTV" +url="http://www.mythtv.org" +arch=('i686') +depends=('mythtv-release-fixes' 'wget' 'libxvmc' 'kdelibs3') +conflicts=('mythtv-plugins-release-fixes') +groups=('mythtv-all-plugins-release-fixes') +license="GPL" +source=() +_svntrunk=http://svn.mythtv.org/svn/branches/release-0-21-fixes/mythplugins +_svnmod=mythplugins +build() { +   cd $startdir/src/ +	echo svn co $_svntrunk --config-dir ./ -r $pkgver $_svnmod + 	svn co $_svntrunk --config-dir ./ -r $pkgver $_svnmod +   cd $startdir/src/mythplugins +   pwd +   PLUGIN=mythbrowser +   grep -q  programs-libs.pro  $PLUGIN/$PLUGIN/$PLUGIN.pro +   if [ $? != 0 ] +   then +	   	echo "include ( ../../programs-libs.pro )" >> $PLUGIN/$PLUGIN/$PLUGIN.pro +			msg "appending program lib" +		fi +	make distclean +   ./configure  --enable-opengl --disable-all --enable-mythbrowser || return 1 + #  sed -i 's#kde3#kde#' ./mythbrowser/mythbrowser/Makefile || return 1 +   make || return 1 + +   make INSTALL_ROOT=$startdir/pkg install +} diff --git a/abs/mv-core/myth/release-fixes/plugins/mythcontrols/PKGBUILD b/abs/mv-core/myth/release-fixes/plugins/mythcontrols/PKGBUILD new file mode 100644 index 0000000..31b1e73 --- /dev/null +++ b/abs/mv-core/myth/release-fixes/plugins/mythcontrols/PKGBUILD @@ -0,0 +1,36 @@ +pkgname=mythcontrols-release-fixes +pkgver=17719 +pkgrel=5 +pkgdesc="Experimental controls for MythTV" +url="http://www.mythtv.org" +arch=('i686') +depends=('mythtv'-release-fixes) +conflicts=('mythtv-plugins-release-fixes') +groups=('mythtv-all-plugins-release-fixes') +license="GPL" +source=() +_svntrunk=http://svn.mythtv.org/svn/branches/release-0-21-fixes/mythplugins +_svntrunk=http://svn.mythtv.org/svn/branches/release-0-21-fixes/mythplugins +_svnmod=mythplugins + + +build() { +	cd $startdir/src/ +	echo svn co $_svntrunk --config-dir ./ -r $pkgver $_svnmod + 	svn co $_svntrunk --config-dir ./ -r $pkgver $_svnmod +	cd $startdir/src/mythplugins +PLUGIN=mythcontrols +grep -q  programs-libs.pro  $PLUGIN/$PLUGIN/$PLUGIN.pro +if [ $? != 0 ] +then +		echo "include ( ../../programs-libs.pro )" >> $PLUGIN/$PLUGIN/$PLUGIN.pro +			msg "appending program lib" +		fi +	make distclean +   ./configure  --disable-all --enable-opengl --enable-mythcontrols + +   make -j 2 || return 1 + +   make INSTALL_ROOT=$startdir/pkg install +} + diff --git a/abs/mv-core/myth/release-fixes/plugins/mythflix/PKGBUILD b/abs/mv-core/myth/release-fixes/plugins/mythflix/PKGBUILD new file mode 100644 index 0000000..3e49073 --- /dev/null +++ b/abs/mv-core/myth/release-fixes/plugins/mythflix/PKGBUILD @@ -0,0 +1,36 @@ +pkgname=mythflix-release-fixes +pkgver=17719 +pkgrel=2 +pkgdesc="Netflix access plugin for MythTV" +url="http://www.mythtv.org" +arch=('i686') +depends=('mythtv-release-fixes') +conflicts=('mythtv-plugins-release-fixes') +groups=('mythtv-all-plugins-release-fixes') +license="GPL" +source=() +#_svntrunk=http://cvs.mythtv.org/svn/trunk/mythplugins +_svntrunk=http://svn.mythtv.org/svn/branches/release-0-21-fixes/mythplugins + +_svntrunk=http://svn.mythtv.org/svn/branches/release-0-21-fixes/mythplugins +_svnmod=mythplugins + +build() { +	cd $startdir/src/ +	echo svn co $_svntrunk --config-dir ./ -r $pkgver $_svnmod + 	svn co $_svntrunk --config-dir ./ -r $pkgver $_svnmod +	cd $startdir/src/mythplugins +	PLUGIN=mythflix +	grep -q  programs-libs.pro  $PLUGIN/$PLUGIN/$PLUGIN.pro +	if [ $? != 0 ] +	then +			echo "include ( ../../programs-libs.pro )" >> $PLUGIN/$PLUGIN/$PLUGIN.pro +				msg "appending program lib" +			fi +	make distclean +   ./configure  --disable-all --enable-opengl --enable-mythflix  + +   make -j 2 || return 1 + +   make INSTALL_ROOT=$startdir/pkg install +} diff --git a/abs/mv-core/myth/release-fixes/plugins/mythgallery/PKGBUILD b/abs/mv-core/myth/release-fixes/plugins/mythgallery/PKGBUILD new file mode 100644 index 0000000..4469148 --- /dev/null +++ b/abs/mv-core/myth/release-fixes/plugins/mythgallery/PKGBUILD @@ -0,0 +1,36 @@ +pkgname=mythgallery-release-fixes +pkgver=17719 +pkgrel=3 +pkgdesc="Image gallery plugin for MythTV" +url="http://www.mythtv.org" +arch=('i686') +depends=('mythtv-release-fixes' 'libexif' 'libtiff') +conflicts=('mythtv-plugins-release-fixes') +groups=('mythtv-all-plugins-release-fixes') +license="GPL" +source=() +_svntrunk=http://svn.mythtv.org/svn/branches/release-0-21-fixes/mythplugins +_svntrunk=http://svn.mythtv.org/svn/branches/release-0-21-fixes/mythplugins +_svnmod=mythplugins + +build() { +	cd $startdir/src/ +	echo svn co $_svntrunk --config-dir ./ -r $pkgver $_svnmod + 	svn co $_svntrunk --config-dir ./ -r $pkgver $_svnmod +	cd $startdir/src/mythplugins +	export QMAKESPEC='linux-g++' +	PLUGIN=mythgallery +	grep -q  programs-libs.pro  $PLUGIN/$PLUGIN/$PLUGIN.pro +	if [ $? != 0 ] +	then +			echo "include ( ../../programs-libs.pro )" >> $PLUGIN/$PLUGIN/$PLUGIN.pro +				msg "appending program lib" +			fi +	make distclean +   ./configure  --disable-all --enable-opengl --enable-mythgallery --enable-exif + +   make -j 2 || return 1 + +   make INSTALL_ROOT=$startdir/pkg install +} + diff --git a/abs/mv-core/myth/release-fixes/plugins/mythgame/PKGBUILD b/abs/mv-core/myth/release-fixes/plugins/mythgame/PKGBUILD new file mode 100644 index 0000000..d572df1 --- /dev/null +++ b/abs/mv-core/myth/release-fixes/plugins/mythgame/PKGBUILD @@ -0,0 +1,36 @@ +pkgname=mythgame-release-fixes +pkgver=17719 +pkgrel=4 +pkgdesc="Emulation plugin for MythTV" +url="http://www.mythtv.org" +arch=('i686') +depends=('mythtv-release-fixes' 'zlib') +conflicts=('mythtv-plugins-release-fixes') +groups=('mythtv-all-plugins-release-fixes') +license="GPL" +source=() +_svntrunk=http://svn.mythtv.org/svn/branches/release-0-21-fixes/mythplugins +_svntrunk=http://svn.mythtv.org/svn/branches/release-0-21-fixes/mythplugins +_svnmod=mythplugins + +build() { +	cd $startdir/src/ +	echo svn co $_svntrunk --config-dir ./ -r $pkgver $_svnmod + 	svn co $_svntrunk --config-dir ./ -r $pkgver $_svnmod +	cd $startdir/src/mythplugins +PLUGIN=mythgame +grep -q  programs-libs.pro  $PLUGIN/$PLUGIN/$PLUGIN.pro +if [ $? != 0 ] +then +		echo "include ( ../../programs-libs.pro )" >> $PLUGIN/$PLUGIN/$PLUGIN.pro +		msg	 "appending program lib" +		fi +	export QMAKESPEC='linux-g++' +	make distclean +   ./configure  --disable-all --enable-opengl --enable-mythgame  + +   make -j 2 || return 1 + +   make INSTALL_ROOT=$startdir/pkg install +} + diff --git a/abs/mv-core/myth/release-fixes/plugins/mythmovietime/PKGBUILD b/abs/mv-core/myth/release-fixes/plugins/mythmovietime/PKGBUILD new file mode 100644 index 0000000..f6945af --- /dev/null +++ b/abs/mv-core/myth/release-fixes/plugins/mythmovietime/PKGBUILD @@ -0,0 +1,35 @@ +pkgname=mythmovietime-release-fixes +pkgver=17284 +pkgrel=6 +pkgdesc="Emulation plugin for MythTV" +url="http://www.mythtv.org" +arch=('i686') +depends=('mythtv-release-fixes' 'zlib') +conflicts=('mythtv-plugins-release-fixes') +groups=('mythtv-all-plugins-release-fixes') +license="GPL" +source=() +_svntrunk=http://svn.mythtv.org/svn/branches/release-0-21-fixes/mythplugins +_svnmod=mythplugins + +build() { +	cd $startdir/src/ +	echo svn co $_svntrunk --config-dir ./ -r $pkgver $_svnmod + 	svn co $_svntrunk --config-dir ./ -r $pkgver $_svnmod +	cd $startdir/src/mythplugins +PLUGIN=mythmovietime +grep -q  programs-libs.pro  $PLUGIN/$PLUGIN/$PLUGIN.pro +if [ $? != 0 ] +then +		echo "include ( ../../programs-libs.pro )" >> $PLUGIN/$PLUGIN/$PLUGIN.pro +			msg "appending program lib" +		fi +	export QMAKESPEC='linux-g++' +	make distclean +   ./configure  --disable-all --enable-mythmovies  + +   make -j 2 || return 1 + +   make INSTALL_ROOT=$startdir/pkg install +} + diff --git a/abs/mv-core/myth/release-fixes/plugins/mythmusic/PKGBUILD b/abs/mv-core/myth/release-fixes/plugins/mythmusic/PKGBUILD new file mode 100644 index 0000000..de26f57 --- /dev/null +++ b/abs/mv-core/myth/release-fixes/plugins/mythmusic/PKGBUILD @@ -0,0 +1,39 @@ +pkgname=mythmusic-release-fixes +pkgver=17719 +pkgrel=9 +pkgdesc="Music playing plugin for MythTV" +url="http://www.mythtv.org" +arch=('i686' 'x86_64') + +depends=('mythtv-release-fixes ' 'libid3tag' 'flac>=1.1.4 ' 'a52dec' 'libcdaudio' 'libcddb' 'libdvdread' 'libid3tag' 'libmad' 'libogg'  'libtheora' 'libvorbis' 'taglib' 'libvisual' 'cdparanoia'   'sdl' 'faad2' 'lame' 'fftw2') + +conflicts=('mythtv-plugins-release-fixes') +groups=('mythtv-all-plugins-release-fixes') +license="GPL" +source=(gcc4.3.patch) +_svntrunk=http://svn.mythtv.org/svn/branches/release-0-21-fixes/mythplugins +_svnmod=mythplugins + +build() { +	cd $startdir/src/ +	make distclean +	echo svn co $_svntrunk --config-dir ./ -r $pkgver $_svnmod + 	svn co $_svntrunk --config-dir ./ -r $pkgver $_svnmod +	cd $startdir/src/mythplugins/mythmusic +	patch -p1 < ../../gcc4.3.patch +	cd $startdir/src/mythplugins +     ./configure  --disable-all --enable-mythmusic --enable-fftw --enable-sdl --disable-aac --enable-opengl  +PLUGIN=mythmusic +grep -q  programs-libs.pro  $PLUGIN/$PLUGIN/$PLUGIN.pro +if [ $? != 0 ] +then +		echo "include ( ../../programs-libs.pro )" >> $PLUGIN/$PLUGIN/$PLUGIN.pro +			msg "appending program lib" +		fi + +#   ./configure  --disable-all --enable-mythmusic   + +   make  || return 1 + +   make INSTALL_ROOT=$startdir/pkg install +} diff --git a/abs/mv-core/myth/release-fixes/plugins/mythmusic/gcc4.3.patch b/abs/mv-core/myth/release-fixes/plugins/mythmusic/gcc4.3.patch new file mode 100644 index 0000000..564c434 --- /dev/null +++ b/abs/mv-core/myth/release-fixes/plugins/mythmusic/gcc4.3.patch @@ -0,0 +1,37 @@ +Index: mythmusic/mythmusic/aacdecoder.cpp +=================================================================== +--- mythmusic/mythmusic/aacdecoder.cpp	(revision 17452) ++++ mythmusic/mythmusic/aacdecoder.cpp	(working copy) +@@ -19,6 +19,7 @@ + #include <qobject.h> + #include <qiodevice.h> + #include <qfile.h> ++#include <stdlib.h> +  + #include "aacdecoder.h" + #include "constants.h" +Index: mythmusic/mythmusic/aacdecoder.h +=================================================================== +--- mythmusic/mythmusic/aacdecoder.h	(revision 17452) ++++ mythmusic/mythmusic/aacdecoder.h	(working copy) +@@ -51,7 +51,7 @@ +     bool done, finish; +     long len, bitrate; +     uchar channels; +-    unsigned long sample_rate; ++    uint32_t sample_rate; +     unsigned long output_size; +     double totalTime, seekTime; +  +Index: mythmusic/mythmusic/metaiomp4.cpp +=================================================================== +--- mythmusic/mythmusic/metaiomp4.cpp	(revision 17452) ++++ mythmusic/mythmusic/metaiomp4.cpp	(working copy) +@@ -3,6 +3,7 @@ + #include <fcntl.h> + #include <unistd.h> + #include <sys/types.h> ++#include <stdlib.h> +  + using namespace std; +  diff --git a/abs/mv-core/myth/release-fixes/plugins/mythmusic/music_flac.patch b/abs/mv-core/myth/release-fixes/plugins/mythmusic/music_flac.patch new file mode 100644 index 0000000..b152249 --- /dev/null +++ b/abs/mv-core/myth/release-fixes/plugins/mythmusic/music_flac.patch @@ -0,0 +1,293 @@ +--- flacdecoder.cpp.old	2007-03-11 18:14:37.000000000 -0400 ++++ flacdecoder.cpp	2007-03-11 18:15:34.000000000 -0400 +@@ -17,7 +17,7 @@ +  + #include <qtimer.h> +  +-static FLAC__SeekableStreamDecoderReadStatus flacread(const FLAC__SeekableStreamDecoder *decoder, FLAC__byte bufferp[], unsigned *bytes, void *client_data) ++static FLAC__StreamDecoderReadStatus flacread(const FLAC__StreamDecoder *decoder, FLAC__byte bufferp[], unsigned *bytes, void *client_data) + { +     decoder = decoder; +  +@@ -26,27 +26,27 @@ +  +     if (len == -1) +     { +-        return FLAC__SEEKABLE_STREAM_DECODER_READ_STATUS_ERROR; ++        return FLAC__STREAM_DECODER_READ_STATUS_END_OF_STREAM; +     } +     +     *bytes = len; +-    return FLAC__SEEKABLE_STREAM_DECODER_READ_STATUS_OK; ++    return FLAC__STREAM_DECODER_READ_STATUS_CONTINUE; + } +  +-static FLAC__SeekableStreamDecoderSeekStatus flacseek(const FLAC__SeekableStreamDecoder *decoder, FLAC__uint64 absolute_byte_offset, void *client_data)  ++static FLAC__StreamDecoderSeekStatus flacseek(const FLAC__StreamDecoder *decoder, FLAC__uint64 absolute_byte_offset, void *client_data)  + { +     decoder = decoder; +     FlacDecoder *dflac = (FlacDecoder *)client_data; +  +     if (!dflac->input()->isDirectAccess()) +-        return FLAC__SEEKABLE_STREAM_DECODER_SEEK_STATUS_ERROR; ++        return FLAC__STREAM_DECODER_SEEK_STATUS_ERROR; +  +     if (dflac->input()->at(absolute_byte_offset)) +-        return FLAC__SEEKABLE_STREAM_DECODER_SEEK_STATUS_OK; +-    return FLAC__SEEKABLE_STREAM_DECODER_SEEK_STATUS_ERROR; ++        return FLAC__STREAM_DECODER_SEEK_STATUS_OK; ++    return FLAC__STREAM_DECODER_SEEK_STATUS_ERROR; + } +  +-static FLAC__SeekableStreamDecoderTellStatus flactell(const FLAC__SeekableStreamDecoder *decoder, FLAC__uint64 *absolute_byte_offset, void *client_data) ++static FLAC__StreamDecoderTellStatus flactell(const FLAC__StreamDecoder *decoder, FLAC__uint64 *absolute_byte_offset, void *client_data) + { +     decoder = decoder; +     FlacDecoder *dflac = (FlacDecoder *)client_data; +@@ -54,20 +54,20 @@ +     long t = dflac->input()->at(); +     *absolute_byte_offset = t; +  +-    return FLAC__SEEKABLE_STREAM_DECODER_TELL_STATUS_OK; ++    return FLAC__STREAM_DECODER_TELL_STATUS_OK; + } +  +-static FLAC__SeekableStreamDecoderLengthStatus flaclength(const FLAC__SeekableStreamDecoder *decoder, FLAC__uint64 *stream_length, void *client_data) ++static FLAC__StreamDecoderLengthStatus flaclength(const FLAC__StreamDecoder *decoder, FLAC__uint64 *stream_length, void *client_data) + { +     decoder = decoder; +  +     FlacDecoder *dflac = (FlacDecoder *)client_data; +  +     *stream_length = dflac->input()->size(); +-    return FLAC__SEEKABLE_STREAM_DECODER_LENGTH_STATUS_OK; ++    return FLAC__STREAM_DECODER_LENGTH_STATUS_OK; + } +  +-static FLAC__bool flaceof(const FLAC__SeekableStreamDecoder *decoder, void *client_data) ++static FLAC__bool flaceof(const FLAC__StreamDecoder *decoder, void *client_data) + { +     decoder = decoder; +  +@@ -76,7 +76,7 @@ +     return dflac->input()->atEnd(); + } +  +-static FLAC__StreamDecoderWriteStatus flacwrite(const FLAC__SeekableStreamDecoder *decoder, const FLAC__Frame *frame, const FLAC__int32 * const buffer[], void *client_data) ++static FLAC__StreamDecoderWriteStatus flacwrite(const FLAC__StreamDecoder *decoder, const FLAC__Frame *frame, const FLAC__int32 * const buffer[], void *client_data) + { +     decoder = decoder; +  +@@ -132,7 +132,7 @@ +     } + } +  +-static void flacmetadata(const FLAC__SeekableStreamDecoder *decoder, const FLAC__StreamMetadata *metadata, void *client_data) ++static void flacmetadata(const FLAC__StreamDecoder *decoder, const FLAC__StreamMetadata *metadata, void *client_data) + { +     decoder = decoder; +  +@@ -156,11 +156,11 @@ +     } + } +  +-static void flacerror(const FLAC__SeekableStreamDecoder *decoder, FLAC__StreamDecoderErrorStatus status, void *client_data) ++static void flacerror(const FLAC__StreamDecoder *decoder, FLAC__StreamDecoderErrorStatus status, void *client_data) + { +     decoder = decoder; +  +-    FLAC__FileDecoder *file_decoder = (FLAC__FileDecoder *)client_data; ++    FLAC__StreamDecoder *file_decoder = (FLAC__StreamDecoder *)client_data; +  +     file_decoder = file_decoder; +     status = status; +@@ -262,17 +262,8 @@ +         } +     } +  +-    decoder = FLAC__seekable_stream_decoder_new(); +-    FLAC__seekable_stream_decoder_set_md5_checking(decoder, false); +-    FLAC__seekable_stream_decoder_set_read_callback(decoder, flacread); +-    FLAC__seekable_stream_decoder_set_seek_callback(decoder, flacseek); +-    FLAC__seekable_stream_decoder_set_tell_callback(decoder, flactell); +-    FLAC__seekable_stream_decoder_set_length_callback(decoder, flaclength); +-    FLAC__seekable_stream_decoder_set_eof_callback(decoder, flaceof); +-    FLAC__seekable_stream_decoder_set_write_callback(decoder, flacwrite); +-    FLAC__seekable_stream_decoder_set_metadata_callback(decoder, flacmetadata); +-    FLAC__seekable_stream_decoder_set_error_callback(decoder, flacerror); +-    FLAC__seekable_stream_decoder_set_client_data(decoder, this); ++    decoder = FLAC__stream_decoder_new(); ++    FLAC__stream_decoder_set_md5_checking(decoder, false); +  +     freq = 0; +     bitrate = 0; +@@ -281,8 +272,17 @@ +     totalTime = 0;  +     totalTime = totalTime < 0 ? 0 : totalTime; +  +-    FLAC__seekable_stream_decoder_init(decoder); +-    FLAC__seekable_stream_decoder_process_until_end_of_metadata(decoder); ++    FLAC__stream_decoder_init_stream(decoder, ++                                     flacread, ++                                     flacseek, ++                                     flactell, ++                                     flaclength, ++                                     flaceof, ++                                     flacwrite, ++                                     flacmetadata, ++                                     flacerror, ++                                     this); ++    FLAC__stream_decoder_process_until_end_of_metadata(decoder); +  +     inited = TRUE; +     return TRUE; +@@ -295,8 +295,8 @@ +  + void FlacDecoder::deinit() + { +-    FLAC__seekable_stream_decoder_finish(decoder); +-    FLAC__seekable_stream_decoder_delete(decoder); ++    FLAC__stream_decoder_finish(decoder); ++    FLAC__stream_decoder_delete(decoder); +  +     if (input()->isOpen()) +         input()->close(); +@@ -330,7 +330,7 @@ +     } +  +     bool flacok = true; +-    FLAC__SeekableStreamDecoderState decoderstate; ++    FLAC__StreamDecoderState decoderstate; +  +     while (! done && ! finish) { +         lock(); +@@ -340,12 +340,12 @@ +             FLAC__uint64 sample = (FLAC__uint64)(seekTime * 44100.0); +             if (sample > totalsamples - 50) +                 sample = totalsamples - 50; +-            FLAC__seekable_stream_decoder_seek_absolute(decoder, sample); ++            FLAC__stream_decoder_seek_absolute(decoder, sample); +             seekTime = -1.0; +         } +  +-        flacok = FLAC__seekable_stream_decoder_process_single(decoder); +-        decoderstate = FLAC__seekable_stream_decoder_get_state(decoder); ++        flacok = FLAC__stream_decoder_process_single(decoder); ++        decoderstate = FLAC__stream_decoder_get_state(decoder); +  +         if (decoderstate == 0 || decoderstate == 1) +         { +--- flacdecoder.h.old	2007-03-11 18:14:37.000000000 -0400 ++++ flacdecoder.h	2007-03-11 18:14:12.000000000 -0400 +@@ -35,7 +35,7 @@ +     char *output_buf; +     ulong output_bytes, output_at; +  +-    FLAC__SeekableStreamDecoder *decoder; ++    FLAC__StreamDecoder *decoder; +  +     unsigned int bks; +     bool done, finish; +--- flacencoder.cpp.old	2007-03-11 18:14:37.000000000 -0400 ++++ flacencoder.cpp	2007-03-11 18:14:12.000000000 -0400 +@@ -9,7 +9,7 @@ + #include "flacencoder.h" + #include "metaioflacvorbiscomment.h" +  +-#include <FLAC/file_encoder.h> ++#include <FLAC/stream_encoder.h> + #include <FLAC/assert.h> + #include <mythtv/mythcontext.h> +  +@@ -29,32 +29,32 @@ +     int rice_parameter_search_dist = 0; +     int max_lpc_order = 8; +  +-    encoder = FLAC__file_encoder_new(); ++    encoder = FLAC__stream_encoder_new(); +  +-    FLAC__file_encoder_set_streamable_subset(encoder, true); +-    FLAC__file_encoder_set_do_mid_side_stereo(encoder, do_mid_side); +-    FLAC__file_encoder_set_loose_mid_side_stereo(encoder, loose_mid_side); +-    FLAC__file_encoder_set_channels(encoder, NUM_CHANNELS); +-    FLAC__file_encoder_set_bits_per_sample(encoder, 16); +-    FLAC__file_encoder_set_sample_rate(encoder, 44100); +-    FLAC__file_encoder_set_blocksize(encoder, blocksize); +-    FLAC__file_encoder_set_max_lpc_order(encoder, max_lpc_order); +-    FLAC__file_encoder_set_qlp_coeff_precision(encoder, qlp_coeff_precision); +-    FLAC__file_encoder_set_do_qlp_coeff_prec_search(encoder, false); +-    FLAC__file_encoder_set_do_escape_coding(encoder, do_escape_coding); +-    FLAC__file_encoder_set_do_exhaustive_model_search(encoder,  ++    FLAC__stream_encoder_set_streamable_subset(encoder, true); ++    FLAC__stream_encoder_set_do_mid_side_stereo(encoder, do_mid_side); ++    FLAC__stream_encoder_set_loose_mid_side_stereo(encoder, loose_mid_side); ++    FLAC__stream_encoder_set_channels(encoder, NUM_CHANNELS); ++    FLAC__stream_encoder_set_bits_per_sample(encoder, 16); ++    FLAC__stream_encoder_set_sample_rate(encoder, 44100); ++    FLAC__stream_encoder_set_blocksize(encoder, blocksize); ++    FLAC__stream_encoder_set_max_lpc_order(encoder, max_lpc_order); ++    FLAC__stream_encoder_set_qlp_coeff_precision(encoder, qlp_coeff_precision); ++    FLAC__stream_encoder_set_do_qlp_coeff_prec_search(encoder, false); ++    FLAC__stream_encoder_set_do_escape_coding(encoder, do_escape_coding); ++    FLAC__stream_encoder_set_do_exhaustive_model_search(encoder,  +                                                     do_exhaustive_model_search); +-    FLAC__file_encoder_set_min_residual_partition_order(encoder,  ++    FLAC__stream_encoder_set_min_residual_partition_order(encoder,  +                                                   min_residual_partition_order); +-    FLAC__file_encoder_set_max_residual_partition_order(encoder,  ++    FLAC__stream_encoder_set_max_residual_partition_order(encoder,  +                                                   max_residual_partition_order); +-    FLAC__file_encoder_set_rice_parameter_search_dist(encoder,  ++    FLAC__stream_encoder_set_rice_parameter_search_dist(encoder,  +                                                     rice_parameter_search_dist); +  +-    FLAC__file_encoder_set_filename(encoder, outfile.local8Bit()); ++     +  +-    int ret = FLAC__file_encoder_init(encoder); +-    if (ret != FLAC__FILE_ENCODER_OK) ++    int ret = FLAC__stream_encoder_init_file(encoder, outfile.local8Bit(), NULL, NULL); ++    if (ret != FLAC__STREAM_ENCODER_OK) +     { +         VERBOSE(VB_GENERAL, QString("Error initializing FLAC encoder." +                                     " Got return code: %1").arg(ret)); +@@ -70,8 +70,8 @@ +  +     if (encoder) +     { +-        FLAC__file_encoder_finish(encoder); +-        FLAC__file_encoder_delete(encoder); ++        FLAC__stream_encoder_finish(encoder); ++        FLAC__stream_encoder_delete(encoder); +     } +  +     if (metadata) +@@ -102,7 +102,7 @@ +  +         if(sampleindex == MAX_SAMPLES || (length == 0 && sampleindex > 0) )  +         { +-            if (!FLAC__file_encoder_process(encoder, ++            if (!FLAC__stream_encoder_process(encoder, +                                             (const FLAC__int32 * const *) input, +                                             sampleindex)) +             { +--- flacencoder.h.old	2007-03-11 18:14:37.000000000 -0400 ++++ flacencoder.h	2007-03-11 18:14:12.000000000 -0400 +@@ -4,7 +4,7 @@ + #include <qstring.h> +  + #define HAVE_INTTYPES_H +-#include <FLAC/file_encoder.h> ++#include <FLAC/stream_encoder.h> +  + #include "encoder.h" +  +@@ -21,7 +21,7 @@ +     int addSamples(int16_t *bytes, unsigned int len); +  +   private: +-    FLAC__FileEncoder *encoder; ++    FLAC__StreamEncoder *encoder; +     unsigned int sampleindex; +     FLAC__int32 inputin[NUM_CHANNELS][MAX_SAMPLES]; +     FLAC__int32 *input[NUM_CHANNELS]; diff --git a/abs/mv-core/myth/release-fixes/plugins/mythnews/PKGBUILD b/abs/mv-core/myth/release-fixes/plugins/mythnews/PKGBUILD new file mode 100644 index 0000000..ef46fd9 --- /dev/null +++ b/abs/mv-core/myth/release-fixes/plugins/mythnews/PKGBUILD @@ -0,0 +1,34 @@ +pkgname=mythnews-release-fixes +pkgver=17719 +pkgrel=4 +pkgdesc="News checking plugin for MythTV" +url="http://www.mythtv.org" +arch=('i686') +depends=('mythtv-release-fixes') +conflicts=('mythtv-plugins-release-fixes') +groups=('mythtv-all-plugins-release-fixes') +license="GPL" +source=() +_svntrunk=http://svn.mythtv.org/svn/branches/release-0-21-fixes/mythplugins +_svntrunk=http://svn.mythtv.org/svn/branches/release-0-21-fixes/mythplugins +_svnmod=mythplugins +build() { +	cd $startdir/src/ +	echo svn co $_svntrunk --config-dir ./ -r $pkgver $_svnmod + 	svn co $_svntrunk --config-dir ./ -r $pkgver $_svnmod +	cd $startdir/src/mythplugins +	PLUGIN=mythnews +	grep -q  programs-libs.pro  $PLUGIN/$PLUGIN/$PLUGIN.pro +	if [ $? != 0 ] +	then +			echo "include ( ../../programs-libs.pro )" >> $PLUGIN/$PLUGIN/$PLUGIN.pro +				msg "appending program lib" +			fi +	make distclean +   ./configure --disable-all --enable-mythnews + +   make -j 2 || return 1 + +   make INSTALL_ROOT=$startdir/pkg install +} +md5sums=('2a9fbf45ae58a3a35857ce8d7c4d12db') diff --git a/abs/mv-core/myth/release-fixes/plugins/mythphone/PKGBUILD b/abs/mv-core/myth/release-fixes/plugins/mythphone/PKGBUILD new file mode 100644 index 0000000..0311916 --- /dev/null +++ b/abs/mv-core/myth/release-fixes/plugins/mythphone/PKGBUILD @@ -0,0 +1,42 @@ +pkgname=mythphone-release-fixes +pkgver=17719 +pkgrel=3 +pkgdesc="Plugin that allows phone calls to be made to MythTv" +url="http://www.mythtv.org" +arch=('i686') +depends=('mythtv-release-fixes') +conflicts=('mythtv-plugins-release-fixes') +groups=('mythtv-all-plugins-release-fixes') +license="GPL" +source=() +_svntrunk=http://svn.mythtv.org/svn/branches/release-0-21-fixes/mythplugins +_svntrunk=http://svn.mythtv.org/svn/branches/release-0-21-fixes/mythplugins +_svnmod=mythplugins + +build() { +	cd $startdir/src/ +	echo svn co $_svntrunk --config-dir ./ -r $pkgver $_svnmod + 	svn co $_svntrunk --config-dir ./ -r $pkgver $_svnmod +	cd $startdir/src/mythplugins +	make distclean +	PLUGIN=mythphone +	grep -q  programs-libs.pro  $PLUGIN/$PLUGIN/$PLUGIN.pro +	if [ $? != 0 ] +	then +		echo "include ( ../../programs-libs.pro )" >> $PLUGIN/$PLUGIN/$PLUGIN.pro +		msg  "appending program lib" +	fi +	 +	msg "Correcting configure    kde3 to kde" +   	sed -i 's#kde3#kde#' configure || return 1 +   	./configure  --enable-opengl --disable-all --enable-mythphone || return 1 +	qmake mythplugins.pro || return 1 +	make qmake || return 1 +	 +	msg "Correcting Makefile    kde3 to kde" + 	sed -i 's#kde3#kde#' ./mythphone/mythphone/Makefile || return 1 +   	 +	make -j 2 || return 1 +	make INSTALL_ROOT=$startdir/pkg install +} + diff --git a/abs/mv-core/myth/release-fixes/plugins/mythsmolt/PKGBUILD b/abs/mv-core/myth/release-fixes/plugins/mythsmolt/PKGBUILD new file mode 100644 index 0000000..021d270 --- /dev/null +++ b/abs/mv-core/myth/release-fixes/plugins/mythsmolt/PKGBUILD @@ -0,0 +1,27 @@ +pkgname=mythsmolt-release-fixes +pkgver=0.21 +pkgrel=4 +pkgdesc="mythsmolt, a hardware profileing tool" +arch=('i686' 'x86_64') +url="http://www.mythvantage.com" +license=('GPL') +depends=("mythtv-release-fixes" urlgrabber hal) +source=("http://www.mythvantage.com/request.php?4") + +groups=('mythtv-extras') + +build() { +   cd $startdir/src/mythsmolt_src/mythsmolt +   . /etc/profile.d/qt3.sh +    +   # use QT3 qmake +   export PATH=$QTDIR/bin:$PATH +   echo "INCLUDEPATH += /usr/local/include/mythtv" >> mythsmolt.pro.local  +   qmake mythsmolt.pro.local +   make qmake || return 1 +   make -j 2 || return 1 + +   make INSTALL_ROOT=$startdir/pkg install +} + + diff --git a/abs/mv-core/myth/release-fixes/plugins/mythvideo/PKGBUILD b/abs/mv-core/myth/release-fixes/plugins/mythvideo/PKGBUILD new file mode 100644 index 0000000..cdc8dea --- /dev/null +++ b/abs/mv-core/myth/release-fixes/plugins/mythvideo/PKGBUILD @@ -0,0 +1,36 @@ +pkgname=mythvideo-release-fixes +pkgver=17719 +pkgrel=2 +pkgdesc="Video playback and browsing plugin for MythTV" +url="http://www.mythtv.org" +arch=('i686') +depends=('mythtv-release-fixes'  'perlxml' 'perl-libwww' 'perl-uri' 'perl-xml-simple' 'ffmpeg') +license="GPL" +conflicts=('mythtv-plugins-release-fixes') +groups=('mythtv-all-plugins-release-fixes') + +source=() +_svntrunk=http://svn.mythtv.org/svn/branches/release-0-21-fixes/mythplugins +_svntrunk=http://svn.mythtv.org/svn/branches/release-0-21-fixes/mythplugins +_svnmod=mythplugins + +build() { +	cd $startdir/src/ +	echo svn co $_svntrunk --config-dir ./ -r $pkgver $_svnmod + 	svn co $_svntrunk --config-dir ./ -r $pkgver $_svnmod +	cd $startdir/src/mythplugins +  	make distclean  +	PLUGIN=mythvideo +	grep -q  programs-libs.pro  $PLUGIN/$PLUGIN/$PLUGIN.pro +	if [ $? != 0 ] +	then +			echo "include ( ../../programs-libs.pro )" >> $PLUGIN/$PLUGIN/$PLUGIN.pro +				msg "appending program lib" +			fi +   ./configure  --disable-all --enable-mythvideo  --enable-transcode   + +   make -j 2 || return 1 + +   make INSTALL_ROOT=$startdir/pkg install +} +md5sums=('2a9fbf45ae58a3a35857ce8d7c4d12db') diff --git a/abs/mv-core/myth/release-fixes/plugins/mythweather/PKGBUILD b/abs/mv-core/myth/release-fixes/plugins/mythweather/PKGBUILD new file mode 100644 index 0000000..997f78a --- /dev/null +++ b/abs/mv-core/myth/release-fixes/plugins/mythweather/PKGBUILD @@ -0,0 +1,37 @@ +pkgname=mythweather-release-fixes +pkgver=17719 +pkgrel=6 +pkgdesc="Weather checking plugin for MythTV" +url="http://www.mythtv.org" +arch=('i686') +depends=('mythtv-release-fixes' 'wget' 'perl-xml-sax' 'perl-soap-lite' 'perl-image-size'  'imagemagick') +conflicts=('mythtv-plugins-release-fixes') +groups=('mythtv-all-plugins-release-fixes') +license="GPL" +source=() +#_svntrunk=http://cvs.mythtv.org/svn/trunk/mythplugins +_svntrunk=http://svn.mythtv.org/svn/branches/release-0-21-fixes/mythplugins + +_svntrunk=http://svn.mythtv.org/svn/branches/release-0-21-fixes/mythplugins +_svnmod=mythplugins + +build() { +	cd $startdir/src/ +	echo svn co $_svntrunk --config-dir ./ -r $pkgver $_svnmod + 	svn co $_svntrunk --config-dir ./ -r $pkgver $_svnmod +	cd $startdir/src/mythplugins +	make distclean +	PLUGIN=mythweather +	grep -q  programs-libs.pro  $PLUGIN/$PLUGIN/$PLUGIN.pro +	if [ $? != 0 ] +	then +			echo "include ( ../../programs-libs.pro )" >> $PLUGIN/$PLUGIN/$PLUGIN.pro +				msg "appending program lib" +			fi +   ./configure  --enable-opengl --disable-all --enable-mythweather +  +   make -j 2 || return 1 + +   make INSTALL_ROOT=$startdir/pkg install +} +md5sums=('2a9fbf45ae58a3a35857ce8d7c4d12db') diff --git a/abs/mv-core/myth/release-fixes/plugins/mythweb/PKGBUILD b/abs/mv-core/myth/release-fixes/plugins/mythweb/PKGBUILD new file mode 100755 index 0000000..9bddf1c --- /dev/null +++ b/abs/mv-core/myth/release-fixes/plugins/mythweb/PKGBUILD @@ -0,0 +1,34 @@ +pkgname=mythweb-release-fixes +pkgver=17724 +pkgrel=21 +pkgdesc="mythweb"  +url="http://www.mythtv.org"  +license="GPL"  +arch=('i686') +depends=(php fcgi libmysqlclient )  +conflicts=('mythweb' 'mythweb-fixes')  +replaces=()  +backup=()  +install='mythweb.install'  +source=(mythweblighttpd.patch dblogininit.inc )  +md5sums=()  +_svntrunk=http://svn.mythtv.org/svn/branches/release-0-21-fixes/mythplugins +_svnmod=mythplugins +build() {  +echo svn co $_svntrunk --config-dir ./ -r $pkgver $_svnmod + svn co $_svntrunk --config-dir ./ -r $pkgver $_svnmod +#svn co http://cvs.mythtv.org/svn/trunk/mythtv +#svn co http://cvs.mythtv.org/svn/trunk/mythplugins +#svn co http://cvs.mythtv.org/svn/trunk/myththemes +cd $startdir/src/mythplugins + +#take care of fing mythweb +mkdir -p $startdir/pkg/data/srv/httpd/htdocs/ +cp -rp mythweb $startdir/pkg/data/srv/httpd/htdocs/ +cp -f $startdir/src/dblogininit.inc $startdir/pkg/data/srv/httpd/htdocs/mythweb/includes/ +cd  $startdir/pkg/data/srv/httpd/htdocs/mythweb/includes +patch -p0 < $startdir/src/mythweblighttpd.patch + +chown -R nobody:nobody $startdir/pkg/data/srv/httpd/htdocs/mythweb +chmod -R  775 $startdir/pkg/data/srv/httpd/htdocs/mythweb +} diff --git a/abs/mv-core/myth/release-fixes/plugins/mythweb/dblogininit.inc b/abs/mv-core/myth/release-fixes/plugins/mythweb/dblogininit.inc new file mode 100755 index 0000000..c5395c5 --- /dev/null +++ b/abs/mv-core/myth/release-fixes/plugins/mythweb/dblogininit.inc @@ -0,0 +1,6 @@ +<? + $_SERVER["db_server"] = "localhost"; + $_SERVER["db_name"] = "mythconverg"; + $_SERVER["db_login"] = "mythtv"; + $_SERVER["db_password"] = "mythtv"; +?> diff --git a/abs/mv-core/myth/release-fixes/plugins/mythweb/mythweb.install b/abs/mv-core/myth/release-fixes/plugins/mythweb/mythweb.install new file mode 100755 index 0000000..e135b6c --- /dev/null +++ b/abs/mv-core/myth/release-fixes/plugins/mythweb/mythweb.install @@ -0,0 +1,37 @@ + +# arg 1:  the new package version +pre_install () { +/bin/true +} + +post_install() { +	#cp /etc/lighttpd/lighttpd.conf /tmp +#	sed -e "s/# .*  \"mod_fastcgi\",/\"mod_fastcgi\"\,/g" /tmp/lighttpd.conf > /etc/lighttpd/lighttpd.conf + /bin/true + +} +pre_upgrade () { + pre_install +} + +# arg 1:  the new package version +# arg 2:  the old package version +post_upgrade() { +  post_install + +  /bin/true +} + +# arg 1:  the old package version +pre_remove() { +  /bin/true +} + +# arg 1:  the old package version +post_remove() { +/bint/true +} + +op=$1 +shift +$op $* diff --git a/abs/mv-core/myth/release-fixes/plugins/mythweb/mythweblighttpd.patch b/abs/mv-core/myth/release-fixes/plugins/mythweb/mythweblighttpd.patch new file mode 100755 index 0000000..6403a88 --- /dev/null +++ b/abs/mv-core/myth/release-fixes/plugins/mythweb/mythweblighttpd.patch @@ -0,0 +1,13 @@ +--- database.php.orig	2007-12-31 21:25:30.000000000 +0000 ++++ database.php	2007-12-31 21:25:50.000000000 +0000 +@@ -18,6 +18,10 @@ +         custom_error("Please install the MySQL libraries for PHP.\n" +                     .'The package is usually called something like php-mysql.'); +     } ++     if (empty($_SERVER['db_server']) || empty($_SERVER['db_name']) || empty($_SERVER['db_login'])) { ++	      require_once 'dblogininit.inc'; ++	      } ++	 +  + // No database connection info defined? +     if (empty($_SERVER['db_server']) || empty($_SERVER['db_name']) || empty($_SERVER['db_login'])) { diff --git a/abs/mv-core/myth/release-fixes/syth-lacquer-clean/PKGBUILD b/abs/mv-core/myth/release-fixes/syth-lacquer-clean/PKGBUILD new file mode 100755 index 0000000..1f47a47 --- /dev/null +++ b/abs/mv-core/myth/release-fixes/syth-lacquer-clean/PKGBUILD @@ -0,0 +1,22 @@ +pkgname=syth-lacquer-clean-wide +pkgver=1 +pkgrel=9 +pkgdesc="" +url="" +license="" +depends=() +makedepends=() +conflicts=() +replaces=() +backup=() +#source=($pkgname.tar.bz2) +source=(http://jmeyer.us/e107_files/downloads/SVN/$pkgname.tar.bz2) + +md5sums=() + +build() { +  cd $startdir/src +  mkdir -p $startdir/pkg/usr/local/share/mythtv/themes +  cp -rp $pkgname $startdir/pkg/usr/local/share/mythtv/themes/ + +} diff --git a/abs/mv-core/myth/release-fixes/syth-lacquer-wide/PKGBUILD b/abs/mv-core/myth/release-fixes/syth-lacquer-wide/PKGBUILD new file mode 100755 index 0000000..e160f46 --- /dev/null +++ b/abs/mv-core/myth/release-fixes/syth-lacquer-wide/PKGBUILD @@ -0,0 +1,23 @@ +pkgname=syth-lacquer-wide +pkgver=4 +pkgrel=1 +pkgdesc="Syth for mythtv .21" +url="" +license="" +depends=() +makedepends=() +conflicts=() +replaces=() +backup=() +arch='i686' + +source=(http://www.mythvantage.com/src/syth-lacquer-wide.tgz) + +md5sums=() + +build() { +  cd $startdir/src +  mkdir -p $startdir/pkg/usr/local/share/mythtv/themes +  cp -rp $pkgname $startdir/pkg/usr/local/share/mythtv/themes/ + +} diff --git a/abs/mv-core/mythvantage-live/PKGBUILD b/abs/mv-core/mythvantage-live/PKGBUILD new file mode 100644 index 0000000..6f3a02d --- /dev/null +++ b/abs/mv-core/mythvantage-live/PKGBUILD @@ -0,0 +1,30 @@ +pkgname=mythvantage-live +pkgver=5.3.3 +pkgrel=7 +provides="linhes-live" +pkgdesc="components for the Live System." + +depends=() +arch=( i586 i686 x86_64 ) +license=('GPL') + +build() { +    # setup the local environment: +    local rDir=bin  eDir=etc  lDir=lib  sDir=session-save  oDir=opt/$pkgname +    local srcDir=${startdir}/src   pkgDir=${startdir}/pkg +    local insDir=${pkgDir}/$oDir   proDir=${pkgDir}/${eDir}/profile.d + +    mkdir -p $pkgDir $insDir $proDir +    cp -dr ${startdir}/$eDir $pkgDir +    local pthDir= +    echo 'export PATH=${PATH}:'"/$oDir/$rDir" > ${proDir}/${pkgname}.sh +    cp -dr ${startdir}/$lDir $pkgDir +    cp -dr ${startdir}/$rDir $insDir +    [ -d ${startdir}/$sDir ] && cp -dr ${startdir}/$sDir $insDir +    chown -R root.root $pkgDir +    return 0 +} + +# End +#change hook1 to wait for usb cdroms +#removed the word cdrom from sysinit
\ No newline at end of file diff --git a/abs/mv-core/mythvantage-live/bin/gen_fstab b/abs/mv-core/mythvantage-live/bin/gen_fstab new file mode 100755 index 0000000..db36546 --- /dev/null +++ b/abs/mv-core/mythvantage-live/bin/gen_fstab @@ -0,0 +1,122 @@ +#! /bin/sh +# +# gen_fstab  - make new fstab for larch live system based on detected devices +# +# Author: Michael Towers <gradgrind[at]online[dot]de> +# +# This file is part of the larch project. +# +#    larch 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. +# +#    larch is distributed in the hope that it will be useful, +#    but WITHOUT ANY WARRANTY; without even the implied warranty of +#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the +#    GNU General Public License for more details. +# +#    You should have received a copy of the GNU General Public License +#    along with larch; if not, write to the Free Software Foundation, Inc., +#    51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA +# +#---------------------------------------------------------------------------- +# 2007.12.17 + +# Note that the results are, by default, not copied into place +# They end up here: +DEST="/tmp/fstab" +MNT="/tmp/mnt" + +# However, passing '-l' as command-line option will install them. +# The old fstab will then be backed up to fstab~. +LOAD="" +if [ "$1" = "-l" ]; then LOAD="-l"; fi + +if [ -n "$( df | grep " ${MNT}" )" ]; then +    echo "ERROR: Mounted filesystem at/within ${MNT}" +    exit 1 +fi +mkdir -p ${MNT} +rm -rf ${MNT}/* + +tmpfile="/tmp/fstab2" +: >${tmpfile} + +echo "# fstab generated by gen_fstab" >${DEST} +echo "#<file system>   <dir>         <type>      <options>    <dump> <pass>" >>${DEST} +echo >>${DEST} + +echo "none            /dev/pts      devpts      defaults        0     0" >>${DEST} +echo "none            /dev/shm      tmpfs       defaults        0     0" >>${DEST} +echo >>${DEST} + +# Get all other partitions +sfdisk -d | grep "^/dev/" | sed "s|\(.*\):.*Id=\(..\).*|\1 \2|" | \ +    while read dev id; do +        # Ignore if id is "Extended" or "LVM", these are not usable partitions +        if [ "${id}" = "5" -o "${id}" = "8e" ]; then continue; fi +        # See if swap +        if [ "${id}" = "82" ]; then +            printf "%-12s %-12s %-8s defaults,noatime 0     0\n" \ +                ${dev} swap swap >>${DEST} +            continue +        fi +        removable="" +        part=$( basename ${dev} ) +        if [ $( cat /sys/block/${part:0:3}/removable 2>/dev/null ) -ne 0 ]; then +            removable="_rmv" +        fi +        mountdir=${part}${removable} +        printf "%-12s %-12s %-8s user,noauto,noatime 0     0\n" \ +                ${dev} /mnt/${mountdir} auto >>${tmpfile} +        mkdir -p ${MNT}/${mountdir} +    done + +# LVM +for lvmd in $( ls /dev/mapper 2>/dev/null | grep -v control ); do +    printf "%-30s %-22s %-8s user,noauto,noatime 0     0\n" \ +           /dev/mapper/${lvmd} /mnt/${lvmd} auto >>${tmpfile} +    mkdir -p ${MNT}/${lvmd} +done + +echo >>${DEST} +cat ${tmpfile} >>${DEST} +rm ${tmpfile} +echo >>${DEST} + +# CD devices +for dev in $( cat /proc/sys/dev/cdrom/info 2>/dev/null | head -n 3 | \ +        tail -n 1 | cut -d ":" -f 2 ); do +    mountdir="${dev}_cd" +    mkdir ${MNT}/${mountdir} +    printf "%-12s %-12s %-8s user,noauto,exec,unhide 0     0\n" \ +            /dev/${dev} /mnt/${mountdir} auto >>${DEST} +done + +echo >>${DEST} +echo "# This would do for a floppy" >>${DEST} +echo "#/dev/fd0        /mnt/floppy    vfat,ext2 rw,user,noauto    0     0" >>${DEST} +echo "#    +   mkdir /mnt/floppy" >>${DEST} +echo >>${DEST} +echo "# E.g. for USB storage:" >>${DEST} +echo "#/dev/sdb1        /mnt/usb      auto      rw,user,noauto   0     0" >>${DEST} +echo "#    +   mkdir /mnt/usb" >>${DEST} + +if [ -n "${LOAD}" ]; then +    # test if the script is started by root user. If not, exit +    if [ $UID -ne 0 ]; then +        echo "Only root can run ${APP}"; exit 1 +    fi + +    cp -b ${DEST} /etc/fstab +    # Delete removeable mount points which are not currently mounted +    for m in $( ls /mnt | grep ^[hs]d ); do +        if [ -z "$( df | grep " /mnt/${m}$" )" ]; then +            rmdir /mnt/${m} +        fi +    done +    for m in $( ls ${MNT} ); do +        mkdir -p /mnt/${m} +    done +fi diff --git a/abs/mv-core/mythvantage-live/bin/km b/abs/mv-core/mythvantage-live/bin/km new file mode 100755 index 0000000..386d966 --- /dev/null +++ b/abs/mv-core/mythvantage-live/bin/km @@ -0,0 +1,76 @@ +#!/bin/sh +# $Id: km,v 1.2 2005/12/13 04:14:53 judd Exp $ +# Modified by gradgrind to deal only with i386 keymaps +#     and BASEDIR changed +#  - also saves results to /etc/rc.conf + +# test if the script is started by root user. If not, exit +if [ $UID -ne 0 ]; then +    echo "This should be run as root"; exit 1 +fi + +ANSWER="/tmp/.km" +BASEDIR="/usr/share/kbd" + +domenu() +{ +	menutype=$1 ; shift +	text=$1     ; shift +	height=$1   ; shift +	width=$1    ; shift +	mheight=$1  ; shift +	 +	dialog --cancel-label "Skip" --$menutype "$text" $height $width $mheight $* +} + +if [ ! -d $BASEDIR/keymaps ]; then +	echo "Cannot load keymaps, as none were found in $BASEDIR/keymaps" >&2 +	exit 1 +else +	echo "Scanning for keymaps..." +	KEYMAPS= +	for t in qwerty qwertz azerty dvorak; do +	    for i in `find $BASEDIR/keymaps/i386/$t -follow -name "*.gz"`; do +		fn=`echo $i | sed "s|$BASEDIR/keymaps/i386/||"` +		KEYMAPS="$KEYMAPS $fn -" +	    done +	done +	domenu menu "Select A Keymap" 22 60 16 $KEYMAPS 2>$ANSWER +	keymap=`cat $ANSWER` +fi + +if [ ! -d $BASEDIR/consolefonts ]; then +	echo "Cannot load consolefonts, as none were found in $BASEDIR/consolefonts" >&2 +else +	echo "Scanning for fonts..." +	FONTS= +	for i in `find $BASEDIR/consolefonts -follow -name "*.gz"`; do +		fn=`echo $i | sed "s|$BASEDIR/consolefonts/||"` +		FONTS="$FONTS $fn -" +	done +	domenu menu "Select A Console Font" 22 60 16 $FONTS 2>$ANSWER +	font=`cat $ANSWER` +fi + +if [ "$keymap" ]; then +	echo "Loading keymap: $keymap" +	loadkeys -q $BASEDIR/keymaps/i386/$keymap +	sed -i "s|^KEYMAP=.*|KEYMAP=\"$( echo $keymap | \ +	       cut -d'.' -f1 )\"|" /etc/rc.conf +fi + +if [ "$font" ]; then +	echo "Loading font: $font" +	for i in `seq 1 4`; do +		if [ -d /dev/vc ]; then +			setfont $BASEDIR/consolefonts/$font -C /dev/vc/${i} +		else +			setfont $BASEDIR/consolefonts/$font -C /dev/tty${i} +		fi +	done +	sed -i "s|^CONSOLEFONT=.*|CONSOLEFONT=\"$( echo $font | \ +	       cut -d'.' -f1 )\"|" /etc/rc.conf +fi + +exit 0 + diff --git a/abs/mv-core/mythvantage-live/etc/live-shutdown b/abs/mv-core/mythvantage-live/etc/live-shutdown new file mode 100644 index 0000000..99c4c10 --- /dev/null +++ b/abs/mv-core/mythvantage-live/etc/live-shutdown @@ -0,0 +1,50 @@ +# Functions used by rc.shutdown +# Modified versions for mythvantage live systems + +f_saveclock () +{ +    : +} + +f_swapoff () +{ +    ############################# Include session saving functions +    . /opt/mythvantage-live/session-save/shutdown2 +    if [ -f /tmp/checkse ]; then +        . /tmp/checkse +    else +        checkse +    fi + +    if [ -n "${saving}" ] && ! session_save; then +        echo +        echo "If you know what you are doing, you may be able to recover" +        echo "something from this unpleasant situation." +        echo +        echo "You may use the command line to investigate further ..." +        echo +        echo "When finished please enter 'exit', the shutdown process will" +        echo "then continue." +        sh -i +    fi + +    ############################# + +    stat_busy "Deactivating Swap" +    /sbin/swapoff -a +    stat_done +} + +f_remountro () +{ +    if [ -n "${ejectdev}" ]; then +        echo "Ejecting live CD" +        eject ${ejectdev} +        echo "========================================" +        echo "It's safe to switch the computer off now" +        echo -ne "Press Enter to continue" +        read junk +    fi +} + +# End diff --git a/abs/mv-core/mythvantage-live/etc/live-sysinit b/abs/mv-core/mythvantage-live/etc/live-sysinit new file mode 100644 index 0000000..8e2813b --- /dev/null +++ b/abs/mv-core/mythvantage-live/etc/live-sysinit @@ -0,0 +1,54 @@ +# Functions used by rc.sysinit +# Modified versions for mythvantage live systems + +f_header () +{ +    cR='\e[31m' cY='\e[1;33m'  cN='\e[0m'  cW='\e[1;37m' +    echo " " +    printsep +    printf "   ${cR}MythVantage ${cY}Installation${cN}/${cY}Live${cW}. " +    printsep +    echo " " +} + +f_fscheck () +{ +    stat_busy "Initializing /etc/mtab" +    #/bin/mount -n -o remount,rw / + +    /bin/rm -f /etc/mtab* + +    # Make entries for aufs/unionfs, tmpfs and live medium in /etc/mtab +    grep "^aufs */ " /proc/mounts >>/etc/mtab +    grep "^unionfs */ " /proc/mounts >>/etc/mtab +    grep "^tmpfs */.livesys " /proc/mounts >>/etc/mtab +    if [ -d /.livesys/medium/live ]; then +        grep " /.livesys/medium " /proc/mounts >>/etc/mtab +    fi + +    f_mountlocal +    stat_done + +    if [ -z "$( cat /etc/fstab | grep "^#KEEP" )" ]; then +        stat_busy "Generating fresh /etc/fstab" +        /opt/mythvantage-live/bin/gen_fstab -l +        stat_done +    fi + +    # now mount all the local filesystems +    stat_busy "Mounting Local Filesystems" +    /bin/mount -a -t $NETFS +    stat_done +} + +f_swapon () +{ +    #+*** Copy session-save flag-file (if it exists) +    [ -f /live/nosave ] && cp /live/nosave /.livesys +    #-*** + +    #*** Conditional swap activation +    if [ -e /.livesys/swapon ]; then +        status "Activating Swap" /sbin/swapon -a +    fi +} diff --git a/abs/mv-core/mythvantage-live/etc/loginroot b/abs/mv-core/mythvantage-live/etc/loginroot new file mode 100755 index 0000000..e3153c6 --- /dev/null +++ b/abs/mv-core/mythvantage-live/etc/loginroot @@ -0,0 +1,3 @@ +#! /bin/sh +login -f root +# End diff --git a/abs/mv-core/mythvantage-live/etc/rc.shutdown-live b/abs/mv-core/mythvantage-live/etc/rc.shutdown-live new file mode 100755 index 0000000..bba263c --- /dev/null +++ b/abs/mv-core/mythvantage-live/etc/rc.shutdown-live @@ -0,0 +1,167 @@ +#!/bin/bash +# +# /etc/rc.shutdown +# + +### +# Based on initscripts 2008.05-1 +### + +. /etc/rc.conf +. /etc/rc.d/functions + +############################################################### +### These functions have been separated out, so that they can be +### replaced in mythvantage live systems. + +f_saveclock () +{ +    stat_busy "Saving System Clock" +    if [ "$TIMEZONE" != "" -a -e "/usr/share/zoneinfo/$TIMEZONE" ]; then +        /bin/rm -f /etc/localtime +        /bin/cp "/usr/share/zoneinfo/$TIMEZONE" /etc/localtime +    fi + +    HWCLOCK_PARAMS="--systohc" +    if [ "$HARDWARECLOCK" = "UTC" ]; then +        HWCLOCK_PARAMS="$HWCLOCK_PARAMS --utc" +    else +        HWCLOCK_PARAMS="$HWCLOCK_PARAMS --localtime" +    fi +    if [ "$USEDIRECTISA" = "yes" -o "$USEDIRECTISA" = "YES" ]; then +        HWCLOCK_PARAMS="$HWCLOCK_PARAMS --directisa" +    fi +    /sbin/hwclock $HWCLOCK_PARAMS +    stat_done +} + +f_swapoff () +{ +    stat_busy "Deactivating Swap" +    /sbin/swapoff -a +    stat_done +} + +f_remountro () +{ +    stat_busy "Remounting Root Filesystem Read-only" +    /bin/mount -n -o remount,ro / +    stat_done +} + +############################################################### + +### Override above functions if running mythvantage live system +[ -f /etc/live-shutdown ] && . /etc/live-shutdown + +# avoid staircase effect +/bin/stty onlcr + +echo " " +printhl "Initiating Shutdown..." +echo " " + +# avoid NIS hanging syslog-ng on shutdown by unsetting the domainname +if [ -x /bin/domainname ]; then +    /bin/domainname "" +fi + +if [ -x /etc/rc.local.shutdown ]; then +    /etc/rc.local.shutdown +fi + +if [ "$PREVLEVEL" = "3" -o "$PREVLEVEL" = "5" ]; then +    # Shutdown daemons +    let i=${#DAEMONS[@]} +    while [ $i -ge 0 ]; do +        if [ "${DAEMONS[$i]:0:1}" != '!' ]; then +            ck_daemon ${DAEMONS[$i]#@} || /etc/rc.d/${DAEMONS[$i]#@} stop +        fi +        let i=i-1 +    done +    # find any leftover daemons and shut them down in reverse order +    if [ -d /var/run/daemons ]; then +        for daemon in $(/bin/ls -1t /var/run/daemons); do +            /etc/rc.d/$daemon stop +        done +    fi +fi + +# Terminate all processes +stat_busy "Sending SIGTERM To Processes" +/sbin/killall5 -15 &> /dev/null +/bin/sleep 5 +stat_done + +stat_busy "Sending SIGKILL To Processes" +/sbin/killall5 -9 &> /dev/null +/bin/sleep 1 +stat_done + +stat_busy "Saving Random Seed" +/bin/dd if=/dev/urandom of=/var/run/random-seed count=1 bs=512 2> /dev/null +stat_done + +#F Save system time +f_saveclock + +# removing psmouse module to fix some reboot issues on newer laptops +/sbin/modprobe -r psmouse >/dev/null 2>&1 + +# Write to wtmp file before unmounting +/sbin/halt -w + +#F Deactivate swaps +f_swapoff + +stat_busy "Unmounting Filesystems" +/bin/umount -a -t noramfs,notmpfs,nosysfs,noproc +stat_done + +# Kill non-root encrypted partition mappings +if [ -f /etc/crypttab -a -n "$(/bin/grep -v ^# /etc/crypttab | /bin/grep -v ^$)" ]; then +    stat_busy "Deactivating encrypted volumes:" +    CS=/sbin/cryptsetup.static +    do_uncrypt() { +        if [ $# -ge 3 ]; then +            stat_append "${1}.." +            $CS remove $1 >/dev/null 2>&1 +            if [ $? -ne 0 ]; then +                stat_append "failed " +            else +                stat_append "ok " +            fi +        fi +    } +    while read line; do +        eval do_uncrypt "$line" +    done </etc/crypttab +    stat_done +fi + +if [ "$USELVM" = "yes" -o "$USELVM" = "YES" ]; then +    if [ -x /sbin/lvm -a -d /sys/block ]; then +        stat_busy "Deactivating LVM2 groups" +        /sbin/lvm vgchange --ignorelockingfailure -an >/dev/null 2>&1 +        stat_done +    fi +fi + +#F Remount / ro +f_remountro + +# Power off or reboot +if [ "$RUNLEVEL" = "0" ]; then +    printsep +    printhl "${C_H2}POWER OFF" +    /sbin/poweroff -d -f -h -i +else +    printsep +    printhl "${C_H2}REBOOTING" +    # if kexec is installed and a kernel is loaded, use it +    [ -x /sbin/kexec ] && /sbin/kexec -e > /dev/null 2>&1 +    /sbin/reboot -d -f -i +fi + +# vim: set ts=2 sw=2 noet: +# End diff --git a/abs/mv-core/mythvantage-live/etc/rc.sysinit-live b/abs/mv-core/mythvantage-live/etc/rc.sysinit-live new file mode 100755 index 0000000..3f72a50 --- /dev/null +++ b/abs/mv-core/mythvantage-live/etc/rc.sysinit-live @@ -0,0 +1,466 @@ +#!/bin/bash +# +# /etc/rc.sysinit +# + +### +# Based on initscripts 2008.05-1 +### + +. /etc/rc.conf +. /etc/rc.d/functions + +############################################################### +### These functions have been separated out, so that they can be +### replaced in linhes live systems. + +f_header () +{ +    echo " " +    printhl "Arch Linux $C_OTHER(${C_H2}Core Dump$C_OTHER)\n" +    printhl "${C_H2}http://www.archlinux.org" +    printhl "Copyright 2002-2007 Judd Vinet" +    printhl "Copyright 2007-2008 Aaron Griffin" +    printhl "Distributed under the GNU General Public License (GPL)" +    printsep +} + +f_fscheck () +{ +    status "Mounting Root Read-only" /bin/mount -n -o remount,ro / + +    if [ -x /sbin/fsck ]; then +        stat_busy "Checking Filesystems" +        if /bin/grep -qw quiet /proc/cmdline; then +            /sbin/fsck -A -T -C -a -t $NETFS $FORCEFSCK >/dev/null 2>&1 +        else +            /sbin/fsck -A -T -C -a -t $NETFS $FORCEFSCK 2>/dev/null +        fi +        fsckret=$? +        if [ ${fsckret} -gt 1 ]; then +            stat_fail +            if [ $((${fsckret}&2)) -eq 2 ]; then +                echo +                echo "********************** REBOOT REQUIRED *********************" +                echo "*                                                          *" +                echo "* The system will be rebooted automatically in 15 seconds. *" +                echo "*                                                          *" +                echo "************************************************************" +                echo +                /bin/sleep 15 +            else +                echo +                echo "*****************  FILESYSTEM CHECK FAILED  ****************" +                echo "*                                                          *" +                echo "*  Please repair manually and reboot. Note that the root   *" +                echo "*  file system is currently mounted read-only. To remount  *" +                echo "*  it read-write type: mount -n -o remount,rw /            *" +                echo "*  When you exit the maintenance shell the system will     *" +                echo "*  reboot automatically.                                   *" +                echo "*                                                          *" +                echo "************************************************************" +                echo +                /sbin/sulogin -p +            fi +            echo "Automatic reboot in progress..." +            /bin/umount -a +            /bin/mount -n -o remount,ro / +            /sbin/reboot -f +            exit 0 +        fi +        stat_done +    fi + +    stat_busy "Mounting Local Filesystems" +    /bin/mount -n -o remount,rw / +    /bin/rm -f /etc/mtab* +    # make sure / gets written to /etc/mtab +    /bin/mount -o remount,rw / + +    f_mountlocal +    stat_done +} + +f_mountlocal () +{ +    # Write /proc, /sys and /dev to /etc/mtab +    if [ -e /proc/mounts ]; then +        /bin/grep -e "/proc " -e "/sys " -e "/dev " /proc/mounts >> /etc/mtab +    fi +    # now mount all the local filesystems +    /bin/mount -a -t $NETFS +} + +f_swapon () +{ +    status "Activating Swap" /sbin/swapon -a +} + +############################################################### + +### Override above functions if running linhes live system +[ -f /etc/live-sysinit ] && . /etc/live-sysinit + +#F Print header +f_header + +# mount /proc, /sys and our RAM /dev +/bin/mount -n -t ramfs none /dev +/bin/mount -n -t proc none /proc +/bin/mount -n -t sysfs none /sys + +# Create our default nodes that minilogd may need +/bin/mknod /dev/null c 1 3 +/bin/mknod /dev/zero c 1 5 +/bin/mknod /dev/console c 5 1 + +# More initial /dev setup that udev doesn't do +/bin/ln -snf /proc/self/fd /dev/fd +/bin/ln -snf /proc/self/fd/0 /dev/stdin +/bin/ln -snf /proc/self/fd/1 /dev/stdout +/bin/ln -snf /proc/self/fd/2 /dev/stderr +/bin/ln -snf /proc/kcore /dev/core +/bin/mkdir /dev/pts +/bin/mkdir /dev/shm + +# start up our mini logger until syslog takes over +/sbin/minilogd + +# anything more serious than KERN_WARNING goes to the console +# 'verbose' cmdline parameter enables more messages +if /bin/grep -q " verbose" /proc/cmdline; then +    /bin/dmesg -n 8 +else +    /bin/dmesg -n 3 +fi + +# enable rtc access +/sbin/modprobe rtc-cmos >/dev/null 2>&1 +RTC_MAJOR=$(/bin/grep -w rtc /proc/devices 2>/dev/null); RTC_MAJOR="${RTC_MAJOR%% *}" +if [ -n "$RTC_MAJOR" ]; then +    /bin/mkdir /dev/misc/ +    /bin/mknod /dev/misc/rtc0 c $RTC_MAJOR 0 +    /bin/ln -s /dev/misc/rtc0 /dev/rtc +fi + +HWCLOCK_PARAMS="--hctosys" +if [ "$HARDWARECLOCK" = "UTC" ]; then +    HWCLOCK_PARAMS="$HWCLOCK_PARAMS --utc" +else +    HWCLOCK_PARAMS="$HWCLOCK_PARAMS --localtime" +fi +if [ "$USEDIRECTISA" = "yes" -o "$USEDIRECTISA" = "YES" ]; then +    HWCLOCK_PARAMS="$HWCLOCK_PARAMS --directisa" +fi + +# Set clock early to fix some bugs with filesystem checks +# Clock is set again later to match rc.conf +if [ -f /etc/localtime ]; then +    /sbin/hwclock $HWCLOCK_PARAMS --noadjfile +fi + +echo > /proc/sys/kernel/hotplug + +if [ -x /sbin/udevadm -a -d /sys/block ]; then +    # We have udev and /sys appears to be mounted, use UDev +    #status "Starting UDev Daemon" /etc/start_udev init + +    stat_busy "Starting UDev Daemon" +    /sbin/udevd --daemon +    stat_done +else +    # Static /dev, our last resort +    status "Using static /dev filesystem" true +fi + +# Load modules from the MODULES array defined in rc.conf +if ! [ "$load_modules" = "off" ]; then +    if [ -f /proc/modules ]; then +        stat_busy "Loading Modules" +        for mod in "${MODULES[@]}"; do +            if [ "$mod" = "${mod#!}" ]; then +                /sbin/modprobe $mod +            fi +        done +        stat_done +    fi +    if [ -d /proc/acpi ]; then +        stat_busy "Loading standard ACPI modules" +        ACPI_MODULES="ac battery button fan processor thermal" +        k="$(echo $BLACKLIST ${MOD_BLACKLIST[@]} | /bin/sed 's|-|_|g')" +        j="$(echo ${MODULES[@]} | /bin/sed 's|-|_|g')" +        #add disabled MODULES (!) to blacklist - much requested feature +        for m in ${j}; do +                [ "$m" != "${m#!}" ] && k="${k} ${m#!}" +        done +        # add disablemodules= from commandline to blacklist +        k="${k} $(echo ${disablemodules} | /bin/sed 's|-|_|g' | /bin/sed 's|,| |g')" +        for n in ${ACPI_MODULES}; do +            if ! echo ${k} | /bin/grep "\<$n\>" 2>&1 >/dev/null; then +                /sbin/modprobe $n > /dev/null 2>&1 +            fi +        done +        stat_done +    fi +fi + +# run udev uevents +if /bin/pidof -o %PPID /sbin/udevd >/dev/null; then +    #status "Loading UDev uevents" /etc/start_udev uevents +    stat_busy "Loading UDev uevents" +    udevstart="$(/bin/date +%s%0N)" +    /sbin/udevadm trigger +    /sbin/udevadm settle +    stat_done +    udevend="$(/bin/date +%s%0N)" +    printhl "   UDev uevent processing time: $((($udevend-$udevstart)/1000000))ms" +fi + +# bring up the loopback interface +if [ -d /sys/class/net/lo ]; then +    stat_busy "Bringing up loopback interface" +    /sbin/ifconfig lo 127.0.0.1 up +    if [ $? -ne 0 ]; then +        stat_fail +    else +        stat_done +    fi +fi + +# If necessary, find md devices and manually assemble RAID arrays +if [ -f /etc/mdadm.conf -a "$(/bin/grep ^ARRAY /etc/mdadm.conf 2>/dev/null)" ]; then +    # udev won't create these md nodes, so we do it ourselves +    for dev in $(/bin/grep ^ARRAY /etc/mdadm.conf | /bin/awk '{print $2}'); do +        path=$(echo $dev | /bin/sed 's|/[^/]*$||') +        node=$(echo $dev | /bin/sed "s|^$path/||") +        minor=$(echo $node | /bin/sed 's|^[^0-9]*||') +        [ ! -e $path/$node ] && /bin/mknod $path/$node b 9 $minor +    done +    status "Activating RAID arrays" /sbin/mdadm --assemble --scan +fi + +if [ "$USELVM" = "yes" -o "$USELVM" = "YES" ]; then +    if [ -x /sbin/lvm -a -d /sys/block ]; then +        # Kernel 2.6.x, LVM2 groups +        /sbin/modprobe -q dm-mod 2>/dev/null +        stat_busy "Activating LVM2 groups" +        /sbin/lvm vgscan --ignorelockingfailure --mknodes >/dev/null +        /sbin/lvm vgchange --ignorelockingfailure -a y >/dev/null +        if [ $? -ne 0 ]; then +            stat_fail +        else +            stat_done +        fi +    fi +fi + +# Set up non-root encrypted partition mappings +if [ -f /etc/crypttab -a -n "$(/bin/grep -v ^# /etc/crypttab | /bin/grep -v ^$)" ]; then +    /sbin/modprobe -q dm-mod 2>/dev/null +    stat_busy "Unlocking encrypted volumes:" +    csfailed=0 +    CS=/sbin/cryptsetup.static +    do_crypt() { +        if [ $# -ge 3 ]; then +            cname="$1" +            csrc="$2" +            cpass="$3" +            shift 3 +            copts="$*" +            stat_append "${cname}.." +            # For some fun reason, the parameter ordering varies for +            # LUKS and non-LUKS devices.  Joy. +            if [ "${cpass}" = "SWAP" ]; then +                # This is DANGEROUS! The only possible safety check +                # is to not proceed in case we find a LUKS device +                # This may cause dataloss if it is not used carefully +                if $CS isLuks $csrc 2>/dev/null; then +                    false +                else +                    $CS -d /dev/urandom $copts create $cname $csrc >/dev/null +                    if [ $? -eq 0 ]; then +                        stat_append "creating swapspace.." +                        /sbin/mkswap -L $cname /dev/mapper/$cname >/dev/null +                    fi +                fi +            elif [ "${cpass}" = "ASK" ]; then +                printf "\nOpening '${cname}' volume:\n" + +                if $CS isLuks $csrc 2>/dev/null; then +                    $CS $copts luksOpen $csrc $cname < /dev/console +                else +                    $CS $copts create $cname $csrc < /dev/console +                fi +            elif [ "${cpass:0:1}" != "/" ]; then +                if $CS isLuks $csrc 2>/dev/null; then +                    echo "$cpass" | $CS $copts luksOpen $csrc $cname >/dev/null +                else +                    echo "$cpass" | $CS $copts create $cname $csrc >/dev/null +                fi +            else +                if $CS isLuks $csrc 2>/dev/null; then +                    $CS -d $cpass $copts luksOpen $csrc $cname >/dev/null +                else +                    $CS -d $cpass $copts create $cname $csrc >/dev/null +                fi +            fi +            if [ $? -ne 0 ]; then +                csfailed=1 +                stat_append "failed " +            else +                stat_append "ok " +            fi +        fi +    } +    while read line; do +        eval do_crypt "$line" +    done </etc/crypttab +    if [ $csfailed -eq 0 ]; then +        stat_done +    else +        stat_fail +    fi +    # Maybe someone has LVM on an encrypted block device +    if [ "$USELVM" = "yes" -o "$USELVM" = "YES" ]; then +        if [ -x /sbin/lvm -a -d /sys/block ]; then +            /sbin/lvm vgscan --ignorelockingfailure --mknodes >/dev/null +            /sbin/lvm vgchange --ignorelockingfailure -a y >/dev/null +        fi +    fi +fi + +FORCEFSCK= +[ -f /forcefsck ] && FORCEFSCK="-- -f" +NETFS="nonfs,nonfs4,nosmbfs,nocifs,nocodafs,noncpfs,nosysfs,noshfs,nofuse,nofuseblk" + +#F Check filesystems +f_fscheck + +#F Activate swaps +f_swapon + +stat_busy "Configuring System Clock" +if [ ! -f /var/lib/hwclock/adjtime ]; then +    echo "0.0 0 0.0" > /var/lib/hwclock/adjtime +fi +if [ "$TIMEZONE" != "" -a -e "/usr/share/zoneinfo/$TIMEZONE" ]; then +    /bin/rm -f /etc/localtime +    /bin/cp "/usr/share/zoneinfo/$TIMEZONE" /etc/localtime +fi + +/sbin/hwclock $HWCLOCK_PARAMS +stat_done + +if [ -f /var/run/random-seed ]; then +    stat_busy "Initializing Random Seed" +    /bin/cat /var/run/random-seed >/dev/urandom +    stat_done +fi + +stat_busy "Removing Leftover Files" +/bin/rm -f /etc/nologin &>/dev/null +/bin/rm -f /etc/shutdownpid &>/dev/null +/bin/rm -f /var/lock/* &>/dev/null +/bin/rm -rf /tmp/* /tmp/.* &>/dev/null +/bin/rm -f /forcefsck &>/dev/null +(cd /var/run && /usr/bin/find . ! -type d -exec /bin/rm -f -- {} \; ) +: > /var/run/utmp +# Keep {x,k,g}dm happy with xorg +/bin/mkdir /tmp/.ICE-unix && /bin/chmod 1777 /tmp/.ICE-unix +/bin/mkdir /tmp/.X11-unix && /bin/chmod 1777 /tmp/.X11-unix +stat_done + +#status "Updating Shared Library Links" /sbin/ldconfig + +if [ "$HOSTNAME" != "" ]; then +    status "Setting Hostname: $HOSTNAME" /bin/hostname $HOSTNAME +fi + +# Set the NIS domain name, if necessary +[ -f /etc/conf.d/nisdomainname ] && . /etc/conf.d/nisdomainname +if [ "$NISDOMAINNAME" != "" ]; then +    status "Setting NIS Domain Name: $NISDOMAINNAME" /bin/nisdomainname $NISDOMAINNAME +fi + +status "Updating Module Dependencies" /sbin/depmod -A + +# Flush old locale settings +: >/etc/profile.d/locale.sh +/bin/chmod 755 /etc/profile.d/locale.sh +# Set user defined locale +[ -z "$LOCALE" ] && LOCALE="en_US" +stat_busy "Setting Locale: $LOCALE" +echo "export LANG=$LOCALE" >>/etc/profile.d/locale.sh +stat_done + +if echo "$LOCALE" | /bin/grep -qi utf ; then +    stat_busy "Setting Consoles to UTF-8 mode" +    # UTF-8 consoles are default since 2.6.24 kernel +    # this code is needed not only for older kernels, +    # but also when user has set vt.default_utf8=0 but LOCALE is *.UTF-8. +    /usr/bin/kbd_mode -u +    for i in $(/usr/bin/seq 0 63); do +        printf "\e%%G" > /dev/vc/${i} +    done +    # the $CONSOLE check helps us avoid this when running scripts from cron +    echo 'if [ "$CONSOLE" = "" -a "$TERM" = "linux" -a -t 1 ]; then printf "\e%%G"; fi' >>/etc/profile.d/locale.sh +    stat_done +    [ -n "$KEYMAP" ] && status "Loading Keyboard Map: $KEYMAP" /bin/loadkeys -q -u $KEYMAP +else +    stat_busy "Setting Consoles to legacy mode" +    # make non-UTF-8 consoles work on 2.6.24 and newer kernels +    /usr/bin/kbd_mode -a +    for i in $(/usr/bin/seq 0 63); do +        printf "\e%%@" > /dev/vc/${i} +    done +    # the $CONSOLE check helps us avoid this when running scripts from cron +    echo 'if [ "$CONSOLE" = "" -a "$TERM" = "linux" -a -t 1 ]; then printf "\e%%@"; fi' >>/etc/profile.d/locale.sh +    stat_done +    [ -n "$KEYMAP" ] && status "Loading Keyboard Map: $KEYMAP" /bin/loadkeys -q $KEYMAP +fi + +if [ -n "$CONSOLEFONT" ]; then +    stat_busy "Loading Console Font: $CONSOLEFONT" +    #CONSOLEMAP in UTF-8 shouldn't be used +    if [ -n "$CONSOLEMAP" ] && echo "$LOCALE" | /bin/grep -qi utf ; then +        CONSOLEMAP="" +    fi +    for i in $(/usr/bin/seq 0 63); do +        if [ -n "$CONSOLEMAP" ]; then +            /usr/bin/setfont -m $CONSOLEMAP $CONSOLEFONT -C /dev/vc/${i} >/dev/null 2>&1 +        else +            /usr/bin/setfont $CONSOLEFONT -C /dev/vc/${i} >/dev/null 2>&1 +        fi +    done +    if [ $? -ne 0 ]; then +        stat_fail +    else +        for i in $(/usr/bin/seq 0 63); do +            printf "\e(K" > /dev/vc/${i} +        done +        # the $CONSOLE check helps us avoid this when running scripts from cron +        echo 'if [ "$CONSOLE" = "" -a "$TERM" = "linux" -a -t 1 ]; then printf "\e(K"; fi' >>/etc/profile.d/locale.sh +        stat_done +    fi +fi + +# Adding persistent network/cdrom generated rules +if [ -f "/dev/.udev/tmp-rules--70-persistent-cd.rules" ]; then +    stat_busy "Adding persistent cdrom udev rules" +    /bin/cat /dev/.udev/tmp-rules--70-persistent-cd.rules >> /etc/udev/rules.d/70-persistent-cd.rules +    stat_done +fi +if [ -f "/dev/.udev/tmp-rules--70-persistent-net.rules" ]; then +    stat_busy "Adding persistent network udev rules" +    /bin/cat /dev/.udev/tmp-rules--70-persistent-net.rules >> /etc/udev/rules.d/70-persistent-net.rules +    stat_done +fi + +# Save our dmesg output from this boot +if [ -f /var/log/dmesg.log ]; then +    /bin/rm /var/log/dmesg.log +fi +/bin/dmesg > /var/log/dmesg.log + +# vim: set ts=2 noet: +# End diff --git a/abs/mv-core/mythvantage-live/etc/ulogin b/abs/mv-core/mythvantage-live/etc/ulogin new file mode 100755 index 0000000..085c431 --- /dev/null +++ b/abs/mv-core/mythvantage-live/etc/ulogin @@ -0,0 +1,57 @@ +#!/bin/bash + +# ulogin  - A script for autologin of a selected user (and more) +#----------------------------------------------------------------- +# 2008.04.06 + +user=$( cat /tmp/newuser 2>/dev/null ) + +rm -f /tmp/newuser +rm -f /tmp/xlogout + +if [ -n "${user}" ]; then +    login -f ${user} +else +    # offer choice of user +    ulist="$( cat /etc/passwd | grep ':/home/.*sh$' )" +    echo -e "\nLogin a user or quit:" +    echo "   0 : root" +    echo "   1 : REBOOT" +    echo "   2 : HALT" + +    i=2 +    for entry in ${ulist}; do +        i=$(( ${i} + 1 )) +        user="$( echo ${entry} | cut -d':' -f1 )" +        users[${i}]=${user} +        printf "%4d : %s\n" ${i} ${user} +    done +    while true; do +        read -p "Enter a number from 0 to ${i} : " n +        if [ "${n}" = 0 ]; then +            login -f root +        elif [ "${n}" = 1 ]; then +            exec reboot +        elif [ "${n}" = 2 ]; then +            exec halt +        elif [ -n "$( echo "${n}" | grep "^[0-9]\+$" )" ] && \ +                [ -n "${users[${n}]}" ]; then +            login -f ${users[${n}]} +        else +            echo "  *** Invalid choice ..." +            continue +        fi +        break +    done +fi + +if grep "r" /tmp/xlogout &>/dev/null; then +    reboot +elif grep "h" /tmp/xlogout &>/dev/null; then +    halt +fi + +# This file is only needed for shutting down +rm -f /tmp/checkse + +# End diff --git a/abs/mv-core/mythvantage-live/lib/initcpio/gen_larch_init b/abs/mv-core/mythvantage-live/lib/initcpio/gen_larch_init new file mode 100755 index 0000000..d834e8f --- /dev/null +++ b/abs/mv-core/mythvantage-live/lib/initcpio/gen_larch_init @@ -0,0 +1,12 @@ +#! /bin/bash + +# gen_larch_init +# +# Author: Michael Towers <gradgrind[at]online[dot]de> + +# Create an initramfs for a larch live system +#  $1  - kernel version + +# The cpio.gz image is generated in larch.img + +/sbin/mkinitcpio -c /lib/initcpio/mkinitcpio.conf -k $1 -g larch.img diff --git a/abs/mv-core/mythvantage-live/lib/initcpio/hooks/larch1 b/abs/mv-core/mythvantage-live/lib/initcpio/hooks/larch1 new file mode 100644 index 0000000..88ccc3e --- /dev/null +++ b/abs/mv-core/mythvantage-live/lib/initcpio/hooks/larch1 @@ -0,0 +1,125 @@ +# vim: set ft=sh: + +# larch1 -  live 'hook' for mkinitcpio: set up tmpfs and find boot device + +# Author: Michael Towers (gradgrind) <mt.42@web.de> +# +# This file is part of the larch project. +# +#    larch 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. +# +#    larch is distributed in the hope that it will be useful, +#    but WITHOUT ANY WARRANTY; without even the implied warranty of +#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the +#    GNU General Public License for more details. +# +#    You should have received a copy of the GNU General Public License +#    along with larch; if not, write to the Free Software Foundation, Inc., +#    51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA +# +#---------------------------------------------------------------------------- +#2008.02.11 + +# Replacement for msg which includes leading and trailing spaces +msg_ () { [ "${quiet}" != "y" ] && echo "$@"; } + +# Try to mount a disk, partition or cdrom and look for the file +# 'larchboot' in the /larch directory. +# If LiveCD system found in the device, return 0, else return 1 +# and leave the device mounted. +# $1 = device name (e.g. "/dev/hda2") +# $2 = directory where devices will be mounted +# +test_live_data_dir () +{ +    /bin/mount -r -t iso9660 "$1" $2 >/dev/null 2>/dev/null || \ +    /bin/mount -r -t vfat -o noatime,nodiratime "$1" $2 >/dev/null 2>/dev/null || \ +    /bin/mount -r -t ext2 -o noatime,nodiratime "$1" $2 >/dev/null 2>/dev/null +    if [ $? -eq 0 ]; then +        if [ -f "$2/larch/larchboot" ]; then +            LDEV="$1" +            msg_ " ... found at $1" +            return 0 +        else +            /bin/umount $2 2>/dev/null +            msg_ " ... $1 mounted, but no 'larch/larchboot' found" +        fi +    else +        msg_ "  ... not $1" +    fi +    return 1 +} + +run_hook () +{ +    msg_ ":: Creating writeable filesystem (tmpfs)" +    /bin/mkdir "/tfs" +    # Boot option copy-to-ram (c2r) +    if [ "${c2r}" = "y" ]; then +        TFSSIZE="90%" +    else +        TFSSIZE="60%" +    fi +    /bin/mount -t tmpfs -o "size=${TFSSIZE}" tmpfs "/tfs" + +    # Directory for test mounts (and then for live CD) +    cdmount="/livecd" +    /bin/mkdir "${cdmount}" + +    # look for livecd data directory, first try ${root} +    LDEV="${root}" +    if [ "x${LDEV}" != "x" ]; then +        /bin/mount -r -t iso9660 "${LDEV}" "${cdmount}" >/dev/null 2>/dev/null || \ +        /bin/mount -r -t vfat -o noatime,nodiratime "${LDEV}" "${cdmount}" >/dev/null 2>/dev/null || \ +        /bin/mount -r -t ext2 -o noatime,nodiratime "${LDEV}" "${cdmount}" >/dev/null 2>/dev/null +        if [ $? -eq 0 ]; then +            if [ -d "${cdmount}/larch" ]; then +                msg_ ":: larch system at ${LDEV}" +            else +                /bin/umount "${cdmount}" 2>/dev/null +                echo "!! No larch system at ${LDEV}" +                LDEV="" +            fi +        else +            echo "!! Couldn't mount ${LDEV}" +            LDEV="" +        fi +    fi + +    # then try cdroms +    if [ "x${LDEV}" = "x" ]; then +        msg_ ":: Looking for boot device" +        cdroms=$( /bin/cat /proc/sys/dev/cdrom/info | { while read a b c; do +                if [ "${a}" = "drive" -a "${b}" = "name:" ]; then +                    echo "${c}" +                    break +                fi +            done +        } ) +        for i in ${cdroms}; do +            test_live_data_dir "/dev/${i}" "${cdmount}" +            if [ $? -eq 0 ]; then break; fi +        done +    fi + +    # test USB devices (and disks) repeatedly until timed out +    if [ "x${LDEV}" = "x" ]; then +        msg_ ":: Searching for usb (and disk) devices .." +        for i in 1 2 3 4 5; do +            msg_ " :wait ${i} :::" +            /bin/sleep ${i} +            for d in /dev/sd[a-z][0-9]*; do +                test_live_data_dir "${d}" "${cdmount}" +                if [ $? -eq 0 ]; then break 2; fi +            done +            msg_ ":: Searching for usb cdroms .." +            for d in /dev/sr[0-9]*; do +                test_live_data_dir "${d}" "${cdmount}" +                if [ $? -eq 0 ]; then break 2; fi +            done +        done +    fi +} diff --git a/abs/mv-core/mythvantage-live/lib/initcpio/hooks/larch2 b/abs/mv-core/mythvantage-live/lib/initcpio/hooks/larch2 new file mode 100644 index 0000000..74b4e64 --- /dev/null +++ b/abs/mv-core/mythvantage-live/lib/initcpio/hooks/larch2 @@ -0,0 +1,33 @@ +# larch2 -  live 'hook' for mkinitcpio: unionfs specific + +# Author: Michael Towers (gradgrind) <mt.42@web.de> +# +# This file is part of the larch project. +# +#    larch 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. +# +#    larch is distributed in the hope that it will be useful, +#    but WITHOUT ANY WARRANTY; without even the implied warranty of +#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the +#    GNU General Public License for more details. +# +#    You should have received a copy of the GNU General Public License +#    along with larch; if not, write to the Free Software Foundation, Inc., +#    51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA +# +#---------------------------------------------------------------------------- +#2007.12.13 + +run_hook () +{ +    #!!! --- unionfs specific +    # Need unionfs module +    /bin/modprobe unionfs +    ovlmnt="ro" +    bropt="dirs=" +    sqfmnt="ro" +    utype="unionfs" +} diff --git a/abs/mv-core/mythvantage-live/lib/initcpio/hooks/larch2_aufs b/abs/mv-core/mythvantage-live/lib/initcpio/hooks/larch2_aufs new file mode 100644 index 0000000..ac8e40b --- /dev/null +++ b/abs/mv-core/mythvantage-live/lib/initcpio/hooks/larch2_aufs @@ -0,0 +1,33 @@ +# larch2_aufs -  live 'hook' for mkinitcpio: aufs specific + +# Author: Michael Towers (gradgrind) <mt.42@web.de> +# +# This file is part of the larch project. +# +#    larch 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. +# +#    larch is distributed in the hope that it will be useful, +#    but WITHOUT ANY WARRANTY; without even the implied warranty of +#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the +#    GNU General Public License for more details. +# +#    You should have received a copy of the GNU General Public License +#    along with larch; if not, write to the Free Software Foundation, Inc., +#    51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA +# +#---------------------------------------------------------------------------- +# 2008.02.29 + +run_hook () +{ +   #!!! --- aufs specific +    # Need aufs module +    /bin/modprobe aufs +    ovlmnt="rr+wh" +    sqfmnt="rr" +    bropt="br:" +    utype="aufs" +} diff --git a/abs/mv-core/mythvantage-live/lib/initcpio/hooks/larch3 b/abs/mv-core/mythvantage-live/lib/initcpio/hooks/larch3 new file mode 100644 index 0000000..47be81a --- /dev/null +++ b/abs/mv-core/mythvantage-live/lib/initcpio/hooks/larch3 @@ -0,0 +1,192 @@ +# larch3 -  live 'hook' for mkinitcpio: +#                 deal with c2r, +#                 mount base system, +#                 load overlay, +#                 set up unioned root filesystem. +#                 Also manages overlay merging. + +# Author: Michael Towers <gradgrind[at]online[dot]de> +# +# This file is part of the larch project. +# +#    larch 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. +# +#    larch is distributed in the hope that it will be useful, +#    but WITHOUT ANY WARRANTY; without even the implied warranty of +#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the +#    GNU General Public License for more details. +# +#    You should have received a copy of the GNU General Public License +#    along with larch; if not, write to the Free Software Foundation, Inc., +#    51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA +# +#---------------------------------------------------------------------------- +# 2008.04.04 + +run_hook () +{ +    if [ "x${LDEV}" = "x" ]; then +        err "Sorry, couldn't find boot medium ..." +        break="y" +        return +    fi + +    /sbin/modprobe loop + +    # Path to compressed base system +    sysSqf=${cdmount}/system.sqf + +    ovlpath=${cdmount} + +    # A possibility to use alternative files: +    if [ -f ${cdmount}/larch/boot-init ]; then +        . ${cdmount}/larch/boot-init +    fi + +    # Path to compressed 'modifications' archive +    modsSqf=${ovlpath}/mods.sqf +    # Default overlay file and directory +    overlay=${ovlpath}/overlay.ovl + +    # Make union root +    /bin/mkdir /union + +    # Deal with new archives +    if [ -f ${overlay}_ ]; then +        /bin/mount -o remount,rw ${LDEV} ${cdmount} +        /bin/mv ${overlay} ${overlay}~ +        /bin/mv ${overlay}_ ${overlay} + +        if [ -f ${modsSqf}_ ]; then +            /bin/mv ${modsSqf} ${modsSqf}~ +            /bin/mv ${modsSqf}_ ${modsSqf} +        fi +        /bin/mount -o remount,ro ${LDEV} ${cdmount} +    fi + +    # Boot option copy-to-ram (c2r) +    if [ "${c2r}" = "y" ]; then +        msg_ ":: Copying base system to RAM, this will take a while ..." +        /bin/cat ${sysSqf} > /tfs/system.sqf +        if [ $? -ne 0 ]; then +            err "Sorry, not enough RAM" +            break="y" +            return +        fi +        sysSqf=/tfs/system.sqf + +        msg_ ":: Copying mods archive to RAM, this might take a while ..." +        /bin/cat ${modsSqf} > /tfs/mods.sqf +        if [ $? -ne 0 ]; then +            err "Sorry, not enough RAM" +            break="y" +            return +        fi +        modsSqf=/tfs/mods.sqf + +        # force use of swap (if available) +        :> /tfs/swapon + +    elif [ "${swap}" = "y" ]; then +        :> /tfs/swapon +    fi + +    msg_ ":: Mounting squashed images" +    /bin/mkdir /tfs/system +    # The klibc mount command doesn't support '-o loop' +    /bin/losetup /dev/loop0 ${sysSqf} +    /bin/mount -r -t squashfs /dev/loop0 /tfs/system + +    # Make stuff in 'system' available by providing the loader and +    # library path +    ldli=$( cd /tfs/system; echo lib/ld-linux*.so.2 ) +    /bin/ln -s /tfs/system/${ldli} /${ldli} +    export LD_LIBRARY_PATH=/tfs/system/lib:/tfs/system/usr/lib + +    /bin/mkdir /tfs/mods +    # The klibc mount command doesn't support '-o loop' +    /bin/losetup /dev/loop1 ${modsSqf} +    /bin/mount -r -t squashfs /dev/loop1 /tfs/mods + +    # Unpack the overlay +    msg_ ":: Initializing writable layer for union (overlay)" +    /tfs/system/usr/bin/lzop -d < ${overlay} | \ +            /tfs/system/bin/tar -C /tfs -xf - + +    # Copy the installation tidy-up script (for removing custom live-only stuff), +    # and any other files in 'larch/copy' directory +    if [ -d ${ovlpath}/larch/copy ]; then +        cd ${ovlpath}/larch/copy +        for f in *; do +            cat ${f} >/tfs/${f} +        done +    fi + +    msg_ ":: Setting up union file system" + +    layers="/tfs/overlay=rw:/tfs/mods=${ovlmnt}:/tfs/system=${sqfmnt}" +    /bin/mount -t ${utype} -o ${bropt}${layers} ${utype} /union + +    echo "${utype}" > /tfs/utype + +    # Minimal device nodes needed before udev does its work +    /bin/mkdir /union/dev +    /bin/mknod /union/dev/console c 5 1 +    /bin/mknod /union/dev/null c 1 3 +    /bin/mknod /union/dev/zero c 1 5 + +    # Make special directories +    /bin/mkdir -m 1777 /union/tmp +    /bin/mkdir /union/media +    /bin/mkdir /union/sys +    /bin/mkdir /union/proc + +    # Make the tmpfs stuff accessible within the union +    /bin/mkdir /union/.livesys +    /bin/mount -o bind /tfs /union/.livesys + +    /bin/mkdir /union/.livesys/medium + +    /bin/mount -o bind /tfs/system /union/.livesys/system +    /bin/mount -o bind /tfs/overlay /union/.livesys/overlay +    /bin/mount -o bind ${cdmount} /union/.livesys/medium + +    if [ "x${modsSqf}" != "x" ]; then +        /bin/mount -o move /tfs/mods /union/.livesys/mods +    fi + +    # Remember the boot device +    echo "${LDEV}" > /tfs/bootdevice + +    if [ "${c2r}" = "y" ]; then +        # Set flag to inform system of copy-to-ram +        :> /tfs/c2r + +        # Unmount boot device +        /bin/umount ${cdmount} +    fi + +    msg_ ":: End of live system set-up" + +    # Now some tweaks to alter 'init' actions from non-larch hooks, etc. +    # Override rootdelay from usb hook +    if [ "x${larchdelay}" = "x"  ]; then +        # To avoid spurious udevd pid numbers +        export rootdelay=1 +    else +        # Allow adjustment via boot option +        export rootdelay=${larchdelay} +    fi +    # root must be set to something or other, even though larch doesn't +    # need it ... +    export root="/dev/loop0" +} + +####### +# The actual root switch occurs later, when 'init' execs 'kinit'. +# I handle this by overwriting the 'kinit' binary with my own script. +# This will unmount dev, sys and proc and then exec run-init. +####### diff --git a/abs/mv-core/mythvantage-live/lib/initcpio/install/larch1 b/abs/mv-core/mythvantage-live/lib/initcpio/install/larch1 new file mode 100644 index 0000000..56baf48 --- /dev/null +++ b/abs/mv-core/mythvantage-live/lib/initcpio/install/larch1 @@ -0,0 +1,15 @@ +install () +{ +    MODULES="vfat isofs ext2 ext3 nls_cp437" +    BINARIES="" +    FILES="" +    SCRIPT="larch1" +} + +help () +{ +cat<<HELPEOF +  This hook deals with booting a larch live CD. It is the first larch hook, +creating a tmpfs and seeking the boot medium. +HELPEOF +} diff --git a/abs/mv-core/mythvantage-live/lib/initcpio/install/larch2 b/abs/mv-core/mythvantage-live/lib/initcpio/install/larch2 new file mode 100644 index 0000000..a906227 --- /dev/null +++ b/abs/mv-core/mythvantage-live/lib/initcpio/install/larch2 @@ -0,0 +1,15 @@ +install () +{ +    MODULES="unionfs" +    BINARIES="" +    FILES="" +    SCRIPT="larch2" +} + +help () +{ +cat<<HELPEOF +  This hook deals with booting a larch live CD. It handles selection of the +desired unioning file system, here unionfs. +HELPEOF +} diff --git a/abs/mv-core/mythvantage-live/lib/initcpio/install/larch2_aufs b/abs/mv-core/mythvantage-live/lib/initcpio/install/larch2_aufs new file mode 100644 index 0000000..0e19de9 --- /dev/null +++ b/abs/mv-core/mythvantage-live/lib/initcpio/install/larch2_aufs @@ -0,0 +1,15 @@ +install () +{ +    MODULES="aufs" +    BINARIES="" +    FILES="" +    SCRIPT="larch2_aufs" +} + +help () +{ +cat<<HELPEOF +  This hook deals with booting a larch live CD. It handles selection of the +desired unioning file system, here aufs. +HELPEOF +} diff --git a/abs/mv-core/mythvantage-live/lib/initcpio/install/larch3 b/abs/mv-core/mythvantage-live/lib/initcpio/install/larch3 new file mode 100644 index 0000000..7dad03c --- /dev/null +++ b/abs/mv-core/mythvantage-live/lib/initcpio/install/larch3 @@ -0,0 +1,18 @@ +install () +{ +    MODULES="squashfs loop reiserfs" +    BINARIES="" +    FILES="" +    SCRIPT="larch3" +#    add_file "/lib/initcpio/kinit" "/bin/kinit"  ##### This doesn't work, so: +    sed -i 's|.*/usr/lib/klibc/bin/kinit\.shared.*||' "${FILELIST}" +    sed -i 's|/usr/lib/klibc/bin/kinit|/lib/initcpio/kinit|' "${FILELIST}" +} + +help () +{ +cat<<HELPEOF +  This hook deals with booting a larch live CD. It is the last larch hook, +setting up the tmpfs root file system. +HELPEOF +} diff --git a/abs/mv-core/mythvantage-live/lib/initcpio/kinit b/abs/mv-core/mythvantage-live/lib/initcpio/kinit new file mode 100755 index 0000000..7c86f4b --- /dev/null +++ b/abs/mv-core/mythvantage-live/lib/initcpio/kinit @@ -0,0 +1,6 @@ +#! /bin/sh + +umount /sys +umount /proc +umount /dev +exec run-init -c /dev/console /union /sbin/init ${CMDLINE} diff --git a/abs/mv-core/mythvantage-live/lib/initcpio/mkinitcpio.conf b/abs/mv-core/mythvantage-live/lib/initcpio/mkinitcpio.conf new file mode 100644 index 0000000..79cca21 --- /dev/null +++ b/abs/mv-core/mythvantage-live/lib/initcpio/mkinitcpio.conf @@ -0,0 +1,54 @@ +# vim:set ft=sh +# MODULES +# The following modules are loaded before any boot hooks are +# run.  Advanced users may wish to specify all system modules +# in this array.  For instance: +#     MODULES="piix ide_disk reiserfs" +MODULES="" + +# BINARIES +# This setting includes, into the CPIO image, and additional +# binaries a given user may wish.  This is run first, so may +# be used to override the actual binaries used in a given hook. +# (Existing files are NOT overwritten is already added) +# BINARIES are dependancy parsed, so you may safely ignore libraries +#BINARIES="" + +# FILES +# This setting is similar to BINARIES above, however, files are added +# as-is and are not parsed in anyway.  This is useful for config files. +# Some users may wish to include modprobe.conf for custom module options, +# like so: +#    FILES="/etc/modprobe.conf" +FILES="" + +# HOOKS +# This is the most important setting in this file.  The HOOKS control the +# modules and scripts added to the image, and what happens at boot time. +# Order is important, and it is recommended that you do not change the +# order in which HOOKS are added.  Run 'mkinitcpio -H <hook name>' for +# help on a given hook. +# 'base' is _required_ unless you know precisely what you are doing. +# 'udev' is _required_ in order to automatically load modules +# 'modload' may be used in place of 'udev', but is not recommended +# 'filesystems' is _required_ unless you specify your fs modules in MODULES +# Examples: +#    This setup specifies all modules in the MODULES setting above. +#    No raid, lvm, or encrypted root is needed. +#    HOOKS="base" +# +#    This setup will autodetect all modules for your system and should +#    work as a sane default +#    HOOKS="base udev autodetect ide scsi sata filesystems" +# +#    This setup will generate a 'full' image which supports most systems. +#    No autodetection is done. +#    HOOKS="base udev ide scsi sata usb filesystems" +# +#    This setup assembles an ide raid array with an encrypted root FS. +#    Note: See 'mkinitcpio -H raid' for more information on raid devices. +#    HOOKS="base udev ide filesystems raid encrypt" +# +#    This setup loads an LVM volume group on a usb device. +#    HOOKS="base udev usb filesystems lvm" +HOOKS="base udev pata scsi sata usb larch1 larch2___aufs___ larch3" diff --git a/abs/mv-core/oss-sound/PKGBUILD b/abs/mv-core/oss-sound/PKGBUILD new file mode 100755 index 0000000..f9135f0 --- /dev/null +++ b/abs/mv-core/oss-sound/PKGBUILD @@ -0,0 +1,147 @@ +pkgname=oss-linux-free +pkgver=4.0_1016 +pkgrel=12 +_realname=oss-v4.0-build1016-src-gpl +pkgdesc="OSS/Open source driver" +arch=('i686' 'x86_64') +url="http://www.opensound.com/" +license=('GPL2') +depends=('gcc' 'make' 'gtk2' 'libtool' 'bc' 'sed') +makedepends=('gawk' 'pkgconfig') +conflicts=('oss-linux') +provides=('oss') +install=oss.install +source=(rc.oss-linux-free http://www.4front-tech.com/developer/sources/stable/gpl/$_realname.tar.bz2 oss4_1016-kernel2626.diff oss4_1016-moduleinc.diff) +md5sums=('f343bb70a4dbd1aabefabbea0f76e886' +         'b8c3409b477387dbe87118caf46773ed' +         '376fce5cfd92d7793ee90d7352c1cafa' +         '4077a972a6b26ae960ce15cfec8aa34f') + +build() { + +rm -rf build ; mkdir build ; cd build + +sed -i "s|export HAVE_ALSA=1|# export HAVE_ALSA=1|g" $srcdir/$_realname/configure +sed -i "s|700|755|g" $srcdir/$_realname/setup/Linux/build.sh +unset CFLAGS + +# Thanks to majeru of the OSS forums for this patch +cd $srcdir/$_realname +patch -p0 -i $srcdir/oss4_1016-kernel2626.diff || return 1 +# Thanks to cesium of the OSS forums for this patch +patch -p1 -i $srcdir/oss4_1016-moduleinc.diff || return 1 +cd $srcdir/build +$srcdir/$_realname/configure || return 1 +make build || return 1 + +cp -r prototype/{etc,usr} $pkgdir/ +install -Dm755 ../rc.oss-linux-free $pkgdir/etc/rc.d/oss-linux-free + +if [ `uname -m` == "i686" ]; then +cd setup/Linux/oss/lib +gcc -m32 -shared -fPIC -O2 -Wall -Werror -lssl flashsupport.c -o libflashsupport.so || return 1 +cp libflashsupport.so $pkgdir/usr/lib/oss/lib/ +fi + +#building modules +  PREFIX=$startdir/pkg +  OSSLIBDIR=$PREFIX/usr/lib/oss +cd $OSSLIBDIR/build +REGPARM=REGPARM +pushd $OSSLIBDIR +rm -rf objects +ln -s objects.regparm objects +rm -rf modules +ln -s modules.regparm modules +popd + + +if ! test -f $OSSLIBDIR/objects/osscore.o +then +	echo Error: OSS core module for $REGPARM kernel are not available +	exit 1 +fi + +if ! test -f $OSSLIBDIR/modules/ich.o +then +	echo Error: OSS driver modules for $REGPARM kernel are not available +	exit 1 +fi + +echo +echo OSS build environment set up for $REGPARM kernels +BASEKERNEL=/lib/modules/2.6.26-ARCH +PKGKERNEL=$startdir/pkg$BASEKERNEL +KERNELDIR=$BASEKERNEL/build + +cp -f ../objects/osscore.o osscore_mainline.o + +ln -sf ../include/sys/*.h ../include/sys/ossddk . + +rm -f Makefile +ln -s Makefile.osscore Makefile + +if ! test -d $OSSLIBDIR/logs +then +	mkdir $OSSLIBDIR/logs +fi + +echo Building module osscore + +if ! make KERNELDIR=$KERNELDIR> build.list 2>&1 +then +	echo Failed to compile OSS +	cat build.list +	exit 2 +fi + +if ! test -d $PKGKERNEL/kernel/oss +then +  mkdir -p $PKGKERNEL/kernel/oss +fi + +if ! test -d $PKGKERNEL/kernel/oss +then +	echo OSS module directory $PKGKERNEL/kernel/oss does not exist. +	exit 3 +fi + +if ! ld -r osscore.ko osscore_mainline.o -o $PKGKERNEL/kernel/oss/osscore.ko +then +	echo Linking the osscore module failed +	exit 5 +fi + +#depmod -a + +for n in ../modules/*.o +do +	N=`basename $n .o` +	echo Building module $N  + +	rm -f $N_mainline.o Makefile + +	sed "s/MODNAME/$N/" < Makefile.tmpl > Makefile +	ln -s $n $N_mainline.o + +	if ! make KERNELDIR=$KERNELDIR > build.list 2>&1 +	then +		echo Compiling module $N failed +		cat build.list +		exit 4 +	fi + +	if ! ld -r $N.ko $N_mainline.o -o $PKGKERNEL/kernel/oss/$N.ko +	then +		echo Linking $N module failed +		exit 6 +	fi + +	rm -f $N_mainline.o +	make clean +done  + +rm -f Makefile + + +} diff --git a/abs/mv-core/oss-sound/PKGBUILD.keep b/abs/mv-core/oss-sound/PKGBUILD.keep new file mode 100755 index 0000000..f9135f0 --- /dev/null +++ b/abs/mv-core/oss-sound/PKGBUILD.keep @@ -0,0 +1,147 @@ +pkgname=oss-linux-free +pkgver=4.0_1016 +pkgrel=12 +_realname=oss-v4.0-build1016-src-gpl +pkgdesc="OSS/Open source driver" +arch=('i686' 'x86_64') +url="http://www.opensound.com/" +license=('GPL2') +depends=('gcc' 'make' 'gtk2' 'libtool' 'bc' 'sed') +makedepends=('gawk' 'pkgconfig') +conflicts=('oss-linux') +provides=('oss') +install=oss.install +source=(rc.oss-linux-free http://www.4front-tech.com/developer/sources/stable/gpl/$_realname.tar.bz2 oss4_1016-kernel2626.diff oss4_1016-moduleinc.diff) +md5sums=('f343bb70a4dbd1aabefabbea0f76e886' +         'b8c3409b477387dbe87118caf46773ed' +         '376fce5cfd92d7793ee90d7352c1cafa' +         '4077a972a6b26ae960ce15cfec8aa34f') + +build() { + +rm -rf build ; mkdir build ; cd build + +sed -i "s|export HAVE_ALSA=1|# export HAVE_ALSA=1|g" $srcdir/$_realname/configure +sed -i "s|700|755|g" $srcdir/$_realname/setup/Linux/build.sh +unset CFLAGS + +# Thanks to majeru of the OSS forums for this patch +cd $srcdir/$_realname +patch -p0 -i $srcdir/oss4_1016-kernel2626.diff || return 1 +# Thanks to cesium of the OSS forums for this patch +patch -p1 -i $srcdir/oss4_1016-moduleinc.diff || return 1 +cd $srcdir/build +$srcdir/$_realname/configure || return 1 +make build || return 1 + +cp -r prototype/{etc,usr} $pkgdir/ +install -Dm755 ../rc.oss-linux-free $pkgdir/etc/rc.d/oss-linux-free + +if [ `uname -m` == "i686" ]; then +cd setup/Linux/oss/lib +gcc -m32 -shared -fPIC -O2 -Wall -Werror -lssl flashsupport.c -o libflashsupport.so || return 1 +cp libflashsupport.so $pkgdir/usr/lib/oss/lib/ +fi + +#building modules +  PREFIX=$startdir/pkg +  OSSLIBDIR=$PREFIX/usr/lib/oss +cd $OSSLIBDIR/build +REGPARM=REGPARM +pushd $OSSLIBDIR +rm -rf objects +ln -s objects.regparm objects +rm -rf modules +ln -s modules.regparm modules +popd + + +if ! test -f $OSSLIBDIR/objects/osscore.o +then +	echo Error: OSS core module for $REGPARM kernel are not available +	exit 1 +fi + +if ! test -f $OSSLIBDIR/modules/ich.o +then +	echo Error: OSS driver modules for $REGPARM kernel are not available +	exit 1 +fi + +echo +echo OSS build environment set up for $REGPARM kernels +BASEKERNEL=/lib/modules/2.6.26-ARCH +PKGKERNEL=$startdir/pkg$BASEKERNEL +KERNELDIR=$BASEKERNEL/build + +cp -f ../objects/osscore.o osscore_mainline.o + +ln -sf ../include/sys/*.h ../include/sys/ossddk . + +rm -f Makefile +ln -s Makefile.osscore Makefile + +if ! test -d $OSSLIBDIR/logs +then +	mkdir $OSSLIBDIR/logs +fi + +echo Building module osscore + +if ! make KERNELDIR=$KERNELDIR> build.list 2>&1 +then +	echo Failed to compile OSS +	cat build.list +	exit 2 +fi + +if ! test -d $PKGKERNEL/kernel/oss +then +  mkdir -p $PKGKERNEL/kernel/oss +fi + +if ! test -d $PKGKERNEL/kernel/oss +then +	echo OSS module directory $PKGKERNEL/kernel/oss does not exist. +	exit 3 +fi + +if ! ld -r osscore.ko osscore_mainline.o -o $PKGKERNEL/kernel/oss/osscore.ko +then +	echo Linking the osscore module failed +	exit 5 +fi + +#depmod -a + +for n in ../modules/*.o +do +	N=`basename $n .o` +	echo Building module $N  + +	rm -f $N_mainline.o Makefile + +	sed "s/MODNAME/$N/" < Makefile.tmpl > Makefile +	ln -s $n $N_mainline.o + +	if ! make KERNELDIR=$KERNELDIR > build.list 2>&1 +	then +		echo Compiling module $N failed +		cat build.list +		exit 4 +	fi + +	if ! ld -r $N.ko $N_mainline.o -o $PKGKERNEL/kernel/oss/$N.ko +	then +		echo Linking $N module failed +		exit 6 +	fi + +	rm -f $N_mainline.o +	make clean +done  + +rm -f Makefile + + +} diff --git a/abs/mv-core/oss-sound/PKGBUILD.orig b/abs/mv-core/oss-sound/PKGBUILD.orig new file mode 100755 index 0000000..e0e695b --- /dev/null +++ b/abs/mv-core/oss-sound/PKGBUILD.orig @@ -0,0 +1,147 @@ +pkgname=oss +pkgver=4.0_1016 +_pkgver=v4.0-1016 +pkgrel=14 +pkgdesc="OSS/Commercial driver" +url="http://www.opensound.com/" +license="" +depends=('glibc' 'gtk2') +makedepends=('make') +conflicts=('oss-linux') +provides=('oss-linux') +replaces=() +backup=() +#http://www.4front-tech.com/release/oss-linux-v4.0-1012-i386.tar.bz2 +install=oss.install +source=(http://www.4front-tech.com/release/oss-linux-v4.0-1016-i386.tar.bz2 install_sh.diff) +arch=('i686') + + +build() { +  PREFIX=$startdir/pkg +  OSSLIBDIR=$PREFIX/usr/lib/oss + +  cd $startdir/src +  find . -type d -exec chmod 755 '{}' ';' +  patch -p0 < ../install_sh.diff || return 1 + +  ## Install +  cp -rp  etc $PREFIX/ +  cp -rp  usr $PREFIX/ +  cp -rp  $PREFIX/usr/share/man $PREFIX/usr/ +  rmdir $PREFIX/usr/share +  mkdir $PREFIX/usr/lib/oss/logs + # mkdir -p $PREFIX/etc/rc.d + # install oss-linux $PREFIX/etc/rc.d/ + +  mv $OSSLIBDIR/conf.tmpl $OSSLIBDIR/conf +  mkdir -p $PREFIX/usr/lib +  cd $PREFIX/usr/lib +  ln -sf oss/lib/libOSSlib.so || return 1 + +#building modules +cd $OSSLIBDIR/build +REGPARM=REGPARM +pushd $OSSLIBDIR +rm -rf objects +ln -s objects.regparm objects +rm -rf modules +ln -s modules.regparm modules +popd + + +if ! test -f $OSSLIBDIR/objects/osscore.o +then +	echo Error: OSS core module for $REGPARM kernel are not available +	exit 1 +fi + +if ! test -f $OSSLIBDIR/modules/ich.o +then +	echo Error: OSS driver modules for $REGPARM kernel are not available +	exit 1 +fi + +echo +echo OSS build environment set up for $REGPARM kernels +BASEKERNEL=/lib/modules/2.6.26-ARCH +PKGKERNEL=$startdir/pkg$BASEKERNEL +KERNELDIR=$BASEKERNEL/build + +cp -f ../objects/osscore.o osscore_mainline.o + +ln -sf ../include/sys/*.h ../include/sys/ossddk . + +rm -f Makefile +ln -s Makefile.osscore Makefile + +if ! test -d $OSSLIBDIR/logs +then +	mkdir $OSSLIBDIR/logs +fi + +echo Building module osscore + +if ! make KERNELDIR=$KERNELDIR> build.list 2>&1 +then +	echo Failed to compile OSS +	cat build.list +	exit 2 +fi + +if ! test -d $PKGKERNEL/kernel/oss +then +  mkdir -p $PKGKERNEL/kernel/oss +fi + +if ! test -d $PKGKERNEL/kernel/oss +then +	echo OSS module directory $PKGKERNEL/kernel/oss does not exist. +	exit 3 +fi + +if ! ld -r osscore.ko osscore_mainline.o -o $PKGKERNEL/kernel/oss/osscore.ko +then +	echo Linking the osscore module failed +	exit 5 +fi + +#depmod -a + +for n in ../modules/*.o +do +	N=`basename $n .o` +	echo Building module $N  + +	rm -f $N_mainline.o Makefile + +	sed "s/MODNAME/$N/" < Makefile.tmpl > Makefile +	ln -s $n $N_mainline.o + +	if ! make KERNELDIR=$KERNELDIR > build.list 2>&1 +	then +		echo Compiling module $N failed +		cat build.list +		exit 4 +	fi + +	if ! ld -r $N.ko $N_mainline.o -o $PKGKERNEL/kernel/oss/$N.ko +	then +		echo Linking $N module failed +		exit 6 +	fi + +	rm -f $N_mainline.o +	make clean +done  + +rm -f Makefile + + + + + + + + +} diff --git a/abs/mv-core/oss-sound/PKGBUILD.oss-free b/abs/mv-core/oss-sound/PKGBUILD.oss-free new file mode 100755 index 0000000..b652603 --- /dev/null +++ b/abs/mv-core/oss-sound/PKGBUILD.oss-free @@ -0,0 +1,45 @@ +pkgname=oss-linux-free +pkgver=4.0_1016 +pkgrel=3 +_realname=oss-v4.0-build1016-src-gpl +pkgdesc="OSS/Open source driver" +arch=('i686' 'x86_64') +url="http://www.opensound.com/" +license=('GPL2') +depends=('gcc' 'make' 'gtk2' 'libtool' 'bc' 'sed') +makedepends=('gawk' 'pkgconfig') +conflicts=('oss-linux') +provides=('oss') +install=oss.install +source=(rc.oss-linux-free http://www.4front-tech.com/developer/sources/stable/gpl/$_realname.tar.bz2 oss4_1016-kernel2626.diff oss4_1016-moduleinc.diff) +md5sums=('f343bb70a4dbd1aabefabbea0f76e886' +         'b8c3409b477387dbe87118caf46773ed' +         '376fce5cfd92d7793ee90d7352c1cafa' +         '4077a972a6b26ae960ce15cfec8aa34f') + +build() { + +rm -rf build ; mkdir build ; cd build + +sed -i "s|export HAVE_ALSA=1|# export HAVE_ALSA=1|g" $srcdir/$_realname/configure +sed -i "s|700|755|g" $srcdir/$_realname/setup/Linux/build.sh +unset CFLAGS + +# Thanks to majeru of the OSS forums for this patch +cd $srcdir/$_realname +patch -p0 -i $srcdir/oss4_1016-kernel2626.diff || return 1 +# Thanks to cesium of the OSS forums for this patch +patch -p1 -i $srcdir/oss4_1016-moduleinc.diff || return 1 +cd $srcdir/build +$srcdir/$_realname/configure || return 1 +make build || return 1 + +cp -r prototype/{etc,usr} $pkgdir/ +install -Dm755 ../rc.oss-linux-free $pkgdir/etc/rc.d/oss-linux-free + +if [ `uname -m` == "i686" ]; then +cd setup/Linux/oss/lib +gcc -m32 -shared -fPIC -O2 -Wall -Werror -lssl flashsupport.c -o libflashsupport.so || return 1 +cp libflashsupport.so $pkgdir/usr/lib/oss/lib/ +fi +} diff --git a/abs/mv-core/oss-sound/install_sh.diff b/abs/mv-core/oss-sound/install_sh.diff new file mode 100755 index 0000000..7276285 --- /dev/null +++ b/abs/mv-core/oss-sound/install_sh.diff @@ -0,0 +1,50 @@ +--- usr/lib/oss/build/install.sh.old	2007-02-15 17:02:16.000000000 +0800 ++++ usr/lib/oss/build/install.sh	2007-03-02 11:34:05.000000000 +0800 +@@ -10,21 +10,14 @@ +  + rm -f $OSSLIBDIR/.cuckoo_installed +  +-# Check if we should use REGPARM or non-REGPARM modules +-if /usr/sbin/ossvermagic -r || /sbin/modinfo ext3|grep -q REGPARM +-then ++# Always use REGPARM (for kernel 2.6.20+) +    REGPARM=REGPARM +-   rm -rf $OSSLIBDIR/objects +-   ln -s $OSSLIBDIR/objects.regparm $OSSLIBDIR/objects +-   rm -rf $OSSLIBDIR/modules +-   ln -s $OSSLIBDIR/modules.regparm $OSSLIBDIR/modules +-else +-   REGPARM=NOREGPARM +-   rm -rf $OSSLIBDIR/objects +-   ln -s $OSSLIBDIR/objects.noregparm $OSSLIBDIR/objects +-   rm -rf $OSSLIBDIR/modules +-   ln -s $OSSLIBDIR/modules.noregparm $OSSLIBDIR/modules +-fi ++pushd $OSSLIBDIR ++rm -rf objects ++ln -s objects.regparm objects ++rm -rf modules ++ln -s modules.regparm modules ++popd +  + if ! test -f $OSSLIBDIR/objects/osscore.o + then +@@ -291,12 +284,12 @@ + fi +  + # Install ALSA interface module (Cuckoo) +-#(cd $OSSLIBDIR/cuckoo && make clean) > /dev/null 2>&1 +-#if (cd $OSSLIBDIR/cuckoo && make install) > $OSSLIBDIR/logs/cuckoo.log 2>&1 +-#then +-#  touch $OSSLIBDIR/.cuckoo_installed +-#fi +-#(cd $OSSLIBDIR/cuckoo && make clean) > /dev/null 2>&1 ++(cd $OSSLIBDIR/cuckoo && make clean) > /dev/null 2>&1 ++if (cd $OSSLIBDIR/cuckoo && make install) > $OSSLIBDIR/logs/cuckoo.log 2>&1 ++then ++  touch $OSSLIBDIR/.cuckoo_installed ++fi ++(cd $OSSLIBDIR/cuckoo && make clean) > /dev/null 2>&1 +  + # Remove bogus char major 14 device files left from earlier OSS versions. +  diff --git a/abs/mv-core/oss-sound/oss-linux-free/PKGBUILD b/abs/mv-core/oss-sound/oss-linux-free/PKGBUILD new file mode 100644 index 0000000..b652603 --- /dev/null +++ b/abs/mv-core/oss-sound/oss-linux-free/PKGBUILD @@ -0,0 +1,45 @@ +pkgname=oss-linux-free +pkgver=4.0_1016 +pkgrel=3 +_realname=oss-v4.0-build1016-src-gpl +pkgdesc="OSS/Open source driver" +arch=('i686' 'x86_64') +url="http://www.opensound.com/" +license=('GPL2') +depends=('gcc' 'make' 'gtk2' 'libtool' 'bc' 'sed') +makedepends=('gawk' 'pkgconfig') +conflicts=('oss-linux') +provides=('oss') +install=oss.install +source=(rc.oss-linux-free http://www.4front-tech.com/developer/sources/stable/gpl/$_realname.tar.bz2 oss4_1016-kernel2626.diff oss4_1016-moduleinc.diff) +md5sums=('f343bb70a4dbd1aabefabbea0f76e886' +         'b8c3409b477387dbe87118caf46773ed' +         '376fce5cfd92d7793ee90d7352c1cafa' +         '4077a972a6b26ae960ce15cfec8aa34f') + +build() { + +rm -rf build ; mkdir build ; cd build + +sed -i "s|export HAVE_ALSA=1|# export HAVE_ALSA=1|g" $srcdir/$_realname/configure +sed -i "s|700|755|g" $srcdir/$_realname/setup/Linux/build.sh +unset CFLAGS + +# Thanks to majeru of the OSS forums for this patch +cd $srcdir/$_realname +patch -p0 -i $srcdir/oss4_1016-kernel2626.diff || return 1 +# Thanks to cesium of the OSS forums for this patch +patch -p1 -i $srcdir/oss4_1016-moduleinc.diff || return 1 +cd $srcdir/build +$srcdir/$_realname/configure || return 1 +make build || return 1 + +cp -r prototype/{etc,usr} $pkgdir/ +install -Dm755 ../rc.oss-linux-free $pkgdir/etc/rc.d/oss-linux-free + +if [ `uname -m` == "i686" ]; then +cd setup/Linux/oss/lib +gcc -m32 -shared -fPIC -O2 -Wall -Werror -lssl flashsupport.c -o libflashsupport.so || return 1 +cp libflashsupport.so $pkgdir/usr/lib/oss/lib/ +fi +} diff --git a/abs/mv-core/oss-sound/oss-linux-free/oss.install b/abs/mv-core/oss-sound/oss-linux-free/oss.install new file mode 100644 index 0000000..e17dd0e --- /dev/null +++ b/abs/mv-core/oss-sound/oss-linux-free/oss.install @@ -0,0 +1,40 @@ +post_install() { +  echo "Probing soundcards, change /usr/lib/oss/etc/installed_drivers as needed afterwards if +  you want to disable any of the OSS modules. You can run '/usr/sbin/ossdetect -v' at any time +  if you have changed soundcards." +  /usr/sbin/ossdetect -v +  /sbin/ldconfig +  /bin/true +} + +pre_upgrade() { +  /etc/rc.d/oss-linux-free stop +  /bin/true +} + +post_upgrade() { +  /etc/rc.d/oss-linux-free start +  echo "If you changed your soundcard, reprobe for soundcards using '/usr/sbin/ossdetect -v'." +  /sbin/ldconfig # We need to run this since libflashsupport.so is installed on x86 +  /bin/true +} + +pre_remove() { +  /etc/rc.d/oss-linux-free stop +  sh /usr/lib/oss/scripts/restore_drv.sh +} + +post_remove() { +  echo "/usr/lib/oss/ will still contain files after removal as those files were generated by OSS +  after instalation. Delete them manually unless you want to keep them for later use." +  if [ `uname -m` == "i686" ]; then +    rm -f /usr/lib/libflashsupport.so +  fi +  /bin/true +} + +op=$1 +shift +[ "$(type -t "$op")" = "function" ] && $op "$@" + +# vim:set ts=2 sw=2 et: diff --git a/abs/mv-core/oss-sound/oss-linux-free/oss4_1016-kernel2626.diff b/abs/mv-core/oss-sound/oss-linux-free/oss4_1016-kernel2626.diff new file mode 100644 index 0000000..730c19e --- /dev/null +++ b/abs/mv-core/oss-sound/oss-linux-free/oss4_1016-kernel2626.diff @@ -0,0 +1,21 @@ +diff -uNr setup/Linux/oss/build/osscore.c setup/Linux/oss/build/osscore.c +--- setup/Linux/oss/build/osscore.c	2008-05-24 04:54:28.000000000 +0200 ++++ setup/Linux/oss/build/osscore.c	2008-07-31 19:47:53.000000000 +0200 +@@ -285,7 +285,7 @@ + init_proc_fs (void) + { +   if ((oss_proc_root = +-       create_proc_entry ("opensound", 0700 | S_IFDIR, &proc_root)) == NULL) ++       create_proc_entry ("opensound", 0700 | S_IFDIR, NULL)) == NULL) +     { +       oss_cmn_err (CE_CONT, "Cannot create /proc/opensound\n"); +       return; +@@ -308,7 +308,7 @@ +     { +       if (oss_proc_devfiles) + 	remove_proc_entry ("devfiles", oss_proc_root); +-      remove_proc_entry ("opensound", &proc_root); ++      remove_proc_entry ("opensound", NULL); +     } + } + diff --git a/abs/mv-core/oss-sound/oss-linux-free/oss4_1016-moduleinc.diff b/abs/mv-core/oss-sound/oss-linux-free/oss4_1016-moduleinc.diff new file mode 100644 index 0000000..4595ead --- /dev/null +++ b/abs/mv-core/oss-sound/oss-linux-free/oss4_1016-moduleinc.diff @@ -0,0 +1,44 @@ +diff -uNr oss-v4.0-build1016-src-gpl/setup/Linux/oss/build/install.sh oss-v4.0-build1016-src-gpl.bak/setup/Linux/oss/build/install.sh +--- oss-v4.0-build1016-src-gpl/setup/Linux/oss/build/install.sh	2008-02-05 18:58:46.000000000 +0100 ++++ oss-v4.0-build1016-src-gpl.bak/setup/Linux/oss/build/install.sh	2008-07-31 10:36:09.000000000 +0200 +@@ -159,6 +159,7 @@ + ln -sf ../include/sys/*.h ../include/sys/ossddk . +  + rm -f Makefile ++cp module.inc module.inc.orig + ln -s Makefile.osscore Makefile +  + if ! test -d $OSSLIBDIR/logs +@@ -221,7 +222,8 @@ + 	make clean + done  +  +-rm -f Makefile ++cp module.inc.orig module.inc ++rm -f Makefile module.inc.orig +  + echo "depmod -a" + depmod -a +diff -uNr oss-v4.0-build1016-src-gpl/setup/Linux/oss/build/Makefile.osscore oss-v4.0-build1016-src-gpl.bak/setup/Linux/oss/build/Makefile.osscore +--- oss-v4.0-build1016-src-gpl/setup/Linux/oss/build/Makefile.osscore	2005-11-23 23:52:32.000000000 +0100 ++++ oss-v4.0-build1016-src-gpl.bak/setup/Linux/oss/build/Makefile.osscore	2008-07-31 10:34:23.000000000 +0200 +@@ -7,11 +7,17 @@ +  + 	KERNELDIR ?= /lib/modules/$(shell uname -r)/build + 	PWD := $(shell pwd) ++endif +  + default: + 	$(MAKE) -C $(KERNELDIR) M=$(PWD) modules +- +-endif ++	@#Take generated symbol information and add it to module.inc ++	@echo >> module.inc ++	@echo "static const struct modversion_info ____versions[]" >> module.inc ++	@echo " __attribute__((used))" >> module.inc ++	@echo "__attribute__((section(\"__versions\"))) = {" >> module.inc ++	@sed -e "s:^:{:" -e "s:\t:, \":" -e "s:\t\(.\)*:\"},:" < Module.symvers >> module.inc ++	@echo "};" >> module.inc +  + clean: + 	rm -f *.o *.ko *.mod.c *.mod.o .*.cmd core core.* x y z diff --git a/abs/mv-core/oss-sound/oss-linux-free/rc.oss-linux-free b/abs/mv-core/oss-sound/oss-linux-free/rc.oss-linux-free new file mode 100755 index 0000000..48b65e0 --- /dev/null +++ b/abs/mv-core/oss-sound/oss-linux-free/rc.oss-linux-free @@ -0,0 +1,73 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +terminateapps() { +    # Thanks to the Gentoo ebuild/start script for the following +    # http://bugs.gentoo.org/show_bug.cgi?id=184123 +    # http://bugs.gentoo.org/attachment.cgi?id=153689 +    devs=`perl -e '{while (<>) {m/^(\S*)/; print "/dev/$1\n"}}' \ +		< /proc/opensound/devfiles` +    fuser -k ${devs}  >/dev/null 2>/dev/null +} + +case "$1" in +  start) +    stat_busy "Starting OSS/Open source driver" +    # start +    /usr/sbin/soundon +    if [ $? -gt 0 ]; then +      stat_fail +    else +      grep '^softoss' /proc/modules >/dev/null 2>/dev/null +      if [ $? -eq 0 ]; then +        stat_busy "Replacing old \"softoss\" module with \"vmix\"" +        rmmod softoss +        modprobe vmix +        sed -i 's/^softoss.*$/vmix/' /usr/lib/oss/etc/installed_drivers +      fi +      add_daemon oss-linux-free +      stat_done +    fi +    ;; +  stop) +    stat_busy "Saving OSS mixer" +    /usr/sbin/savemixer +    if [ $? -gt 0 ]; then +      stat_fail +    else +      stat_done +    fi +    grep '^"cuckoo"' /proc/modules >/dev/null 2>/dev/null +    if [ $? -eq 0 ]; then +      stat_busy "Removing \"cuckoo\" module" +      rmmod cuckoo +    fi +    stat_busy "Killing processes using OSS" +    terminateapps +    stat_done +    # It doesn't matter if it didnt kill anything! +    stat_busy "Stopping OSS/Open source driver" +    /usr/sbin/soundoff +    if [ $? -gt 0 ]; then +      stat_fail +    else +      rm_daemon oss-linux-free +      stat_done +    fi +    ;; +  restart) +    $0 stop +    sleep 1 +    $0 start +    ;; +  terminateapps) +    stat_busy "Killing processes using OSS" +    terminateapps +    stat_done +    # It doesn't matter if it didnt kill anything! +  ;; +  *) +    echo "usage: $0 {start|stop|restart|terminateapps}" +esac diff --git a/abs/mv-core/oss-sound/oss.install b/abs/mv-core/oss-sound/oss.install new file mode 100755 index 0000000..57a8ec6 --- /dev/null +++ b/abs/mv-core/oss-sound/oss.install @@ -0,0 +1,56 @@ +pre_install() { +#make a backup copy of the alsa modules +KERNAL=`uname -r` +MODULE=/lib/modules/$KERNAL/kernel/sound + +if [ -e $MODULE ] +then +	echo "creating archive of alsa modules" +	cd $MODULE +	cd .. +	tar -cvf /lib/modules/$KERNAL/kernel/alsa-$KERNAL.tar sound +	rm -rf $MODULE +fi +} + +post_install() { +  echo "Probing soundcards, change /usr/lib/oss/etc/installed_drivers as needed afterwards if +  you want to disable any of the OSS modules. You can run '/usr/sbin/ossdetect -v' at any time +  if you have changed soundcards." +  /usr/sbin/ossdetect -v +  /sbin/ldconfig +  /bin/true +} + +pre_upgrade() { +  sv stop oss +   pre_install +   +} + +post_upgrade() { + sv start oss +  echo "If you changed your soundcard, reprobe for soundcards using '/usr/sbin/ossdetect -v'." +  /sbin/ldconfig # We need to run this since libflashsupport.so is installed on x86 +  /bin/true +} + +pre_remove() { +  sv stop off +  #sh /usr/lib/oss/scripts/restore_drv.sh +} + +post_remove() { +  echo "/usr/lib/oss/ will still contain files after removal as those files were generated by OSS +  after instalation. Delete them manually unless you want to keep them for later use." +  if [ `uname -m` == "i686" ]; then +    rm -f /usr/lib/libflashsupport.so +  fi +  /bin/true +} + +op=$1 +shift +[ "$(type -t "$op")" = "function" ] && $op "$@" + +# vim:set ts=2 sw=2 et: diff --git a/abs/mv-core/oss-sound/oss4_1016-kernel2626.diff b/abs/mv-core/oss-sound/oss4_1016-kernel2626.diff new file mode 100644 index 0000000..730c19e --- /dev/null +++ b/abs/mv-core/oss-sound/oss4_1016-kernel2626.diff @@ -0,0 +1,21 @@ +diff -uNr setup/Linux/oss/build/osscore.c setup/Linux/oss/build/osscore.c +--- setup/Linux/oss/build/osscore.c	2008-05-24 04:54:28.000000000 +0200 ++++ setup/Linux/oss/build/osscore.c	2008-07-31 19:47:53.000000000 +0200 +@@ -285,7 +285,7 @@ + init_proc_fs (void) + { +   if ((oss_proc_root = +-       create_proc_entry ("opensound", 0700 | S_IFDIR, &proc_root)) == NULL) ++       create_proc_entry ("opensound", 0700 | S_IFDIR, NULL)) == NULL) +     { +       oss_cmn_err (CE_CONT, "Cannot create /proc/opensound\n"); +       return; +@@ -308,7 +308,7 @@ +     { +       if (oss_proc_devfiles) + 	remove_proc_entry ("devfiles", oss_proc_root); +-      remove_proc_entry ("opensound", &proc_root); ++      remove_proc_entry ("opensound", NULL); +     } + } + diff --git a/abs/mv-core/oss-sound/oss4_1016-moduleinc.diff b/abs/mv-core/oss-sound/oss4_1016-moduleinc.diff new file mode 100644 index 0000000..4595ead --- /dev/null +++ b/abs/mv-core/oss-sound/oss4_1016-moduleinc.diff @@ -0,0 +1,44 @@ +diff -uNr oss-v4.0-build1016-src-gpl/setup/Linux/oss/build/install.sh oss-v4.0-build1016-src-gpl.bak/setup/Linux/oss/build/install.sh +--- oss-v4.0-build1016-src-gpl/setup/Linux/oss/build/install.sh	2008-02-05 18:58:46.000000000 +0100 ++++ oss-v4.0-build1016-src-gpl.bak/setup/Linux/oss/build/install.sh	2008-07-31 10:36:09.000000000 +0200 +@@ -159,6 +159,7 @@ + ln -sf ../include/sys/*.h ../include/sys/ossddk . +  + rm -f Makefile ++cp module.inc module.inc.orig + ln -s Makefile.osscore Makefile +  + if ! test -d $OSSLIBDIR/logs +@@ -221,7 +222,8 @@ + 	make clean + done  +  +-rm -f Makefile ++cp module.inc.orig module.inc ++rm -f Makefile module.inc.orig +  + echo "depmod -a" + depmod -a +diff -uNr oss-v4.0-build1016-src-gpl/setup/Linux/oss/build/Makefile.osscore oss-v4.0-build1016-src-gpl.bak/setup/Linux/oss/build/Makefile.osscore +--- oss-v4.0-build1016-src-gpl/setup/Linux/oss/build/Makefile.osscore	2005-11-23 23:52:32.000000000 +0100 ++++ oss-v4.0-build1016-src-gpl.bak/setup/Linux/oss/build/Makefile.osscore	2008-07-31 10:34:23.000000000 +0200 +@@ -7,11 +7,17 @@ +  + 	KERNELDIR ?= /lib/modules/$(shell uname -r)/build + 	PWD := $(shell pwd) ++endif +  + default: + 	$(MAKE) -C $(KERNELDIR) M=$(PWD) modules +- +-endif ++	@#Take generated symbol information and add it to module.inc ++	@echo >> module.inc ++	@echo "static const struct modversion_info ____versions[]" >> module.inc ++	@echo " __attribute__((used))" >> module.inc ++	@echo "__attribute__((section(\"__versions\"))) = {" >> module.inc ++	@sed -e "s:^:{:" -e "s:\t:, \":" -e "s:\t\(.\)*:\"},:" < Module.symvers >> module.inc ++	@echo "};" >> module.inc +  + clean: + 	rm -f *.o *.ko *.mod.c *.mod.o .*.cmd core core.* x y z diff --git a/abs/mv-core/oss-sound/rc.oss-linux-free b/abs/mv-core/oss-sound/rc.oss-linux-free new file mode 100755 index 0000000..48b65e0 --- /dev/null +++ b/abs/mv-core/oss-sound/rc.oss-linux-free @@ -0,0 +1,73 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +terminateapps() { +    # Thanks to the Gentoo ebuild/start script for the following +    # http://bugs.gentoo.org/show_bug.cgi?id=184123 +    # http://bugs.gentoo.org/attachment.cgi?id=153689 +    devs=`perl -e '{while (<>) {m/^(\S*)/; print "/dev/$1\n"}}' \ +		< /proc/opensound/devfiles` +    fuser -k ${devs}  >/dev/null 2>/dev/null +} + +case "$1" in +  start) +    stat_busy "Starting OSS/Open source driver" +    # start +    /usr/sbin/soundon +    if [ $? -gt 0 ]; then +      stat_fail +    else +      grep '^softoss' /proc/modules >/dev/null 2>/dev/null +      if [ $? -eq 0 ]; then +        stat_busy "Replacing old \"softoss\" module with \"vmix\"" +        rmmod softoss +        modprobe vmix +        sed -i 's/^softoss.*$/vmix/' /usr/lib/oss/etc/installed_drivers +      fi +      add_daemon oss-linux-free +      stat_done +    fi +    ;; +  stop) +    stat_busy "Saving OSS mixer" +    /usr/sbin/savemixer +    if [ $? -gt 0 ]; then +      stat_fail +    else +      stat_done +    fi +    grep '^"cuckoo"' /proc/modules >/dev/null 2>/dev/null +    if [ $? -eq 0 ]; then +      stat_busy "Removing \"cuckoo\" module" +      rmmod cuckoo +    fi +    stat_busy "Killing processes using OSS" +    terminateapps +    stat_done +    # It doesn't matter if it didnt kill anything! +    stat_busy "Stopping OSS/Open source driver" +    /usr/sbin/soundoff +    if [ $? -gt 0 ]; then +      stat_fail +    else +      rm_daemon oss-linux-free +      stat_done +    fi +    ;; +  restart) +    $0 stop +    sleep 1 +    $0 start +    ;; +  terminateapps) +    stat_busy "Killing processes using OSS" +    terminateapps +    stat_done +    # It doesn't matter if it didnt kill anything! +  ;; +  *) +    echo "usage: $0 {start|stop|restart|terminateapps}" +esac diff --git a/abs/mv-core/runit-scripts-mv/PKGBUILD b/abs/mv-core/runit-scripts-mv/PKGBUILD new file mode 100755 index 0000000..cd5466f --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/PKGBUILD @@ -0,0 +1,28 @@ +pkgname=runit-scripts-mv +pkgver=1.8.0 +pkgrel=2 +pkgdesc="collection of startup scripts for runit MythVantage styel" +url="http://smarden.org/runit/" +license="BSD" +depends=('glibc' 'util-linux' 'initscripts' 'runit' ) +makedepends=() +conflicts=() +replaces=() +backup=() +install=runit.install +source=() +arch=('i686') + +build() { +  rsync -a --exclude=.svn $startdir/runitscripts $startdir/src +  cd $startdir/src/runitscripts +  install -d $startdir/pkg/etc/ +  install -d $startdir/pkg/etc/runit/ +  install -d $startdir/pkg/var/service +  install -d $startdir/pkg/etc/sv +  install -d $startdir/pkg/sbin +  install -m0700 1 2 3 ctrlaltdel $startdir/pkg/etc/runit + +  install -m0755 reboot-runit halt-runit logger $startdir/pkg/sbin +  rsync -a --exclude=.svn services/* $startdir/pkg/etc/sv +} diff --git a/abs/mv-core/runit-scripts-mv/runit.install b/abs/mv-core/runit-scripts-mv/runit.install new file mode 100755 index 0000000..4652368 --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runit.install @@ -0,0 +1,57 @@ +# arg 1:  the new package version + +pre_install () { +if [ ! -f /sbin/halt-init ] +then +   mv /sbin/halt  /sbin/halt-init +   rm -f /sbin/reboot +   rm -f /sbin/poweroff +fi + +} + +pre_upgrade () { +if [ ! -f /sbin/halt-init ] +then +   mv /sbin/halt  /sbin/halt-init +   rm -f /sbin/reboot +   rm -f /sbin/poweroff +fi + +} + +post_install () { +  + mkdir /var/service +  ln -s /etc/sv/tty* /var/service +  servicelist="acpid cron  frontend  lircd ntpd alsa-utils  avahi   dbus   portmap  sshd" +  for i in $servicelist +  do +   ln -s /etc/sv/$i /var/service/$i +  done + +  ln -s /sbin/halt.script /sbin/halt +  ln -s /sbin/reboot.script /sbin/reboot +  ln -s /sbin/poweroff.script /sbin/poweroff +  ln -s /sbin/halt-init /sbin/reboot.init +  ln -s /sbin/halt-init /sbin/poweroff.init + + +} + +# arg 1:  the new package version +# arg 2:  the old package version + +post_upgrade(){ +  ln -s /sbin/halt.script /sbin/halt +  ln -s /sbin/reboot.script /sbin/reboot +  ln -s /sbin/poweroff.script /sbin/poweroff +  ln -s /sbin/halt-init /sbin/reboot.init +  ln -s /sbin/halt-init /sbin/poweroff.init + +} + +op=$1 +shift + +$op $* diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/1 b/abs/mv-core/runit-scripts-mv/runitscripts/1 new file mode 100755 index 0000000..748930f --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/1 @@ -0,0 +1,14 @@ +#!/bin/bash +/etc/rc.sysinit +hostname `cat /etc/hostname` +/sbin/sysctl -p 2>/dev/null >/dev/null +#/usr/bin/load-modules-mythvantage.sh +rm /etc/dhcpc/dhcpcd*.pid  2>/dev/null +rm -f /etc/sv/frontend/.runtime/* 2>/dev/null +rm -f /etc/runit/reboot 2>/dev/null +/etc/net/scripts/network.init start 2>/var/log/network.init.error >/var/log/network.init +/usr/sbin/ethtool -s  eth0 wol g 2>/dev/null +/usr/sbin/ethtool -s  eth1 wol g 2>/dev/null +/usr/sbin/ethtool -s  eth2 wol g 2>/dev/null + +#/bin/su mythtv -c /usr/bin/grabkey.py 2>/dev/null 1>/devn/null & diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/2 b/abs/mv-core/runit-scripts-mv/runitscripts/2 new file mode 100755 index 0000000..079b644 --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/2 @@ -0,0 +1,8 @@ +#!/bin/sh + +PATH=/bin:/sbin:/usr/bin:/usr/sbin + +#runsvchdir default >/dev/null + +exec env - PATH=$PATH \ +runsvdir -P /var/service 'log: ...........................................................................................................................................................................................................................................................................................................................................................................................................' diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/3 b/abs/mv-core/runit-scripts-mv/runitscripts/3 new file mode 100755 index 0000000..0fa3abc --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/3 @@ -0,0 +1,4 @@ +#!/bin/sh +# +export PREVLEVEL=3 +/etc/rc.shutdown diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/ctrlaltdel b/abs/mv-core/runit-scripts-mv/runitscripts/ctrlaltdel new file mode 100755 index 0000000..2550d3c --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/ctrlaltdel @@ -0,0 +1,9 @@ +#!/bin/sh + +PATH=/bin:/usr/bin +MSG="System is going down in 10 seconds..." + +# echo 'disabled.' ; exit +touch /etc/runit/stopit +chmod 100 /etc/runit/stopit && echo "$MSG" | wall +/bin/sleep 10 diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/halt-runit b/abs/mv-core/runit-scripts-mv/runitscripts/halt-runit new file mode 100755 index 0000000..7c07b05 --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/halt-runit @@ -0,0 +1,2 @@ +#!/bin/sh +runit-init 0 diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/logger b/abs/mv-core/runit-scripts-mv/runitscripts/logger new file mode 100755 index 0000000..6888f6f --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/logger @@ -0,0 +1,11 @@ +#!/bin/sh + +svname=$( cd .. && basename $( pwd ) ) +if [ ! -d /var/log/$svname ] +then +	mkdir /var/log/$svname +	chown root.root /var/log/$svname +	chmod 700 /var/log/$svname +fi + +exec /sbin/svlogd -tt /var/log/$svname diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/reboot-runit b/abs/mv-core/runit-scripts-mv/runitscripts/reboot-runit new file mode 100755 index 0000000..be831ec --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/reboot-runit @@ -0,0 +1,2 @@ +#!/bin/sh +runit-init 6 diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/Xvfb/finish b/abs/mv-core/runit-scripts-mv/runitscripts/services/Xvfb/finish new file mode 100755 index 0000000..14cd831 --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/Xvfb/finish @@ -0,0 +1,12 @@ +#!/bin/bash +. /etc/profile +VIRTUAL_DISPLAY=":50" +Xvfb_parm="$VIRTUAL_DISPLAY -screen 0 800x600x16" +pid=`ps -eaf | grep Xvfb | grep $VIRTUAL_DISPLAY | awk '{print $2}'` + if [ $pid ]  + then + 	kill -9 $pid  +#	echo $pid +fi +rm -f /tmp/.X${VIRTUAL_DISPLAY}-lock + diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/Xvfb/run b/abs/mv-core/runit-scripts-mv/runitscripts/services/Xvfb/run new file mode 100755 index 0000000..823916d --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/Xvfb/run @@ -0,0 +1,5 @@ +#!/bin/bash +. /etc/profile +VIRTUAL_DISPLAY=":50" +Xvfb_parm="$VIRTUAL_DISPLAY -screen 0 800x600x16" +Xvfb $Xvfb_parm  diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/Xvfb/supervise/lock b/abs/mv-core/runit-scripts-mv/runitscripts/services/Xvfb/supervise/lock new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/Xvfb/supervise/lock diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/Xvfb/supervise/pid b/abs/mv-core/runit-scripts-mv/runitscripts/services/Xvfb/supervise/pid new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/Xvfb/supervise/pid diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/Xvfb/supervise/stat b/abs/mv-core/runit-scripts-mv/runitscripts/services/Xvfb/supervise/stat new file mode 100644 index 0000000..eb0e904 --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/Xvfb/supervise/stat @@ -0,0 +1 @@ +down diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/Xvfb/supervise/status b/abs/mv-core/runit-scripts-mv/runitscripts/services/Xvfb/supervise/statusBinary files differ new file mode 100644 index 0000000..2254c38 --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/Xvfb/supervise/status diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/acpid/run b/abs/mv-core/runit-scripts-mv/runitscripts/services/acpid/run new file mode 100755 index 0000000..daf9859 --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/acpid/run @@ -0,0 +1,3 @@ +#!/bin/sh +exec 2>&1 +exec /usr/sbin/acpid  -f -c /etc/acpi/events 2>/dev/null >/dev/null diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/alsa-utils/finish b/abs/mv-core/runit-scripts-mv/runitscripts/services/alsa-utils/finish new file mode 100755 index 0000000..d6f3897 --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/alsa-utils/finish @@ -0,0 +1,3 @@ +#!/bin/sh +exec 2>&1 +sv down alsa-utils diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/alsa-utils/run b/abs/mv-core/runit-scripts-mv/runitscripts/services/alsa-utils/run new file mode 100755 index 0000000..0a97cfa --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/alsa-utils/run @@ -0,0 +1,3 @@ +#!/bin/sh +exec 2>&1 +exec /etc/rc.d/alsa-utils start all diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/apache/run b/abs/mv-core/runit-scripts-mv/runitscripts/services/apache/run new file mode 100755 index 0000000..130d870 --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/apache/run @@ -0,0 +1,2 @@ +#!/bin/sh +exec /usr/local/apache/bin/httpd -DNO_DETACH diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/avahi/run b/abs/mv-core/runit-scripts-mv/runitscripts/services/avahi/run new file mode 100755 index 0000000..323d242 --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/avahi/run @@ -0,0 +1,4 @@ +#!/bin/sh +exec 2>&1 +exec /usr/sbin/avahi-daemon  >/dev/null 2>/dev/null + diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/certmaster/run b/abs/mv-core/runit-scripts-mv/runitscripts/services/certmaster/run new file mode 100755 index 0000000..745b1b3 --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/certmaster/run @@ -0,0 +1,2 @@ +#!/bin/bash +exec  /usr/bin/certmaster diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/cron/run b/abs/mv-core/runit-scripts-mv/runitscripts/services/cron/run new file mode 100755 index 0000000..99dc014 --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/cron/run @@ -0,0 +1,3 @@ +#!/bin/sh +exec 2>&1 +exec /usr/sbin/crond -f  >/dev/null 2>/dev/null diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/dbus/run b/abs/mv-core/runit-scripts-mv/runitscripts/services/dbus/run new file mode 100755 index 0000000..872ca77 --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/dbus/run @@ -0,0 +1,3 @@ +#!/bin/sh +exec 2>&1 +exec /usr/bin/dbus-daemon --system --nofork 2>/dev/null >/dev/null diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/dnsmasq/run b/abs/mv-core/runit-scripts-mv/runitscripts/services/dnsmasq/run new file mode 100755 index 0000000..451dda4 --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/dnsmasq/run @@ -0,0 +1,4 @@ +#!/bin/sh +exec 2>&1 +exec /usr/sbin/dnsmasq -k   >/dev/null 2>/dev/null + diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/evrouter/finish b/abs/mv-core/runit-scripts-mv/runitscripts/services/evrouter/finish new file mode 100755 index 0000000..0dd33de --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/evrouter/finish @@ -0,0 +1,4 @@ +#!/bin/bash +. /etc/profile +DISPLAY=localhost:50 evrouter -q  +rm -rf /tmp/.evrouter* diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/evrouter/run b/abs/mv-core/runit-scripts-mv/runitscripts/services/evrouter/run new file mode 100755 index 0000000..1d7389a --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/evrouter/run @@ -0,0 +1,5 @@ +#!/bin/bash +. /etc/profile +sv start Xvfb +su mythtv -c "DISPLAY=localhost:50 evrouter -c /etc/evrouter.cfg -f /dev/input/event*" + diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/evrouter/supervise/lock b/abs/mv-core/runit-scripts-mv/runitscripts/services/evrouter/supervise/lock new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/evrouter/supervise/lock diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/evrouter/supervise/pid b/abs/mv-core/runit-scripts-mv/runitscripts/services/evrouter/supervise/pid new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/evrouter/supervise/pid diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/evrouter/supervise/stat b/abs/mv-core/runit-scripts-mv/runitscripts/services/evrouter/supervise/stat new file mode 100644 index 0000000..eb0e904 --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/evrouter/supervise/stat @@ -0,0 +1 @@ +down diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/evrouter/supervise/status b/abs/mv-core/runit-scripts-mv/runitscripts/services/evrouter/supervise/statusBinary files differ new file mode 100644 index 0000000..742989c --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/evrouter/supervise/status diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/frontend/finish b/abs/mv-core/runit-scripts-mv/runitscripts/services/frontend/finish new file mode 100755 index 0000000..3bbd374 --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/frontend/finish @@ -0,0 +1,24 @@ +#!/bin/bash +exec 2>&1 +grep -q  noautologin /proc/cmdline +STATUS=$? + if  [ $STATUS = 0 ] +      then +        chvt 2 +else + +chvt 1 +touch /etc/sv/frontend/.runtime/`date +%s` +sleep 0.5 +ps -ef |grep "xinit /etc/X11/Sessions/STB"|grep -v grep|awk ' { print $2 } '|xargs kill  2> /dev/null +cdate=`date` +#numfiles=`/usr/bin/fbd  -d "$cdate" -a 10s /etc/sv/frontend/.runtime  2>/dev/null |wc -l` +numfiles=`/usr/bin/file_time_offset.py   -s10 -d/etc/sv/frontend/.runtime`    + +if [ $numfiles -gt 2 ] +then + sv stop frontend + rm -f /etc/sv/frontend/.runtime/* + echo "Frontend is not able to start, disabling it" +fi +fi diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/frontend/log/run b/abs/mv-core/runit-scripts-mv/runitscripts/services/frontend/log/run new file mode 100755 index 0000000..463045f --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/frontend/log/run @@ -0,0 +1,5 @@ +#!/bin/sh +exec 2>&1 +. /etc/systemconfig + /usr/bin/logger -p local6.info -t mythfrontend  + diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/frontend/run b/abs/mv-core/runit-scripts-mv/runitscripts/services/frontend/run new file mode 100755 index 0000000..3b43b4f --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/frontend/run @@ -0,0 +1,13 @@ +#!/bin/sh +exec 2>&1 + grep -q  noautologin /proc/cmdline + STATUS=$? +  if  [ $STATUS = 0 ] +   then +    sv down frontend +    exit 0 +  fi + +#exec /usr/bin/openvt -fec 7 -- /bin/su - mythtv -l -c STB-start +exec  /bin/su - mythtv -l -c STB-start + diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/funcd/run b/abs/mv-core/runit-scripts-mv/runitscripts/services/funcd/run new file mode 100755 index 0000000..f807822 --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/funcd/run @@ -0,0 +1,2 @@ +#!/bin/bash +exec  /usr/bin/funcd diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/ghosd/run b/abs/mv-core/runit-scripts-mv/runitscripts/services/ghosd/run new file mode 100755 index 0000000..fbe8ba0 --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/ghosd/run @@ -0,0 +1,3 @@ +#!/bin/sh +exec 2>&1 +DISPLAY=localhost:0.0 exec  /usr/bin/osdServer.pl 5000   diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/gpm/run b/abs/mv-core/runit-scripts-mv/runitscripts/services/gpm/run new file mode 100755 index 0000000..361fc43 --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/gpm/run @@ -0,0 +1,4 @@ +#!/bin/sh +exec 2>&1 +. /etc/sysconfig/mouse +exec gpm -D -m $MDEVICE -t $PROTOCOL diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/hal/run b/abs/mv-core/runit-scripts-mv/runitscripts/services/hal/run new file mode 100755 index 0000000..f1362b2 --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/hal/run @@ -0,0 +1,4 @@ +#!/bin/sh +exec 2>&1 +sv waitup dbus 2>/dev/null 1>/dev/null +exec /usr/sbin/hald --daemon=no --use-syslog 2>/dev/null >/dev/null diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/hobbit-client/run b/abs/mv-core/runit-scripts-mv/runitscripts/services/hobbit-client/run new file mode 100755 index 0000000..e45173d --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/hobbit-client/run @@ -0,0 +1,68 @@ +#!/bin/sh +#----------------------------------------------------------------------------# +# Hobbit client bootup script.                                               # +#                                                                            # +# This invokes hobbitlaunch, which in turn runs the Hobbit client and any    # +# extensions configured.                                                     # +#                                                                            # +# Copyright (C) 2005-2006 Henrik Storner <henrik@hswn.dk>                    # +# "status" section (C) Scott Smith 2006                                      # +#                                                                            # +# This program is released under the GNU General Public License (GPL),       # +# version 2. See the file "COPYING" for details.                             # +#                                                                            # +#----------------------------------------------------------------------------# +# +# $Id: runclient.sh,v 1.13 2006/07/14 21:25:19 henrik Rel $ + +# Default settings for this client +MACHINEDOTS="`uname -n`"			# This systems hostname +BBOSTYPE="`uname -s | tr '[A-Z]' '[a-z]'`"	# This systems operating system in lowercase +BBOSSCRIPT="hobbitclient-$BBOSTYPE.sh" + +# Commandline mods for the defaults +while test "$1" != "" +do +	case "$1" in +	  --hostname=*) +	  	MACHINEDOTS="`echo $1 | sed -e 's/--hostname=//'`" +		;; +	  --os=*) +	  	BBOSTYPE="`echo $1 | sed -e 's/--os=//' | tr '[A-Z]' '[a-z]'`" +		;; +	  --class=*) +	        CONFIGCLASS="`echo $1 | sed -e 's/--class=//' | tr '[A-Z]' '[a-z]'`" +		;; +	  --help) +	  	echo "Usage: $0 [--hostname=CLIENTNAME] [--os=rhel3|linux22] [--class=CLASSNAME] start|stop" +		exit 0 +		;; +	  start) +	  	CMD=$1 +		;; +	  stop) +	  	CMD=$1 +		;; +	  restart) +	  	CMD=$1 +		;; +	  status) +	  	CMD=$1 +		;; +	esac + +	shift +done + +OLDDIR="`pwd`" +cd "`dirname $0`" +HOBBITCLIENTHOME="/data/srv/hobbit/client" +cd "$OLDDIR" + +MACHINE="`echo $MACHINEDOTS | sed -e 's/\./,/g'`" + +export MACHINE MACHINEDOTS BBOSTYPE BBOSSCRIPT HOBBITCLIENTHOME CONFIGCLASS + + +su nobody -c "$HOBBITCLIENTHOME/bin/hobbitlaunch --config=$HOBBITCLIENTHOME/etc/clientlaunch.cfg --log=$HOBBITCLIENTHOME/logs/clientlaunch.log --pidfile=$HOBBITCLIENTHOME/logs/clientlaunch.$MACHINEDOTS.pid --no-daemon" + diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/hobbit/run b/abs/mv-core/runit-scripts-mv/runitscripts/services/hobbit/run new file mode 100755 index 0000000..24ad9fe --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/hobbit/run @@ -0,0 +1,3 @@ +#!/bin/sh +exec 2>&1 +exec su nobody -c "/data/srv/hobbit/server/bin/hobbitlaunch --config=/data/srv/hobbit/server/etc/hobbitlaunch.cfg --env=/data/srv/hobbit/server/etc/hobbitserver.cfg --log=/var/log/hobbit/hobbitlaunch.log --pidfile=/var/log/hobbit/hobbitlaunch.pid --no-daemon" diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/lcdd/run b/abs/mv-core/runit-scripts-mv/runitscripts/services/lcdd/run new file mode 100755 index 0000000..df71bf8 --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/lcdd/run @@ -0,0 +1,9 @@ +#!/bin/sh +. /etc/systemconfig +exec 2>&1 +if [ x$LCDtype = xxosd ] +then +	DISPLAY=127.0.0.1:0 /usr/sbin/LCDd -f -c /etc/LCDd.conf 2>/dev/null >/dev/null +else +	exec /usr/sbin/LCDd -f -c /etc/LCDd.conf 2>/dev/null >/dev/null +fi diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/lighttpd/run b/abs/mv-core/runit-scripts-mv/runitscripts/services/lighttpd/run new file mode 100755 index 0000000..70cb0a5 --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/lighttpd/run @@ -0,0 +1,2 @@ +#!/bin/bash +exec /usr/sbin/lighttpd -D -f /etc/lighttpd/lighttpd.conf diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/lircd/finish b/abs/mv-core/runit-scripts-mv/runitscripts/services/lircd/finish new file mode 100755 index 0000000..3545b07 --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/lircd/finish @@ -0,0 +1,12 @@ +#!/bin/bash +killall -9 lircd +rm -f /var/run/lirc*.pid  +touch /etc/sv/lircd/.runtime/`date +%s`     +numfiles=`/usr/bin/file_time_offset.py   -s4 -d/etc/sv/lircd/.runtime `  +if [ $numfiles -gt 3 ] +then +	 rm -f /etc/sv/lircd/.runtime/* +	 ls -la /etc/sv/lircd/.runtime/* +	 sv stop lircd +	 echo "lircd is not able to start, disabling it" +fi      diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/lircd/run b/abs/mv-core/runit-scripts-mv/runitscripts/services/lircd/run new file mode 100755 index 0000000..4457b37 --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/lircd/run @@ -0,0 +1,39 @@ +#!/bin/bash +exec 2>&1 +run_lircd2=false +. /etc/systemconfig +function imon_detect { +if [ -e /dev/lirc_imon ] +then +lircd2_cmd="/usr/sbin/lircd -d /dev/lirc_imon --output=/dev/lircd --pidfile=/var/run/lircd2.pid --connect=localhost:8765" +run_lircd2=true +fi +} + + + +case $ReceiverType in  +	Serial) +   		/usr/bin/setserial /dev/$ReceiverSerialport uart none +	        /sbin/modprobe lirc_serial +		DEVICE=`ls  /dev/lirc[0-9] 2>/dev/null |sort |sed '/./,$!d'|head -n 1 ` +		imon_detect		 +		;; +	Usb-imon) +		DEVICE=/dev/lirc_imon	 +	;; + +	*)  + +		DEVICE=`ls  /dev/lirc[0-9] 2>/dev/null |sort |sed '/./,$!d'|head -n 1 ` +		imon_detect +	;; +esac + +if [ "$run_lircd2" = "true" ]  +then +	$lircd2_cmd 2>/dev/null 1>/dev/null +	exec /usr/sbin/lircd -n -d $DEVICE --output /dev/lircd1 --listen 2>/dev/null 1>/dev/null +else +	exec /usr/sbin/lircd -n -d $DEVICE 2>/dev/null 1>/dev/null +fi diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/mysql/run b/abs/mv-core/runit-scripts-mv/runitscripts/services/mysql/run new file mode 100755 index 0000000..569230e --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/mysql/run @@ -0,0 +1,29 @@ +#!/bin/bash +exec 2>&1 + +MYSQLD_ROOT="/data/srv/mysql" +# source application-specific settings +[ -f /etc/conf.d/mysqld ] && . /etc/conf.d/mysqld +if [ ! `egrep '^mysql:' /etc/group` ]; then +  stat_busy "Adding mysql group" +  groupadd -g 89 mysql +  stat_done +fi +if [ ! `egrep '^mysql:' /etc/passwd` ]; then +  stat_busy "Adding mysql user" +  useradd -u 89 -g mysql -d $MYSQLD_ROOT -s /bin/false mysql +  [ -d $MYSQLD_ROOT ] && chown -R mysql.mysql $MYSQLD_ROOT +  stat_done +fi + +if [ ! -d $MYSQLD_ROOT ]; then +  mkdir $MYSQLD_ROOT +  /usr/bin/mysql_install_db --datadir=$MYSQLD_ROOT --user=mysql +  chown -R mysql.mysql $MYSQLD_ROOT +fi + +if [ ! -e /var/log/mysqld.log ]; then +  touch /var/log/mysqld.log +  chown mysql /var/log/mysqld.log +fi +exec /usr/sbin/mysqld -u mysql 2>/dev/null >/dev/null diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/mythbackend/log/run b/abs/mv-core/runit-scripts-mv/runitscripts/services/mythbackend/log/run new file mode 100755 index 0000000..6ed5184 --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/mythbackend/log/run @@ -0,0 +1,4 @@ +#!/bin/sh +exec 2>&1 + /usr/bin/logger -p local7.info -t mythbackend   + diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/mythbackend/run b/abs/mv-core/runit-scripts-mv/runitscripts/services/mythbackend/run new file mode 100755 index 0000000..1315006 --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/mythbackend/run @@ -0,0 +1,25 @@ +#!/bin/sh +exec 2>&1 +. /etc/profile +. /etc/systemconfig +export HOME=/root +if [ ! x$SystemType = xSlave_backend ] +then +	sv start mysql > /dev/null 2>/dev/null +        #run mythfilldatabase +        /usr/MythVantage/bin/initial_db_run & +fi +mkfifo /tmp/mbefifo >/dev/null 2>/dev/null +echo "Starting mythbackend" +	if [ -f /tmp/debug ] +		then +			echo "using gbd/debug" +			gdb /usr/local/bin/mythbackend -x $MV_ROOT/mbegdbcommands.txt +			bash -c "osdClient.pl localhost 5000 'Restart gdb mbe  :::SYS' "& +			mv gdb.txt /data/home/mythtv/gdb.txt.mythbackend +			chown mythtv:mythtv /data/home/mythtv/gdb.txt.mythbackend +			sleep 10 + +		else +			exec /usr/local/bin/mythbackend +		fi diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/ncid/run b/abs/mv-core/runit-scripts-mv/runitscripts/services/ncid/run new file mode 100755 index 0000000..8a90707 --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/ncid/run @@ -0,0 +1,5 @@ +#!/bin/sh +exec 2>&1 +sv start ncidd +exec /usr/bin/ncid --no-gui --all  --call-prog --program /usr/bin/ncid.py 127.0.0.1 3333 + diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/ncidd/run b/abs/mv-core/runit-scripts-mv/runitscripts/services/ncidd/run new file mode 100755 index 0000000..6b032db --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/ncidd/run @@ -0,0 +1,3 @@ +#!/bin/sh +exec 2>&1 +exec /usr/sbin/ncidd -D 2>&1  diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/netfs/finish b/abs/mv-core/runit-scripts-mv/runitscripts/services/netfs/finish new file mode 100755 index 0000000..43be94c --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/netfs/finish @@ -0,0 +1,3 @@ +#!/bin/sh +exec 2>&1 +sv down netfs diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/netfs/run b/abs/mv-core/runit-scripts-mv/runitscripts/services/netfs/run new file mode 100755 index 0000000..f2c0813 --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/netfs/run @@ -0,0 +1,5 @@ +#!/bin/sh +exec 2>&1 +sv start portmap +/etc/rc.d/netfs start + diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/nfsd/run b/abs/mv-core/runit-scripts-mv/runitscripts/services/nfsd/run new file mode 100755 index 0000000..d8435a6 --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/nfsd/run @@ -0,0 +1,22 @@ +#!/bin/bash +exec 2>&1 + +# Make sure the statd daemon is up +# (the statd service must ensure portmap is running first) +svwaitup /var/service/nfslock >/dev/null 2>/dev/null + +source /etc/conf.d/nfs + +# Re-export all directories in /etc/exports +/usr/sbin/exportfs -ra > /dev/null 2>/dev/null + +# start some nfsd threads +/usr/sbin/rpc.nfsd -p  ${NFSD_OPTS} >/dev/null 2>/dev/null   + +# since we are running kernel 2.6 we should also +# mount the nfsd virtual filesystem +/bin/mount -t nfsd none /proc/fs/nfsd >/dev/null 2>/dev/null + +# Start the rpc.mountd daemon +exec /usr/sbin/rpc.mountd --foreground  >/dev/null 2>/dev/null    + diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/nfslock/run b/abs/mv-core/runit-scripts-mv/runitscripts/services/nfslock/run new file mode 100755 index 0000000..0ec6f75 --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/nfslock/run @@ -0,0 +1,4 @@ +#!/bin/bash +exec 2>&1 +sv start portmap  >/dev/null 2>/dev/null    +/usr/sbin/rpc.statd -F  >/dev/null 2>/dev/null    diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/nmbd/run b/abs/mv-core/runit-scripts-mv/runitscripts/services/nmbd/run new file mode 100755 index 0000000..9aa27ec --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/nmbd/run @@ -0,0 +1,3 @@ +#!/bin/sh +exec 2>&1 +exec nmbd -F -S -d1  2>/dev/null >/dev/null diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/ntpd/run b/abs/mv-core/runit-scripts-mv/runitscripts/services/ntpd/run new file mode 100755 index 0000000..97302f1 --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/ntpd/run @@ -0,0 +1,3 @@ +#!/bin/sh +ntpdate pool.ntp.org +exec ntpd -n -p /var/run/ntpd.pid diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/oss/finish b/abs/mv-core/runit-scripts-mv/runitscripts/services/oss/finish new file mode 100755 index 0000000..f929f39 --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/oss/finish @@ -0,0 +1,4 @@ +#!/bin/sh +exec 2>&1 +sv down oss + diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/oss/run b/abs/mv-core/runit-scripts-mv/runitscripts/services/oss/run new file mode 100755 index 0000000..687de8f --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/oss/run @@ -0,0 +1,6 @@ +#!/bin/sh +exec 2>&1 +rm -f /usr/lib/oss/starting +#exec /etc/rc.d/alsa-utils start all +exec /usr/sbin/soundon + diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/portmap/run b/abs/mv-core/runit-scripts-mv/runitscripts/services/portmap/run new file mode 100755 index 0000000..561d65b --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/portmap/run @@ -0,0 +1,3 @@ +#!/bin/sh +exec 2>&1 +exec /sbin/portmap -d >/dev/null 2>/dev/null diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/smbd/run b/abs/mv-core/runit-scripts-mv/runitscripts/services/smbd/run new file mode 100755 index 0000000..af77dcb --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/smbd/run @@ -0,0 +1,3 @@ +#!/bin/sh +exec 2>&1 +exec smbd -F -S -d3 2>/dev/null >/dev/null diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/sshd/run b/abs/mv-core/runit-scripts-mv/runitscripts/services/sshd/run new file mode 100755 index 0000000..a019e5d --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/sshd/run @@ -0,0 +1,20 @@ +#!/bin/bash +exec 2>&1 +nobodydir=/data/srv/.nobody_ssh + +[ -f /etc/ssh/ssh_host_key ] || { /usr/bin/ssh-keygen -t rsa1 -N "" -f /etc/ssh/ssh_host_key >/dev/null; } +    [ -f /etc/ssh/ssh_host_rsa_key ] || { /usr/bin/ssh-keygen -t rsa -N "" -f /etc/ssh/ssh_host_rsa_key >/dev/null; } +    [ -f /etc/ssh/ssh_host_dsa_key ] || { /usr/bin/ssh-keygen -t dsa -N "" -f /etc/ssh/ssh_host_dsa_key >/dev/null; } + +if [ ! -f $nobodydir/id_dsa.pub ]  +then +	mkdir -p $nobodydir  +	ssh-keygen -t dsa -N '' -f $nobodydir/id_dsa +	mkdir -p /data/home/mythtv/.ssh +	cp $nobodydir/id_dsa.pub /data/home/mythtv/.ssh/authorized_keys +	chmod 700  /data/home/mythtv/.ssh/ +	chown -R mythtv:mythtv  /data/home/mythtv/.ssh/ +fi +chown -R  nobody:nobody $nobodydir  +chmod 700 $nobodydir  +exec /usr/sbin/sshd -D >/dev/null 2>/dev/null diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/syslog-ng/run b/abs/mv-core/runit-scripts-mv/runitscripts/services/syslog-ng/run new file mode 100755 index 0000000..eb56ace --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/syslog-ng/run @@ -0,0 +1,3 @@ +#!/bin/sh +exec 2>&1 +exec /usr/sbin/syslog-ng -F diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/tty2/run b/abs/mv-core/runit-scripts-mv/runitscripts/services/tty2/run new file mode 100755 index 0000000..3782aed --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/tty2/run @@ -0,0 +1,2 @@ +#!/bin/sh +exec /sbin/agetty 38400 vc/2 linux diff --git a/abs/mv-core/runit-scripts-mv/runitscripts/services/tty3/run b/abs/mv-core/runit-scripts-mv/runitscripts/services/tty3/run new file mode 100755 index 0000000..ce66b0d --- /dev/null +++ b/abs/mv-core/runit-scripts-mv/runitscripts/services/tty3/run @@ -0,0 +1,2 @@ +#!/bin/sh +exec /sbin/agetty 38400 vc/3 linux diff --git a/abs/mv-core/syslog-ng/PKGBUILD b/abs/mv-core/syslog-ng/PKGBUILD new file mode 100644 index 0000000..a9efeee --- /dev/null +++ b/abs/mv-core/syslog-ng/PKGBUILD @@ -0,0 +1,26 @@ +pkgname=syslog-ng +pkgver=2.0.9 +pkgrel=4 +pkgdesc="A portable syslogd replacement with enhanced, flexible configuration scheme." +arch=(i686 x86_64) +license=('GPL') +url="http://www.balabit.com/products/syslog_ng" +makedepends=('flex' 'glib2' 'eventlog') +depends=('tcp_wrappers' 'logrotate') +install=('syslog.install') +provides=('logger') +backup=('etc/syslog-ng.conf') +source=(http://www.balabit.com/downloads/files/syslog-ng/sources/stable/src/$pkgname-$pkgver.tar.gz \ +	syslog-ng.conf syslog-ng.logrotate syslog-ng log_care.sh) + +build() { +  cd $startdir/src/$pkgname-$pkgver +  ./configure --prefix=/usr --sysconfdir=/etc \ +    --localstatedir=/var --enable-tcp-wrapper --disable-spoof-source +  make || return 1 +  make DESTDIR=$startdir/pkg install || return 1 +  install -D -m644 ../syslog-ng.conf $startdir/pkg/etc/syslog-ng.conf +  install -D -m644 ../syslog-ng.logrotate $startdir/pkg/etc/logrotate.d/syslog-ng +  install -D -m755 ../syslog-ng $startdir/pkg/etc/rc.d/syslog-ng +  install -D -m755 ../log_care.sh  $startdir/pkg/usr/bin/log_care.sh +} diff --git a/abs/mv-core/syslog-ng/log_care.sh b/abs/mv-core/syslog-ng/log_care.sh new file mode 100755 index 0000000..7ca87b9 --- /dev/null +++ b/abs/mv-core/syslog-ng/log_care.sh @@ -0,0 +1,21 @@ +#!/bin/bash +. /etc/profile +DATE=`date +%Y` + +echo "compressing" +find /var/log/$DATE* -mtime  +1 -exec gzip -9 {} \; +echo "deleteing" +find /var/log/$DATE*  -mtime +7  -exec rm -rf {} \; + +hostname=`hostname` +DATE=`date +%Y-%m-%d` + +  cd /var/log || exit 1 +    while read symlink target; do +                [ -z $target ] && target=$symlink +                    ln -sf $DATE/$hostname/$symlink $symlink +                      done <<'EOF' +                      maillog mail +                      messages +EOF +ln -sf $DATE/myth_mtc.log myth_mtc.log diff --git a/abs/mv-core/syslog-ng/syslog-ng b/abs/mv-core/syslog-ng/syslog-ng new file mode 100755 index 0000000..ab75b5e --- /dev/null +++ b/abs/mv-core/syslog-ng/syslog-ng @@ -0,0 +1,37 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +PID=`pidof -o %PPID /usr/sbin/syslog-ng` +case "$1" in +  start) +    stat_busy "Starting Syslog-NG" +    [ -z "$PID" ] && /usr/sbin/syslog-ng +    if [ $? -gt 0 ]; then +      stat_fail +    else +      add_daemon syslog-ng +      stat_done +    fi +    ;; +  stop) +    stat_busy "Stopping Syslog-NG" +    [ ! -z "$PID" ]  && kill $PID &> /dev/null +    if [ $? -gt 0 ]; then +      stat_fail +    else +      rm -f /var/run/syslog-ng.pid +      rm_daemon syslog-ng +      stat_done +    fi +    ;; +  restart) +    $0 stop +    sleep 1 +    $0 start +    ;; +  *) +    echo "usage: $0 {start|stop|restart}"   +esac +exit 0 diff --git a/abs/mv-core/syslog-ng/syslog-ng.conf b/abs/mv-core/syslog-ng/syslog-ng.conf new file mode 100644 index 0000000..f71be35 --- /dev/null +++ b/abs/mv-core/syslog-ng/syslog-ng.conf @@ -0,0 +1,129 @@ +# +# /etc/syslog-ng/syslog-ng.conf +# + +options { +  sync (0); +  time_reopen (10); +  log_fifo_size (1000); +  long_hostnames(off);  +  use_dns (no); +  use_fqdn (no); +  create_dirs (yes); +  keep_hostname (yes); +  perm(0655); +  dir_perm(0755); +  group("log"); + +}; + + +source s_sys { pipe ("/proc/kmsg" log_prefix("kernel: ")); unix-stream ("/dev/log"); internal(); }; +source r_src { tcp(ip("0.0.0.0") port(514)); }; + +destination d_cons { file("/dev/console"); }; + +#destination d_mesg { file("/var/log/messages"); }; + +#destination d_auth { file("/var/log/secure"); }; +#destination d_mail { file("/var/log/maillog"); }; +#destination d_spol { file("/var/log/spooler"); }; + +#destination d_boot { file("/var/log/boot.log"); }; + +#destination d_cron { file("/var/log/cron"); }; +destination d_mlal { usertty("*"); }; +#destination d_kernel { file("/var/log/kern"); }; + +destination d_remote {tcp("127.0.0.1" port(514)) ;} ; + +destination dr_cons { file("/dev/console"); }; +destination dr_mesg { file("/var/log/$YEAR-$MONTH-$DAY/$HOST/messages"); }; +destination dr_auth { file("/var/log/$YEAR-$MONTH-$DAY/$HOST/secure"); }; +destination dr_mail { file("/var/log/$YEAR-$MONTH-$DAY/$HOST/maillog"); }; +destination dr_spol { file("/var/log/$YEAR-$MONTH-$DAY/$HOST/spooler"); }; +#destination dr_boot { file("/var/log/$YEAR-$MONTH-$DAY/$HOST/boot.log"); }; +destination dr_cron { file("/var/log/$YEAR-$MONTH-$DAY/$HOST/cron"); }; +destination dr_acpid { file("/var/log/$YEAR-$MONTH-$DAY/$HOST/acpid"); }; +destination dr_lighttpd { file("/var/log/$YEAR-$MONTH-$DAY/$HOST/lighttpd_access.log"); }; +destination dr_lighttpd_error { file("/var/log/$YEAR-$MONTH-$DAY/$HOST/lighttpd_error.log"); }; +destination dr_dnsmasq { file("/var/log/$YEAR-$MONTH-$DAY/$HOST/dnsmasq"); }; + +destination dr_local0 { file("/var/log/$YEAR-$MONTH-$DAY/$HOST/local0"); }; +destination dr_local1 { file("/var/log/$YEAR-$MONTH-$DAY/$HOST/local1"); }; +destination dr_local2 { file("/var/log/$YEAR-$MONTH-$DAY/$HOST/local2"); }; +destination dr_local3 { file("/var/log/$YEAR-$MONTH-$DAY/$HOST/local3"); }; +destination dr_local4 { file("/var/log/$YEAR-$MONTH-$DAY/$HOST/local4"); }; +destination dr_local5 { file("/var/log/$YEAR-$MONTH-$DAY/$HOST/ncidd.log"); }; +destination dr_local6 { file("/var/log/$YEAR-$MONTH-$DAY/$HOST/mythfrontend.log"); }; +destination dr_local7 { file("/var/log/$YEAR-$MONTH-$DAY/$HOST/mythbackend.log"); }; + +destination dr_mlal { usertty("*"); }; +destination dr_kernel { file("/var/log/$YEAR-$MONTH-$DAY/$HOST/kern"); }; +destination dr_everything { file("/var/log/$YEAR-$MONTH-$DAY/$HOST/everything"); }; + +filter f_filter1 { facility(kern); }; +filter f_filter2 { level(info) and +not (facility(mail) or facility(authpriv) or facility(local6) or facility(local7) or program(lighttpd) or facility(cron) or program("kernel")); }; +filter f_filter3 { facility(authpriv); }; +filter f_filter4 { facility(mail); }; +filter f_filter5 { level(emerg); }; +filter f_filter6 { facility(uucp) or +(facility(news) and level(crit)); }; + +#filter f_filter7 { facility(local7); }; + +filter f_filter8 { facility(cron); }; + +#filter f_local0 { facility(local0); }; +#filter f_local1 { facility(local1); }; +#filter f_local2 { facility(local2); }; +#filter f_local3 { facility(local3); }; +filter f_local4 { facility(local4); }; +filter f_local5 { facility(local5); }; +filter f_local6 { facility(local6); }; +filter f_local7 { facility(local7); }; +filter f_kernel { level(info) and program("kernel") and not  program(lighttpd); }; +filter f_acpid { match("acpid")  and not ( facility(syslog) or program(lighttpd) ) ; }; +filter f_lighttpd { match("lighttpd") and not facility(syslog) ; }; +filter f_lighttpd_error  { match("lighttpd") and level(error) and not facility(syslog) ; }; +filter f_dnsmasq { match("dnsmasq") and not (facility(syslog)or program(lighttpd)); }; +filter f_everything { level(debug..emerg) and not (facility(auth,authpriv,syslog) or program(lighttpd)); }; + + + +#log { source(s_sys); filter(f_filter1); destination(d_cons); }; +####log { source(s_sys); filter(f_filter2); destination(d_mesg); }; +#log { source(s_sys); filter(f_filter3); destination(d_auth); }; +#log { source(s_sys); filter(f_filter4); destination(d_mail); }; +#log { source(s_sys); filter(f_filter5); destination(d_mlal); }; +#log { source(s_sys); filter(f_filter6); destination(d_spol); }; +####log { source(s_sys); filter(f_filter7); destination(d_boot); }; +#log { source(s_sys); filter(f_filter8); destination(d_cron); }; +####log { source(s_sys); filter(f_kernel); destination(d_kernel); }; +# +##log { source(r_src); filter(f_filter1); destination(dr_cons); }; +log { source(r_src); filter(f_filter2); destination(dr_mesg); }; +log { source(r_src); filter(f_filter3); destination(dr_auth); }; +log { source(r_src); filter(f_filter4); destination(dr_mail); }; +log { source(r_src); filter(f_filter5); destination(dr_mlal); }; +log { source(r_src); filter(f_filter6); destination(dr_spol); }; +#log { source(r_src); filter(f_filter7); destination(dr_boot); }; +log { source(r_src); filter(f_filter8); destination(dr_cron); }; +#log { source(r_src); filter(f_local0); destination(dr_local0); }; +#log { source(r_src); filter(f_local1); destination(dr_local1); }; +#log { source(r_src); filter(f_local2); destination(dr_local2); }; +#log { source(r_src); filter(f_local3); destination(dr_local3); }; +log { source(r_src); filter(f_local4); destination(dr_local4); }; +log { source(r_src); filter(f_local5); destination(dr_local5); }; +log { source(r_src); filter(f_local6); destination(dr_local6); }; +log { source(r_src); filter(f_local7); destination(dr_local7); }; +log { source(r_src); filter(f_kernel); destination(dr_kernel); }; +log { source(r_src); filter(f_acpid); destination(dr_acpid); }; +log { source(r_src); filter(f_dnsmasq); destination(dr_dnsmasq); }; +log { source(r_src); filter(f_lighttpd); destination(dr_lighttpd); }; +log { source(r_src); filter(f_lighttpd_error); destination(dr_lighttpd_error); }; +log { source(r_src); filter(f_everything); destination(dr_everything); }; +log { source(s_sys); destination (d_remote); }; +# +## vim: syntax=syslog-ng diff --git a/abs/mv-core/syslog-ng/syslog-ng.logrotate b/abs/mv-core/syslog-ng/syslog-ng.logrotate new file mode 100644 index 0000000..3316b53 --- /dev/null +++ b/abs/mv-core/syslog-ng/syslog-ng.logrotate @@ -0,0 +1,7 @@ +/var/log/messages.log /var/log/auth.log /var/log/mail.log /var/log/kernel.log /var/log/errors.log /var/log/daemon.log /var/log/user.log /var/log/iptables.log /var/log/everything.log /var/log/syslog.log  { +	missingok +	sharedscripts +	postrotate +		/bin/kill -HUP `cat /var/run/syslog-ng.pid 2>/dev/null`  2> /dev/null || true +	endscript +} diff --git a/abs/mv-core/syslog-ng/syslog.install b/abs/mv-core/syslog-ng/syslog.install new file mode 100755 index 0000000..014edbd --- /dev/null +++ b/abs/mv-core/syslog-ng/syslog.install @@ -0,0 +1,56 @@ +# This is a default template for a post-install scriptlet.  You can +# remove any functions you don't need (and this header). + +# arg 1:  the new package version +pre_install() { +  /bin/true +} + +# arg 1:  the new package version +post_install() { +/bin/true + +} + +# arg 1:  the new package version +# arg 2:  the old package version +pre_upgrade() { +  /bin/true +   mv /etc/syslog-ng.conf /etc/syslog-ng.conf.old + +} + +# arg 1:  the new package version +# arg 2:  the old package version +post_upgrade() { +if [ -f /etc/systemconfig ] +then +. /etc/systemconfig +. /etc/profile +#cp /etc/syslog-ng.conf.pacnew /etc/syslog-ng.conf +COMMAND="%s/^destination d_remote.*$/destination d_remote \{tcp\(\"${dbhost}\" port\(514\)\) \;\} \;/" +ex /etc/syslog-ng.conf <<EOF +:$COMMAND +:wq +EOF +fi + ln -s /usr/bin/log_care.sh /etc/cron.daily/log_care.sh + +/bin/true +} + + +# arg 1:  the old package version +pre_remove() { +  /bin/true + +} + +# arg 1:  the old package version +post_remove() { +  /bin/true +} + +op=$1 +shift +$op $* | 
