From b0893476b0988fdb4eea84fa40be34ef8a549f4f Mon Sep 17 00:00:00 2001
From: Britney Fransen <brfransen@gmail.com>
Date: Sat, 7 Dec 2013 14:03:44 -0600
Subject: mythinstall: Upgrade gives popup when target isn't R8.0 or above.
 closes #905.

many other patches to add/change verbage to various screens.
---
 abs/core/mythinstall/PKGBUILD                      |   8 +-
 abs/core/mythinstall/checkout_MythVantage.sh       |  53 +-
 abs/core/mythinstall/fileshare.cpp.patch           | 156 ++++++
 abs/core/mythinstall/infrared.cpp.patch            |  35 ++
 abs/core/mythinstall/installationtype.cpp.patch    |  98 ++++
 abs/core/mythinstall/installdialog.cpp.patch       |  75 +++
 abs/core/mythinstall/installsettings.cpp.patch     | 532 +++++++++++++++++++++
 abs/core/mythinstall/logo-3.png                    | Bin 7932 -> 10795 bytes
 abs/core/mythinstall/logo-6.png                    | Bin 4123 -> 7302 bytes
 abs/core/mythinstall/logo_src/hp_logo.png          | Bin 11906 -> 42734 bytes
 abs/core/mythinstall/logo_src/simerec.png          | Bin 6093 -> 7102 bytes
 abs/core/mythinstall/misc_settings.cpp.patch       |  53 ++
 abs/core/mythinstall/xorgsettings.cpp.patch        |  34 ++
 abs/core/mythinstall/xorgsettings.h.patch          |  11 +
 .../stable-0.27/mythtv/menu-xml/HOST_SETTINGS.xml  |  14 +-
 15 files changed, 1043 insertions(+), 26 deletions(-)
 create mode 100644 abs/core/mythinstall/fileshare.cpp.patch
 create mode 100644 abs/core/mythinstall/infrared.cpp.patch
 create mode 100644 abs/core/mythinstall/installationtype.cpp.patch
 create mode 100644 abs/core/mythinstall/installdialog.cpp.patch
 create mode 100644 abs/core/mythinstall/installsettings.cpp.patch
 create mode 100644 abs/core/mythinstall/misc_settings.cpp.patch
 create mode 100644 abs/core/mythinstall/xorgsettings.cpp.patch
 create mode 100644 abs/core/mythinstall/xorgsettings.h.patch

diff --git a/abs/core/mythinstall/PKGBUILD b/abs/core/mythinstall/PKGBUILD
index 6351e4e..f5265a6 100644
--- a/abs/core/mythinstall/PKGBUILD
+++ b/abs/core/mythinstall/PKGBUILD
@@ -1,9 +1,9 @@
 # Maintainer: Jams
 pkgname=mythinstall
 pkgver=8.1
-pkgrel=3
+pkgrel=4
 pkgdesc="LinHES installer/systemconfig GUI."
-arch=('i686'  'x86_64')
+arch=('i686' 'x86_64')
 depends=('mythtv>=0.27')
 makedepends=('mythtv>=0.27')
 logofiles=`ls logo*.png`
