aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx/Ui/Helper/SetupValidator.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Ryujinx/Ui/Helper/SetupValidator.cs')
-rw-r--r--Ryujinx/Ui/Helper/SetupValidator.cs119
1 files changed, 0 insertions, 119 deletions
diff --git a/Ryujinx/Ui/Helper/SetupValidator.cs b/Ryujinx/Ui/Helper/SetupValidator.cs
deleted file mode 100644
index 8be8497b..00000000
--- a/Ryujinx/Ui/Helper/SetupValidator.cs
+++ /dev/null
@@ -1,119 +0,0 @@
-using Ryujinx.Common.Logging;
-using Ryujinx.HLE.FileSystem;
-using Ryujinx.Ui.Widgets;
-using System;
-using System.IO;
-
-namespace Ryujinx.Ui.Helper
-{
- /// <summary>
- /// Ensure installation validity
- /// </summary>
- static class SetupValidator
- {
- public static bool IsFirmwareValid(ContentManager contentManager, out UserError error)
- {
- bool hasFirmware = contentManager.GetCurrentFirmwareVersion() != null;
-
- if (hasFirmware)
- {
- error = UserError.Success;
-
- return true;
- }
- else
- {
- error = UserError.NoFirmware;
-
- return false;
- }
- }
-
- public static bool CanFixStartApplication(ContentManager contentManager, string baseApplicationPath, UserError error, out SystemVersion firmwareVersion)
- {
- try
- {
- firmwareVersion = contentManager.VerifyFirmwarePackage(baseApplicationPath);
- }
- catch (Exception)
- {
- firmwareVersion = null;
- }
-
- return error == UserError.NoFirmware && Path.GetExtension(baseApplicationPath).ToLowerInvariant() == ".xci" && firmwareVersion != null;
- }
-
- public static bool TryFixStartApplication(ContentManager contentManager, string baseApplicationPath, UserError error, out UserError outError)
- {
- if (error == UserError.NoFirmware)
- {
- string baseApplicationExtension = Path.GetExtension(baseApplicationPath).ToLowerInvariant();
-
- // If the target app to start is a XCI, try to install firmware from it
- if (baseApplicationExtension == ".xci")
- {
- SystemVersion firmwareVersion;
-
- try
- {
- firmwareVersion = contentManager.VerifyFirmwarePackage(baseApplicationPath);
- }
- catch (Exception)
- {
- firmwareVersion = null;
- }
-
- // The XCI is a valid firmware package, try to install the firmware from it!
- if (firmwareVersion != null)
- {
- try
- {
- Logger.Info?.Print(LogClass.Application, $"Installing firmware {firmwareVersion.VersionString}");
-
- contentManager.InstallFirmware(baseApplicationPath);
-
- Logger.Info?.Print(LogClass.Application, $"System version {firmwareVersion.VersionString} successfully installed.");
-
- outError = UserError.Success;
-
- return true;
- }
- catch (Exception) { }
- }
-
- outError = error;
-
- return false;
- }
- }
-
- outError = error;
-
- return false;
- }
-
- public static bool CanStartApplication(ContentManager contentManager, string baseApplicationPath, out UserError error)
- {
- if (Directory.Exists(baseApplicationPath) || File.Exists(baseApplicationPath))
- {
- string baseApplicationExtension = Path.GetExtension(baseApplicationPath).ToLowerInvariant();
-
- // NOTE: We don't force homebrew developers to install a system firmware.
- if (baseApplicationExtension == ".nro" || baseApplicationExtension == ".nso")
- {
- error = UserError.Success;
-
- return true;
- }
-
- return IsFirmwareValid(contentManager, out error);
- }
- else
- {
- error = UserError.ApplicationNotFound;
-
- return false;
- }
- }
- }
-}