gems for .net
Ruby Shell
Pull request Compare This branch is 50 commits behind phatboyg:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


Nubular - Gems for .NET

Nu will automatically download and install specified library packages into your lib folder, along with all their dependencies.

IMPORTANT: This is so alpha its omega...

For more information, check out the project wiki:

Inspired by bundler for ruby:


    nu -h/--help
    nu -v/--version
    nu COMMAND [arguments...] [options...]

Options and Switches:
    -v, --version VERSION            Specify version of package to install
    -r, --report                     Report on the packages currently installed in the lib folder. When called as a switch it will run the report AFTER executing the requested command.
    -V, --verbose
    -q, --quiet
        --json                       Run in JSON mode. All outputs will be in JSON, status messages silenced.
    -h, --help                       Display this screen


  • nu install log4net - Install the most current version of log4net in your gem cache, downloading it if required.
  • nu install log4net --version 1.2.3 - Install version 1.2.3 of log4net, downloading it if required.
  • nu install log4net --report - Install log4net and then output a list of all the packages in the lib folder.
  • nu report - Just output a list of all the packages in the lib folder.
  • nu config lib.location ./third_party
  • nu config lib.use_long_names true


The following commands are available:

  • install PACKAGE [options...] - Installs the specified package into the folder configured in lib.location. The --version VERSION switch can be used to specify a specific version of the package.
  • report - Outputs a report listing the currently installed packages in the lib folder.
  • config OPTION_NAME VALUE - Stores the specified value for the specified configuration option.
  • config OPTION_NAME - Displays the current value for the specified configuration option.


The config command works a lot like Git's. You can pass in any string and the value will be stored. If there is code that cares about the value you set, it will be affected, otherwise nothing will happen.

These are the current active config values:

  • lib.location - The path to the library folder Nu will be placing the packages into. Defaults to ./lib
  • lib.use_long_names - If true Nu will place the packages in folders that include the version number. i.e. log4net-1.2.3. Defaults to false. (Note: this option can make it difficult to upgrade packages in the future as all the project references will have to be adjusted if the version changes.)

And, coming soon:

  • platform - Specifies the specific .net platform to target. (When a package cares.)


The --json switch is useful for integrating with nu. Passing --json will cause chatty stuff to be silenced and normal output to be JSON structures.

For debugging, using --json --verbose will cause debug logging to nu.log

Hint: Use the --report with --json to have nu update with the final state of the folder.

The plan is that each new feature will be made available via JSON as well as through the normal CLI interface.

--version, to get the version of nu, does not work with the --json switch. --version as an option to INSTALL does though.


Apache 2.0 - see docs\legal (just LEGAL in the zip folder)



see legal\CREDITS