From a16b6fee796342b4f98d3361c232caa8bc1b946b Mon Sep 17 00:00:00 2001 From: James Meyer Date: Tue, 1 Nov 2011 16:44:32 -0500 Subject: linhes-scripts: update script for r6-r7. to update run pacman -Sy linhes-scripts upgrade-linhes.sh and watch the fun. This script must be run as root and from a terminal. Running it from an xterm will cause it to abort. At the end of the script it will force a reboot. --- abs/core/linhes-scripts/PKGBUILD | 14 +- abs/core/linhes-scripts/upgrade_linhes.sh | 153 +++------------------ abs/core/linhes-scripts/upgrade_linhes_script.sh | 167 +++++++++++++++++++++++ abs/core/linhes-scripts/upgrade_screen_rc | 9 ++ 4 files changed, 207 insertions(+), 136 deletions(-) create mode 100644 abs/core/linhes-scripts/upgrade_linhes_script.sh create mode 100644 abs/core/linhes-scripts/upgrade_screen_rc diff --git a/abs/core/linhes-scripts/PKGBUILD b/abs/core/linhes-scripts/PKGBUILD index e8aebcc..020bfa8 100644 --- a/abs/core/linhes-scripts/PKGBUILD +++ b/abs/core/linhes-scripts/PKGBUILD @@ -3,11 +3,11 @@ pkgname=linhes-scripts pkgver=7 -pkgrel=11 +pkgrel=13 pkgdesc="Various scripts that help to make LinHES, LinHES." arch=('i686' 'x86_64') license=('GPL2') -depends=('xosd' 'cpulimit') +depends=('xosd' 'cpulimit' 'screen') url="http://linhes.org/" install="linhes-scripts.install" source=( @@ -45,12 +45,16 @@ dct700-cc.sh qip7100-cc.sh dtheme.sh xwin_find.sh +upgrade_screen_rc +upgrade_linhes_script.sh ) build() { cd ${srcdir} install -d ${pkgdir}/usr/LH/bin + install -d ${pkgdir}/usr/LH/etc install -D -m755 myth2* *.sh *.pl *.py vdpau* run-* pause_* ${pkgdir}/usr/LH/bin/ + install -D -m755 upgrade_screen_rc ${pkgdir}/usr/LH/etc/ mkdir -p ${pkgdir}/etc/sv/pause-mythcommflag/supervise cp run-pause-mythcommflag ${pkgdir}/etc/sv/pause-mythcommflag/run mkdir -p ${pkgdir}/etc/sv/limit-mythcommflag/supervise @@ -83,7 +87,7 @@ md5sums=('f56985b2d602e11dc1e10d3e7848b2a5' '460861e6d0cf999629b734912eea0acf' 'ccca6bdbbd86b203a3eecdbbe363e701' '65629302a4d2c3adf88cdf0ebc10d493' - '2734054f08c4c885bb9070dce239d4c3' + '6f87efdcf44cd97447bbed94854bae1f' '87b0dc855181f98516acb18a7d551601' 'c54a3afd4aa3c1af560c9b6adb600f3a' '2fb25aef03ffd1282414d8cca3df7056' @@ -91,4 +95,6 @@ md5sums=('f56985b2d602e11dc1e10d3e7848b2a5' 'df727c98350a64e2171c950bbefc9c5d' '7b890e7044db38e8d439f67e398af206' '35693f50939d5827aeabfce8c5dce589' - 'a94fe6d980f4b810f2e2ae5352084b39') + 'a94fe6d980f4b810f2e2ae5352084b39' + '974c137d3fcb85942ba8945a1bc815fe' + '0f918d7bf4dfa81acbe2b4854e91c82c') diff --git a/abs/core/linhes-scripts/upgrade_linhes.sh b/abs/core/linhes-scripts/upgrade_linhes.sh index 91a46e6..933d994 100755 --- a/abs/core/linhes-scripts/upgrade_linhes.sh +++ b/abs/core/linhes-scripts/upgrade_linhes.sh @@ -1,136 +1,25 @@ #!/bin/bash -#Script to facilitate easy upgrade to latest LinHES. -clear -if [ "$(id -u)" != "0" ]; then - echo "This script must be run as root" 1>&2 - exit 1 -fi -function pause(){ - read -p "$*" -} -echo "The script will guide you thru the process of upgrading to the latest LinHES." -pause 'Press to continue...' -echo -echo "Sync'n with the repos..." -echo -pacman -Sy &>/dev/null -pacman -Qu > /tmp/linhes_upgrade -if [ ! -s /tmp/linhes_upgrade ] -then - echo "No upgrades found. This could mean the repository is busy." - echo "Or your system is already up to date." - echo "If you have not upgrade, please try again later." - echo "Starting the backend." - sv start mythbackend &>/dev/null - exit 1 -fi -if grep -E "Master|Stand" /etc/systemconfig &>/dev/null - then - echo "Stopping the backend." - sv stop mythbackend &>/dev/null -fi -if pacman -Qs mythvodka &>/dev/null - then - echo "Removing MythVodka if installed as it is no longer compatible with MythTV." - echo - pacman -R mythvodka &>/dev/null -fi -echo -echo "Backing up Online Streams listings." -echo -cp /usr/share/mythtv/is.xml /usr/share/mythtv/is.xml.021 -echo "Removing mythcontrol and mythphone if installed." -echo -if pacman -Qs mythcontrols &>/dev/null - then - pacman -R mythcontrols &>/dev/null -fi -if pacman -Qs mythphone &>/dev/null - then - pacman -R mythphone &>/dev/null -fi -if grep -q kernel26 /tmp/linhes_upgrade +mkfifo /tmp/upgrade.fifo + +set | grep -q WINDOWID +status=$? + +if [ $status = 0 ] then - echo "Upgrading the kernel." - echo - if pacman -Qs v4l-dvb &>/dev/null - then - pacman -Sf --noconfirm kernel26 &>/dev/null && pacman -Sf --noconfirm v4l-dvb - else - pacman -S kernel26 --noconfirm &>/dev/null - fi + echo "This script must run from the console" 1>&2 + exit 1 fi -if grep -q v4l-dvb /tmp/linhes_upgrade + + +if [ "$(id -u)" != "0" ]; then - pacman -Sf --noconfirm v4l-dvb &>/dev/null -fi -echo "Checking for VDPAU packages and upgrading if needed." -echo -if pacman -Qs vdpinfo-71xx &>/dev/null - then - pacman -Rd vdpinfo-71xx &>/dev/null -fi -if pacman -Qs vdpinfo-96xx &>/dev/null - then - pacman -Rd vdpinfo-96xx &>/dev/null -fi -if pacman -Qs vdpinfo &>/dev/null - then - pacman -Rd vdpinfo &>/dev/null && pacman -S --noconfirm nvidia &>/dev/null && pacman -S --noconfirm vdpauinfo &>/dev/null -fi -echo "Performing complete system upgrade." -echo "This may take some time depending on your connection speed." -echo "Server bandwidth utilization will also have an affect." -echo "Please be patient." -echo -pacman -Suf --noconfirm &>/dev/null -echo "Restoring Online Streams listings." -echo -cp /usr/share/mythtv/is.xml.021 /usr/share/mythtv/is.xml -if grep -E "Master|Stand" /etc/systemconfig &>/dev/null - then - echo "Starting the backend. This will automatically update the schema." - sv start mythbackend &>/dev/null - echo "I'll launch an xterm so you watch output backend log." - echo "Once the schema updates are complete, switch back to this xterm." - echo -e "\033[1mWhen you see \"Upgrading to MythTV schema version 1254\"\033[0m" - echo "You can switch back to this xterm." - echo -e "\033[1mNote:After pressing , I'll be asleep for 30 secs...\033[0m" - echo -e "\033[1mThis will give the schema time to upgrade.\033[0m" - pause 'Press to continue...' - xterm -fn *18* -e tail -f /var/log/mythtv/mythbackend.log & - #Sleeping for 30 seconds to give the schema time to upgrade.... - sleep 30 - read -p "Press to continue once the schema upgrade is complete." - echo - echo -e "\033[1mNow, the frontend will launch to update the schema for any plugins.\033[0m" - echo -e "\033[1mOnce the this is done, please exit the frontend.\033[0m" - pause 'Press to continue...' - xterm -e mythfrontend - echo - echo "Performing LinHES specific schema updates." - echo - /usr/LH/bin/update_schema_021_to_022.sh - cat /data/database/dvd_transcode_r6.sql | mysql -u root mythconverg - /usr/LH/bin/mythwelcome-config.py -fi -echo "All done!" -echo -e "\033[5mThanks for choosing LinHES!\033[0m" -if grep -q kernel26 /tmp/linhes_upgrade -then - echo "The kernel was upgraded, we need to reboot." - pause "Press to reboot." - reboot -else - if grep -q v4l-dvb /tmp/linhes_upgrade - then - echo "The V4L\DVB modules were upgraded." - pause "Press to reboot." - reboot - else - echo "Launching mythfrontend once again!" - echo "Enjoy the latest version!" - sleep 5 - mythfrontend -fi -fi + echo "This script must be run as root" 1>&2 + exit 1 + +fi + + +sv stop mythbackend +sv stop frontend + +screen -c /usr/LH/etc/upgrade_screen_rc \ No newline at end of file diff --git a/abs/core/linhes-scripts/upgrade_linhes_script.sh b/abs/core/linhes-scripts/upgrade_linhes_script.sh new file mode 100644 index 0000000..ffee1ae --- /dev/null +++ b/abs/core/linhes-scripts/upgrade_linhes_script.sh @@ -0,0 +1,167 @@ +#!/bin/bash +#Script to facilitate easy upgrade to latest LinHES. +LOGFILE=/tmp/upgrade.fifo +clear + + + +if [ "$(id -u)" != "0" ]; then + echo "This script must be run as root" 1>&2 + exit 1 + +fi + + +function pause(){ + read -p "$*" +} + + +echo "The script will guide you thru the process of upgrading to the latest LinHES." +pause 'Press to continue...' +echo +echo "Sync'n with the repos..." +echo +pacman -Sy >>$LOGFILE 2>>$LOGFILE + +echo "Updating pacman" +pacman -S --noconfirm pacman >> $LOGFILE +echo "Updating pacman database to new format" +pacman-db-upgrade >>$LOGFILE + +echo "Removing misc outdated packages " +pacman -R --noconfirm aufs-utils aufs >> $LOGFILE +pacman -R --noconfirm xf86-video-sis >> $LOGFILE +pacman -R --noconfirm madwifi >> $LOGFILE + + +echo "Resyncing with repository" +pacman -Syyyy > $LOGFILE +pacman -Qu > /tmp/linhes_upgrade +if [ ! -s /tmp/linhes_upgrade ] +then + echo "No upgrades found. This could mean the repository is busy." + echo "Or your system is already up to date." + echo "If you have not upgrade, please try again later." + echo "Starting the backend." + sv start mythbackend &>/dev/null + exit 1 +fi +if grep -E "Master|Stand" /etc/systemconfig &>/dev/null + then + echo "Stopping the backend." + sv stop mythbackend &>/dev/null +fi +if pacman -Qs mythvodka &>/dev/null + then + echo "Removing MythVodka if installed as it is no longer compatible with MythTV." + echo + pacman -R mythvodka &>/dev/null +fi +echo +echo "Backing up Online Streams listings." +echo +cp /usr/share/mythtv/is.xml /usr/share/mythtv/is.xml.021 +echo "Removing mythcontrol and mythphone if installed." +echo +if pacman -Qs mythcontrols &>/dev/null + then + pacman -R mythcontrols &>/dev/null +fi +if pacman -Qs mythphone &>/dev/null + then + pacman -R mythphone &>/dev/null +fi + +# if grep -q kernel26 /tmp/linhes_upgrade +# then +# echo "Upgrading the kernel." +# echo +# if pacman -Qs v4l-dvb &>/dev/null +# then +# pacman -Sf --noconfirm kernel26 &>/dev/null && pacman -Sf --noconfirm v4l-dvb +# else +# pacman -S kernel26 --noconfirm &>/dev/null +# fi +# fi +# if grep -q v4l-dvb /tmp/linhes_upgrade +# then +# pacman -Sf --noconfirm v4l-dvb &>/dev/null +# fi +# echo "Checking for VDPAU packages and upgrading if needed." +# echo +# if pacman -Qs vdpinfo-71xx &>/dev/null +# then +# pacman -Rd vdpinfo-71xx &>/dev/null +# fi +# if pacman -Qs vdpinfo-96xx &>/dev/null +# then +# pacman -Rd vdpinfo-96xx &>/dev/null +# fi +# if pacman -Qs vdpinfo &>/dev/null +# then +# pacman -Rd vdpinfo &>/dev/null && pacman -S --noconfirm nvidia &>/dev/null && pacman -S --noconfirm vdpauinfo &>/dev/null +# fi +echo "Performing complete system upgrade." +echo "This may take some time depending on your connection speed." +echo "Server bandwidth utilization will also have an affect." +echo "Please be patient." +echo +pacman -Su --noconfirm 2>$LOGFILE > $LOGFILE +echo "Restoring Online Streams listings." +echo +cp /usr/share/mythtv/is.xml.021 /usr/share/mythtv/is.xml +# if grep -E "Master|Stand" /etc/systemconfig &>/dev/null +# then +# echo "Starting the backend. This will automatically update the schema." +# sv start mythbackend &>/dev/null +# echo "I'll launch an xterm so you watch output backend log." +# echo "Once the schema updates are complete, switch back to this xterm." +# echo -e "\033[1mWhen you see \"Upgrading to MythTV schema version 1254\"\033[0m" +# echo "You can switch back to this xterm." +# echo -e "\033[1mNote:After pressing , I'll be asleep for 30 secs...\033[0m" +# echo -e "\033[1mThis will give the schema time to upgrade.\033[0m" +# pause 'Press to continue...' +# xterm -fn *18* -e tail -f /var/log/mythtv/mythbackend.log & +# #Sleeping for 30 seconds to give the schema time to upgrade.... +# sleep 30 +# read -p "Press to continue once the schema upgrade is complete." +# echo +# echo -e "\033[1mNow, the frontend will launch to update the schema for any plugins.\033[0m" +# echo -e "\033[1mOnce the this is done, please exit the frontend.\033[0m" +# pause 'Press to continue...' +# xterm -e mythfrontend +# echo +# echo "Performing LinHES specific schema updates." +# echo +# /usr/LH/bin/update_schema_021_to_022.sh +# cat /data/database/dvd_transcode_r6.sql | mysql -u root mythconverg +# /usr/LH/bin/mythwelcome-config.py +# fi +echo "All done!" + + + +echo -e "\033[5mThanks for choosing LinHES!\033[0m" + #echo "The kernel was upgraded, we need to reboot." + pause "Press to reboot." + reboot + +# if grep -q kernel26 /tmp/linhes_upgrade +# then +# echo "The kernel was upgraded, we need to reboot." +# pause "Press to reboot." +# reboot +# else +# if grep -q v4l-dvb /tmp/linhes_upgrade +# then +# echo "The V4L\DVB modules were upgraded." +# pause "Press to reboot." +# reboot +# else +# echo "Launching mythfrontend once again!" +# echo "Enjoy the latest version!" +# sleep 5 +# mythfrontend +# fi +# fi diff --git a/abs/core/linhes-scripts/upgrade_screen_rc b/abs/core/linhes-scripts/upgrade_screen_rc new file mode 100644 index 0000000..8c49a8d --- /dev/null +++ b/abs/core/linhes-scripts/upgrade_screen_rc @@ -0,0 +1,9 @@ +bind j focus down +bind k focus up +startup_message off +screen -t upgrade bash -c "upgrade_linhes_script.sh" +split +focus down +startup_message off +screen -t progress bash -c "while true; do cat /tmp/upgrade.fifo; sleep .5; done" +focus up -- cgit v0.12