Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 10 additions & 6 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -152,13 +152,18 @@ jobs:
- name: Build Thunder Hub
run: |
qbs install --all-products config:release profile:xcode-macosx-arm64
7z a -t7z ThunderEngine-macosx-arm64.7z release/install-root

- name: Create DMG
uses: L-Super/create-dmg-actions@v1.0.3
with:
dmg_name: 'ThunderHub'
src_dir: 'release/install-root/hub/ThunderHub.app'

- name: Upload Thunder Hub
uses: actions/upload-artifact@v4
with:
name: ThunderEngine-macosx-arm64.7z
path: ThunderEngine-macosx-arm64.7z
name: ThunderHub.dmg
path: ThunderHub.dmg

github:
name: Upload to GitHub releases
Expand Down Expand Up @@ -212,6 +217,5 @@ jobs:
uses: actions/upload-release-asset@v1
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ThunderEngine-macosx-arm64.7z
asset_name: ThunderEngine-macosx-arm64.7z
asset_content_type: application/x-7z-compressed
asset_path: ThunderHub.dmg
asset_name: ThunderHub.dmg
2 changes: 1 addition & 1 deletion build/windows/setup.iss
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
#define MyAppName "Thunder Hub"
#define MyAppVersion "2026.1"
#define MyAppURL "https://thunderengine.org/"
#define MyAppExeName "Hub.exe"
#define MyAppExeName "ThunderHub.exe"

[Setup]
; NOTE: The value of AppId uniquely identifies this application. Do not use the same AppId value in installers for other applications.
Expand Down
2 changes: 1 addition & 1 deletion hub/install/downloader.h
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@

#include "extractor.h"

class Sdk;
struct Sdk;

class QFile;
class QNetworkAccessManager;
Expand Down
29 changes: 19 additions & 10 deletions hub/install/installmodel.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
#include <QRegularExpression>

#include "downloader.h"
#include "settings.h"

namespace {
const char *gInstalls("Installs");
Expand All @@ -27,23 +28,24 @@ namespace {
const char *gAssets("assets");
const char *gUrl("browser_download_url");

const char *gWindows("windows");
const char *gLinux("linux");
const char *gMacOSX("macosx");

const char *gName("name");
const char *gSize("size");
}

void Sdk::checkInstalled() {
static const QStringList ignoreList = {".", "..", "include", "resources"};
static const QMap<QString, QString> aliases = {
{"emscripten", "webgl"}
{"emscripten", "webgl"},
{"macos", "macosx"}
};

installed = QFileInfo::exists(path);
root = QFileInfo(path).path() + "/../../../";

#ifdef Q_OS_MACOS
root += "../../../";
#endif

QDirIterator it(root);
while(it.hasNext()) {
QString name(QFileInfo(it.next()).fileName());
Expand Down Expand Up @@ -190,15 +192,15 @@ void InstallModel::onUpdateCheckFinished() {
}

#ifdef Q_OS_WINDOWS
if(m.platform == gWindows) {
if(m.platform == "windows") {
m.optional = false;
}
#elif defined(Q_OS_LINUX)
if(m.platform == gLinux) {
if(m.platform == "linux") {
m.optional = false;
}
#elif defined(Q_OS_MACOS)
if(m.platform == gMacOSX) {
if(m.platform == "macosx") {
m.optional = false;
}
#endif
Expand Down Expand Up @@ -298,8 +300,15 @@ void InstallModel::locateSdk() {
name += ".exe";
#endif

QString path = QFileDialog::getOpenFileName(nullptr, tr("Locate the ") + EDITOR_NAME, "/", name);
#ifdef Q_OS_MACOS
name += ".app";
#endif

QString path = QFileDialog::getOpenFileName(nullptr, tr("Locate the ") + EDITOR_NAME, Settings::instance()->sdkDir(), name);
if(!path.isEmpty()) {
#ifdef Q_OS_MACOS
path += "/Contents/MacOS/WorldEditor";
#endif
QFileInfo info(path);

QProcess probe(this);
Expand Down Expand Up @@ -391,7 +400,7 @@ void InstallModel::explorer(const QString &version) {

#if defined(Q_OS_WIN)
QProcess::startDetached("explorer.exe", { "/select,", QDir::toNativeSeparators(path) });
#elif defined(Q_OS_MAC)
#elif defined(Q_OS_MACOS)
QStringList scriptArgs;
scriptArgs << QLatin1String("-e")
<< QString::fromLatin1("tell application \"Finder\" to reveal POSIX file \"%1\"")
Expand Down
2 changes: 1 addition & 1 deletion thunder-hub.qbs
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ Project {
id: thunder

property string COMPANY_NAME: "ThunderEngine"
property string PRODUCT_NAME: "Hub"
property string PRODUCT_NAME: "ThunderHub"
property string PRODUCT_VERSION: "2026.1"
property string EDITOR_NAME: "WorldEditor"

Expand Down