diff --git a/build/Build.CodeGeneration.cs b/build/Build.CodeGeneration.cs
index 5b9c86a0c..debbe86ea 100644
--- a/build/Build.CodeGeneration.cs
+++ b/build/Build.CodeGeneration.cs
@@ -89,7 +89,7 @@ partial class Build
"StaticWebApps.json",
"Teams.json",
"TestCloud.json",
- // "Unity.json",
+ "Unity.json",
"VSTest.json",
"VSWhere.json",
"WebConfigTransformRunner.json",
diff --git a/source/Nuke.Common/Tools/Unity/Unity.Generated.cs b/source/Nuke.Common/Tools/Unity/Unity.Generated.cs
index 7d1d387a3..6e2ec295e 100644
--- a/source/Nuke.Common/Tools/Unity/Unity.Generated.cs
+++ b/source/Nuke.Common/Tools/Unity/Unity.Generated.cs
@@ -6,6 +6,7 @@
using Nuke.Common.Tooling;
using Nuke.Common.Tools;
using Nuke.Common.Utilities.Collections;
+using Nuke.Tooling;
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
@@ -17,4410 +18,1375 @@
namespace Nuke.Common.Tools.Unity;
-///
-/// Unity is usually launched by double-clicking its icon from the desktop. However, it is also possible to run it from the command line (from the macOS Terminal or the Windows Command Prompt). When launched in this way, Unity can receive commands and information on startup, which can be very useful for test suites, automated builds and other production tasks.
-/// For more details, visit the official website.
-///
+/// Unity is usually launched by double-clicking its icon from the desktop. However, it is also possible to run it from the command line (from the macOS Terminal or the Windows Command Prompt). When launched in this way, Unity can receive commands and information on startup, which can be very useful for test suites, automated builds and other production tasks.
For more details, visit the official website.
[PublicAPI]
[ExcludeFromCodeCoverage]
-public partial class UnityTasks
+public partial class UnityTasks : ToolTasks
{
- ///
- /// Path to the Unity executable.
- ///
- public static string UnityPath =>
- ToolPathResolver.TryGetEnvironmentExecutable("UNITY_EXE") ??
- GetToolPath();
- public static Action UnityLogger { get; set; } = ProcessTasks.DefaultLogger;
- public static Action UnityExitHandler { get; set; } = ProcessTasks.DefaultExitHandler;
- ///
- /// Unity is usually launched by double-clicking its icon from the desktop. However, it is also possible to run it from the command line (from the macOS Terminal or the Windows Command Prompt). When launched in this way, Unity can receive commands and information on startup, which can be very useful for test suites, automated builds and other production tasks.
- /// For more details, visit the official website.
- ///
- public static IReadOnlyCollection