#!/bin/bash #Script to facilitate easy upgrade to MythTV 0.22 in LinHES. if [ "$(id -u)" != "0" ]; then echo "This script must be run as root" 1>&2 exit 1 fi function pause(){ read -p "$*" } clear echo "The script will guide you thru the process of upgrading LinHES to MythTV 0.22." pause 'Press to continue...' if grep -E "Master|Stand" /etc/systemconfig &>/dev/null then echo "Stopping the backend." sv stop mythbackend &>/dev/null fi echo "Sync'n with the repos..." pacman -Sy &>/dev/null echo "Removing MythVodka if installed as it is no longer compatible with MythTV." if pacman -Qs mythvodka &>/dev/null then pacman -R mythvodka &>/dev/null fi echo "Backing up Online Streams listings." cp /usr/share/mythtv/is.xml /usr/share/mythtv/is.xml.021 echo "Removing mythcontrol, mythphone and mythsmolt if installed." 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 pacman -Qs mythsmolt &>/dev/null then pacman -R mythsmolt &>/dev/null fi echo "Upgrading the kernel." 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 "Checking for VDPAU packages and upgrading if needed." 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." pacman -Su --noconfirm &>/dev/null echo "Restoring Online Streams listings." cp /usr/share/mythtv/is.xml.021 /usr/share/mythtv/is.xml clear 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 1244\"\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 -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 "Performing LinHES specific schema updates." /usr/LH/bin/update_schema_021_to_022.sh cat /data/database/dvd_transcode_r6.sql | mysql -u root mythconverg fi echo "All done!" echo -e "\033[5mThanks for choosing LinHES!\033[0m" pause "Press to reboot." reboot