nuget-license

.NET Core tool to print or save all the licenses of a project

APACHE-2.0 License

Stars
280
Committers
28

Nuget License Utility Build Status NuGet

⚠️ This project seems to be abandoned: The original author of this project has not shown up in quite some while. Therefore it's impossible to move forward with it (even though there are people that do have write access to the repository. There has been a rewrite of the project that provides similar functionality. Please check it out here: https://github.com/sensslen/nuget-license.

A .net core tool to print the licenses of a project. This tool support .NET Core and .NET Standard Projects.

dotnet-project-licenses tool

Install tool

dotnet tool install --global dotnet-project-licenses

Uninstall tool

dotnet tool uninstall --global dotnet-project-licenses

Usage

Usage: dotnet-project-licenses [options]

Options:

Example tool commands

dotnet-project-licenses --help
dotnet-project-licenses -i projectFolder

Print unique licenses

Values for the input may include a folder path, a Visual Studio '.sln' file, a '.csproj' or a '.fsproj' file or a '.vbproj' file.

dotnet-project-licenses -i projectFolder -u

Creates output file of unique licenses in a plain text 'licenses.txt' file in current directory

dotnet-project-licenses -i projectFolder -u -o

Create output file 'new-name.txt' in another directory

dotnet-project-licenses -i projectFolder -o --outfile ../../../another/folder/new-name.txt

Creates output json file of unique licenses in a file 'licenses.json' in the current directory

dotnet-project-licenses -i projectFolder -u -o -j

Exports all license texts in the current directory

dotnet-project-licenses -i projectFolder --export-license-texts

Exports all license texts in ~/Projects/github directory and output json in ~/Projects/output.json

dotnet-project-licenses -i projectFolder -o -j -f ~/Projects/github --outfile ~/Projects/output.json --export-license-texts

Exports all license texts in the current directory excluding all Microsoft packages. Licenses in HTML format are saved as plain text files.

dotnet-project-licenses -i projectFolder --export-license-texts --convert-html-to-text --packages-filter '/Microsoft.*/'

Prints licenses used by a compiled solution excluding all System packages

dotnet-project-licenses -i projectSolution.sln --use-project-assets-json --packages-filter '#System\..*#'

Use a proxy server when getting nuget package information via http requests

dotnet-project-licenses -i projectFolder --proxy-url "http://my.proxy.com:8080"

Use a proxy server requiring authentication with the system credentials

dotnet-project-licenses -i projectFolder --proxy-url "http://my.proxy.com:8080" --proxy-system-auth

Docker

Build the image

docker build . -t nuget-license

Run the image and export the licenses locally

docker run -it -v projectPath:/tmp nuget-license -i /tmp -f /tmp --export-license-texts -l Verbose

where projectPath is the path of the project that you want to export the licenses. 
You can also add the command parameters of the tool.

ex.
docker run -it -v ~/Projects/github/nuget-license:/tmp nuget-license -i /tmp -o --export-license-texts -l Verbose
Badges
Extracted from project README's
Build Status NuGet
Related Projects