int main( int argc, char ** argv ) { //Check for root permissions if( getuid() != 0){ qDebug() << "pc-softwaremanager must be started as root!"; return system("pc-su pc-softwaremanager"); } qDebug() << "Starting Up the AppCafe"; PCSingleApplication a(argc, argv); if ( !a.isPrimaryProcess() ){ qDebug() << " - an instance of the AppCafe is already running"; return 0; } QTranslator translator; QLocale mylocale; QString langCode = mylocale.name(); if ( ! QFile::exists( PREFIX + "/share/pcbsd/i18n/SoftwareManager_" + langCode + ".qm" ) ) langCode.truncate(langCode.indexOf("_")); translator.load( QString("SoftwareManager_") + langCode, PREFIX + "/share/pcbsd/i18n/" ); a.installTranslator( &translator ); qDebug() << "Locale:" << langCode; QTextCodec::setCodecForLocale( QTextCodec::codecForName("UTF-8") ); //Force Utf-8 compliance //Check for the old PBI system, and prompt to migrate if needed QDir dir("/var/db/pbi/installed"); if( !dir.entryList(QDir::Dirs | QDir::NoDotAndDotDot).isEmpty() ){ QPixmap pix(":/icons/splash.png"); QSplashScreen SS(0, pix, Qt::WindowStaysOnTopHint); SS.showMessage(QObject::tr("Updating Index"), Qt::AlignHCenter | Qt::AlignBottom); SS.show(); a.processEvents(); a.processEvents(); if ( QProcess::execute("pbi_updateindex") != 0 ) { QMessageBox::critical( 0, QObject::tr("Failed to update index!"), QObject::tr("Failed to contact the index server. Please check your network connection before trying to install / update applications.")); } //Still on the old system - prompt to migrate to PBI-NG MigrateUI w; w.show(); SS.finish(&w); QObject::connect(&a, SIGNAL(InputsAvailable(QStringList)), &w, SLOT(slotSingleInstance()) ); a.connect( &a, SIGNAL( lastWindowClosed() ), &a, SLOT( quit() ) ); return a.exec(); }else{ //Already on PBI-NG MainUI w; w.ProgramInit(); if(argc >= 3 && QString(argv[1])=="-jail"){ QString jailname = argv[2]; qDebug() << " - Loading Jail:" << jailname; w.showJail( jailname ); } w.show(); QObject::connect(&a, SIGNAL(InputsAvailable(QStringList)), &w, SLOT(slotSingleInstance()) ); a.connect( &a, SIGNAL( lastWindowClosed() ), &a, SLOT( quit() ) ); return a.exec(); } }
int main(int argc, char ** argv) { bool CLIdone = false; for(int i=1; i<argc; i++){ //skip the first arg (app binary) if(QString(argv[i]) == "--reset-monitors"){ RRSettings::ApplyPrevious(); CLIdone = true; break; } } if(CLIdone){ return 0; } LTHEME::LoadCustomEnvSettings(); LSingleApplication a(argc, argv, "lumina-xconfig"); //loads translations inside constructor if( !a.isPrimaryProcess()){ return 0; } //qDebug() << "Loaded QApplication"; a.setApplicationName("Lumina Screen Configuration"); LuminaThemeEngine themes(&a); //Start the UI MainUI w; QObject::connect(&a, SIGNAL(InputsAvailable(QStringList)), &w, SLOT(slotSingleInstance()) ); QObject::connect(&themes, SIGNAL(updateIcons()), &w, SLOT(loadIcons()) ); w.show(); int retCode = a.exec(); return retCode; }
int main(int argc, char *argv[]) { LTHEME::LoadCustomEnvSettings(); LSingleApplication a(argc, argv, "lumina-terminal"); if( !a.isPrimaryProcess() ){ return 0; } //poked the current process instead //First make sure a system tray is available /*qDebug() << "Checking for system tray"; bool ready = false; for(int i=0; i<60 && !ready; i++){ ready = QSystemTrayIcon::isSystemTrayAvailable(); if(!ready){ //Pause for 5 seconds sleep(5); //don't worry about stopping event handling - nothing running yet } } if(!ready){ qDebug() << "Could not find any available system tray after 5 minutes: exiting...."; return 1; }*/ //Now go ahead and setup the app LuminaThemeEngine theme(&a); QApplication::setQuitOnLastWindowClosed(false); //Now start the tray icon TrayIcon tray; QObject::connect(&a, SIGNAL(InputsAvailable(QStringList)), &tray, SLOT(slotSingleInstance(QStringList)) ); QObject::connect(&theme, SIGNAL(updateIcons()), &tray, SLOT(updateIcons()) ); tray.parseInputs(a.inputlist); tray.show(); return a.exec(); }
int main( int argc, char ** argv ) { PCSingleApplication a(argc, argv); if (!a.isPrimaryProcess()){ return 0; } QTranslator translator; QLocale mylocale; QString langCode = mylocale.name(); if ( ! QFile::exists(PREFIX + "/share/pcbsd/i18n/NetworkManager_" + langCode + ".qm" ) ) langCode.truncate(langCode.indexOf("_")); translator.load( QString("NetworkManager_") + langCode, PREFIX + "/share/pcbsd/i18n/" ); a.installTranslator( &translator ); qDebug() << "Locale:" << langCode; NetworkMan w; w.Init(); // Are we running via the system-installer? if ( argc == 2 ) { QString tmp = argv[1]; if ( tmp == "-installer" ) w.setInstallerMode(); } w.show(); a.connect( &a, SIGNAL( InputsAvailable(QStringList) ), &w, SLOT( slotSingleInstance() ) ); a.connect( &a, SIGNAL( lastWindowClosed() ), &a, SLOT( quit() ) ); return a.exec(); }
int main(int argc, char ** argv) { PCSingleApplication a(argc, argv); if(!a.isPrimaryProcess()){ return 0; } //Check for root if (0 != getuid()) { QMessageBox msg; msg.setText(QObject::tr("This application requires administrator privileges for operation.")); msg.exec(); exit(2); } QTranslator translator; QLocale mylocale; QString langCode = mylocale.name(); if ( ! QFile::exists(PREFIX + "/share/pcbsd/i18n/pc-bootconfig_" + langCode + ".qm" ) ) langCode.truncate(langCode.indexOf("_")); translator.load( QString("pc-bootconfig_") + langCode, PREFIX + "/share/pcbsd/i18n/" ); a.installTranslator( &translator ); qDebug() << "Locale:" << langCode; QTextCodec::setCodecForLocale( QTextCodec::codecForName("UTF-8") ); //Force Utf-8 compliance mainUI w; QObject::connect(&a, SIGNAL(InputsAvailable(QStringList)), &w, SLOT(slotSingleInstance()) ); w.show(); int retCode = a.exec(); return retCode; }
int main(int argc, char ** argv) { //qDebug() << "Create Single Application"; LSingleApplication a(argc, argv, "lumina-info"); //loads translations inside constructor if( !a.isPrimaryProcess()){ return 0; } //qDebug() << "Set Application Name"; a.setApplicationName("About Lumina-DE"); //qDebug() << "Load Theme Engine"; LuminaThemeEngine themes(&a); //qDebug() << "Start the UI"; //Start the UI MainUI w; QObject::connect(&a, SIGNAL(InputsAvailable(QStringList)), &w, SLOT(slotSingleInstance()) ); w.show(); int retCode = a.exec(); return retCode; }
int main( int argc, char ** argv ) { PCSingleApplication a(argc, argv); if(!a.isPrimaryProcess()){ return 0; } //Check whether running as root if( getuid() == 0){ qDebug() << "Life-Preserver Tray must not be started as root!"; return 1; } bool ready = false; for(int i=0; i<60 && !ready; i++){ ready = QSystemTrayIcon::isSystemTrayAvailable(); if(!ready){ //Pause for 5 seconds sleep(5); //don't worry about stopping event handling - nothing running yet } } if(!ready){ qDebug() << "Could not find any available system tray after 5 minutes: exiting...."; return 1; } QTranslator translator; QLocale mylocale; QString langCode = mylocale.name(); if ( ! QFile::exists( PREFIX + "/share/lifePreserver/i18n/LifePreserverTray_" + langCode + ".qm" ) ) langCode.truncate(langCode.indexOf("_")); translator.load( QString("LifePreserverTray_") + langCode, PREFIX + "/share/lifePreserver/i18n/" ); a.installTranslator( &translator ); qDebug() << "Locale:" << langCode; QTextCodec::setCodecForLocale( QTextCodec::codecForName("UTF-8") ); //Force Utf-8 compliance LPTray *w = new LPTray(); w->show(); QObject::connect( &a, SIGNAL( InputsAvailable(QStringList) ), w, SLOT( slotSingleInstance() ) ); int ret = -1; while( w->isVisible() ){ //Make sure the application does not exit while the tray is still open ret = a.exec(); } return ret; }
int main( int argc, char ** argv ) { PCSingleApplication a(argc, argv); if ( !a.isPrimaryProcess() ){ return 0; } QTranslator translator; QLocale mylocale; QString langCode = mylocale.name(); if ( ! QFile::exists( "/usr/local/share/pcbsd/i18n/Warden_" + langCode + ".qm" ) ) langCode.truncate(langCode.indexOf("_")); translator.load( QString("Warden_") + langCode, "/usr/local/share/pcbsd/i18n/" ); a.installTranslator( &translator ); qDebug() << "Locale:" << langCode; QTextCodec::setCodecForLocale( QTextCodec::codecForName("UTF-8") ); //Force Utf-8 compliance dialogWarden *w = new dialogWarden(); w->programInit(); w->show(); QObject::connect(&a, SIGNAL(InputsAvailable(QStringList)), w, SLOT(slotSingleInstance()) ); a.connect( &a, SIGNAL( lastWindowClosed() ), &a, SLOT( quit() ) ); return a.exec(); }