summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBritney Fransen <brfransen@gmail.com>2014-10-01 15:12:36 (GMT)
committerBritney Fransen <brfransen@gmail.com>2014-10-01 15:12:36 (GMT)
commitf2c351dcd00ccb5c8e1e896a96d5f224f8385164 (patch)
treef69a7615594963a477575ac37a15ec80a4d3f794
parent38f5e9792089593ffefef6155b569b302657a664 (diff)
downloadlinhes_pkgbuild-f2c351dcd00ccb5c8e1e896a96d5f224f8385164.zip
linhes_pkgbuild-f2c351dcd00ccb5c8e1e896a96d5f224f8385164.tar.gz
linhes_pkgbuild-f2c351dcd00ccb5c8e1e896a96d5f224f8385164.tar.bz2
mythinstall: check pacman to see if db agrees with installed programs
closes #976
-rwxr-xr-xabs/core/mythinstall/MythVantage-app/mythinstall/main.cpp92
-rw-r--r--abs/core/mythinstall/PKGBUILD2
2 files changed, 90 insertions, 4 deletions
diff --git a/abs/core/mythinstall/MythVantage-app/mythinstall/main.cpp b/abs/core/mythinstall/MythVantage-app/mythinstall/main.cpp
index fa16918..bac24ad 100755
--- a/abs/core/mythinstall/MythVantage-app/mythinstall/main.cpp
+++ b/abs/core/mythinstall/MythVantage-app/mythinstall/main.cpp
@@ -100,8 +100,8 @@ int main(int argc, char **argv)
QString question;
- int FRONTEND_EXIT_NO_MYTHCONTEXT = 1;
- int FRONTEND_EXIT_INVALID_CMDLINE =1 ;
+// int FRONTEND_EXIT_NO_MYTHCONTEXT = 1;
+// int FRONTEND_EXIT_INVALID_CMDLINE =1 ;
QApplication a(argc, argv);
QCoreApplication::setApplicationName("mythinstall");
@@ -152,7 +152,7 @@ int main(int argc, char **argv)
LOG(VB_GENERAL, LOG_INFO, QString("mythinstall: Screen stuff"));
QString tmpArg = (cmdline.toString("screen")) ;
QStringList pairs = QStringList::split(",", tmpArg);
- for (unsigned int index = 0; index < pairs.size(); ++index)
+ for (int index = 0; index < pairs.size(); ++index)
{
if ( pairs[index] == "network" )
{
@@ -305,6 +305,92 @@ int main(int argc, char **argv)
system("cp -f /etc/systemconfig /tmp/systemconfig.bak");
QString olddb = gCoreContext->GetSetting("HostMysqlserver");
QString oldhostype = gCoreContext->GetSetting("HostSystemType");
+
+ //sync db with pacman
+ if (bShowplugins || bShowsoftware)
+ {
+ system("pacman -Q > /tmp/pacman_installed");
+ QString progPacmanNamesArray[] = { "mythappletrailers",
+ "mytharchive",
+ "mythbrowser",
+ "mythgallery",
+ "mythgame",
+ "dolphin-emu",
+ "fceux",
+ "sdlmame",
+ "mednafen",
+ "mupen64plus-svn",
+ "romdb",
+ "snes9x",
+ "xe",
+ "mythmusic",
+ "mythnetvision",
+ "mythnews",
+ "libdvdcss",
+ "mythweather",
+ "mythzoneminder",
+ "huludesktop",
+ "miro",
+ "xbmc",
+ "web-on-linhes",
+ "foldingathome"};
+ QString progDBNamesArray[] = { "Hostpluginmythappletrailers",
+ "Hostpluginmytharchive",
+ "Hostpluginmythbrowser",
+ "Hostpluginmythgallery",
+ "Hostpluginmythgame",
+ "HostpluginmythgameDolphin",
+ "Hostpluginmythgamefceux",
+ "HostpluginmythgameMame",
+ "HostpluginmythgameMednafen",
+ "Hostpluginmythgamemupen64",
+ "HostpluginmythgameROMDB",
+ "Hostpluginmythgamesnes9x",
+ "HostpluginmythgameXe",
+ "Hostpluginmythmusic",
+ "Hostpluginmythnetvision",
+ "Hostpluginmythnews",
+ "Hostpluginmythvideo_dvdcss",
+ "Hostpluginmythweather",
+ "Hostpluginmythzoneminder",
+ "HostHuluDesktop",
+ "HostMiro",
+ "HostXBMC",
+ "Hostwebonlinhes",
+ "Hostfoldingathome"};
+ char cmd[200];
+ int grepstatus;
+ int pacmanNamesArraySize = sizeof(progPacmanNamesArray) / sizeof(progPacmanNamesArray[0]);
+
+ //for loop to run though progPacmanNamesArray
+ for(int i = 0; i < pacmanNamesArraySize; i++)
+ {
+ QByteArray PacName = progPacmanNamesArray[i].toLocal8Bit();
+ const char *PacNameChar = PacName.data();
+ sprintf(cmd, "grep -q '%s ' /tmp/pacman_installed", PacNameChar);
+
+ //LOG(VB_GENERAL, LOG_INFO, QString(progPacmanNamesArray[i]));
+ //LOG(VB_GENERAL, LOG_INFO, QString(progDBNamesArray[i]));
+ QString currDBValue = gCoreContext->GetSetting(progDBNamesArray[i]);
+ //LOG(VB_GENERAL, LOG_INFO, QString(currDBValue));
+ grepstatus = system(cmd);
+ if ( grepstatus != 0 && currDBValue == "1" )
+ {
+ //LOG(VB_GENERAL, LOG_INFO, QString("pkg NOT found and db 1"));
+ gCoreContext->SaveSetting(progDBNamesArray[i],"0" );
+ runconfig = true;
+ }
+ else if ( grepstatus == 0 && currDBValue == "0" )
+ {
+ //LOG(VB_GENERAL, LOG_INFO, QString("pkg found and db 0"));
+ gCoreContext->SaveSetting(progDBNamesArray[i],"1" );
+ runconfig = true;
+ }
+ }
+ system("rm -f /tmp/pacman_installed");
+ }
+ //DONE sync db with pacman
+
runsettings(false,bShowNetwork,bShowHostype,bShowMisc,bShowshutdown,bShowadvanced,bShowsound,bShowadvancedX,bShowAccesscontrol,bShowplugins,bShowsoftware,bShowuser,bShowwebuser,bShowddns,bShowinfrared,bShowscreensaver,bShowsupplemental,bShowremotes_only,bShowvnc,bShowFileshare);
QString newdb = gCoreContext->GetSetting("HostMysqlserver");
QString newhostype = gCoreContext->GetSetting("HostSystemType");
diff --git a/abs/core/mythinstall/PKGBUILD b/abs/core/mythinstall/PKGBUILD
index ada24b9..b741439 100644
--- a/abs/core/mythinstall/PKGBUILD
+++ b/abs/core/mythinstall/PKGBUILD
@@ -1,7 +1,7 @@
# Maintainer: Jams
pkgname=mythinstall
pkgver=8.2
-pkgrel=1
+pkgrel=2
pkgdesc="LinHES installer/systemconfig GUI."
arch=('i686' 'x86_64')
depends=('mythtv>=0.27')