aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--flake.lock16
-rw-r--r--flake.nix2
-rw-r--r--launcher/java/JavaUtils.cpp9
-rw-r--r--launcher/modplatform/flame/FlameCheckUpdate.cpp4
-rw-r--r--launcher/ui/dialogs/ModUpdateDialog.cpp13
-rw-r--r--launcher/ui/pages/instance/ExternalResourcesPage.ui2
-rw-r--r--launcher/ui/pages/instance/ModFolderPage.cpp15
-rw-r--r--nix/default.nix2
8 files changed, 35 insertions, 28 deletions
diff --git a/flake.lock b/flake.lock
index 120b11c5..bfc9ac6d 100644
--- a/flake.lock
+++ b/flake.lock
@@ -19,26 +19,26 @@
"libnbtplusplus": {
"flake": false,
"locked": {
- "lastModified": 1591558203,
- "narHash": "sha256-QgvNvaoFflCXEPCCFBCeZvYTpuiwScBG7EosUgFwFNQ=",
- "owner": "multimc",
+ "lastModified": 1650031308,
+ "narHash": "sha256-TvVOjkUobYJD9itQYueELJX3wmecvEdCbJ0FinW2mL4=",
+ "owner": "PolyMC",
"repo": "libnbtplusplus",
- "rev": "dc72a20b7efd304d12af2025223fad07b4b78464",
+ "rev": "2203af7eeb48c45398139b583615134efd8d407f",
"type": "github"
},
"original": {
- "owner": "multimc",
+ "owner": "PolyMC",
"repo": "libnbtplusplus",
"type": "github"
}
},
"nixpkgs": {
"locked": {
- "lastModified": 1654665288,
- "narHash": "sha256-7blJpfoZEu7GKb84uh3io/5eSJNdaagXD9d15P9iQMs=",
+ "lastModified": 1658119717,
+ "narHash": "sha256-4upOZIQQ7Bc4CprqnHsKnqYfw+arJeAuU+QcpjYBXW0=",
"owner": "nixos",
"repo": "nixpkgs",
- "rev": "43ecbe7840d155fa933ee8a500fb00dbbc651fc8",
+ "rev": "9eb60f25aff0d2218c848dd4574a0ab5e296cabe",
"type": "github"
},
"original": {
diff --git a/flake.nix b/flake.nix
index c2fdffda..51bc1fda 100644
--- a/flake.nix
+++ b/flake.nix
@@ -4,7 +4,7 @@
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable";
flake-compat = { url = "github:edolstra/flake-compat"; flake = false; };
- libnbtplusplus = { url = "github:multimc/libnbtplusplus"; flake = false; };
+ libnbtplusplus = { url = "github:PolyMC/libnbtplusplus"; flake = false; };
};
outputs = { self, nixpkgs, libnbtplusplus, ... }:
diff --git a/launcher/java/JavaUtils.cpp b/launcher/java/JavaUtils.cpp
index 749c9c88..e7013142 100644
--- a/launcher/java/JavaUtils.cpp
+++ b/launcher/java/JavaUtils.cpp
@@ -203,7 +203,7 @@ QList<JavaInstallPtr> JavaUtils::FindJavaFromRegistryKey(DWORD keyType, QString
// Read the current type version from the registry.
// This will be used to find any key that contains the JavaHome value.
- TCHAR subKeyName[255];
+ WCHAR subKeyName[255];
DWORD subKeyNameSize, numSubKeys, retCode;
// Get the number of subkeys
@@ -229,12 +229,11 @@ QList<JavaInstallPtr> JavaUtils::FindJavaFromRegistryKey(DWORD keyType, QString
KEY_READ | KEY_WOW64_64KEY, &newKey) == ERROR_SUCCESS)
{
// Read the JavaHome value to find where Java is installed.
- TCHAR *value = NULL;
DWORD valueSz = 0;
- if (RegQueryValueExW(newKey, keyJavaDir.toStdWString().c_str(), NULL, NULL, (BYTE *)value,
- &valueSz) == ERROR_MORE_DATA)
+ if (RegQueryValueExW(newKey, keyJavaDir.toStdWString().c_str(), NULL, NULL, NULL,
+ &valueSz) == ERROR_SUCCESS)
{
- value = new TCHAR[valueSz];
+ WCHAR *value = new WCHAR[valueSz];
RegQueryValueExW(newKey, keyJavaDir.toStdWString().c_str(), NULL, NULL, (BYTE *)value,
&valueSz);
diff --git a/launcher/modplatform/flame/FlameCheckUpdate.cpp b/launcher/modplatform/flame/FlameCheckUpdate.cpp
index 68a4589b..8dd3a846 100644
--- a/launcher/modplatform/flame/FlameCheckUpdate.cpp
+++ b/launcher/modplatform/flame/FlameCheckUpdate.cpp
@@ -123,7 +123,7 @@ void FlameCheckUpdate::executeTask()
continue;
}
- setStatus(tr("Getting API response from CurseForge for '%1'").arg(mod->name()));
+ setStatus(tr("Getting API response from CurseForge for '%1'...").arg(mod->name()));
setProgress(i++, m_mods.size());
auto latest_ver = api.getLatestVersion({ mod->metadata()->project_id.toString(), m_game_versions, m_loaders });
@@ -145,7 +145,7 @@ void FlameCheckUpdate::executeTask()
if (latest_ver.downloadUrl.isEmpty() && latest_ver.fileId != mod->metadata()->file_id) {
auto pack = getProjectInfo(latest_ver);
auto recover_url = QString("%1/download/%2").arg(pack.websiteUrl, latest_ver.fileId.toString());
- emit checkFailed(mod, tr("Mod has a new update available, but is opted-out on CurseForge"), recover_url);
+ emit checkFailed(mod, tr("Mod has a new update available, but is not downloadable using CurseForge."), recover_url);
continue;
}
diff --git a/launcher/ui/dialogs/ModUpdateDialog.cpp b/launcher/ui/dialogs/ModUpdateDialog.cpp
index b6e76ff1..d73c8ebb 100644
--- a/launcher/ui/dialogs/ModUpdateDialog.cpp
+++ b/launcher/ui/dialogs/ModUpdateDialog.cpp
@@ -158,8 +158,9 @@ void ModUpdateDialog::checkCandidates()
if (!reason.isEmpty())
text += tr("Reason: %1").arg(reason) + "<br>";
if (!recover_url.isEmpty())
- text += tr("Possible solution: ") + tr("Getting the latest version manually:") + "<br>" +
- QString("<a href='%1'>").arg(recover_url.toString()) + recover_url.toString() + "</a><br>";
+ //: %1 is the link to download it manually
+ text += tr("Possible solution: Getting the latest version manually:<br>%1<br>")
+ .arg(QString("<a href='%1'>%1</a>").arg(recover_url.toString()));
text += "<br>";
}
@@ -241,9 +242,9 @@ auto ModUpdateDialog::ensureMetadata() -> bool
}
ChooseProviderDialog chooser(this);
- chooser.setDescription(tr("This mod (%1) does not have a metadata yet. We need to create one in order to keep relevant "
- "information on how to update this "
- "mod. To do this, please select a mod provider from which we can search for updates for %1.")
+ chooser.setDescription(tr("The mod '%1' does not have a metadata yet. We need to generate it in order to track relevant "
+ "information on how to update this mod. "
+ "To do this, please select a mod provider which we can use to check for updates for this mod.")
.arg(candidate->name()));
auto confirmed = chooser.exec() == QDialog::DialogCode::Accepted;
@@ -330,7 +331,7 @@ void ModUpdateDialog::onMetadataFailed(Mod* mod, bool try_others, ModPlatform::P
m_second_try_metadata->addTask(task);
} else {
- QString reason{ tr("Didn't find a valid version on the selected mod provider(s)") };
+ QString reason{ tr("Couldn't find a valid version on the selected mod provider(s)") };
m_failed_metadata.append({mod, reason});
}
diff --git a/launcher/ui/pages/instance/ExternalResourcesPage.ui b/launcher/ui/pages/instance/ExternalResourcesPage.ui
index 8edcfd64..a13666b2 100644
--- a/launcher/ui/pages/instance/ExternalResourcesPage.ui
+++ b/launcher/ui/pages/instance/ExternalResourcesPage.ui
@@ -155,7 +155,7 @@
<string>Check for &amp;Updates</string>
</property>
<property name="toolTip">
- <string>"Tries to find / update all selected resources (all resources if none is selected)"</string>
+ <string>Try to check or update all selected resources (all resources if none are selected)</string>
</property>
</action>
</widget>
diff --git a/launcher/ui/pages/instance/ModFolderPage.cpp b/launcher/ui/pages/instance/ModFolderPage.cpp
index b190e51a..14e1f1e5 100644
--- a/launcher/ui/pages/instance/ModFolderPage.cpp
+++ b/launcher/ui/pages/instance/ModFolderPage.cpp
@@ -80,7 +80,7 @@ ModFolderPage::ModFolderPage(BaseInstance* inst, std::shared_ptr<ModFolderModel>
connect(ui->actionDownloadItem, &QAction::triggered, this, &ModFolderPage::installMods);
- ui->actionUpdateItem->setToolTip(tr("Tries to find / update all selected mods (all mods if none is selected)"));
+ ui->actionUpdateItem->setToolTip(tr("Try to check or update all selected mods (all mods if none are selected)"));
ui->actionsToolbar->insertActionAfter(ui->actionAddItem, ui->actionUpdateItem);
connect(ui->actionUpdateItem, &QAction::triggered, this, &ModFolderPage::updateMods);
@@ -190,10 +190,15 @@ void ModFolderPage::updateMods()
return;
}
if (update_dialog.noUpdates()) {
- CustomMessageBox::selectable(this, tr("Update checker"),
- (mods_list.size() == 1)
- ? tr("'%1' is up-to-date! :)").arg(mods_list.front()->name())
- : tr("All %1mods are up-to-date! :)").arg(use_all ? "" : (tr("selected") + " ")))
+ QString message{ tr("'%1' is up-to-date! :)").arg(mods_list.front()->name()) };
+ if (mods_list.size() > 1) {
+ if (use_all) {
+ message = tr("All mods are up-to-date! :)");
+ } else {
+ message = tr("All selected mods are up-to-date! :)");
+ }
+ }
+ CustomMessageBox::selectable(this, tr("Update checker"), message)
->exec();
return;
}
diff --git a/nix/default.nix b/nix/default.nix
index 1a6b9e44..bdc1758a 100644
--- a/nix/default.nix
+++ b/nix/default.nix
@@ -79,6 +79,8 @@ stdenv.mkDerivation rec {
meta = with lib; {
homepage = "https://polymc.org/";
+ downloadPage = "https://polymc.org/download/";
+ changelog = "https://github.com/PolyMC/PolyMC/releases";
description = "A free, open source launcher for Minecraft";
longDescription = ''
Allows you to have multiple, separate instances of Minecraft (each with