7using System.Security.Principal;
14 internal static class SystemHelper
23 public static bool CheckAdministratorPrivileges()
25 if (Environment.OSVersion.Platform == PlatformID.Unix)
31 using WindowsIdentity? identity = WindowsIdentity.GetCurrent(
false);
35 return new WindowsPrincipal(identity)
36 .IsInRole(WindowsBuiltInRole.Administrator);
48 public static string CheckWingetInstallation()
50 string? pathEnvVar = Environment.GetEnvironmentVariable(
"Path", EnvironmentVariableTarget.User);
51 if (
string.IsNullOrWhiteSpace(pathEnvVar))
56 string[] paths = pathEnvVar.Split(
';');
59 for (
int i = 0; i < paths.Length; i++)
61 exePath = Path.Combine(paths[i],
"winget.exe");
62 if (File.Exists(exePath))