Skip to main content

Camelot Barbican

Barbican is the Camelot OS meta tools for building project, SDK and integration, written in python.

Dependencies

  • Python >= 3.11
  • Jinja2 >= 3.1.0
  • jinja-cli >= 1.2.0
  • jsonschema >= 4.18.0
  • kconfiglib >= 14.1.0
  • lief >= 0.15
  • meson >= 1.7
  • ninja >= 1.11.0
  • ninja_syntax > 1.7
  • svd2json >= 0.1.6
  • dts-utils >= 0.3.0
  • referencing >= 0.33.0
  • rich >= 13.6
  • GitPython >= 3.1.43

Usage

A project is describe by a toml configuration file, a dts for the targeted SoC and Kconfig dotconfig for kernel and application(s).

Configuration

The following is the sample project configuration describing a simple project with simple application(s)

name = 'HelloWorld Project'
license = 'Apache-2.0'
license_file = ['LICENSE.txt']
dts = 'dts/sample.dts'
crossfile = 'cm33-none-eabi-gcc.ini'
version = 'v0.0.1'

[kernel]
scm.git.uri = 'https://github.com/camelot-os/sentry-kernel.git'
scm.git.revision = 'main'
config = 'configs/sentry/nucleo_u5a5.config'

[runtime]
scm.git.uri = 'git@github.com:camelot-os/shield.git'
scm.git.revision = 'main'
config = 'configs/shield/shield.config'

[application.hello]
scm.git.uri = 'https://github.com/camelot-os/sample-rust-app.git'
scm.git.revision = 'main'
config = 'configs/hello/hello.config'
build.backend = 'cargo'
depends = []
provides = ['hello.elf']

Download

Downloads kernel/runtime and applications describe in project.toml to src directory

barbican download

Update

Updates sources if configuration change and/or revision update. Package need to be already downloaded to be updated.

barbican update

Setup

Generates jinja build script for project build (i.e. kernel, runtime, application and firmware integration). Files are generated in build directory.

barbican setup

Build

cd output/build
ninja

TODO

  • SDK generation
  • Pre built C and Rust toolchain in SDK

License

Copyright 2024 - 2025 Ledger SAS

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

 http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Metadata

Release files for camelot-barbican 0.4.7

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for camelot-barbican 0.4.7
File Interpreter ABI Platform Actions
camelot_barbican-0.4.7-py3-none-any.whl Python 3 none any Details for camelot_barbican-0.4.7-py3-none-any.whl

Release files / camelot_barbican-0.4.7-py3-none-any.whl

Download URL camelot_barbican-0.4.7-py3-none-any.whl
Size 65.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
beb25bd21ab65689e54734f0abe81564394c3ed41087e4008273d937239c4c97
BLAKE2b-256 checksum
How to use checksums
2e7301a03533feb9cc75e67ed2207fda22c9b9e49bf95beb484141d795d91b79
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.5

Security for camelot-barbican 0.4.7

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