diff --git a/.github/workflows/publish_manifest.yml b/.github/workflows/publish_manifest.yml
index 8577c18..1706ac3 100644
--- a/.github/workflows/publish_manifest.yml
+++ b/.github/workflows/publish_manifest.yml
@@ -17,7 +17,7 @@ jobs:
- name: Setup .NET Core
uses: actions/setup-dotnet@v3.2.0
with:
- dotnet-version: 9.0.x
+ dotnet-version: 10.0.x
- name: Install dependencies
run: dotnet restore
- name: Set version
diff --git a/.github/workflows/publish_update_resolver.yml b/.github/workflows/publish_update_resolver.yml
index 0544409..33d8490 100644
--- a/.github/workflows/publish_update_resolver.yml
+++ b/.github/workflows/publish_update_resolver.yml
@@ -17,7 +17,7 @@ jobs:
- name: Setup .NET Core
uses: actions/setup-dotnet@v3.2.0
with:
- dotnet-version: 9.0.x
+ dotnet-version: 10.0.x
- name: Install dependencies
run: dotnet restore
- name: Create build
diff --git a/Directory.Build.props b/Directory.Build.props
new file mode 100644
index 0000000..38b13eb
--- /dev/null
+++ b/Directory.Build.props
@@ -0,0 +1,6 @@
+
+
+ net10.0
+ true
+
+
\ No newline at end of file
diff --git a/Directory.Packages.props b/Directory.Packages.props
new file mode 100644
index 0000000..a7b591f
--- /dev/null
+++ b/Directory.Packages.props
@@ -0,0 +1,31 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Nebula.Launcher/LauncherConVar.cs b/Nebula.Launcher/LauncherConVar.cs
index 5bcb4cc..488f26c 100644
--- a/Nebula.Launcher/LauncherConVar.cs
+++ b/Nebula.Launcher/LauncherConVar.cs
@@ -54,5 +54,7 @@ public static class LauncherConVar
public static readonly ConVar CurrentLang = ConVarBuilder.Build("launcher.language", CultureInfo.CurrentCulture.Name);
public static readonly ConVar ILSpyUrl = ConVarBuilder.Build("decompiler.url",
- "https://github.com/icsharpcode/ILSpy/releases/download/v9.0/ILSpy_binaries_9.0.0.7889-x64.zip");
+ "https://github.com/icsharpcode/ILSpy/releases/download/v10.0-preview2/ILSpy_selfcontained_10.0.0.8282-preview2-x64.zip");
+
+ public static readonly ConVar ILSpyVersion = ConVarBuilder.Build("dotnet.version", "10");
}
\ No newline at end of file
diff --git a/Nebula.Launcher/Nebula.Launcher.csproj b/Nebula.Launcher/Nebula.Launcher.csproj
index 82891c5..da3683d 100644
--- a/Nebula.Launcher/Nebula.Launcher.csproj
+++ b/Nebula.Launcher/Nebula.Launcher.csproj
@@ -1,7 +1,6 @@
WinExe
- net9.0
enable
true
false
@@ -15,24 +14,24 @@
-
-
-
-
-
-
+
+
+
+
+
+
-
+
None
All
-
-
-
-
-
-
-
+
+
+
+
+
+
+
diff --git a/Nebula.Launcher/Services/DecompilerService.cs b/Nebula.Launcher/Services/DecompilerService.cs
index ed24c0b..5877b2b 100644
--- a/Nebula.Launcher/Services/DecompilerService.cs
+++ b/Nebula.Launcher/Services/DecompilerService.cs
@@ -29,16 +29,16 @@ public sealed partial class DecompilerService
[GenerateProperty] private EngineService EngineService {get;}
[GenerateProperty] private DebugService DebugService {get;}
- private HttpClient _httpClient = new HttpClient();
+ private readonly HttpClient _httpClient = new();
private ILogger _logger;
- private static string fullPath = Path.Join(FileService.RootPath,"ILSpy");
- private static string executePath = Path.Join(fullPath, "ILSpy.exe");
+ private string FullPath => Path.Join(FileService.RootPath,$"ILSpy.{ConfigurationService.GetConfigValue(LauncherConVar.ILSpyVersion)}");
+ private string ExecutePath => Path.Join(FullPath, "ILSpy.exe");
public async void OpenDecompiler(string arguments){
await EnsureILSpy();
var startInfo = new ProcessStartInfo(){
- FileName = executePath,
+ FileName = ExecutePath,
Arguments = arguments
};
Process.Start(startInfo);
@@ -84,7 +84,7 @@ public sealed partial class DecompilerService
private void InitialiseInDesignMode(){}
private async Task EnsureILSpy(){
- if(!Directory.Exists(fullPath))
+ if(!Directory.Exists(FullPath))
await Download();
}
@@ -95,7 +95,7 @@ public sealed partial class DecompilerService
PopupMessageService.Popup(loading);
using var response = await _httpClient.GetAsync(ConfigurationService.GetConfigValue(LauncherConVar.ILSpyUrl));
using var zipArchive = new ZipArchive(await response.Content.ReadAsStreamAsync());
- Directory.CreateDirectory(fullPath);
- zipArchive.ExtractToDirectory(fullPath);
+ Directory.CreateDirectory(FullPath);
+ zipArchive.ExtractToDirectory(FullPath);
}
}
\ No newline at end of file
diff --git a/Nebula.Packager/Nebula.Packager.csproj b/Nebula.Packager/Nebula.Packager.csproj
index 85b4959..54ee940 100644
--- a/Nebula.Packager/Nebula.Packager.csproj
+++ b/Nebula.Packager/Nebula.Packager.csproj
@@ -1,10 +1,7 @@
-
Exe
- net9.0
enable
enable
-
diff --git a/Nebula.Runner/Nebula.Runner.csproj b/Nebula.Runner/Nebula.Runner.csproj
index 321412a..43c2a9e 100644
--- a/Nebula.Runner/Nebula.Runner.csproj
+++ b/Nebula.Runner/Nebula.Runner.csproj
@@ -1,8 +1,6 @@
-
WinExe
- net9.0
enable
enable
@@ -12,8 +10,8 @@
-
-
-
+
+
+
diff --git a/Nebula.Shared/CurrentConVar.cs b/Nebula.Shared/CurrentConVar.cs
index c1124ec..13268ae 100644
--- a/Nebula.Shared/CurrentConVar.cs
+++ b/Nebula.Shared/CurrentConVar.cs
@@ -34,8 +34,10 @@ public static class CurrentConVar
public static readonly ConVar> DotnetUrl = ConVarBuilder.Build>("dotnet.url",
new(){
- {"win-x64", "https://builds.dotnet.microsoft.com/dotnet/Runtime/9.0.6/dotnet-runtime-9.0.6-win-x64.zip"},
- {"win-x86", "https://builds.dotnet.microsoft.com/dotnet/Runtime/9.0.6/dotnet-runtime-9.0.6-win-x86.zip"},
- {"linux-x64", "https://builds.dotnet.microsoft.com/dotnet/Runtime/9.0.6/dotnet-runtime-9.0.6-linux-x64.tar.gz"}
+ {"win-x64", "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.2/dotnet-runtime-10.0.2-win-x64.exe"},
+ {"win-x86", "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.2/dotnet-runtime-10.0.2-win-x86.exe"},
+ {"linux-x64", "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.2/dotnet-runtime-10.0.2-linux-x64.tar.gz"}
});
+
+ public static readonly ConVar DotnetVersion = ConVarBuilder.Build("dotnet.version", "10.0.2");
}
\ No newline at end of file
diff --git a/Nebula.Shared/Nebula.Shared.csproj b/Nebula.Shared/Nebula.Shared.csproj
index 16331d4..6c8837c 100644
--- a/Nebula.Shared/Nebula.Shared.csproj
+++ b/Nebula.Shared/Nebula.Shared.csproj
@@ -1,7 +1,5 @@
-
- net9.0
enable
enable
true
@@ -11,9 +9,9 @@
Utility.runtime.json
-
-
-
+
+
+
diff --git a/Nebula.Shared/Services/DotnetResolverService.cs b/Nebula.Shared/Services/DotnetResolverService.cs
index cda3d5b..caee927 100644
--- a/Nebula.Shared/Services/DotnetResolverService.cs
+++ b/Nebula.Shared/Services/DotnetResolverService.cs
@@ -8,10 +8,10 @@ namespace Nebula.Shared.Services;
[ServiceRegister]
public class DotnetResolverService(DebugService debugService, ConfigurationService configurationService)
{
- private static readonly string FullPath =
- Path.Join(FileService.RootPath, "dotnet", DotnetUrlHelper.GetRuntimeIdentifier());
+ private string FullPath =>
+ Path.Join(FileService.RootPath, $"dotnet.{configurationService.GetConfigValue(CurrentConVar.DotnetVersion)}", DotnetUrlHelper.GetRuntimeIdentifier());
- private static readonly string ExecutePath = Path.Join(FullPath, "dotnet" + DotnetUrlHelper.GetExtension());
+ private string ExecutePath => Path.Join(FullPath, "dotnet" + DotnetUrlHelper.GetExtension());
private readonly HttpClient _httpClient = new();
public async Task EnsureDotnet()
diff --git a/Nebula.SourceGenerators/Nebula.SourceGenerators.csproj b/Nebula.SourceGenerators/Nebula.SourceGenerators.csproj
index 3b178c5..55ba9f6 100644
--- a/Nebula.SourceGenerators/Nebula.SourceGenerators.csproj
+++ b/Nebula.SourceGenerators/Nebula.SourceGenerators.csproj
@@ -14,13 +14,12 @@
-
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
-
-
+
+
-
diff --git a/Nebula.UnitTest/Nebula.UnitTest.csproj b/Nebula.UnitTest/Nebula.UnitTest.csproj
index 4736546..cee91e3 100644
--- a/Nebula.UnitTest/Nebula.UnitTest.csproj
+++ b/Nebula.UnitTest/Nebula.UnitTest.csproj
@@ -1,22 +1,19 @@
-
- net9.0
enable
enable
-
false
true
-
-
-
-
-
-
-
+
+
+
+
+
+
+
diff --git a/Nebula.UpdateResolver/DotnetStandalone.cs b/Nebula.UpdateResolver/DotnetStandalone.cs
index ac15329..8d73a62 100644
--- a/Nebula.UpdateResolver/DotnetStandalone.cs
+++ b/Nebula.UpdateResolver/DotnetStandalone.cs
@@ -16,7 +16,8 @@ public static class DotnetStandalone
private static readonly HttpClient HttpClient = new();
private static readonly string FullPath =
- Path.Join(MainWindow.RootPath, "dotnet", DotnetUrlHelper.GetRuntimeIdentifier());
+ Path.Join(MainWindow.RootPath, $"dotnet.{ConfigurationStandalone.GetConfigValue(UpdateConVars.DotnetVersion)}",
+ DotnetUrlHelper.GetRuntimeIdentifier());
private static readonly string ExecutePath = Path.Join(FullPath, "dotnet" + DotnetUrlHelper.GetExtension());
diff --git a/Nebula.UpdateResolver/Nebula.UpdateResolver.csproj b/Nebula.UpdateResolver/Nebula.UpdateResolver.csproj
index 4cf49e0..575ab14 100644
--- a/Nebula.UpdateResolver/Nebula.UpdateResolver.csproj
+++ b/Nebula.UpdateResolver/Nebula.UpdateResolver.csproj
@@ -1,7 +1,6 @@
WinExe
- net9.0
enable
true
app.manifest
@@ -17,12 +16,12 @@
-
-
-
-
+
+
+
+
-
+
None
All
diff --git a/Nebula.UpdateResolver/UpdateCVars.cs b/Nebula.UpdateResolver/UpdateCVars.cs
index 594ebb9..870b7f6 100644
--- a/Nebula.UpdateResolver/UpdateCVars.cs
+++ b/Nebula.UpdateResolver/UpdateCVars.cs
@@ -12,8 +12,10 @@ public static class UpdateConVars
public static readonly ConVar> DotnetUrl = ConVarBuilder.Build>("dotnet.url",
new(){
- {"win-x64", "https://builds.dotnet.microsoft.com/dotnet/Runtime/9.0.6/dotnet-runtime-9.0.6-win-x64.zip"},
- {"win-x86", "https://builds.dotnet.microsoft.com/dotnet/Runtime/9.0.6/dotnet-runtime-9.0.6-win-x86.zip"},
- {"linux-x64", "https://builds.dotnet.microsoft.com/dotnet/Runtime/9.0.6/dotnet-runtime-9.0.6-linux-x64.tar.gz"}
+ {"win-x64", "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.2/dotnet-runtime-10.0.2-win-x64.exe"},
+ {"win-x86", "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.2/dotnet-runtime-10.0.2-win-x86.exe"},
+ {"linux-x64", "https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.2/dotnet-runtime-10.0.2-linux-x64.tar.gz"}
});
+
+ public static readonly ConVar DotnetVersion = ConVarBuilder.Build("dotnet.version", "10.0.2");
}
\ No newline at end of file
diff --git a/Nebula.sln b/Nebula.sln
deleted file mode 100644
index fcbb8fa..0000000
--- a/Nebula.sln
+++ /dev/null
@@ -1,58 +0,0 @@
-
-Microsoft Visual Studio Solution File, Format Version 12.00
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Nebula.Launcher", "Nebula.Launcher\Nebula.Launcher.csproj", "{D8F9728D-6153-4351-8BE2-52F7D54C299D}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Robust.LoaderApi", "Robust.LoaderApi\Robust.LoaderApi\Robust.LoaderApi.csproj", "{8AE91631-DE96-4A97-A255-058E27A7C3EA}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Nebula.Shared", "Nebula.Shared\Nebula.Shared.csproj", "{47519EA2-03C0-49D8-86CA-418F6B7267A4}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Nebula.Runner", "Nebula.Runner\Nebula.Runner.csproj", "{82D96367-44B0-4F25-A094-CBE73B052B73}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Nebula.SourceGenerators", "Nebula.SourceGenerators\Nebula.SourceGenerators.csproj", "{985A8F36-AFEB-4E85-8EDB-7C9DDEC698DC}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Nebula.UpdateResolver", "Nebula.UpdateResolver\Nebula.UpdateResolver.csproj", "{90CB754D-00A1-493D-A630-02BDA0AFF31A}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Nebula.Packager", "Nebula.Packager\Nebula.Packager.csproj", "{D444A5F9-4549-467F-9398-97DD6DB1E263}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Nebula.UnitTest", "Nebula.UnitTest\Nebula.UnitTest.csproj", "{735691F8-949C-4476-B9E4-5DF6FF8D3D0B}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Any CPU = Debug|Any CPU
- Release|Any CPU = Release|Any CPU
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {D8F9728D-6153-4351-8BE2-52F7D54C299D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {D8F9728D-6153-4351-8BE2-52F7D54C299D}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {D8F9728D-6153-4351-8BE2-52F7D54C299D}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {D8F9728D-6153-4351-8BE2-52F7D54C299D}.Release|Any CPU.Build.0 = Release|Any CPU
- {8AE91631-DE96-4A97-A255-058E27A7C3EA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {8AE91631-DE96-4A97-A255-058E27A7C3EA}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {8AE91631-DE96-4A97-A255-058E27A7C3EA}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {8AE91631-DE96-4A97-A255-058E27A7C3EA}.Release|Any CPU.Build.0 = Release|Any CPU
- {47519EA2-03C0-49D8-86CA-418F6B7267A4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {47519EA2-03C0-49D8-86CA-418F6B7267A4}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {47519EA2-03C0-49D8-86CA-418F6B7267A4}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {47519EA2-03C0-49D8-86CA-418F6B7267A4}.Release|Any CPU.Build.0 = Release|Any CPU
- {82D96367-44B0-4F25-A094-CBE73B052B73}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {82D96367-44B0-4F25-A094-CBE73B052B73}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {82D96367-44B0-4F25-A094-CBE73B052B73}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {82D96367-44B0-4F25-A094-CBE73B052B73}.Release|Any CPU.Build.0 = Release|Any CPU
- {985A8F36-AFEB-4E85-8EDB-7C9DDEC698DC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {985A8F36-AFEB-4E85-8EDB-7C9DDEC698DC}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {985A8F36-AFEB-4E85-8EDB-7C9DDEC698DC}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {985A8F36-AFEB-4E85-8EDB-7C9DDEC698DC}.Release|Any CPU.Build.0 = Release|Any CPU
- {90CB754D-00A1-493D-A630-02BDA0AFF31A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {90CB754D-00A1-493D-A630-02BDA0AFF31A}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {90CB754D-00A1-493D-A630-02BDA0AFF31A}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {90CB754D-00A1-493D-A630-02BDA0AFF31A}.Release|Any CPU.Build.0 = Release|Any CPU
- {D444A5F9-4549-467F-9398-97DD6DB1E263}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {D444A5F9-4549-467F-9398-97DD6DB1E263}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {D444A5F9-4549-467F-9398-97DD6DB1E263}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {D444A5F9-4549-467F-9398-97DD6DB1E263}.Release|Any CPU.Build.0 = Release|Any CPU
- {735691F8-949C-4476-B9E4-5DF6FF8D3D0B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {735691F8-949C-4476-B9E4-5DF6FF8D3D0B}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {735691F8-949C-4476-B9E4-5DF6FF8D3D0B}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {735691F8-949C-4476-B9E4-5DF6FF8D3D0B}.Release|Any CPU.Build.0 = Release|Any CPU
- EndGlobalSection
-EndGlobal
diff --git a/Nebula.slnx b/Nebula.slnx
new file mode 100644
index 0000000..7a03d11
--- /dev/null
+++ b/Nebula.slnx
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file