Skip to main content

Basilisk SDK (bsk-sdk)

A self-contained Python wheel that gives external projects everything they need to build Basilisk compatible SWIG plugins without vendoring the full simulation codebase.

Quick start

pip install bsk-sdk

Then in your plugin's CMakeLists.txt:

find_package(bsk-sdk CONFIG REQUIRED)

bsk_add_swig_module(
  TARGET myPlugin
  INTERFACE swig/myPlugin.i
  SOURCES myPlugin.cpp
)

bsk_add_swig_module automatically compiles the vendored Basilisk SDK sources (arch_min, arch_utilities, runtime_min, and built-in C message interfaces) directly into your plugin, so no separate link targets are needed. Basilisk utility headers are available at their standard paths, for example:

#include "architecture/utilities/orbitalMotion.h"

C modules can include built-in message C interfaces at the same paths used by Basilisk modules:

#include "cMsgCInterface/SpicePlanetStateMsg_C.h"

If your plugin needs additional link targets, pass them via LINK_LIBS and they will be appended after the SDK defaults.

See examples/custom-atm-plugin/ for a complete working example.

Syncing from Basilisk

The SDK vendors a curated subset of Basilisk headers and sources. These are synced from a pinned Basilisk commit via a Git submodule.

git submodule update --init --recursive
python3 tools/sync_all.py
pip install -e .

Or opt into auto-sync during build:

BSK_SDK_AUTO_SYNC=1 pip install -e .

Updating to a newer Basilisk version

cd external/basilisk
git fetch && git checkout <tag-or-commit>
cd ../..
python3 tools/sync_all.py

Versioning

The bsk-sdk package version tracks the Basilisk version it was synced from (e.g. bsk-sdk==2.9.1 contains headers from Basilisk v2.9.1).

At CMake configure time, the SDK checks that the installed Basilisk version matches and errors out on a mismatch. This prevents silent ABI incompatibilities where plugins are compiled against headers from one Basilisk version but linked against a different runtime.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bsk_sdk-2.11.0.tar.gz (358.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bsk_sdk-2.11.0-py3-none-any.whl (3.3 MB view details)

Uploaded Python 3

File details

Details for the file bsk_sdk-2.11.0.tar.gz.

File metadata

  • Download URL: bsk_sdk-2.11.0.tar.gz
  • Upload date:
  • Size: 358.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for bsk_sdk-2.11.0.tar.gz
Algorithm Hash digest
SHA256 7da57d3ae4615a1a0333128e88e78566058ea215dca3c75134067e650020cf03
MD5 9e1f51c6a5f466cbc0b38b91c07ef776
BLAKE2b-256 c57836145336e653d5fb72deb2f99f4934e1128427c359aab32103b76181c363

See more details on using hashes here.

Provenance

The following attestation bundles were made for bsk_sdk-2.11.0.tar.gz:

Publisher: publish-wheels.yml on AVSLab/bsk_sdk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file bsk_sdk-2.11.0-py3-none-any.whl.

File metadata

  • Download URL: bsk_sdk-2.11.0-py3-none-any.whl
  • Upload date:
  • Size: 3.3 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for bsk_sdk-2.11.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3ec7881f08edc153c751416328fa359b44d9812cd3561e896033cf22bce98ba4
MD5 cd6bbc4b2e3f6e7594c257b9e6461ad0
BLAKE2b-256 f479c65b6c7cc7f5e1f9eff23ccd5132f1e90ff8996ddb4ea10b7ba4017be9f4

See more details on using hashes here.

Provenance

The following attestation bundles were made for bsk_sdk-2.11.0-py3-none-any.whl:

Publisher: publish-wheels.yml on AVSLab/bsk_sdk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page