gcaram / ThirdLicense

.NET tool to generate third-party notice license files from the transitive project dependencies

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Third License Build status MIT License

.NET tool to generate third-party notice files from all the transitive dependencies of a .NET project.

Installation

Get the latest release from the GitHub release tab or install it as a global tool from nuget.org.

Run as a program

If you download the zip file, you can run the tool as a .NET program as follow: dotnet ThirdLicense.dll.

Install as a .NET global tool

You can install it as a .NET global tool and it will be added to your PATH environment variable. Install the latest stable release from nuget.org with:

dotnet tool install --global ThirdLicense

or from a local downloaded NuGet package (.nupkg):

dotnet tool install --global --add-source <folder_with_nupkg> ThirdLicense

Then, you can run it just by the command name: thirdlicense

Usage

To run the tool make sure you have installed .NET 8.0 runtime.

The program accepts the following arguments:

  • project: the project file to analyze for third-parties or its folder.
  • output: the output file path. By default in the current directory with name THIRD-PARTY-NOTICES.TXT.
  • endpoint: optional extra NuGet repository endpoint to look for packages. It will also load the enabled sources, including from local nuget.config files.

Example of output file:

License notice for NuGet.Protocol (v5.6.0+636570e68732c1f718ede9ca07802d7b1cc69aa0)
------------------------------------

https://github.com/NuGet/NuGet.Client at 636570e68732c1f718ede9ca07802d7b1cc69aa0

https://aka.ms/nugetprj

Copyright © Microsoft Corporation. All rights reserved.

Licensed under Apache-2.0

Available at https://licenses.nuget.org/Apache-2.0


License notice for System.CommandLine (v2.0.0-beta1.20253.1)
------------------------------------
[...]

Build

Install .NET SDK 8.0 and go to the src folder to run dotnet build.

To create a runtime application run dotnet publish -c Release and to prepare the NuGet run dotnet pack -c Release.

About

.NET tool to generate third-party notice license files from the transitive project dependencies

License:MIT License


Languages

Language:C# 100.0%