aboutsummaryrefslogtreecommitdiff

nimbus

nimbus is a Nim build system. You can also call in NimBS. Nimja would also be a clever name but it’s already taken (turns out the name “nimbus” is taken two times already but nobody cares yet).

Raison d’être

nimble is a great tool for development but it does not get on well with system package managers.

This project is intended to be used with traditional package managers (primarly with Gentoo’s Portage). But maybe it’ll be useful for other purposes too.

Dependencies

nimbus only generates build.ninja files, so you’ll need ninja or samurai to use it.

If you want depfile support (--useDepfile flag), build Nim with my nim-patches.

Installing

  • Using nimble:

    nimble install

  • Using just Nim compiler:

    nim c src/nimbus

Testing

$ testament all

Packaging

You can track new releases using an atom feed provided by GitHub.

Contributing

Patches and pull requests are welcome. Please use either git-send-email(1) or git-request-pull(1), addressed to cyber@sysrq.in.

Your commit message should conform to the following standard:

file/changed: Concice and complete statement of the purpose

This is the body of the commit message.  The line above is the
summary.  The summary should be no more than 72 chars long.  The
body can be more freely formatted, but make it look nice.  Make
sure to reference any bug reports and other contributors.  Make
sure the correct authorship appears.

IRC

You can join the #nimbus channel either on OFTC or via Matrix.

License

  • BSD-3-Clause
  • Apache-2.0 (ninja_syntax.nim)