diff --git a/README.md b/README.md index ca25027..a0c1e95 100644 --- a/README.md +++ b/README.md @@ -23,7 +23,7 @@ A: **rustac** can If you don't need those things, **rustac** probably isn't for you — use **pystac** and its friend, [pystac-client](https://github.com/stac-utils/pystac-client). -## Usage +## Installation Install via **pip**: @@ -41,7 +41,22 @@ Or via **conda**: conda install conda-forge::rustac ``` -Then: +### From source + +By default, **rustac** wants to find DuckDB on your system: + +```shell +brew install duckdb # if you're using Homebrew ... if not, get DuckDB another way +python -m pip install -U git+https://github.com/stac-utils/rustac-py +``` + +If you don't want to (or can't) install DuckDB, _can_ build DuckDB as a "bundled" build (warning: it takes a while): + +```shell +MATURIN_PEP517_ARGS="--features=duckdb-bundled" python -m pip install -U git+https://github.com/stac-utils/rustac-py +``` + +## Usage ```python exec="on" source="above" import asyncio @@ -87,7 +102,7 @@ asyncio.run(main()) See [the documentation](https://stac-utils.github.io/rustac-py) for details. In particular, our [examples](https://stac-utils.github.io/rustac-py/latest/generated/gallery/) demonstrate some of the more interesting features. -## CLI +## Command line interface (CLI) **rustac** comes with a CLI: @@ -95,9 +110,6 @@ In particular, our [examples](https://stac-utils.github.io/rustac-py/latest/gene rustac -h ``` -> [!NOTE] -> Before **rustac** v0.5.4, the CLI was its own PyPI package named **stacrs-cli**, which is no longer needed. - ## stac-geoparquet **rustac** replicates much of the behavior in the [stac-geoparquet](https://github.com/stac-utils/stac-geoparquet) library, and even uses some of the same Rust dependencies.