Skip to main content

CI status codecov riotgen version

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)

Source distribution for riotgen 0.14.0
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)

Table of built distributions (wheels) for riotgen 0.14.0
File Interpreter ABI Platform Actions
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.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page