{"id":24641170,"url":"https://github.com/outpost-os/barbican","last_synced_at":"2026-02-27T19:39:56.790Z","repository":{"id":271746993,"uuid":"856833494","full_name":"outpost-os/barbican","owner":"outpost-os","description":null,"archived":false,"fork":false,"pushed_at":"2025-01-20T15:12:19.000Z","size":1435,"stargazers_count":0,"open_issues_count":1,"forks_count":1,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-09-28T23:22:43.612Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/outpost-os.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-09-13T09:42:16.000Z","updated_at":"2025-01-20T15:12:21.000Z","dependencies_parsed_at":null,"dependency_job_id":"a946d057-13f2-44bc-a069-0d23675cb0d8","html_url":"https://github.com/outpost-os/barbican","commit_stats":null,"previous_names":["outpost-os/barbican"],"tags_count":14,"template":false,"template_full_name":null,"purl":"pkg:github/outpost-os/barbican","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/outpost-os%2Fbarbican","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/outpost-os%2Fbarbican/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/outpost-os%2Fbarbican/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/outpost-os%2Fbarbican/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/outpost-os","download_url":"https://codeload.github.com/outpost-os/barbican/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/outpost-os%2Fbarbican/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29910657,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-27T19:37:42.220Z","status":"ssl_error","status_checked_at":"2026-02-27T19:37:41.463Z","response_time":57,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-01-25T12:12:31.891Z","updated_at":"2026-02-27T19:39:56.774Z","avatar_url":"https://github.com/outpost-os.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003c!--\nSPDX-FileCopyrightText: 2024 - 2025 Ledger SAS\n\nSPDX-License-Identifier: Apache-2.0\n--\u003e\n\n# Outpost Barbican\n\nBarbican is the Outpost OS meta tools for building project, SDK and integration,\nwritten in python.\n\n## Dependencies\n - Python \u003e= 3.10\n - Jinja2 \u003e= 3.1.0\n - jinja-cli \u003e= 1.2.0\n - jsonschema \u003e= 4.18.0\n - kconfiglib \u003e= 14.1.0\n - lief \u003e= 0.13,\u003c0.15\n - meson \u003e= 1.4.0,\u003c1.5.0\n - ninja \u003e= 1.11.0\n - ninja_syntax \u003e 1.7\n - svd2json \u003e= 0.1.6\n - dts-utils \u003e= 0.3.0\n - tomli \u003e= 2.0.1; python_version \u003c '3.11'\n - referencing \u003e= 0.33.0\n - rich \u003e= 13.6\n - GitPython \u003e= 3.1.43\n\n## Usage\n\nA project is describe by a toml configuration file, a dts for the targeted SoC\nand `Kconfig` `dotconfig` for kernel and application(s).\n\n### Configuration\n\nThe following is the sample project configuration describing a simple project with\nsimple application(s)\n\n```toml\nname = 'HelloWorld Project'\nlicense = 'Apache-2.0'\nlicense_file = ['LICENSE.txt']\ndts = 'dts/sample.dts'\ncrossfile = 'cm33-none-eabi-gcc.ini'\nversion = 'v0.0.1'\n\n[kernel]\nscm.git.uri = 'https://github.com/outpost-os/sentry-kernel.git'\nscm.git.revision = 'main'\nconfig = 'configs/sentry/nucleo_u5a5.config'\n\n[runtime]\nscm.git.uri = 'git@github.com:outpost-os/shield.git'\nscm.git.revision = 'main'\nconfig = 'configs/shield/shield.config'\n\n[application.hello]\nscm.git.uri = 'https://github.com/outpost-os/sample-rust-app.git'\nscm.git.revision = 'main'\nconfig = 'configs/hello/hello.config'\nbuild.backend = 'cargo'\ndepends = []\nprovides = ['hello.elf']\n```\n\n### Download\n\nDownloads kernel/runtime and applications describe in `project.toml` to src directory\n\n```console\nbarbican download\n```\n### Update\n\nUpdates sources if configuration change and/or revision update.\nPackage need to be already downloaded to be updated.\n\n```console\nbarbican update\n```\n### Setup\n\nGenerates jinja build script for project build (i.e. kernel, runtime, application and\nfirmware integration). Files are generated in build directory.\n\n```console\nbarbican setup\n```\n\n### Build\n\n```console\ncd output/build\nninja\n```\n\n## TODO\n\n - SDK generation\n - Pre built C and Rust toolchain in SDK\n\n## License\n\n```\nCopyright 2024 - 2025 Ledger SAS\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foutpost-os%2Fbarbican","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Foutpost-os%2Fbarbican","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foutpost-os%2Fbarbican/lists"}