Implement basic .msi support in updater
authorDominik Schmidt <dev@dominik-schmidt.de>
Tue, 12 Jun 2018 10:39:05 +0000 (12:39 +0200)
committerCamila (Rebase PR Action) <hello@camila.codes>
Tue, 24 Nov 2020 18:22:33 +0000 (18:22 +0000)
src/gui/updater/ocupdater.cpp
src/gui/updater/updater.cpp

index 4a84b3fa5ec453c3573b975c8a73bc90b64df562..78e7021eba5b94a7e833c18f28bbbd2edbad5b48 100644 (file)
@@ -192,8 +192,13 @@ void OCUpdater::slotStartInstaller()
     settings.setValue(autoUpdateAttemptedC, true);
     settings.sync();
     qCInfo(lcUpdater) << "Running updater" << updateFile;
-    QProcess::startDetached(updateFile, QStringList() << "/S"
-                                                      << "/launch");
+
+    if(updateFile.endsWith(".exe")) {
+        QProcess::startDetached(updateFile, QStringList() << "/S"
+                                                        << "/launch");
+    } else {
+        QDesktopServices::openUrl(QUrl("file:///" + updateFile, QUrl::TolerantMode));
+    }
 }
 
 void OCUpdater::checkForUpdate()
index 07f65ee003ef020c7189c38746d4b07d54372200..61b5b6b603c6b8df37d64ad0a8510b5d8803c112 100644 (file)
@@ -58,6 +58,10 @@ QUrl Updater::updateUrl()
     urlQuery.addQueryItem(QLatin1String("sparkle"), QLatin1String("true"));
 #endif
 
+#if defined(Q_OS_WIN)
+    urlQuery.addQueryItem(QLatin1String("msi"), QLatin1String("true"));
+#endif
+
     updateBaseUrl.setQuery(urlQuery);
 
     return updateBaseUrl;