Skip to main content

Outpost Barbican

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

Dependencies

  • Python >= 3.10
  • Jinja2 >= 3.1.0
  • jinja-cli >= 1.2.0
  • jsonschema >= 4.18.0
  • kconfiglib >= 14.1.0
  • lief >= 0.13,<0.15
  • meson >= 1.4.0,<1.5.0
  • ninja >= 1.11.0
  • ninja_syntax > 1.7
  • svd2json >= 0.1.6
  • dts-utils >= 0.3.0
  • tomli >= 2.0.1; python_version < '3.11'
  • 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/outpost-os/sentry-kernel.git'
scm.git.revision = 'main'
config = 'configs/sentry/nucleo_u5a5.config'

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

[application.hello]
scm.git.uri = 'https://github.com/outpost-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 outpost-barbican 0.4.1

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 outpost-barbican 0.4.1
File Interpreter ABI Platform Actions
outpost_barbican-0.4.1-py3-none-any.whl Python 3 none any Details for outpost_barbican-0.4.1-py3-none-any.whl

Release files / outpost_barbican-0.4.1-py3-none-any.whl

Download URL outpost_barbican-0.4.1-py3-none-any.whl
Size 57.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
74cec49e5e6dd2cb9a68ab42b7ba8bee10a4729d5f48a1b3e2c0044af5105f56
BLAKE2b-256 checksum
How to use checksums
d4c4fda2e9d3122ff057f41b3c61df941b070df4028a16abb520c70699781620
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.8.0 pkginfo/1.9.6 readme-renderer/37.3 requests/2.31.0 requests-toolbelt/0.10.1 urllib3/1.26.17 tqdm/4.65.0 importlib-metadata/6.0.0 keyring/24.3.0 rfc3986/2.0.0 colorama/0.4.6 CPython/3.10.12

Security for outpost-barbican 0.4.1

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.

Release history Release notifications | RSS feed

This release

0.4.1 This release

1 release file No provenance

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