18 #include "LomiriApplication.h"
19 #include "qmldebuggerutils.h"
20 #include "UnixSignalHandler.h"
23 #include <QTranslator>
24 #include <QLibraryInfo>
28 #include <systemd/sd-daemon.h>
30 int main(
int argc,
const char *argv[])
32 qSetMessagePattern(
"[%{time yyyy-MM-dd:hh:mm:ss.zzz}] %{if-category}%{category}: %{endif}%{message}");
34 bool isMirServer = qgetenv(
"QT_QPA_PLATFORM") ==
"mirserver";
35 if (qgetenv(
"QT_QPA_PLATFORM") ==
"lomirimirclient" || qgetenv(
"QT_QPA_PLATFORM") ==
"wayland") {
36 setenv(
"QT_QPA_PLATFORM",
"mirserver", 1 );
39 qInfo(
"Using mirserver qt platform");
43 if (!qEnvironmentVariableIsSet(
"MIR_SERVER_HOST_SOCKET")) {
44 qInfo(
"Not using nested server, using null mir cursor");
45 setenv(
"MIR_SERVER_CURSOR",
"null", 1);
48 if (enableQmlDebugger(argc, argv)) {
49 QQmlDebuggingEnabler qQmlEnableDebuggingHelper(
true);
52 auto *application =
new LomiriApplication(argc,
55 UnixSignalHandler signalHandler([]{
56 QGuiApplication::exit(0);
58 signalHandler.setupUnixSignalHandlers();
60 QTranslator qtTranslator;
61 if (qtTranslator.load(QLocale(), QStringLiteral(
"qt_"), qgetenv(
"SNAP"), QLibraryInfo::location(QLibraryInfo::TranslationsPath))) {
62 application->installTranslator(&qtTranslator);
68 QTimer::singleShot(0 , []() {
72 "STATUS=Lomiri is running and ready to receive connections...");
76 qunsetenv(
"NOTIFY_SOCKET");
79 int result = application->exec();
81 application->destroyResources();