GreemDev.Nuke.ProjectModel 10.3.0

There is a newer version of this package available.
See the version list below for details.
dotnet add package GreemDev.Nuke.ProjectModel --version 10.3.0
                    
NuGet\Install-Package GreemDev.Nuke.ProjectModel -Version 10.3.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="GreemDev.Nuke.ProjectModel" Version="10.3.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="GreemDev.Nuke.ProjectModel" Version="10.3.0" />
                    
Directory.Packages.props
<PackageReference Include="GreemDev.Nuke.ProjectModel" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add GreemDev.Nuke.ProjectModel --version 10.3.0
                    
#r "nuget: GreemDev.Nuke.ProjectModel, 10.3.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package GreemDev.Nuke.ProjectModel@10.3.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=GreemDev.Nuke.ProjectModel&version=10.3.0
                    
Install as a Cake Addin
#tool nuget:?package=GreemDev.Nuke.ProjectModel&version=10.3.0
                    
Install as a Cake Tool

The AKEless Build System for C#/.NET

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (2)

Showing the top 2 NuGet packages that depend on GreemDev.Nuke.ProjectModel:

Package Downloads
GreemDev.Nuke.Build

The AKEless Build System for C#/.NET

GreemDev.Nuke

The AKEless Build System for C#/.NET

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
10.3.1 349 4/9/2026
10.3.0 134 4/9/2026
10.2.0 151 3/7/2026

• Added KiotaTasks, a NUKE CLI tool wrapper for [microsoft/kiota](https://github.com/microsoft/kiota).
 • Example usage can be found in this very project, as I added this to generate the API client in GreemDev.Nuke.Components.Forgejo.
 • [usage](https://github.com/gruke-build/src/blob/2174568e3cadfccc8127fa8e11ed8cc625fbe370/build/Build.Kiota.cs), [generated output](https://github.com/gruke-build/src/tree/2174568e3cadfccc8127fa8e11ed8cc625fbe370/source/Nuke.Components.Forgejo/generated)
• [Forgejo Actions](https://forgejo.org/docs/next/user/actions/overview/) workflow generation & CI environment support
   • [Access environment variables defined in their documentation in your C# code in a type-safe manner with documentation for each variable](https://nuke.greemdev.net/docfx/api/Nuke.Common.CI.ForgejoActions.ForgejoActions.html).
   • Due to Forgejo Actions' [overwhelming similarities to GitHub Actions](https://forgejo.org/docs/latest/user/actions/github-actions/), I was able to maintain practically 1:1 feature parity with the GitHub Actions generator.
       • The only missing feature (as far as I can tell, and only that I could have possibly encountered) is the [lack of a permissions YAML block](https://forgejo.org/docs/latest/user/actions/github-actions/#known-list-of-differences).
   • Explicit support was added to support the limits of the [Codeberg public FJA runners](https://codeberg.org/actions/meta), as well as a class containing constants for them: [CodebergRunners](https://nuke.greemdev.net/docfx/api/Nuke.Common.CI.ForgejoActions.CodebergRunners.html)
   • To provide GitHub Actions familiarity, Forgejo exposes GITHUB_-prefixed environment variables. However, Forgejo *also• exposes FORGEJO_-prefixed variables, while GitHub does not.
     • As a result, [Forgejo Actions is no longer treated as being a GitHub Actions environment](https://github.com/gruke-build/src/commit/a5c99dc2c1cbfe225be28c2f178140f4d9c21d93).
     • If you relied on this functionality you will need to replace your usages of GitHubActions with ForgejoActions where relevant.
• [Woodpecker CI](https://woodpecker-ci.org/docs/intro) workflow generation & CI environment support
 • Woodpecker has no first-party job artifacts functionality, expecting you to use a plugin to provide that.
   • The only plugins I could find require some form of external storage solution, meaning you (the user of Woodpecker) is responsible for managing your own artifacts bin.
 • As a result, this is mostly only useful as a linter/tester on its own.
 • You have access to Forge-specific APIs in the new GreemDev.Nuke.Components.{GitHub, Forgejo, GitLab} NuGet packages.
   • You can use these to create releases. The Woodpecker CI generator has support for importing secrets.
     • ICreateGitHubRelease has moved to GreemDev.Nuke.Components.GitHub
     • ICreateForgejoRelease has been added to GreemDev.Nuke.Components.Forgejo, and works identically to GitHub, except where it had GitHub it has Forgejo now, what a surprise.
     • ICreateGitLabRelease has been added to GreemDev.Nuke.Components.GitLab, and is more complex, expecting a Name, Version, and PackageName.
       • GitLab works differently to GitHub & Forgejo, it does not have a dedicated release assets feature.
         • The solution we use is to upload to the [Generic Package repository](https://docs.gitlab.com/user/packages/generic_packages/), then create a release that links to all the files in the GPR package version.
         • Requires your GitLab project to have [Releases](https://docs.gitlab.com/user/project/releases/) and [Package Registry](https://docs.gitlab.com/user/packages/package_registry/) enabled.
     • These component interfaces do not need to be used on Woodpecker.
• Moved GitterTasks to the namespace Nuke.Common.Tools.Gitter.
• SetBranch on GitRepository has been removed, use GitRepository.ModifyCopy(branch: ...) instead.
• Removed ShutdownDotNetAfterServerBuild attribute, it existed due to the .NET CLI's lack of ability for forcibly disabling the use of build servers.
 • .NET has since added this, as such the attribute has [been removed and its behavior has been nativized](https://github.com/gruke-build/src/commit/8b29341a37e0668ddeb918baf6610c338150b77e).
 • You can re-enable build servers (not possible before) by setting your [NukeBuild's DisableDotNetBuildServers property](https://nuke.greemdev.net/docfx/api/Nuke.Common.NukeBuild.html#Nuke_Common_NukeBuild_DisableDotNetBuildServers) to true.
• [Dusted off the old Notifications system that existed in the project](https://github.com/gruke-build/src/commit/90e8a484d750d35a6767ff68a2c54cfb56e42e1c) and hooked it up to a notifications JSON file I control.
 • Probably will use this to notify about breaking changes.
 • Notifications display after a build.
 • Support has also been added to DisableDefaultOutputAttribute to fully block displaying notifications at all. This will also skip requesting them.
• [Removed Telemetry](https://github.com/gruke-build/src/commit/c4943bcab7a645b571bf9452fd2a5a7a11457b9b)
 • And [removed the page on the docs](https://github.com/gruke-build/docs/commit/256cfab2467cfff578aa5b22c5e554cd9e946c4e) about it.
• [nuke-build#1321](https://github.com/nuke-build/nuke/pull/1321): fix: Allow UTF-8 console input
 • Thanks, [@rus-art](https://github.com/rus-art)!

Full changelog at https://nuke.greemdev.net/docfx/changelog.html