Skip to content

Commit

Permalink
Merge pull request #1 from profan/master
Browse files Browse the repository at this point in the history
allow it to work when NUGET_PACKAGES is set explicitly.
  • Loading branch information
tebjan authored Mar 22, 2019
2 parents aff1989 + d11c386 commit 5013887
Showing 1 changed file with 16 additions and 2 deletions.
18 changes: 16 additions & 2 deletions XenkoShaderExplorer/MainViewModel.cs
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ public enum XenkoSourceDirMode
public class MainViewModel : ViewModelBase
{
private const string XenkoEnvironmentVariable = "XenkoDir";
private const string NugetEnvironmentVariable = "NUGET_PACKAGES";
private const string FallbackBasePath = @"C:\Program Files\Silicon Studio\Xenko\";

private string _filterText;
Expand All @@ -44,6 +45,20 @@ public string FilterText
}
}

private string ResolveNugetPackageDir()
{
var nugetPackageDir = Environment.GetEnvironmentVariable(NugetEnvironmentVariable);
if (nugetPackageDir != null)
{
return nugetPackageDir;
}
else
{
var userDir = Environment.GetFolderPath(Environment.SpecialFolder.UserProfile);
return Path.Combine(userDir, ".nuget", "packages");
}
}

internal void Refresh()
{
try
Expand All @@ -52,8 +67,7 @@ internal void Refresh()
switch (XenkoDirMode)
{
case XenkoSourceDirMode.Official:
var userDir = Environment.GetFolderPath(Environment.SpecialFolder.UserProfile);
var nugetPackageDir = Path.Combine(userDir, ".nuget", "packages");
var nugetPackageDir = ResolveNugetPackageDir();
var directories = Directory.GetDirectories(nugetPackageDir) //package dir
.Where(dir => Path.GetFileName(dir).StartsWith("xenko", StringComparison.OrdinalIgnoreCase)) //xenko folders
.Select(dir => Directory.GetDirectories(dir).OrderBy(subdir => subdir, StringComparer.OrdinalIgnoreCase).LastOrDefault()) //latest version
Expand Down

0 comments on commit 5013887

Please sign in to comment.