Improves readme and adds info about repo branches.
This commit is contained in:
parent
f4bad0f18b
commit
767aaf56d0
1 changed files with 52 additions and 29 deletions
|
|
@ -10,7 +10,6 @@ Interested in learning **how to create a package**? Skip directly to that sectio
|
||||||
|
|
||||||
- [Requirements](#requirements)
|
- [Requirements](#requirements)
|
||||||
- [Installation](#installation)
|
- [Installation](#installation)
|
||||||
- [Nimble's folder structure and packages](#nimbles-folder-structure-and-packages)
|
|
||||||
- [Nimble usage](#nimble-usage)
|
- [Nimble usage](#nimble-usage)
|
||||||
- [nimble refresh](#nimble-refresh)
|
- [nimble refresh](#nimble-refresh)
|
||||||
- [nimble install](#nimble-install)
|
- [nimble install](#nimble-install)
|
||||||
|
|
@ -43,6 +42,8 @@ Interested in learning **how to create a package**? Skip directly to that sectio
|
||||||
- [[Deps]/[Dependencies]](#depsdependencies)
|
- [[Deps]/[Dependencies]](#depsdependencies)
|
||||||
- [Optional](#optional)
|
- [Optional](#optional)
|
||||||
- [Troubleshooting](#troubleshooting)
|
- [Troubleshooting](#troubleshooting)
|
||||||
|
- [Nimble's folder structure and packages](#nimbles-folder-structure-and-packages)
|
||||||
|
- [Repository information](#repository-information)
|
||||||
- [Contribution](#contribution)
|
- [Contribution](#contribution)
|
||||||
- [About](#about)
|
- [About](#about)
|
||||||
|
|
||||||
|
|
@ -103,19 +104,6 @@ This will install Nimble to the default Nimble packages location:
|
||||||
``~/.nimble/pkgs``. The binary will be installed to ``~/.nimble/bin``, so you
|
``~/.nimble/pkgs``. The binary will be installed to ``~/.nimble/bin``, so you
|
||||||
will need to add this directory to your PATH.
|
will need to add this directory to your PATH.
|
||||||
|
|
||||||
## Nimble's folder structure and packages
|
|
||||||
|
|
||||||
Nimble stores everything that has been installed in ``~/.nimble`` on Unix systems
|
|
||||||
and in your ``$home/.nimble`` on Windows. Libraries are stored in
|
|
||||||
``$nimbleDir/pkgs``, and binaries are stored in ``$nimbleDir/bin``. Most Nimble
|
|
||||||
packages will provide ``.nim`` files and some documentation. The Nim
|
|
||||||
compiler is aware of Nimble and will automatically find the modules so you can
|
|
||||||
``import modulename`` and have that working without additional setup.
|
|
||||||
|
|
||||||
However, some Nimble packages can provide additional tools or commands. If you
|
|
||||||
don't add their location (``$nimbleDir/bin``) to your ``$PATH`` they will not
|
|
||||||
work properly and you won't be able to run them.
|
|
||||||
|
|
||||||
## Nimble usage
|
## Nimble usage
|
||||||
|
|
||||||
Once you have Nimble installed on your system you can run the ``nimble`` command
|
Once you have Nimble installed on your system you can run the ``nimble`` command
|
||||||
|
|
@ -517,9 +505,9 @@ structure may be enforced in the future.
|
||||||
|
|
||||||
All files and folders in the directory of where the .nimble file resides will be
|
All files and folders in the directory of where the .nimble file resides will be
|
||||||
copied as-is, you can however skip some directories or files by setting
|
copied as-is, you can however skip some directories or files by setting
|
||||||
the ``SkipDirs``, ``SkipFiles`` or ``SkipExt`` options in your .nimble file.
|
the ``skipDirs``, ``skipFiles`` or ``skipExt`` options in your .nimble file.
|
||||||
Directories and files can also be specified on a *whitelist* basis, if you
|
Directories and files can also be specified on a *whitelist* basis, if you
|
||||||
specify either of ``InstallDirs``, ``InstallFiles`` or ``InstallExt`` then
|
specify either of ``installDirs``, ``installFiles`` or ``installExt`` then
|
||||||
Nimble will **only** install the files specified.
|
Nimble will **only** install the files specified.
|
||||||
|
|
||||||
### Binary packages
|
### Binary packages
|
||||||
|
|
@ -540,7 +528,7 @@ created instead.
|
||||||
Other files will be copied in the same way as they are for library packages.
|
Other files will be copied in the same way as they are for library packages.
|
||||||
|
|
||||||
Binary packages should not install .nim files so include
|
Binary packages should not install .nim files so include
|
||||||
``SkipExt = "nim"`` in your .nimble file, unless you intend for your package to
|
``skipExt = @["nim"]`` in your .nimble file, unless you intend for your package to
|
||||||
be a binary/library combo which is fine.
|
be a binary/library combo which is fine.
|
||||||
|
|
||||||
Dependencies are automatically installed before building.
|
Dependencies are automatically installed before building.
|
||||||
|
|
@ -672,25 +660,25 @@ Nimble includes a ``publish`` command which does this for you automatically.
|
||||||
|
|
||||||
#### Optional
|
#### Optional
|
||||||
|
|
||||||
* ``SkipDirs`` - A list of directory names which should be skipped during
|
* ``skipDirs`` - A list of directory names which should be skipped during
|
||||||
installation, separated by commas.
|
installation, separated by commas.
|
||||||
* ``SkipFiles`` - A list of file names which should be skipped during
|
* ``skipFiles`` - A list of file names which should be skipped during
|
||||||
installation, separated by commas.
|
installation, separated by commas.
|
||||||
* ``SkipExt`` - A list of file extensions which should be skipped during
|
* ``skipExt`` - A list of file extensions which should be skipped during
|
||||||
installation, the extensions should be specified without a leading ``.`` and
|
installation, the extensions should be specified without a leading ``.`` and
|
||||||
should be separated by commas.
|
should be separated by commas.
|
||||||
* ``InstallDirs`` - A list of directories which should exclusively be installed,
|
* ``installDirs`` - A list of directories which should exclusively be installed,
|
||||||
if this option is specified nothing else will be installed except the dirs
|
if this option is specified nothing else will be installed except the dirs
|
||||||
listed here, the files listed in ``InstallFiles``, the files which share the
|
listed here, the files listed in ``installFiles``, the files which share the
|
||||||
extensions listed in ``InstallExt``, the .nimble file and the binary
|
extensions listed in ``installExt``, the .nimble file and the binary
|
||||||
(if ``bin`` is specified). Separated by commas.
|
(if ``bin`` is specified). Separated by commas.
|
||||||
* ``InstallFiles`` - A list of files which should be exclusively installed,
|
* ``installFiles`` - A list of files which should be exclusively installed,
|
||||||
this complements ``InstallDirs`` and ``InstallExt``. Only the files listed
|
this complements ``installDirs`` and ``installExt``. Only the files listed
|
||||||
here, directories listed in ``InstallDirs``, files which share the extension
|
here, directories listed in ``installDirs``, files which share the extension
|
||||||
listed in ``InstallExt``, the .nimble file and the binary (if ``bin`` is
|
listed in ``installExt``, the .nimble file and the binary (if ``bin`` is
|
||||||
specified) will be installed. Separated by commas.
|
specified) will be installed. Separated by commas.
|
||||||
* ``InstallExt`` - A list of file extensions which should be exclusively
|
* ``installExt`` - A list of file extensions which should be exclusively
|
||||||
installed, this complements ``InstallDirs`` and ``InstallFiles``.
|
installed, this complements ``installDirs`` and ``installFiles``.
|
||||||
Separated by commas.
|
Separated by commas.
|
||||||
* ``srcDir`` - Specifies the directory which contains the .nim source files.
|
* ``srcDir`` - Specifies the directory which contains the .nim source files.
|
||||||
**Default**: The directory in which the .nimble file resides; i.e. root dir of
|
**Default**: The directory in which the .nimble file resides; i.e. root dir of
|
||||||
|
|
@ -716,6 +704,19 @@ Nimble includes a ``publish`` command which does this for you automatically.
|
||||||
**Example**: ``nim >= 0.10.0, jester``; with this value your package will
|
**Example**: ``nim >= 0.10.0, jester``; with this value your package will
|
||||||
depend on ``nim`` version 0.10.0 or greater and on any version of ``jester``.
|
depend on ``nim`` version 0.10.0 or greater and on any version of ``jester``.
|
||||||
|
|
||||||
|
## Nimble's folder structure and packages
|
||||||
|
|
||||||
|
Nimble stores everything that has been installed in ``~/.nimble`` on Unix systems
|
||||||
|
and in your ``$home/.nimble`` on Windows. Libraries are stored in
|
||||||
|
``$nimbleDir/pkgs``, and binaries are stored in ``$nimbleDir/bin``. Most Nimble
|
||||||
|
packages will provide ``.nim`` files and some documentation. The Nim
|
||||||
|
compiler is aware of Nimble and will automatically find the modules so you can
|
||||||
|
``import modulename`` and have that working without additional setup.
|
||||||
|
|
||||||
|
However, some Nimble packages can provide additional tools or commands. If you
|
||||||
|
don't add their location (``$nimbleDir/bin``) to your ``$PATH`` they will not
|
||||||
|
work properly and you won't be able to run them.
|
||||||
|
|
||||||
## Troubleshooting
|
## Troubleshooting
|
||||||
|
|
||||||
* ```SSL support is not available. Cannot connect over SSL. [HttpRequestError]```
|
* ```SSL support is not available. Cannot connect over SSL. [HttpRequestError]```
|
||||||
|
|
@ -725,6 +726,28 @@ flag to the file ```src/nimble.nim.cfg```.
|
||||||
After that, you can run ```src/nimble install``` and overwrite the existing
|
After that, you can run ```src/nimble install``` and overwrite the existing
|
||||||
installation.
|
installation.
|
||||||
|
|
||||||
|
## Repository information
|
||||||
|
|
||||||
|
This repository has two main branches: ``master`` and ``stable``.
|
||||||
|
|
||||||
|
The ``master`` branch is...
|
||||||
|
|
||||||
|
* default
|
||||||
|
* bleeding edge
|
||||||
|
* tested to compile with the latest Nim version
|
||||||
|
|
||||||
|
The ``stable`` branch is...
|
||||||
|
|
||||||
|
* installed by ``koch tools``/``koch nimble``
|
||||||
|
* relatively stable
|
||||||
|
* should compile with Nim HEAD as well as the latest Nim version
|
||||||
|
|
||||||
|
Note: The travis build only tests whether Nimble works with the latest Nim
|
||||||
|
version.
|
||||||
|
|
||||||
|
A new Nim release (via ``koch xz``) will always bundle the latest tagged
|
||||||
|
Nimble release.
|
||||||
|
|
||||||
## Contribution
|
## Contribution
|
||||||
|
|
||||||
If you would like to help, feel free to fork and make any additions you see fit
|
If you would like to help, feel free to fork and make any additions you see fit
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue