2022-06-25 21:53:50 +00:00
|
|
|
<!-- SPDX-FileCopyrightText: 2022 Anna <cyber@sysrq.in> -->
|
|
|
|
<!-- SPDX-License-Identifier: CC0-1.0 -->
|
|
|
|
|
|
|
|
nimbus
|
|
|
|
======
|
|
|
|
|
|
|
|
**nimbus** is a **Nim** **bu**ild **s**ystem. You can also call in NimBS. Nimja
|
2022-07-13 10:31:56 +00:00
|
|
|
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).
|
2022-06-25 21:53:50 +00:00
|
|
|
|
2022-07-13 12:05:51 +00:00
|
|
|
[Read the manpage online][man]
|
|
|
|
|
|
|
|
[man]: https://docs.sysrq.in/nimbus
|
|
|
|
|
2022-06-25 21:53:50 +00:00
|
|
|
|
|
|
|
Raison d'être
|
|
|
|
-------------
|
|
|
|
|
|
|
|
[nimble](https://github.com/nim-lang/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][ninja]
|
|
|
|
or [samurai][samurai] to use it.
|
|
|
|
|
2022-07-13 10:31:56 +00:00
|
|
|
If you want depfile support (`--useDepfile` flag), build Nim with my
|
|
|
|
[nim-patches][nim-patches].
|
|
|
|
|
2022-06-25 21:53:50 +00:00
|
|
|
[ninja]: https://ninja-build.org/
|
|
|
|
[samurai]: https://github.com/michaelforney/samurai
|
|
|
|
|
2022-07-13 10:31:56 +00:00
|
|
|
[nim-patches]: https://git.sysrq.in/nim-patches/
|
|
|
|
|
2022-06-25 21:53:50 +00:00
|
|
|
|
|
|
|
Installing
|
|
|
|
----------
|
|
|
|
|
|
|
|
* Using nimble:
|
|
|
|
|
|
|
|
`nimble install`
|
|
|
|
|
2022-06-28 23:01:47 +00:00
|
|
|
* Using just Nim compiler:
|
2022-06-25 21:53:50 +00:00
|
|
|
|
2022-06-29 04:33:05 +00:00
|
|
|
`nim c src/nimbus`
|
2022-06-28 23:01:47 +00:00
|
|
|
|
|
|
|
|
|
|
|
Testing
|
|
|
|
-------
|
|
|
|
|
|
|
|
```sh
|
|
|
|
$ testament all
|
|
|
|
```
|
2022-06-25 21:53:50 +00:00
|
|
|
|
|
|
|
|
2022-07-13 11:45:37 +00:00
|
|
|
Packaging
|
|
|
|
---------
|
|
|
|
|
|
|
|
You can track new releases using an [atom feed][atom] provided by GitHub.
|
|
|
|
|
|
|
|
[atom]: https://github.com/cybertailor/nimbus/releases.atom
|
|
|
|
|
|
|
|
|
2022-06-25 21:53:50 +00:00
|
|
|
Contributing
|
|
|
|
------------
|
|
|
|
|
|
|
|
Patches and pull requests are welcome. Please use either [git-send-email(1)][1]
|
|
|
|
or [git-request-pull(1)][2], addressed to <cyber@sysrq.in>.
|
|
|
|
|
2022-06-28 23:05:52 +00:00
|
|
|
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.
|
|
|
|
```
|
|
|
|
|
2022-06-25 21:53:50 +00:00
|
|
|
[1]: https://git-send-email.io/
|
|
|
|
[2]: https://git-scm.com/docs/git-request-pull
|
|
|
|
|
|
|
|
|
2022-06-29 11:10:09 +00:00
|
|
|
IRC
|
|
|
|
---
|
|
|
|
|
|
|
|
You can join the `#nimbus` channel either on [OFTC][oftc] or
|
|
|
|
[via Matrix][matrix].
|
|
|
|
|
|
|
|
[oftc]: https://www.oftc.net/
|
|
|
|
[matrix]: https://matrix.to/#/#nimbus:matrix.org
|
|
|
|
|
|
|
|
|
2022-06-25 21:53:50 +00:00
|
|
|
License
|
|
|
|
-------
|
|
|
|
|
|
|
|
* BSD-3-Clause
|
|
|
|
* Apache-2.0 (`ninja_syntax.nim`)
|