Skip to content

Commit b3aae73

Browse files
Add new pip install instructions
1 parent 4461d4c commit b3aae73

File tree

4 files changed

+86
-12
lines changed

4 files changed

+86
-12
lines changed

.gitignore

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,3 +62,7 @@ venv/
6262
build/
6363
!.github/actions/build/
6464
!.github/actions/build/**
65+
66+
# Documentation
67+
!docs/source/Build/
68+
*.git-template

docs/source/Build.rst

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,28 @@
1-
Build
2-
=====
1+
Building from Source
2+
====================
3+
4+
.. _bskInstall-build:
5+
6+
For advanced users and developers who want to customize or debug Basilisk. For
7+
most users the precompiled version available on PyPI is sufficient. See the
8+
:ref:`Install Instructions <bskInstall>` for more information.
9+
10+
.. note::
11+
To use custom C++ modules, Basilisk must be built from source.
12+
The prebuilt PyPI wheels are designed for most users and include all standard
13+
features, but they do not yet support linking external C++ modules.
14+
We're actively exploring ways to enable this in future releases.
315

416
.. toctree::
517
:maxdepth: 1
618
:caption: Contents:
719

8-
Build/customPython
920
Build/pullCloneBSK
1021
Build/installOnLinux
1122
Build/installOnMacOS
1223
Build/installOnWindows
1324
Build/installBuild
1425
Build/buildExtModules
26+
Build/customPython
1527
Build/installBuildConan
1628
Build/pipInstall

docs/source/Install.rst

Lines changed: 66 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,71 @@
1-
.. Basilisk documentation master file, created by
2-
sphinx-quickstart on Mon Sep 23 13:52:19 2019.
3-
You can adapt this file completely to your liking, but it should at least
4-
contain the root `toctree` directive.
5-
61
.. _bskInstall:
72

83
Install
94
=======
105

11-
.. toctree::
12-
:maxdepth: 1
13-
:caption: Contents:
6+
Basilisk can be installed either from `PyPI <https://pypi.org/project/bsk/>`_ as
7+
a prebuilt wheel or built locally from source.
8+
The prebuilt wheels include all build options, such as optical navigation
9+
and MuJoCo dynamics, but do **not** support linking external C++ modules, as
10+
this requires rebuilding Basilisk.
11+
12+
If you want to use custom C++ modules, or prefer smaller install sizes by
13+
excluding unused features, you must build Basilisk from source.
14+
See the :ref:`Building from Source <bskInstall-build>` for more information.
15+
16+
.. note::
17+
We are currently investigating ways to allow users to link external C++
18+
modules while using the prebuilt PyPI wheel. Stay tuned!
19+
20+
21+
The easiest way to install Basilisk is using ``pip`` to install the prebuilt
22+
package from PyPI. Run:
23+
24+
.. code-block:: bash
25+
26+
pip install bsk
27+
28+
Or, if using `uv <https://docs.astral.sh/uv/>`_ (a modern Python package manager):
29+
30+
.. code-block:: bash
31+
32+
uv pip install bsk
33+
34+
This installs the latest stable version of Basilisk and all dependencies.
35+
To install a specific version, run:
36+
37+
.. code-block:: bash
38+
39+
pip install bsk==<version>
40+
41+
Replace ``<version>`` with the desired release number, e.g. ``2.0.0``.
42+
43+
44+
**Prebuilt wheel availability:**
45+
46+
- **Windows:** Windows 10/11 (x86_64)
47+
- **macOS:** macOS 11+ (x86_64 and Apple Silicon arm64)
48+
- **Linux:** Manylinux 2.24+ (x86_64, aarch64)
49+
50+
All wheels are built as **ABI3** packages for Basilisk supported Python
51+
versions.
52+
53+
.. note::
54+
On unsupported systems or Python versions, ``pip`` will automatically
55+
download the source archive (``.tar.gz``) and build Basilisk locally.
56+
This requires a C++ compiler toolchain and standard build tools
57+
to be installed on your system.
58+
59+
To keep the wheel size smaller, the large BSK data files are not installed by
60+
default. If the user wants to use script that assumes they are included into
61+
the Basilisk python package, then go to the command line, change the current
62+
directory to be inside the environment where Basilisk was ``pip`` installed,
63+
and run the command::
64+
65+
bskLargeData
66+
67+
This command runs a python file stored in the ``src/utilities`` folder.
68+
The ``pip install`` process automatically
69+
creates this console command in the current python environment to call this
70+
python file. The file directly downloads the missing large BSK data files and put
71+
them into the local Basilisk python package installation.

docs/source/index.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -203,7 +203,7 @@ Related Publications
203203
:includehidden:
204204

205205
Install
206-
Build
206+
Building from Source <Build>
207207
Learn
208208
Support
209209
Documentation/index

0 commit comments

Comments
 (0)