13 stable releases
4.0.2 | Feb 17, 2021 |
---|---|
4.0.1 | Feb 9, 2021 |
3.5.2 |
|
3.4.1 | Dec 22, 2020 |
3.3.4 | Nov 19, 2020 |
#1571 in Development tools
41 downloads per month
34KB
857 lines
WW WW NNN NN GG GG
WW W WW NN N NN GG
WW WWW WW NN NNN GG GG
WW WW NN NN GGGGGG
The W package manager
Copyleft (ɔ) 2020-2021 Wafelack
ABOUT
=====
WNG is a C package and projects manager written in Rust. It permits
projects build, run, creation and dependencies management.
It is highly customizable by a plugin system and it based on a
highly modulable library.
It is available on Windows and Unix like systems.
It only requires a few prerequisties: a C compiler and git.
DISCLAIMER
==========
##############################################################
# #
# WNG is provided under the MPL-2.0 license on an "as is" #
# basis, without warranty of any kind, either expressed, #
# implied, orstatutory, including, without limitation, #
# warranties that WNG is free of defects, merchantable, #
# fit for aparticular purpose or non-infringing, #
# as specified in the LICENSE file. #
# #
##############################################################
INSTALLATION
============
- Installing directly
WNG is available on:
- cargo `cargo install wng`
- the releases page
- Building from source:
Prerequisties: The latest stable rust toolchain
* First method (all systems)
1. Clone the project `git clone git@github.com:wngland/wng`
2. Build it `cargo build --release`
* Second method (*Nix only)
1. Download the wng-userbuild.tar.gz archive from the releases
2. Extract it
3. cd in the produced folder
3. Run `bash install`
DOCUMENTATION
=============
SETUP
-----
Use `wng setup` to enter wng basic configuration.
CONFIG
------
* Use `wng config reinit` to wipe out all the config file content
* Use `wng config edit <key> <value>` to edit/add a configuration key.
NEW
---
* Use `wng new <path>` to create a new project.
This will create `src/main.c`, `project.toml` and the build folders.
BUILD
-----
* Use `wng build [--release]` to build the current project.
The `--release` flags specifies to build with the `-O3` flag activated.
RUN
---
* Use `wng run [--release]` to build the current project and to run
the produced binary.
The `--release` flags specifies to build with the `-O3` flag activated.
CLEAN
-----
* Use `wng clean` to remove all the binaries and object files from the
`build/` folder.
DEPENDENCIES
------------
* Use `wng dependencies add <dependency>` to add a dependency to
`project.toml`.
* Use `wng dependencies remove <dependency>` to remove a dependency from
`project.toml`.
INSTALL
-------
* Use `wng install` to install the project dependencies in the `src/`
folder.
PLUGINS
-------
* WNG plugins have to be placed in `$HOME/.wng/` with a name starting by `wng-`.
* A WNG plugin can be called with: `wng -p <plugin_name_without_the_wng->`.
FUTURE
======
- MSVC support.
- Ability to run tests.
- C++ support.
ACKNOWLEDGEMENTS
================
- Wafelack <wafelack@protonmail.com>: Idea and initial work.
- Sleepy Monax: Contribution.
Dependencies
~13MB
~277K SLoC