Skip to main content

ntxbuild

PyPI Python 3.10+ Linux CI Docs License

NuttX Build System Assistant for configuring and building NuttX RTOS projects through a CLI and a Python API.

ntxbuild wraps common NuttX tools and workflows, including make, kconfig-tweak, menuconfig, and configure.sh. It also provides helpers for downloading toolchains, listing boards and defconfigs, and managing build environment paths.

Installation

Install from PyPI:

python -m pip install ntxbuild

Features

  • Environment management: automatic NuttX workspace detection and configuration.
  • Python API: script builds directly from Python.
  • Real-time output: live build progress with proper ANSI escape sequence handling.
  • Configuration management: Kconfig integration for easy configuration.
  • Interactive tools: support for curses-based tools such as menuconfig.
  • Toolchain support: install and use common toolchains directly from the CLI.

Requirements

  • Python 3.10+
  • NuttX source code and applications
  • Make and standard build tools required by NuttX
  • CMake (optional)

Quick Start

Build with the CLI

Create a workspace and download NuttX and NuttX Apps:

mkdir -p ~/nuttxspace
cd ~/nuttxspace
ntxbuild download

Build the simulator using the nsh defconfig:

ntxbuild start sim nsh
ntxbuild build --parallel 8

Build with Python

from pathlib import Path
from ntxbuild.build import MakeBuilder

current_dir = Path.cwd()

# First parameter is the NuttX workspace path, second is the apps directory name.
builder = MakeBuilder(current_dir, "nuttx-apps")
builder.initialize("sim", "nsh")
builder.build(parallel=10)
builder.distclean()

Install toolchains

ntxbuild toolchain install gcc-arm-none-eabi

Documentation

Full documentation (usage and API reference): https://ntxbuild.readthedocs.io

Support

Contributing

Contributions are welcome and reviewed before merge.

  • Tests and documentation are required for new features.
  • Dependencies should be kept to a minimum.
  • Code linting via pre-commit is required.

Installing from source:

git clone https://github.com/fdcavalcanti/ntxbuild.git
cd ntxbuild
pip install -e .

Optional extras automatically install required development tools or documentation build tools:

pip install -e ".[dev]"
pip install -e ".[docs]"

License

This project is licensed under the terms in LICENSE.

Metadata

Release files for ntxbuild 1.0.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 ntxbuild 1.0.0
File Size Uploaded
ntxbuild-1.0.0.tar.gz 57.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for ntxbuild 1.0.0
File Interpreter ABI Platform
ntxbuild-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 93.5 kB

Release files / ntxbuild-1.0.0.tar.gz

Download URL ntxbuild-1.0.0.tar.gz
Size 57.4 kB
Tags Source
SHA-256 checksum
How to use checksums
6c0e7e5ff2d5ce24ecf87d5454b694e15daa6afa43c5a8a49b261a260526d652
BLAKE2b-256 checksum
How to use checksums
4bbd65226db7c259c78d04c9d3d10b7d1643d36b1a64bddfbf37525db7e7c027
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 19, 2026.

Transparency log

Release files / ntxbuild-1.0.0-py3-none-any.whl

Download URL ntxbuild-1.0.0-py3-none-any.whl
Size 36.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e107e8813d0b01a36ea19908add0cd9006b1dcca8817107d484c298d9ead15f5
BLAKE2b-256 checksum
How to use checksums
75368052a85e0d04ce0b929e854460d755b1e34105f56ab5390a92df179c49d2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 19, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 release files

0.7.0

2 release files

0.6.0

2 release files

0.5.0

2 release files

0.4.0

2 release files

0.3.0

2 release files

0.2.0

2 release files

0.1.1

2 release files

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