riotgen is a command line interface helper tool that is used to bootstrap RIOT source files for standalone applications, board supports, driver modules, system modules, packages and example/test applications.
Installation
Install riotgen using pip:
pip install riotgen
Installing from source
Clone this repository:
git clone git://github.com/aabadie/riot-generator.git
Install using pip from the source directory:
cd riot-generator pip install .
Usage
riotgen uses subcommands for generating the code for applications, tests, packages and board support:
riotgen --help Usage: riotgen [OPTIONS] COMMAND [ARGS]... Options: --version Show the version and exit. --help Show this message and exit. Commands: application Bootstrap a RIOT application board Bootstrap a RIOT board support driver Bootstrap a RIOT driver module example Bootstrap a RIOT example application module Bootstrap a RIOT system module pkg Bootstrap a RIOT external package test Bootstrap a RIOT test application
Examples
Generate an application in the current directory that build against the RIOT source located in /opt/RIOT and using the interactive wizzard:
riotgen application -i -r /opt/RIOT
or:
RIOTBASE=/opt/RIOT riotgen application -i
The command line wizard will ask for questions about the new application: target board, RIOT base directory, author name, etc.
Generate an application using a configuration file (see the samples provided in the source code):
riotgen application --riotbase /opt/RIOT --config path/to/config/file.cfg
In both cases, once complete, the new application can be built using:
make
example, driver, module, pkg, test and board subcommands generate the skeleton code directly in the RIOT base directory:
riotgen example --riotbase /opt/RIOT -i riotgen driver --riotbase /opt/RIOT -i riotgen module --riotbase /opt/RIOT -i riotgen pkg --riotbase /opt/RIOT -i riotgen board --riotbase /opt/RIOT -i riotgen test --riotbase /opt/RIOT -i
Testing
Testing is performed using the Tox automation tool. You can install Tox using pip:
pip install tox
To run the whole tests and checks, use:
tox
To only run the tests, use:
tox -e tests
To only run the static checks (flake8, black, twine --check), use:
tox -e check
To reformat your code following the black tool, use:
tox -e format
Metadata
Release files for riotgen 0.14.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| riotgen-0.14.0.tar.gz | 23.9 kB | Without provenance | Details for riotgen-0.14.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| riotgen-0.14.0-py3-none-any.whl | Python 3 | none | any | Details for riotgen-0.14.0-py3-none-any.whl |
Total release size: 60.4 kB
Release files / riotgen-0.14.0.tar.gz
| Download URL | riotgen-0.14.0.tar.gz |
|---|---|
| Size | 23.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
0f683cb44996f0f57e255e0d6ea7b903d250df28dbebaa7c1f4e55d01713f198
|
|
BLAKE2b-256 checksum How to use checksums |
1b196d263a081460e696fed1b888a8b915ae4e5b53540ea06ed6a9e00bb1192f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.9.25
|
Release files / riotgen-0.14.0-py3-none-any.whl
| Download URL | riotgen-0.14.0-py3-none-any.whl |
|---|---|
| Size | 36.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
eb7f11ffe0cac6545c2ef9b0799cfc774e3f8cc23e09fba6215f6d4461608135
|
|
BLAKE2b-256 checksum How to use checksums |
f1e750c96f03d422b6ddbd0b62e1d042cc8b33e8fcfcaa8230d66b640a1c7120
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.9.25
|
Security for riotgen 0.14.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.