diff options
| author | Takoroka <137927095+Takoroka@users.noreply.github.com> | 2026-10-30 04:39:05 -0400 |
|---|---|---|
| committer | Takoroka <137927095+Takoroka@users.noreply.github.com> | 2026-10-30 04:39:05 -0400 |
| commit | f241ae67ba7a1ab571e2524e2f05385d695b8af3 (patch) | |
| tree | 4e208865516b4c18807ce87da09c68eee6f98606 /src/yuzu | |
| parent | 5c7d304cf52535a91ad312b66b06a232ca09ca69 (diff) | |
qt: don't ask for decryption keys at startup
A missing prod.keys raised a Yes/No question in the main window's
constructor, and every launch (also -g launches from scripts) waited on
it. Loose ExeFS/RomFS dumps, all Switch 2 games so far, need no keys.
Startup now only logs a warning; installing firmware or keys still asks.
Diffstat (limited to 'src/yuzu')
| -rw-r--r-- | src/yuzu/main_window.cpp | 11 | ||||
| -rw-r--r-- | src/yuzu/main_window.h | 3 |
2 files changed, 10 insertions, 4 deletions
diff --git a/src/yuzu/main_window.cpp b/src/yuzu/main_window.cpp index 13359620dd..d59ac16c07 100644 --- a/src/yuzu/main_window.cpp +++ b/src/yuzu/main_window.cpp @@ -446,7 +446,7 @@ MainWindow::MainWindow(bool has_broken_vulkan) QtCommon::SetupContentProviders(); // Gen keys if necessary - OnCheckFirmwareDecryption(); + OnCheckFirmwareDecryption(false); #ifdef __unix__ OnCheckGraphicsBackend(); @@ -4374,8 +4374,13 @@ void MainWindow::OnMouseActivity() { } } -void MainWindow::OnCheckFirmwareDecryption() { - if (!ContentManager::AreKeysPresent()) { +void MainWindow::OnCheckFirmwareDecryption(bool prompt) { + if (!ContentManager::AreKeysPresent() && !prompt) { + // At startup only log it: loose ExeFS/RomFS dumps (all Switch 2 games so far) need no + // keys, and a modal question blocked every unattended launch. Tools > Install Decryption + // Keys still installs them. + LOG_WARNING(Frontend, "Decryption keys are missing: NCA, NSP and XCI games need them"); + } else if (!ContentManager::AreKeysPresent()) { const auto res = QtCommon::Frontend::Warning( tr("Derivation Components Missing"), tr("Decryption keys are missing. Install them now?"), diff --git a/src/yuzu/main_window.h b/src/yuzu/main_window.h index 8aedeec721..627ade4f6b 100644 --- a/src/yuzu/main_window.h +++ b/src/yuzu/main_window.h @@ -421,7 +421,8 @@ private slots: void OnCreateHomeMenuDesktopShortcut(); void OnCreateHomeMenuApplicationMenuShortcut(); void OnCaptureScreenshot(); - void OnCheckFirmwareDecryption(); + /// Checks for decryption keys; `prompt` asks to install them when they are missing. + void OnCheckFirmwareDecryption(bool prompt = true); #ifdef __unix__ void OnCheckGraphicsBackend(); #endif |