@@ -32,8 +32,8 @@ package() {
 md5sums=('39d6b7bd1ee305c5523a3cf66d4c2338'
          '3291ad55fe6d7884fc732313f1cc2924'
          '80c0326a253df275afbe875a8ec14a3c'
-         '46925d6fbcb7ec1fc51714d03ac6b72d'
+         'f7507a6c218c81228d2a3fbcd02565bb'
          '27ce7f89a83864dfc5abe23c61964c0c'
          '2e85a1b9559557dade6e87daf2abb673'
-         '7f3045f740760c828e2e18293c2a4ab1'
+         '532c5d9f1f8e1aef575ceecb69cc9c96'
          '91393e9cca0e6168f772fb48c88d3829')
diff --git a/abs/core/mythinstall/checkout_MythVantage.sh b/abs/core/mythinstall/checkout_MythVantage.sh
index 269cc64..ae4bcc7 100755
--- a/abs/core/mythinstall/checkout_MythVantage.sh
+++ b/abs/core/mythinstall/checkout_MythVantage.sh
@@ -5,12 +5,11 @@ PREFIX="\/usr\/include\/mythtv"
 LIBVERSION=0.27
 VERSION=0.27.0
 
-
 function setup_links {
-rm mythinstall.bin
-rm mythbeselect.bin
-ln -s  $MYDIR/src/MythVantage-app/mythinstall/mythinstall ./mythinstall.bin
-ln -s  $MYDIR/src/MythVantage-app/mythbeselect/mythbeselect ./mythbeselect.bin
+rm $MYDIR/mythinstall.bin
+rm $MYDIR/mythbeselect.bin
+ln -s  $MYDIR/src/MythVantage-app-patched/mythinstall/mythinstall $MYDIR/mythinstall.bin
+ln -s  $MYDIR/src/MythVantage-app-patched/mythbeselect/mythbeselect $MYDIR/mythbeselect.bin
 }
 
 function dl_repo {
@@ -22,10 +21,9 @@ then
     cd MythVantage-app
 #    git checkout --track -b  LinHES origin/LinHES
     cd $MYDIR
-    setup_links
     cd -
 else
-    echo "updating exisiting tree"
+    echo "----updating exisiting tree----"
     cd MythVantage-app
     git pull
     git checkout master
@@ -36,19 +34,41 @@ fi
 cd MythVantage-app
 git checkout master
 #git checkout origin/LinHES
-
+cd $MYDIR/src
+if [ -d MythVantage-app-patched ]
+then
+    echo "removing old patched dir"
+    rm -rf MythVantage-app-patched
+fi
+cp -a MythVantage-app MythVantage-app-patched
+setup_links
 }
 
 dl_repo
-set -x
-sed -i "s/^LIBVERSION.*$/LIBVERSION = $LIBVERSION/g" $MYDIR/src/MythVantage-app/mythinstall/mythinstall.pro
-sed -i "s/^VERSION.*$/VERSION = $VERSION/g" $MYDIR/src/MythVantage-app/mythinstall/mythinstall.pro
-sed -i "s/^PREFIX.*$/PREFIX = $PREFIX/g" $MYDIR/src/MythVantage-app/mythinstall/mythinstall.pro
 
+#patches
+patches=('fileshare.cpp.patch' 'installdialog.cpp.patch' 'installationtype.cpp.patch'
+         'installsettings.cpp.patch' 'infrared.cpp.patch' 'misc_settings.cpp.patch'
+         'xorgsettings.cpp.patch' 'xorgsettings.h.patch' )
+
+echo "--------------------------applying patches------------------------------"
+cd $MYDIR/src/MythVantage-app-patched/mythinstall
+for i in `echo ${patches[@]:0}`
+do
+    echo applying $i
+    patch -N -i $MYDIR/$i || return 1
+    echo "-----------------------------"
+done
+cd $MYDIR
+echo "--------------------------done applying patches-------------------------"
 
+set -x
+sed -i "s/^LIBVERSION.*$/LIBVERSION = $LIBVERSION/g" $MYDIR/src/MythVantage-app-patched/mythinstall/mythinstall.pro
+sed -i "s/^VERSION.*$/VERSION = $VERSION/g" $MYDIR/src/MythVantage-app-patched/mythinstall/mythinstall.pro
+sed -i "s/^PREFIX.*$/PREFIX = $PREFIX/g" $MYDIR/src/MythVantage-app-patched/mythinstall/mythinstall.pro
 
-sed -i "s/#define __MVAPP__/\/\/#define __MVAPP__/g" $MYDIR/src/MythVantage-app/mythinstall/mv_common.h
-sed -i "s/mythvantage/LinHES/g" $MYDIR/src/MythVantage-app/mythinstall/mv_common.h
+sed -i "s/#define __MVAPP__/\/\/#define __MVAPP__/g" $MYDIR/src/MythVantage-app-patched/mythinstall/mv_common.h
+sed -i "s/mythvantage/LinHES/g" $MYDIR/src/MythVantage-app-patched/mythinstall/mv_common.h
 
 # echo "INCLUDEPATH += /usr/include/mythtv" >> $MYDIR/src/MythVantage-app/mythbeselect/mythberestart.pro
 # echo "INCLUDEPATH += /usr/include/mythtv" >> $MYDIR/src/MythVantage-app/mythinstall/mythinstall.pro
@@ -56,7 +76,10 @@ sed -i "s/mythvantage/LinHES/g" $MYDIR/src/MythVantage-app/mythinstall/mv_common
 
 #echo 'INCLUDEPATH += $$MYTHPATH/mythtv/libs/libmythtv/' >> $MYDIR/src/MythVantage-app/mythinstall/mythinstall.pro
 
-cd $MYDIR/src/MythVantage-app/mythinstall && qmake
+#patch -N $MYDIR/src/MythVantage-app/mythinstall/installdialog.cpp < $MYDIR/installdialog.cpp.patch
+#patch -N $MYDIR/src/MythVantage-app/mythinstall/installationtype.cpp < $MYDIR/installationtype.cpp.patch
+
+cd $MYDIR/src/MythVantage-app-patched/mythinstall && qmake
 make || exit 1
 #cd $MYDIR/src/MythVantage-app/mythbeselect && qmake
 #make ||exit 1
diff --git a/abs/core/mythinstall/fileshare.cpp.patch b/abs/core/mythinstall/fileshare.cpp.patch
new file mode 100644
index 0000000..d220705
--- /dev/null
+++ b/abs/core/mythinstall/fileshare.cpp.patch
@@ -0,0 +1,156 @@
+--- fileshare.cpp.orig	2013-12-07 16:36:24.882995387 +0000
++++ fileshare.cpp	2013-12-07 17:52:59.075231547 +0000
+@@ -24,10 +24,10 @@
+ static HostComboBox *HostHaveCentralNFS()
+ {
+     HostComboBox *gc = new HostComboBox("HostHaveCentralNFS");
+-    gc->setLabel(QObject::tr("Central NFS server"));
++    gc->setLabel(QObject::tr("Central NFS Server"));
+     gc->addSelection("no");
+     gc->addSelection("yes") ;
+-    gc->setHelpText(QObject::tr("Select yes, if your media is stored on an NFS server different than the masterbackend.  Say no if you are confused."));
++    gc->setHelpText(QObject::tr("Select yes, if your media is stored on an NFS server different than the master backend. Select no if you are unsure."));
+ 
+     return gc;
+ }
+@@ -35,8 +35,8 @@
+ static  HostComboBox *HostCentralNFSIP()
+ {
+     HostComboBox *gc = new HostComboBox("HostCentralNFSIP",true);
+-    gc->setLabel(QObject::tr("NFS server"));
+-    gc->setHelpText(QObject::tr("Format should be  IP:/SHARENAME, for example  192.168.1.6:/media.  file:nfsmap  will load shares from the nfsmap file"));
++    gc->setLabel(QObject::tr("NFS Server"));
++    gc->setHelpText(QObject::tr("Format should be IP:/SHARENAME, For example 192.168.1.6:/media. file:nfsmap will load shares from the nfsmap file."));
+     gc->addSelection("example  ip:share") ;
+     gc->addSelection("file:nfsmap_auto") ;
+     gc->addSelection("file:nfsmap") ;
+@@ -57,7 +57,7 @@
+ 
+     HostComboBox *gc = new HostComboBox("HostNFSmountpoint",true);
+     gc->addSelection("/data/storage/central_nfs");
+-    gc->setLabel(QObject::tr("Mount point"));
++    gc->setLabel(QObject::tr("Mount Point"));
+     gc->setHelpText(QObject::tr(""));
+     return gc;
+ }
+@@ -65,9 +65,9 @@
+ static HostCheckBox *HostCentralNFSallhosts()
+ {
+     HostCheckBox *gc = new HostCheckBox("HostCentralNFSallhosts");
+-    gc->setLabel(QObject::tr("All hosts use this share"));
++    gc->setLabel(QObject::tr("All Hosts Use This Share"));
+     gc->setValue(true);
+-    gc->setHelpText(QObject::tr("If checked then all new hosts added to the cluster will try to access the same share"));
++    gc->setHelpText(QObject::tr("If checked then all new hosts added to the cluster will try to access the same share."));
+     return gc;
+ };
+ 
+@@ -111,6 +111,7 @@
+ FileShareMainFrameClient::FileShareMainFrameClient():
+ VerticalConfigurationGroup(false,false,false,false)
+ {
++    setLabel(QObject::tr("File Sharing Settings (1/2)"));
+     VerticalConfigurationGroup* fileshareframeclientsettings =
+     new VerticalConfigurationGroup(false, true,false,false);
+ 
+@@ -125,26 +126,26 @@
+ static HostCheckBox *HostServiceNFS()
+ {
+     HostCheckBox *gc = new HostCheckBox("HostServiceNFS");
+-    gc->setLabel(QObject::tr("Standard file sharing using NFS"));
++    gc->setLabel(QObject::tr("File Sharing using NFS"));
+     gc->setValue(true);
+-    gc->setHelpText(QObject::tr("Allow any machine on your network access to media via NFS"));
++    gc->setHelpText(QObject::tr("If checked, any device on the network can access media via NFS."));
+     return gc;
+ };
+ static HostCheckBox *HostServiceSamba()
+ {
+     HostCheckBox *gc = new HostCheckBox("HostServiceSamba");
+-    gc->setLabel(QObject::tr("Windows sharing"));
++    gc->setLabel(QObject::tr("File Sharing using SMB (Windows Sharing)"));
+     gc->setValue(false);
+-    gc->setHelpText(QObject::tr("Allow window machines to access media via windows file sharing"));
++    gc->setHelpText(QObject::tr("If checked, any device on the network can access media via Windows SMB file sharing."));
+     return gc;
+ };
+ 
+ static HostCheckBox *HostServiceSamba_write()
+ {
+     HostCheckBox *gc = new HostCheckBox("HostServiceSamba_write");
+-    gc->setLabel(QObject::tr("Readonly"));
++    gc->setLabel(QObject::tr("ReadOnly"));
+     gc->setValue(false);
+-    gc->setHelpText(QObject::tr("If checked, all remote connections will be read only.  If not checked then remote clients will have write and delete abilites. "));
++    gc->setHelpText(QObject::tr("If checked, all remote connections will be read only. If not checked, remote clients will have write and delete abilities."));
+     return gc;
+ };
+ 
+@@ -152,16 +153,16 @@
+ static HostCheckBox *HostServiceSamba_writehome()
+ {
+     HostCheckBox *gc = new HostCheckBox("HostServiceSamba_writehome");
+-    gc->setLabel(QObject::tr("Readonly"));
++    gc->setLabel(QObject::tr("ReadOnly"));
+     gc->setValue(false);
+-    gc->setHelpText(QObject::tr("If checked, all remote connections will be read only.  If not checked then remote clients will have write and delete abilites. "));
++    gc->setHelpText(QObject::tr("If checked, all remote connections will be read only. If not checked, remote clients will have write and delete abilities."));
+     return gc;
+ };
+ 
+ static HostCheckBox *HostServiceSamba_media()
+ {
+     HostCheckBox *gc = new HostCheckBox("HostServiceSamba_media");
+-    gc->setLabel(QObject::tr("share media"));
++    gc->setLabel(QObject::tr("Share media"));
+     gc->setValue(true);
+     gc->setHelpText(QObject::tr(" "));
+     return gc;
+@@ -170,7 +171,7 @@
+ static HostCheckBox *HostServiceSamba_home()
+ {
+     HostCheckBox *gc = new HostCheckBox("HostServiceSamba_home");
+-    gc->setLabel(QObject::tr("share home"));
++    gc->setLabel(QObject::tr("Share home"));
+     gc->setValue(true);
+     gc->setHelpText(QObject::tr(" "));
+     return gc;
+@@ -182,7 +183,7 @@
+ {
+     HostComboBox *gc = new HostComboBox("HostServiceSamba_domain",true);
+     gc->setLabel(QObject::tr("Workgroup"));
+-    gc->setHelpText(QObject::tr("Workgroup for smb share"));
++    gc->setHelpText(QObject::tr("Workgroup for Windows SMB shares."));
+     gc->addSelection("WORKGROUP");
+     QString currentitem;
+     QString line;
+@@ -231,7 +232,7 @@
+ 
+ void smb_busy_box() {
+     system ("nmbscan -d  > /tmp/smbdomainlist & ");
+-    QString msgtext="Searching for windows workgroups";
++    QString msgtext="Searching for Windows Workgroups";
+     int return_code;
+     MythScreenStack *popupStack = GetMythMainWindow()->GetStack("popup stack");
+     MythUIBusyDialog *busyPopup = new MythUIBusyDialog(msgtext, popupStack,
+@@ -286,15 +287,17 @@
+ 
+ //_______________Server NFS Frame
+ FileShareMainFrameServer::FileShareMainFrameServer():
+-VerticalConfigurationGroup(true,false,false,false)
++VerticalConfigurationGroup(false,false,false,false)
+ {
++    setLabel(QObject::tr("File Sharing Settings (2/2)"));
++
+     VerticalConfigurationGroup* denied =  new VerticalConfigurationGroup(false,false,true,true);
+     TransLabelSetting *deniedlabel = new TransLabelSetting();
+-    deniedlabel->setValue("               File sharing is not available for Front end only systems  " );
++    deniedlabel->setValue("               File sharing is not available for frontend_only systems." );
+     denied->addChild(deniedlabel);
+ 
+     VerticalConfigurationGroup* fileshare_frame_serversettings =
+-        new VerticalConfigurationGroup(false, true,false,false);
++        new VerticalConfigurationGroup(false,false,false,false);
+         fileshare_frame_serversettings->addChild(HostServiceNFS());
+         fileshare_frame_serversettings->addChild(new SAMBAsettings);
+ 
diff --git a/abs/core/mythinstall/infrared.cpp.patch b/abs/core/mythinstall/infrared.cpp.patch
new file mode 100644
index 0000000..7c3b2cf
--- /dev/null
+++ b/abs/core/mythinstall/infrared.cpp.patch
@@ -0,0 +1,35 @@
+--- infrared.cpp.orig	2013-12-06 18:56:39.300263083 +0000
++++ infrared.cpp	2013-12-06 21:52:25.071935902 +0000
+@@ -339,7 +339,7 @@
+     gc->addSelection("user");
+     gc->addSelection("other");
+ 
+-    gc->setHelpText(QObject::tr("Remote classification.  Favorites are remotes fully supported by LinHES."));
++    gc->setHelpText(QObject::tr("Remote classification. Favorites are remotes fully supported by LinHES."));
+ 
+     return gc;
+ };
+@@ -391,6 +391,7 @@
+ IRFrame::IRFrame():
+     VerticalConfigurationGroup(false,false,false,false)
+ {
++    setLabel(QObject::tr("Remotes Settings"));
+     LIRC_ReceiverSettings *receiversettings = new LIRC_ReceiverSettings();
+     //addChild(new HostRemoteTypeIR());
+     addChild(new Remote_bucket());
+@@ -685,6 +686,7 @@
+ IR_TransmitFrame::IR_TransmitFrame():
+     VerticalConfigurationGroup(false,false,false,false)
+ {
++    setLabel(QObject::tr("Blaster Settings"));
+     LIRC_BlasterSettings *blastersettings = new LIRC_BlasterSettings();
+     addChild(blastersettings);
+ }
+@@ -724,6 +726,7 @@
+ LCDFrame::LCDFrame():
+     VerticalConfigurationGroup(false,false,false,false)
+ {
++    setLabel(QObject::tr("LCD Settings"));
+     addChild(HostLCDType());
+ }
+ 
diff --git a/abs/core/mythinstall/installationtype.cpp.patch b/abs/core/mythinstall/installationtype.cpp.patch
new file mode 100644
index 0000000..bbb2693
--- /dev/null
+++ b/abs/core/mythinstall/installationtype.cpp.patch
@@ -0,0 +1,98 @@
+--- installationtype.cpp.orig	2013-12-06 01:40:00.625732158 +0000
++++ installationtype.cpp	2013-12-06 17:28:37.733758564 +0000
+@@ -28,13 +28,13 @@
+ static HostComboBox *HOSTinstallationtype()
+ {
+     HostComboBox *gc = new HostComboBox("HOSTinstallationtype");
+-    gc->setLabel(QObject::tr("Upgrade or Full install"));
++    gc->setLabel(QObject::tr("Installation Type"));
+     gc->addSelection("Full/Auto") ;
+ 
+     gc->addSelection("Upgrade");
+ 
+     //gc->setValue("Full/Auto");
+-    gc->setHelpText(QObject::tr("A full install will erase the entire drive and repartition.  An upgrade will only format or overlay the first parition of the drive."));
++    gc->setHelpText(QObject::tr("Full install will erase the entire drive and repartition. Upgrade will format only the first parition of the drive. Only LinHES R8.0 or newer can use Upgrade."));
+ 
+     return gc;
+ }
+@@ -48,7 +48,7 @@
+ #endif
+     gc->setLabel(QObject::tr("OS size (GB)"));
+     gc->setValue(2);
+-    gc->setHelpText(QObject::tr(""  ));
++    gc->setHelpText(QObject::tr("Amount of space allocated for the root OS."  ));
+ 
+     return gc;
+ }
+@@ -68,7 +68,7 @@
+     HostSpinBox *gc = new HostSpinBox("HOSTHOMEsize", 1, 1500, 1, true);
+     gc->setLabel(QObject::tr("Home dir size (GB)"));
+     gc->setValue(3);
+-    gc->setHelpText(QObject::tr("Amount of space allocated for home directories.   Three - Five GB will be sufficient for most people.  This space will be formatted the same as the root OS"  ));
++    gc->setHelpText(QObject::tr("Amount of space allocated for the home directories partition. Three to five GB will be sufficient for most people. The home partition will be the same filesystem as the root OS."  ));
+ 
+     return gc;
+ }
+@@ -79,7 +79,7 @@
+     HostSpinBox *gc = new HostSpinBox("HOSTDatabasesize", 1, 20, 1, true);
+     gc->setLabel(QObject::tr("Database partition size (GB)"));
+     gc->setValue(4);
+-    gc->setHelpText(QObject::tr("Amount of space allocated for the database. One or Two  GB is more then enough for the avg user.  This space will be formated with ext3"  ));
++    gc->setHelpText(QObject::tr("Amount of space allocated for the database partition. Two GB is more then enough for most people. The database partition space will be formatted with the ext3 filesystem."  ));
+ 
+     return gc;
+ }
+@@ -111,7 +111,7 @@
+     HostSpinBox *gc = new HostSpinBox("HOSTSWAPsize", 128, 128000, 128, true);
+     gc->setLabel(QObject::tr("Swapspace size (MB)"));
+     gc->setValue(mem);
+-    gc->setHelpText(QObject::tr(""  ));
++    gc->setHelpText(QObject::tr("Amount of space allocated for the swap partition."  ));
+ 
+     return gc;
+ }
+@@ -130,7 +130,7 @@
+     HostCheckBox *gc = new HostCheckBox("HostUseALLdata");
+     gc->setLabel(QObject::tr("Use all remaining space for data"));
+     gc->setValue(true);
+-    gc->setHelpText(QObject::tr("If checked myth will use the rest of the drive for the data.  Otherwise you will be able to set the size of the partition."));
++    gc->setHelpText(QObject::tr("If checked the remaining space on the drive will be used for storage. Otherwise you can set the size of the partition."));
+     return gc;
+ };
+ 
+@@ -146,7 +146,7 @@
+     gc->addSelection("xfs");
+     //gc->addSelection("btrfs");
+ 
+-    gc->setHelpText(QObject::tr("Filesystem for data. "));
++    gc->setHelpText(QObject::tr("Filesystem type for data storage."));
+ 
+     return gc;
+ }
+@@ -163,7 +163,7 @@
+     //gc->addSelection("btrfs");
+     gc->addSelection("Do_not_format");
+ 
+-    gc->setHelpText(QObject::tr("Filesystem for OS. "));
++    gc->setHelpText(QObject::tr("Filesystem type for OS. "));
+ 
+     return gc;
+ }
+@@ -179,7 +179,7 @@
+     //gc->addSelection("btrfs");
+     //gc->addSelection("xfs");
+ 
+-    gc->setHelpText(QObject::tr("Filesystem for OS.  "));
++    gc->setHelpText(QObject::tr("Filesystem type for root OS."));
+ 
+     return gc;
+ }
+@@ -233,6 +233,7 @@
+ public:
+     Installationtype():
+         TriggeredConfigurationGroup(true,false,true,true,false,false,false,true) {
++        setLabel(QObject::tr("LinHES Install"));
+         Setting *Mtemplate = HOSTinstallationtype();
+         addChild(Mtemplate);
+         setTrigger(Mtemplate);
diff --git a/abs/core/mythinstall/installdialog.cpp.patch b/abs/core/mythinstall/installdialog.cpp.patch
new file mode 100644
index 0000000..b188bab
--- /dev/null
+++ b/abs/core/mythinstall/installdialog.cpp.patch
@@ -0,0 +1,75 @@
+--- installdialog.cpp.orig	2013-12-05 21:06:13.358926594 +0000
++++ installdialog.cpp	2013-12-06 17:26:16.491833828 +0000
+@@ -881,50 +881,32 @@
+             }
+             if ( flag )
+             {
+-                tflag =  1;
+-            }
+-            else
+-            {
+-                cout << "searching for knoppmyth-versin" << endl;
+-                //couldn't open /etc/systemconfig, so now look for /tmp/etc/Knoppmyth-version
+-                QFile file("/tmp/etc/KnoppMyth-version");
+-                if ( file.exists() )
+-                {   //appears to be a knoppmyth version, proceed
+-                    cout << "found knoppmyth-version" << endl;
+-                    QFile kmfile("/tmp/etc/hostname");
+-                    if ( kmfile.open(QIODevice::ReadOnly | QIODevice::Text) )
+-                    {
+-                        Q3TextStream t( &kmfile );        // use a text stream
+-                        line = t.readLine();
+-                        flag=true;
+-                        currentitem = line.stripWhiteSpace();
+-                        current_hostname =  currentitem   ;
+-                        //gCoreContext->ActivateSettingsCache(true);
+-                        gCoreContext->ClearSettingsCache();
+-                        //FixME
+-                        //gCoreContext->SetSetting("HostMyhostname",current_hostname);
+-                        gCoreContext->SaveSetting("HostMyhostname",current_hostname);
+-                    }
+-                    kmfile.close();
+-                    runNextSetting = ask_validate_network();
+-                }
+-                else
++                //check if LinHES-release is 8.0 or newer
++                cout << "searching for LinHES-release" << endl;
++                //look for /tmp/etc/LinHES-release
++                QFile file("/tmp/etc/LinHES-release");
++                if ( file.open(QIODevice::ReadOnly | QIODevice::Text) )
+                 {
+-                    //popup things went wrong
+-                    DialogCode returncode  = MythPopupBox::Show2ButtonPopup(GetMythMainWindow(),
+-                                             QString(""),
+-                                             QObject::tr("Couldn't find the old config file, proceed with update?"),
+-                                             QObject::tr("No"), QObject::tr("Yes"), kDialogCodeButton1);
+-                    if ( returncode == kDialogCodeButton1 )
++                    Q3TextStream t( &file );        // use a text stream
++                    while ( !t.eof() )
+                     {
+-                        runNextSetting = ask_validate_network();
+-                    }
+-                    else if ( returncode == kDialogCodeButton0 )
+-                    {
+-                        runNextSetting = 1;
++                        line = t.readLine();
++                        if ( line.contains("8.") )
++                        {
++                            tflag = 1;
++                        }
+                     }
++                    file.close();
+                 }
+-
++            }
++            if ( tflag == 0 )
++            {
++                //popup install doesn't look like R8
++                MythPopupBox::showOkPopup(
++                    GetMythMainWindow(),
++                    QObject::tr(""),
++                    QObject::tr("The selected disk cannot be upgraded because it is older than LinHES R8.0."));
++                runNextSetting = 1;
+             }
+         }
+     }
diff --git a/abs/core/mythinstall/installsettings.cpp.patch b/abs/core/mythinstall/installsettings.cpp.patch
new file mode 100644
index 0000000..461d26d
--- /dev/null
+++ b/abs/core/mythinstall/installsettings.cpp.patch
@@ -0,0 +1,532 @@
+--- installsettings.cpp.orig	2013-12-06 17:34:15.794137303 +0000
++++ installsettings.cpp	2013-12-07 17:31:13.642325676 +0000
+@@ -67,7 +67,7 @@
+     HostLineEdit *gc = new HostLineEdit("HostDDnslogin");
+     gc->setLabel(QObject::tr("Login"));
+     gc->setValue("");
+-    gc->setHelpText(QObject::tr("Login for ddns account"));
++    gc->setHelpText(QObject::tr("Login for DDNS account."));
+     return gc;
+ };
+ 
+@@ -77,7 +77,7 @@
+     gc->setLabel(QObject::tr("Password"));
+     gc->setValue("");
+     gc->SetPasswordEcho(true);
+-    gc->setHelpText(QObject::tr("Password for ddns account."));
++    gc->setHelpText(QObject::tr("Password for DDNS account."));
+     return gc;
+ };
+ 
+@@ -93,7 +93,7 @@
+ static HostCheckBox *HostDDnsEnable()
+ {
+     HostCheckBox *gc = new HostCheckBox("HostDDnsEnable");
+-    gc->setLabel(QObject::tr("Enable DDNS support"));
++    gc->setLabel(QObject::tr("Enable DDNS"));
+     gc->setValue(false);
+     gc->setHelpText(QObject::tr("Update DDNS records at dyndns.com. Visit http://dyndns.com to setup your account."));
+     return gc;
+@@ -103,7 +103,7 @@
+ public:
+     DDnssettings():
+         TriggeredConfigurationGroup(false,false,false,false) {
+-        setLabel(QObject::tr("DDNS settings"));
++        setLabel(QObject::tr("DDNS Settings"));
+         SetVertical(true);
+         Setting* trigger = HostDDnsEnable() ;
+         addChild(trigger);
+@@ -321,9 +321,9 @@
+ static HostCheckBox *HostBEWait()
+ {
+     HostCheckBox *gc = new HostCheckBox("HostBEWait");
+-    gc->setLabel(QObject::tr("Delay starting the frontend until the server is ready"));
++    gc->setLabel(QObject::tr("Delay starting mythfrontend until mythbackend is running"));
+     gc->setValue(true);
+-    gc->setHelpText(QObject::tr("The system will check if the backend is online before starting mythfrontend.  This is useful to avoid unwanted connection errors or configuration screens. "));
++    gc->setHelpText(QObject::tr("The system will check if mythbackend is online before starting mythfrontend. This will avoid connection errors and configuration screens."));
+     return gc;
+ };
+ 
+@@ -370,9 +370,9 @@
+ static HostCheckBox *HostServiceMythWEB()
+ {
+     HostCheckBox *gc = new HostCheckBox("HostServiceMythWEB");
+-    gc->setLabel(QObject::tr("Enable Mythweb"));
++    gc->setLabel(QObject::tr("Enable MythWeb"));
+     gc->setValue(false);
+-    gc->setHelpText(QObject::tr("Allow scheduling using a web browser"));
++    gc->setHelpText(QObject::tr("Allow MythTV scheduling using a web browser."));
+     return gc;
+ };
+ 
+@@ -416,9 +416,9 @@
+ static HostCheckBox *HostRunDHCP()
+ {
+     HostCheckBox *gc = new HostCheckBox("HostRunDHCP");
+-    gc->setLabel(QObject::tr("DHCP server"));
++    gc->setLabel(QObject::tr("DHCP Server"));
+     gc->setValue(false);
+-    gc->setHelpText(QObject::tr("Only one dhcp server should run on a network.  Leave this unchecked if your unsure."));
++    gc->setHelpText(QObject::tr("Only one DHCP server should run on a network. Leave this unchecked if you are not sure."));
+     return gc;
+ };
+ 
+@@ -436,16 +436,16 @@
+     HostCheckBox *gc = new HostCheckBox("HostUseMythWelcome");
+     gc->setLabel(QObject::tr("Run MythWelcome"));
+     gc->setValue(false);
+-    gc->setHelpText(QObject::tr("If this option is checked mythwelcome will be started first."));
++    gc->setHelpText(QObject::tr("If checked mythwelcome will be started instead of mythfrontend."));
+     return gc;
+ };
+ 
+ static HostCheckBox *HostRunFrontend()
+ {
+     HostCheckBox *gc = new HostCheckBox("HostRunFrontend");
+-    gc->setLabel(QObject::tr("Run the Frontend."));
++    gc->setLabel(QObject::tr("Run Frontend"));
+     gc->setValue(true);
+-    gc->setHelpText(QObject::tr("When checked the frontend will start.  Most people will want this checked."));
++    gc->setHelpText(QObject::tr("If checked the frontend X windows GUI will start. Most people will want this checked. Disable the frontend if you want the system to run without a display connected."));
+     return gc;
+ };
+ 
+@@ -500,7 +500,7 @@
+     HostCheckBox *gc = new HostCheckBox("HostRemoteBackup");
+     gc->setLabel(QObject::tr("Remote Backup"));
+     gc->setValue(false);
+-    gc->setHelpText(QObject::tr("Copy the system backup file to another dir or host.   Supplemental services must be installed to copy the file to a remote host."));
++    gc->setHelpText(QObject::tr("Copy the system backup file to another directory or host."));
+     return gc;
+ };
+ 
+@@ -509,7 +509,7 @@
+ {
+     QString tempItem;
+     HostComboBox *gc = new HostComboBox("HostRemoteBackupDir",true);
+-    gc->setLabel(QObject::tr("dir or host" ));
++    gc->setLabel(QObject::tr("  Dir or Host" ));
+     gc->addSelection("dir:/data/storage/disk0");
+     MSqlQuery query(MSqlQuery::InitCon());
+ 
+@@ -573,18 +573,18 @@
+ static HostCheckBox *HostncidClient()
+ {
+     HostCheckBox *gc = new HostCheckBox("HostncidClient");
+-    gc->setLabel(QObject::tr("Show Callerid"));
++    gc->setLabel(QObject::tr("Show CallerID"));
+     gc->setValue(false);
+-    gc->setHelpText(QObject::tr("Callerid popup, backend must be running the callerid program"));
++    gc->setHelpText(QObject::tr("Show CallerID popup. The backend must be running the CallerID program."));
+     return gc;
+ };
+ 
+ static HostCheckBox *HostncidDaemon()
+ {
+     HostCheckBox *gc = new HostCheckBox("HostncidDaemon");
+-    gc->setLabel(QObject::tr("Run Callerid "));
++    gc->setLabel(QObject::tr("Run CallerID"));
+     gc->setValue(false);
+-    gc->setHelpText(QObject::tr("Run Daemon to collect callerid info"));
++    gc->setHelpText(QObject::tr("Run daemon to collect CallerID information."));
+     return gc;
+ };
+ 
+@@ -614,9 +614,9 @@
+ static HostCheckBox *Hostbootsplash()
+ {
+     HostCheckBox *gc = new HostCheckBox("Hostbootsplash");
+-    gc->setLabel(QObject::tr("Enable bootsplash"));
++    gc->setLabel(QObject::tr("Enable Boot Splash"));
+     gc->setValue(false);
+-    gc->setHelpText(QObject::tr("Covers up boot messages. "));
++    gc->setHelpText(QObject::tr("Covers up boot messages with LinHES logo."));
+     return gc;
+ };
+ 
+@@ -752,80 +752,80 @@
+ static HostCheckBox *Hostaccessnetwork()
+ {
+     HostCheckBox *gc = new HostCheckBox("Hostaccessnetwork");
+-    gc->setLabel(QObject::tr("Network "));
++    gc->setLabel(QObject::tr("Network"));
+     gc->setValue(false);
+-    gc->setHelpText(QObject::tr("Control access to network screen. Checked means the screen is enabled."));
++    gc->setHelpText(QObject::tr("Control access to Network Settings. Checked means the screen is enabled."));
+     return gc;
+ };
+ 
+ static HostCheckBox *Hostaccesshostype()
+ {
+     HostCheckBox *gc = new HostCheckBox("Hostaccesshostype");
+-    gc->setLabel(QObject::tr("hostype "));
++    gc->setLabel(QObject::tr("Host"));
+     gc->setValue(true);
+-    gc->setHelpText(QObject::tr("Control access to hostype screen. Checked means the screen is enabled."));
++    gc->setHelpText(QObject::tr("Control access to Host Settings. Checked means the screen is enabled."));
+     return gc;
+ };
+ 
+ static HostCheckBox *HostaccesshostypeSystemtype()
+ {
+     HostCheckBox *gc = new HostCheckBox("HostaccesshostypeSystemtype");
+-    gc->setLabel(QObject::tr("Change hostype"));
++    gc->setLabel(QObject::tr("Change System Type"));
+     gc->setValue(false);
+-    gc->setHelpText(QObject::tr("Ability to change sql server and system type. Checked means the screen is enabled."));
++    gc->setHelpText(QObject::tr("Ability to change the System Type in Host Settings. Checked means the screen is enabled."));
+     return gc;
+ };
+ 
+ static HostCheckBox *Hostaccessmisc()
+ {
+     HostCheckBox *gc = new HostCheckBox("Hostaccessmisc");
+-    gc->setLabel(QObject::tr("misc "));
++    gc->setLabel(QObject::tr("Miscellanous"));
+     gc->setValue(true);
+-    gc->setHelpText(QObject::tr("Control access to misc screen. Checked means the screen is enabled."));
++    gc->setHelpText(QObject::tr("Control access to Miscellanous Settings. Checked means the screen is enabled."));
+     return gc;
+ };
+ 
+ static HostCheckBox *Hostaccesssleep()
+ {
+     HostCheckBox *gc = new HostCheckBox("Hostaccesssleep");
+-    gc->setLabel(QObject::tr("sleep "));
++    gc->setLabel(QObject::tr("Shutdown"));
+     gc->setValue(true);
+-    gc->setHelpText(QObject::tr("Control access to sleep screen. Checked means the screen is enabled."));
++    gc->setHelpText(QObject::tr("Control access to Shutdown Settings. Checked means the screen is enabled."));
+     return gc;
+ };
+ 
+ static HostCheckBox *Hostaccessadvanced()
+ {
+     HostCheckBox *gc = new HostCheckBox("Hostaccessadvanced");
+-    gc->setLabel(QObject::tr("advanced "));
++    gc->setLabel(QObject::tr("Advanced"));
+     gc->setValue(true);
+-    gc->setHelpText(QObject::tr("Control access to advanced screen. Checked means the screen is enabled. "));
++    gc->setHelpText(QObject::tr("Control access to Advanced Settings. Checked means the screen is enabled. "));
+     return gc;
+ };
+ 
+ static HostCheckBox *HostaccessadvancedX()
+ {
+     HostCheckBox *gc = new HostCheckBox("HostaccessadvancedX");
+-    gc->setLabel(QObject::tr("advancedX "));
++    gc->setLabel(QObject::tr("Display"));
+     gc->setValue(true);
+-    gc->setHelpText(QObject::tr("Control access to advancedX screen. Checked means the screen is enabled. "));
++    gc->setHelpText(QObject::tr("Control access to Display Settings. Checked means the screen is enabled. "));
+     return gc;
+ };
+ static HostCheckBox *Hostaccesssound()
+ {
+     HostCheckBox *gc = new HostCheckBox("Hostaccesssound");
+-    gc->setLabel(QObject::tr("sound "));
++    gc->setLabel(QObject::tr("Audio"));
+     gc->setValue(true);
+-    gc->setHelpText(QObject::tr("Control access to sound screen. Checked means the screen is enabled."));
++    gc->setHelpText(QObject::tr("Control access to Audio Settings. Checked means the screen is enabled."));
+     return gc;
+ };
+ 
+ static HostCheckBox *Hostaccessplugins()
+ {
+     HostCheckBox *gc = new HostCheckBox("Hostaccessplugins");
+-    gc->setLabel(QObject::tr("plugins"));
++    gc->setLabel(QObject::tr("Programs"));
+     gc->setValue(true);
+-    gc->setHelpText(QObject::tr("Control access to plugin screen. Checked means the screen is enabled."));
++    gc->setHelpText(QObject::tr("Control access to Programs. Checked means the screen is enabled."));
+     return gc;
+ };
+ 
+@@ -834,25 +834,25 @@
+     HostCheckBox *gc = new HostCheckBox("Hostaccessuser");
+     gc->setLabel(QObject::tr("User"));
+     gc->setValue(false);
+-    gc->setHelpText(QObject::tr("Control access to the user managment screen. Checked means the screen is enabled."));
++    gc->setHelpText(QObject::tr("Control access to User Management Settings. Checked means the screen is enabled."));
+     return gc;
+ };
+ 
+ static HostCheckBox *Hostaccesswebuser()
+ {
+     HostCheckBox *gc = new HostCheckBox("Hostaccesswebuser");
+-    gc->setLabel(QObject::tr("Web password"));
++    gc->setLabel(QObject::tr("Web Security"));
+     gc->setValue(true);
+-    gc->setHelpText(QObject::tr("Control access to the web password screen. Checked means the screen is enabled."));
++    gc->setHelpText(QObject::tr("Control access to Web Security Settings. Checked means the screen is enabled."));
+     return gc;
+ };
+ 
+ static HostCheckBox *Hostaccessvnc()
+ {
+     HostCheckBox *gc = new HostCheckBox("Hostaccessvnc");
+-    gc->setLabel(QObject::tr("VNC "));
++    gc->setLabel(QObject::tr("VNC"));
+     gc->setValue(true);
+-    gc->setHelpText(QObject::tr("Control access to the vnc password screen. Checked means the screen is enabled."));
++    gc->setHelpText(QObject::tr("Control access to VNC Settings. Checked means the screen is enabled."));
+     return gc;
+ };
+ 
+@@ -860,9 +860,9 @@
+ static HostCheckBox *Hostaccessfileshare()
+ {
+     HostCheckBox *gc = new HostCheckBox("Hostaccessfileshare");
+-    gc->setLabel(QObject::tr("fileshare "));
++    gc->setLabel(QObject::tr("File Sharing"));
+     gc->setValue(true);
+-    gc->setHelpText(QObject::tr("Control access to the fileshare.  Checked means the screen is enabled."));
++    gc->setHelpText(QObject::tr("Control access to File Sharing Settings. Checked means the screen is enabled."));
+     return gc;
+ };
+ 
+@@ -2202,7 +2202,7 @@
+ public:
+     NetworkSettingsFrame():
+         TriggeredConfigurationGroup(false, false, true, true,false, false, true, true) {
+-        setLabel(QObject::tr("Network Settings Page (1/2)"));
++        setLabel(QObject::tr("Network Settings (1/2)"));
+         Setting* netdevice = HostNetDevice();
+         addChild(netdevice);
+         setTrigger(netdevice);
+@@ -2349,6 +2349,7 @@
+ NetworkOptionsFrame::NetworkOptionsFrame():
+     VerticalConfigurationGroup(false,false,false,false)
+ {
++    setLabel(QObject::tr("Network Settings (2/2)"));
+     HostMyhostname = new HostComboBox("HostMyhostname",true);
+     HostMyhostname->setLabel(QObject::tr("Hostname"));
+     HostMyhostname->addSelection("Envy");
+@@ -2366,9 +2367,7 @@
+     HostMyhostname->addSelection("Faith");
+     HostMyhostname->addSelection("Zeal");
+     HostMyhostname->addSelection("type_hostname_here");
+-    HostMyhostname->setHelpText(QObject::tr("The hostname must resolve via DNS. \
+-    If DNS is not available then append .local to the end of the hostname. \
+-    When using .local, names must not include additional ."));
++    HostMyhostname->setHelpText(QObject::tr("The hostname must resolve via DNS. If DNS is not available then append .local to the end of the hostname. When using .local, names must not include an additional ."));
+ 
+     FetchDhcpHostnameButton = new TransButtonSetting();
+     FetchDhcpHostnameButton ->setLabel(tr("Ask DHCP server for hostname"));
+@@ -2494,9 +2493,9 @@
+ static HostCheckBox *HostUseXLargeMouse()
+ {
+     HostCheckBox *gc = new HostCheckBox("HostUseXLargeMouse");
+-    gc->setLabel(QObject::tr("Large mouse pointer"));
++    gc->setLabel(QObject::tr("Large Mouse Pointer"));
+     gc->setValue(true);
+-    gc->setHelpText(QObject::tr("Use extra large mouse pointer(requires restart of frontend)"));
++    gc->setHelpText(QObject::tr("Use an extra large mouse pointer. This takes effect the next time the frontend is started."));
+     return gc;
+ };
+ 
+@@ -2549,7 +2548,7 @@
+ SystemtypeGroup::SystemtypeGroup():        TriggeredConfigurationGroup(true,true,true,true,true,true,true,true) {
+     setLabel(QObject::tr("System Type"));
+     HostSystemType = new HostComboBox("HostSystemType");
+-    HostSystemType->setLabel(QObject::tr("Type of system setup"));
++    HostSystemType->setLabel(QObject::tr("          System Type"));
+     HostSystemType->addSelection("Master_backend");
+     HostSystemType->addSelection("Frontend_only");
+ //     HostSystemType->addSelection("Standalone");
+@@ -2608,13 +2607,13 @@
+     }
+ 
+     if (selectedhostype == "Standalone")
+-        msg="Complete System, that doesn't allow outside connections";
++        msg="Complete System, that doesn't allow outside connections.";
+     if (selectedhostype == "Frontend_only")
+-        msg="Frontend only, needs a  primary system (master backend) already on the network";
++        msg="Frontend_only needs a primary system (master backend) already on the network.";
+     if (selectedhostype ==  "Master_backend")
+-        msg="Primary system with tuners, scheduling and database.  This allows for remote frontend and slave backends";
++        msg="Primary system with tuners, scheduling and database. This allows for remote frontend and slave backends.";
+     if (selectedhostype == "Slave_backend")
+-        msg="Secondary system for extra tuners";
++        msg="Secondary system for extra tuners.";
+ 
+     HostSystemType->setHelpText(msg) ;
+ }
+@@ -2670,7 +2669,7 @@
+         TriggeredConfigurationGroup(true,true,true,true,true,true,true,true)
+     {
+ 
+-        setLabel(QObject::tr("Advanced settings (1/2)"));
++        setLabel(QObject::tr("Advanced Settings (1/2)"));
+         Setting* Autodown = HostAutodown();
+         setTrigger(Autodown);
+         hostparm.ThisSystemType 	= gCoreContext->GetSetting("HostSystemType");
+@@ -2723,7 +2722,7 @@
+ public:
+     AdvancedSettings_2():
+         TriggeredConfigurationGroup(true,true,true,true,true,true,true,true) {
+-        setLabel(QObject::tr("Advanced settings (2/2)"));
++        setLabel(QObject::tr("Advanced Settings (2/2)"));
+         Setting* Autodown = HostAutodown();
+         setTrigger(Autodown);
+         hostparm.ThisSystemType     = gCoreContext->GetSetting("HostSystemType");
+@@ -2767,15 +2766,15 @@
+ /*_______________________________Sound settings ____________________*/
+ SoundSettings::SoundSettings():
+     TriggeredConfigurationGroup(true,true,true,true,true,true,true,true) {
+-    setLabel(QObject::tr("Audio out settings"));
++    setLabel(QObject::tr("Audio Settings"));
+ 
+     HostAudiotype = new HostComboBox("HostAudiotype",false);
+-    HostAudiotype->setLabel(QObject::tr("Sound card driver"));
++    HostAudiotype->setLabel(QObject::tr("Sound Card Driver"));
+     HostAudiotype->addSelection("OSS");
+     HostAudiotype->addSelection("ALSA");
+     HostAudiotype->addSelection("tinker");
+ 
+-    HostAudiotype->setHelpText(QObject::tr("Select the sound driver set to use (OSS or ALSA)." ) );
++    HostAudiotype->setHelpText(QObject::tr("Select the sound driver, OSS or ALSA." ) );
+     addChild(HostAudiotype);
+     setTrigger(HostAudiotype);
+ 
+@@ -2826,10 +2825,10 @@
+     osslabel->setValue("The original OSS! More information can be found at:");
+ 
+     TransLabelSetting *osslabel1 = new TransLabelSetting();
+-    osslabel1->setValue("http://www.opensound.com  \n\nPlease note to fully configure sound visit the \nmythtv audio setup screens\n");
++    osslabel1->setValue("http://www.opensound.com  \n\nPlease note to fully configure sound visit the \nMythTV audio setup.\n");
+ 
+     TransLabelSetting *AlsaLabel = new TransLabelSetting();
+-    AlsaLabel->setValue("ALSA, the alternative to OSS\n\nPlease note to fully configure sound visit the \nmythtv audio setup screens\n");
++    AlsaLabel->setValue("ALSA, the alternative to OSS\n\nPlease note to fully configure sound visit the \nMythTV audio setup.\n");
+ 
+ // OSS GROUP
+     SoundOSSsettings  *OSS = new SoundOSSsettings ;
+@@ -4477,7 +4476,7 @@
+             //Check to see if screen is allowed to appear
+             if (  ((gCoreContext->GetSetting("Hostaccessnetwork"))  == "0" )  )
+             {
+-                denied ->setLabel(QObject::tr("Network settings"));
++                denied ->setLabel(QObject::tr("Network Settings"));
+                 addChild(denied);
+             }
+             else
+@@ -4528,7 +4527,7 @@
+         {
+             if (  ((gCoreContext->GetSetting("Hostaccesshostype")) =="0" ))
+             {
+-                denied ->setLabel(QObject::tr("System type"));
++                denied ->setLabel(QObject::tr("Host Settings"));
+                 addChild(denied);
+             }
+             else
+@@ -4548,7 +4547,7 @@
+         {
+             if ( ((gCoreContext->GetSetting("HostaccessadvancedX")) == "0" ))
+             {
+-                denied ->setLabel(QObject::tr("AdvancedX Settings"));
++                denied ->setLabel(QObject::tr("Display Settings"));
+                 addChild(denied);
+             }
+             else
+@@ -4562,7 +4561,7 @@
+         {
+             if ( ((gCoreContext->GetSetting("Hostaccessvnc")) == "0" ))
+             {
+-                denied ->setLabel(QObject::tr("VNC settings"));
++                denied ->setLabel(QObject::tr("VNC Settings"));
+                 addChild(denied);
+             }
+             else
+@@ -4576,7 +4575,7 @@
+         {
+             if ( ((gCoreContext->GetSetting("Hostaccessfileshare")) == "0" ))
+             {
+-                denied ->setLabel(QObject::tr("File Share settings"));
++                denied ->setLabel(QObject::tr("File Sharing Settings"));
+                 addChild(denied);
+             }
+             else
+@@ -4595,7 +4594,7 @@
+         {
+             if ( ((gCoreContext->GetSetting("Hostaccessmisc")) == "0" ))
+             {
+-                denied ->setLabel(QObject::tr("Misc"));
++                denied ->setLabel(QObject::tr("Miscellanous"));
+                 addChild(denied);
+             }
+             else
+@@ -4618,7 +4617,7 @@
+         {
+             if ( ((gCoreContext->GetSetting("Hostaccesssleep")) == "0" ))
+             {
+-                denied ->setLabel(QObject::tr("WOL settings"));
++                denied ->setLabel(QObject::tr("Shutdown Settings"));
+                 addChild(denied);
+             }
+             else
+@@ -4647,7 +4646,7 @@
+         {
+             if ( ((gCoreContext->GetSetting("Hostaccesssound")) =="0") )
+             {
+-                denied ->setLabel(QObject::tr("Sound Settings"));
++                denied ->setLabel(QObject::tr("Audio Settings"));
+                 addChild(denied);
+             }
+             else
+@@ -4705,7 +4704,7 @@
+             accessettings->addChild(Hostaccessnetwork());
+             accessettings->addChild(new ACCESShostsettings);
+             accessettings->addChild(GridAccess);
+-            accessettings ->setLabel(QObject::tr("Access control"));
++            accessettings ->setLabel(QObject::tr("Access Control Settings"));
+             addChild(accessettings);
+         }
+ 
+@@ -4713,7 +4712,7 @@
+         {
+             if ( ((gCoreContext->GetSetting("Hostaccessplugins")) == "0" ))
+             {
+-                denied ->setLabel(QObject::tr("Plugins"));
++                denied ->setLabel(QObject::tr("Programs"));
+                 addChild(denied);
+             }
+             else
+@@ -4754,7 +4753,7 @@
+         {
+             if ( ((gCoreContext->GetSetting("Hostaccessplugins")) == "0" ))
+             {
+-                denied ->setLabel(QObject::tr("Software"));
++                denied ->setLabel(QObject::tr("Programs"));
+                 addChild(denied);
+             }
+             else
+@@ -4788,7 +4787,7 @@
+         {
+             if ( ((gCoreContext->GetSetting("Hostaccessuser")) == "0" ))
+             {
+-                denied ->setLabel(QObject::tr("User Management"));
++                denied ->setLabel(QObject::tr("User Management Settings"));
+                 addChild(denied);
+             }
+             else
+@@ -4802,7 +4801,7 @@
+         {
+             if ( ((gCoreContext->GetSetting("Hostaccesswebuser")) == "0" ))
+             {
+-                denied ->setLabel(QObject::tr("Web security"));
++                denied ->setLabel(QObject::tr("Web Security Settings"));
+                 addChild(denied);
+             }
+             else
+@@ -4817,7 +4816,7 @@
+         {
+             if ( ((gCoreContext->GetSetting("Hostaccessddns")) == "0" ))
+             {
+-                denied ->setLabel(QObject::tr("DDNS security"));
++                denied ->setLabel(QObject::tr("DDNS Settings"));
+                 addChild(denied);
+             }
+             else
diff --git a/abs/core/mythinstall/logo-3.png b/abs/core/mythinstall/logo-3.png
index 8fff988..800fefc 100644
Binary files a/abs/core/mythinstall/logo-3.png and b/abs/core/mythinstall/logo-3.png differ
diff --git a/abs/core/mythinstall/logo-6.png b/abs/core/mythinstall/logo-6.png
index d370e2e..a81a62f 100644
Binary files a/abs/core/mythinstall/logo-6.png and b/abs/core/mythinstall/logo-6.png differ
diff --git a/abs/core/mythinstall/logo_src/hp_logo.png b/abs/core/mythinstall/logo_src/hp_logo.png
index 211b19e..23a6261 100644
Binary files a/abs/core/mythinstall/logo_src/hp_logo.png and b/abs/core/mythinstall/logo_src/hp_logo.png differ
diff --git a/abs/core/mythinstall/logo_src/simerec.png b/abs/core/mythinstall/logo_src/simerec.png
index 93db677..29db2eb 100644
Binary files a/abs/core/mythinstall/logo_src/simerec.png and b/abs/core/mythinstall/logo_src/simerec.png differ
diff --git a/abs/core/mythinstall/misc_settings.cpp.patch b/abs/core/mythinstall/misc_settings.cpp.patch
new file mode 100644
index 0000000..0afaf0a
--- /dev/null
+++ b/abs/core/mythinstall/misc_settings.cpp.patch
@@ -0,0 +1,53 @@
+--- misc_settings.cpp.orig	2013-12-07 17:56:37.984108492 +0000
++++ misc_settings.cpp	2013-12-07 18:14:07.783476609 +0000
+@@ -11,20 +11,20 @@
+ static HostCheckBox *HostShowToolTips()
+ {
+     HostCheckBox *gc = new HostCheckBox("HostShowToolTips");
+-    gc->setLabel(QObject::tr("Show shortcuts"));
++    gc->setLabel(QObject::tr("Show Shortcuts"));
+     gc->setValue(true);
+-    gc->setHelpText(QObject::tr("Shows a popup window describing how to open a console and various other items."));
++    gc->setHelpText(QObject::tr("Shows a window describing how to open a console and various other items."));
+     return gc;
+ };
+ 
+ static HostComboBox *Hostupdateplan()
+ {
+     HostComboBox *gc = new HostComboBox("Hostupdateplan");
+-    gc->setLabel(QObject::tr("Automatic updates"));
++    gc->setLabel(QObject::tr("Automatic Updates"));
+     gc->addSelection("None");
+     gc->addSelection("Myth_only");
+     gc->addSelection("All");
+-    gc->setHelpText("Download and apply updates.  None: Will not download any updates , Myth_only: automatic updates for MythTV, All: Automatic updates for the entire system.");
++    gc->setHelpText("None: Do not install updates automatically.\nMyth_only: Automatically installs updates for MythTV only.\nAll: Automatically installs all updates for LinHES.");
+     return gc;
+ 
+ }
+@@ -43,6 +43,7 @@
+     VerticalConfigurationGroup(false,false,false,false)
+ 
+ {
++    setLabel(QObject::tr("Miscellaneous Settings"));
+     bool MVAPP;
+ #ifdef __MVAPP__
+     MVAPP = true ;
+@@ -238,7 +239,7 @@
+ 
+ void TimezoneRegion::timezoneregion_fillselection_zone()
+ {
+-    HostTimeZoneRegion->setLabel(QObject::tr("TimeZone"));
++    HostTimeZoneRegion->setLabel(QObject::tr("Time Zone"));
+     HostTimeZoneRegion->addSelection("US");
+     HostTimeZoneRegion->addSelection("Pacific");
+     HostTimeZoneRegion->addSelection("Mideast");
+@@ -302,7 +303,7 @@
+     HostTimeZoneRegion->addSelection("Cuba");
+     HostTimeZoneRegion->addSelection("CST6CDT");
+     HostTimeZoneRegion->addSelection("CET");
+-    HostTimeZoneRegion->setHelpText(QObject::tr("Timezone Region"));
++    HostTimeZoneRegion->setHelpText(QObject::tr("Time Zone Region"));
+ }
+ 
+ void TimezoneRegion::timezoneregion_fillselection(QString tzonefile )
diff --git a/abs/core/mythinstall/xorgsettings.cpp.patch b/abs/core/mythinstall/xorgsettings.cpp.patch
new file mode 100644
index 0000000..7678b9c
--- /dev/null
+++ b/abs/core/mythinstall/xorgsettings.cpp.patch
@@ -0,0 +1,34 @@
+--- xorgsettings.cpp.orig	2013-12-06 22:24:53.351187115 +0000
++++ xorgsettings.cpp	2013-12-06 23:18:44.107475010 +0000
+@@ -551,7 +551,7 @@
+ 
+ // AdvancedXSettings::AdvancedXSettings():
+ //     TriggeredConfigurationGroup(true,true,true,true,true,true,true,true) {
+-//     setLabel(QObject::tr("Advanced X  settings"));
++//     setLabel(QObject::tr("Display Settings"));
+ //     Setting* Advancedxsettings = HostXUseAdvanced();
+ //     addChild(Advancedxsettings);
+ //     setTrigger(Advancedxsettings);
+@@ -596,18 +596,18 @@
+ 
+ AdvancedXSettings::AdvancedXSettings():
+     TriggeredConfigurationGroup(true,true,true,true,true,true,true,true) {
+-    setLabel(QObject::tr("Advanced X  settings"));
++    setLabel(QObject::tr("Display Settings"));
+ 
+ 
+ 
+ 
+     HostXIgnoreConfig = new HostCheckBox("HostXIgnoreConfig");
+-    HostXIgnoreConfig->setLabel(QObject::tr("User supplied config. "));
++    HostXIgnoreConfig->setLabel(QObject::tr("User Supplied Configuration"));
+     HostXIgnoreConfig->setValue(false);
+ #ifdef __MVAPP__
+-    HostXIgnoreConfig->setHelpText(QObject::tr("When this is checked, the system will use the configuration file provided by YOU.  Place the file you want to use in /data/home/mythtv/templates/xorg.user."));
++    HostXIgnoreConfig->setHelpText(QObject::tr("If checked, the system will use the configuration file provided by YOU. Place your configuration file in /data/home/mythtv/templates/xorg.user."));
+ #else
+-    HostXIgnoreConfig->setHelpText(QObject::tr("When this is checked, the system will use the configuration file provided by YOU.  Place the file you want to use in /home/mythtv/templates/xorg.user."));
++    HostXIgnoreConfig->setHelpText(QObject::tr("If checked, the system will use the configuration file provided by YOU. Place your configuration file in /data/home/mythtv/templates/xorg.user."));
+ #endif
+ 
+     Setting* Advancedxsettings = HostXIgnoreConfig;
diff --git a/abs/core/mythinstall/xorgsettings.h.patch b/abs/core/mythinstall/xorgsettings.h.patch
new file mode 100644
index 0000000..d774899
--- /dev/null
+++ b/abs/core/mythinstall/xorgsettings.h.patch
@@ -0,0 +1,11 @@
+--- xorgsettings.h.orig	2013-12-06 22:40:05.424359651 +0000
++++ xorgsettings.h	2013-12-06 22:40:31.537678172 +0000
+@@ -105,7 +105,7 @@
+ //Used in the simple config
+ {
+     HostComboBox *gc = new HostComboBox("HostXres");
+-    gc->setLabel(QObject::tr("Initial resolution"));
++    gc->setLabel(QObject::tr("Initial Resolution"));
+     gc->addSelection("Auto") ;
+     gc->setHelpText(QObject::tr(""));
+     system ("print_xorg_res.py");
diff --git a/abs/core/mythtv/stable-0.27/mythtv/menu-xml/HOST_SETTINGS.xml b/abs/core/mythtv/stable-0.27/mythtv/menu-xml/HOST_SETTINGS.xml
index 283a9ea..2577ed0 100644
--- a/abs/core/mythtv/stable-0.27/mythtv/menu-xml/HOST_SETTINGS.xml
+++ b/abs/core/mythtv/stable-0.27/mythtv/menu-xml/HOST_SETTINGS.xml
@@ -42,6 +42,13 @@
    </button>
 
    <button>
+        <type>MV_SYSTEM_SETUP_MENU</type>
+        <text>Host</text>
+        <description>Manage LinHES system type, pointer size &amp; MythWelcome</description>
+        <action>EXEC  mythinstall -s hostype </action>
+   </button>
+
+   <button>
         <type>MV_MISC_SETUP_MENU</type>
         <text>Miscellanous</text>
         <description>Set timezone, shortcuts &amp; auto updates</description>
@@ -91,13 +98,6 @@
    </button>
 
    <button>
-        <type>MV_SYSTEM_SETUP_MENU</type>
-        <text>System Type</text>
-        <description>Manage LinHES system type, pointer size &amp; MythWelcome</description>
-        <action>EXEC  mythinstall -s hostype </action>
-   </button>
-
-   <button>
         <type>MV_USER_SETUP_MENU</type>
         <text>User Accounts</text>
         <description>Manage Users on the LinHES system</description>
-- 
cgit v0.12

