nue
is a tool developed to extract NuGet packages into a folder structure that is compatible with the docs.microsoft.com .NET API documentation infrastructure.
It accepts a *.csv
file as a source, and then relies on nuget.exe
to install individual packages and collect their dependencies.
The core executable is nue.exe
. It accepts the following parameters:
-p
or--packages
- Path to package listing CSV file. See the structure for the file below.-o
or--output
- Output path. It's acceptable if the folder does not yet exist, as nue will create one for you.-f
or--frameworks
- Framework for which to extract the packages. Use the TFMs reference to target folders in thelib
folder of the main package.-n
or--nugetpath
- Path tonuget.exe
when working inle
(local extraction) mode. This can be downloaded on the official NuGet page.
When working with a list of packages, generally you need to follow the structure:
{package_moniker_base},{package_ID},{version}
{package_moniker_base},{package_ID}
{package_moniker_base},{package_ID},{version}
The moniker will be assembled by combining the {package_moniker_base}
and {version}
, in this form: {package_moniker}-{version}
, where {version}
is available. When the {version}
value is not specified, the {package_moniker_base}
will become the moniker.
- When in the CSV, a version is specified after a package ID, that specific version will be installed and subsequently - processed.
- If no version is specified after the package ID, the latest available version for the package will be installed (can be either stable or pre-release, depending on configuration).
In some cases, you might need to create custom package onboarding scenarios. To handle those, we are enabling custom parameters, that can be included before the package ID, in square brackets, as such:
{package_moniker},[custom_parameter=value]{package_ID}
The following custom parameters are supported:
Parameter | Description |
---|---|
customSource |
URL to a custom feed for the package. |
tfm |
Overrides the global TFM for the specific package. |
altDep |
Alternative dependency TFM - helpful when you have a specific TFM for the core library, but a different TFM for dependency libraries. |
isPrerelease |
Required to install a pre-release package. |
customDependencyFolder |
A custom folder from which we need to pull dependencies. Relative to the package root. |