mirror of
https://github.com/redstrate/Astra.git
synced 2025-04-20 19:57:45 +00:00
Introduce utility functions to read/write version files
This commit is contained in:
parent
6288971967
commit
53603f4032
5 changed files with 28 additions and 36 deletions
|
@ -13,4 +13,6 @@ QString toWindowsPath(const QDir &dir);
|
||||||
void printRequest(const QString &type, const QNetworkRequest &request);
|
void printRequest(const QString &type, const QNetworkRequest &request);
|
||||||
void createPathIfNeeded(const QDir &dir);
|
void createPathIfNeeded(const QDir &dir);
|
||||||
void setSSL(QNetworkRequest &request);
|
void setSSL(QNetworkRequest &request);
|
||||||
|
QString readVersion(const QString &path);
|
||||||
|
void writeVersion(const QString &path, const QString &version);
|
||||||
}
|
}
|
|
@ -99,10 +99,7 @@ QCoro::Task<bool> AssetUpdater::checkRemoteDxvkVersion()
|
||||||
QString localDxvkVersion;
|
QString localDxvkVersion;
|
||||||
const QString dxvkVer = m_dxvkDir.absoluteFilePath(QStringLiteral("dxvk.ver"));
|
const QString dxvkVer = m_dxvkDir.absoluteFilePath(QStringLiteral("dxvk.ver"));
|
||||||
if (QFile::exists(dxvkVer)) {
|
if (QFile::exists(dxvkVer)) {
|
||||||
QFile wineJson(dxvkVer);
|
localDxvkVersion = Utility::readVersion(dxvkVer);
|
||||||
wineJson.open(QFile::ReadOnly | QFile::Text);
|
|
||||||
|
|
||||||
localDxvkVersion = QString::fromUtf8(wineJson.readAll());
|
|
||||||
qInfo(ASTRA_LOG) << "Local DXVK version:" << localDxvkVersion;
|
qInfo(ASTRA_LOG) << "Local DXVK version:" << localDxvkVersion;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -222,10 +219,7 @@ QCoro::Task<bool> AssetUpdater::installCompatibilityTool()
|
||||||
|
|
||||||
archive.close();
|
archive.close();
|
||||||
|
|
||||||
QFile verFile(m_wineDir.absoluteFilePath(QStringLiteral("wine.ver")));
|
Utility::writeVersion(m_wineDir.absoluteFilePath(QStringLiteral("wine.ver")), m_remoteCompatibilityToolVersion);
|
||||||
verFile.open(QIODevice::WriteOnly | QIODevice::Text);
|
|
||||||
verFile.write(m_remoteCompatibilityToolVersion.toUtf8());
|
|
||||||
verFile.close();
|
|
||||||
|
|
||||||
m_profile.setCompatibilityToolVersion(m_remoteCompatibilityToolVersion);
|
m_profile.setCompatibilityToolVersion(m_remoteCompatibilityToolVersion);
|
||||||
|
|
||||||
|
@ -262,10 +256,7 @@ QCoro::Task<bool> AssetUpdater::installDxvkTool()
|
||||||
|
|
||||||
archive.close();
|
archive.close();
|
||||||
|
|
||||||
QFile verFile(m_dxvkDir.absoluteFilePath(QStringLiteral("dxvk.ver")));
|
Utility::writeVersion(m_dxvkDir.absoluteFilePath(QStringLiteral("dxvk.ver")), m_remoteDxvkToolVersion);
|
||||||
verFile.open(QIODevice::WriteOnly | QIODevice::Text);
|
|
||||||
verFile.write(m_remoteDxvkToolVersion.toUtf8());
|
|
||||||
verFile.close();
|
|
||||||
|
|
||||||
co_return true;
|
co_return true;
|
||||||
}
|
}
|
||||||
|
@ -306,10 +297,7 @@ QCoro::Task<bool> AssetUpdater::installDalamudAssets()
|
||||||
|
|
||||||
m_profile.setDalamudAssetVersion(m_remoteDalamudAssetVersion);
|
m_profile.setDalamudAssetVersion(m_remoteDalamudAssetVersion);
|
||||||
|
|
||||||
QFile file(m_dalamudAssetDir.absoluteFilePath(QStringLiteral("asset.ver")));
|
Utility::writeVersion(m_dalamudAssetDir.absoluteFilePath(QStringLiteral("asset.ver")), QString::number(m_remoteDalamudAssetVersion));
|
||||||
file.open(QIODevice::WriteOnly | QIODevice::Text);
|
|
||||||
file.write(QString::number(m_remoteDalamudAssetVersion).toUtf8());
|
|
||||||
file.close();
|
|
||||||
|
|
||||||
co_return true;
|
co_return true;
|
||||||
}
|
}
|
||||||
|
@ -387,10 +375,7 @@ QCoro::Task<bool> AssetUpdater::installRuntime()
|
||||||
|
|
||||||
co_return false;
|
co_return false;
|
||||||
} else {
|
} else {
|
||||||
QFile file(m_dalamudRuntimeDir.absoluteFilePath(QStringLiteral("runtime.ver")));
|
Utility::writeVersion(m_dalamudRuntimeDir.absoluteFilePath(QStringLiteral("runtime.ver")), m_remoteRuntimeVersion);
|
||||||
file.open(QIODevice::WriteOnly | QIODevice::Text);
|
|
||||||
file.write(m_remoteRuntimeVersion.toUtf8());
|
|
||||||
file.close();
|
|
||||||
|
|
||||||
co_return true;
|
co_return true;
|
||||||
}
|
}
|
||||||
|
|
|
@ -200,10 +200,7 @@ void Patcher::processPatch(const QueuedPatch &patch)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
QFile verFile(verFilePath);
|
Utility::writeVersion(verFilePath, patch.version);
|
||||||
verFile.open(QIODevice::WriteOnly | QIODevice::Text);
|
|
||||||
verFile.write(patch.version.toUtf8());
|
|
||||||
verFile.close();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void Patcher::setupDirectories()
|
void Patcher::setupDirectories()
|
||||||
|
|
|
@ -12,6 +12,7 @@
|
||||||
#include "astra_log.h"
|
#include "astra_log.h"
|
||||||
#include "launchercore.h"
|
#include "launchercore.h"
|
||||||
#include "profileconfig.h"
|
#include "profileconfig.h"
|
||||||
|
#include "utility.h"
|
||||||
|
|
||||||
using namespace Qt::StringLiterals;
|
using namespace Qt::StringLiterals;
|
||||||
|
|
||||||
|
@ -35,10 +36,7 @@ void Profile::readDalamudInfo()
|
||||||
if (wineDir.exists()) {
|
if (wineDir.exists()) {
|
||||||
const QString wineVer = wineDir.absoluteFilePath(QStringLiteral("wine.ver"));
|
const QString wineVer = wineDir.absoluteFilePath(QStringLiteral("wine.ver"));
|
||||||
if (QFile::exists(wineVer)) {
|
if (QFile::exists(wineVer)) {
|
||||||
QFile wineJson(wineVer);
|
m_compatibilityToolVersion = Utility::readVersion(wineVer);
|
||||||
wineJson.open(QFile::ReadOnly | QFile::Text);
|
|
||||||
|
|
||||||
m_compatibilityToolVersion = QString::fromUtf8(wineJson.readAll());
|
|
||||||
qInfo(ASTRA_LOG) << "Compatibility tool version:" << m_compatibilityToolVersion;
|
qInfo(ASTRA_LOG) << "Compatibility tool version:" << m_compatibilityToolVersion;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -69,19 +67,13 @@ void Profile::readDalamudInfo()
|
||||||
|
|
||||||
const QString dalamudAssetsVer = dalamudAssetsDir.absoluteFilePath(QStringLiteral("asset.ver"));
|
const QString dalamudAssetsVer = dalamudAssetsDir.absoluteFilePath(QStringLiteral("asset.ver"));
|
||||||
if (QFile::exists(dalamudAssetsVer)) {
|
if (QFile::exists(dalamudAssetsVer)) {
|
||||||
QFile assetJson(dalamudAssetsVer);
|
m_dalamudAssetVersion = Utility::readVersion(dalamudAssetsVer).toInt();
|
||||||
assetJson.open(QFile::ReadOnly | QFile::Text);
|
|
||||||
|
|
||||||
m_dalamudAssetVersion = QString::fromUtf8(assetJson.readAll()).toInt();
|
|
||||||
qInfo(ASTRA_LOG) << "Dalamud asset version:" << m_dalamudVersion;
|
qInfo(ASTRA_LOG) << "Dalamud asset version:" << m_dalamudVersion;
|
||||||
}
|
}
|
||||||
|
|
||||||
const QString dalamudRuntimeVer = dalamudRuntimeDir.absoluteFilePath(QStringLiteral("runtime.ver"));
|
const QString dalamudRuntimeVer = dalamudRuntimeDir.absoluteFilePath(QStringLiteral("runtime.ver"));
|
||||||
if (QFile::exists(dalamudRuntimeVer)) {
|
if (QFile::exists(dalamudRuntimeVer)) {
|
||||||
QFile runtimeVer(dalamudRuntimeVer);
|
m_runtimeVersion = Utility::readVersion(dalamudRuntimeVer);
|
||||||
runtimeVer.open(QFile::ReadOnly | QFile::Text);
|
|
||||||
|
|
||||||
m_runtimeVersion = QString::fromUtf8(runtimeVer.readAll());
|
|
||||||
qInfo(ASTRA_LOG) << "Dalamud runtime version:" << m_dalamudVersion;
|
qInfo(ASTRA_LOG) << "Dalamud runtime version:" << m_dalamudVersion;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -45,4 +45,20 @@ void Utility::setSSL(QNetworkRequest &request)
|
||||||
config.setPeerVerifyMode(QSslSocket::VerifyNone);
|
config.setPeerVerifyMode(QSslSocket::VerifyNone);
|
||||||
|
|
||||||
request.setSslConfiguration(config);
|
request.setSslConfiguration(config);
|
||||||
|
}
|
||||||
|
|
||||||
|
QString Utility::readVersion(const QString &path)
|
||||||
|
{
|
||||||
|
QFile file(path);
|
||||||
|
file.open(QFile::ReadOnly | QFile::Text);
|
||||||
|
|
||||||
|
return QString::fromUtf8(file.readAll());
|
||||||
|
}
|
||||||
|
|
||||||
|
void Utility::writeVersion(const QString &path, const QString &version)
|
||||||
|
{
|
||||||
|
QFile verFile(path);
|
||||||
|
verFile.open(QIODevice::WriteOnly | QIODevice::Text);
|
||||||
|
verFile.write(version.toUtf8());
|
||||||
|
verFile.close();
|
||||||
}
|
}
|
Loading…
Add table
Reference in a new issue