Skip to content

Installation

  • Python 3.10+
  • No external dependencies required for the core
Terminal window
# From the project directory
pip install .

This installs the sonar-catalog CLI with SQLite backend and SHA-256 hashing. No C extensions or system libraries needed.

Install individual extras based on your needs:

Terminal window
# BLAKE3 hashing (5-10x faster than SHA-256)
pip install ".[blake3]"
# Flask web UI with CesiumJS globe
pip install ".[web]"
# PostgreSQL backend (for multi-machine setups)
pip install ".[postgres]"
# python-magic MIME type detection
pip install ".[magic]"
# Everything
pip install ".[all]"
Terminal window
pip install -e ".[dev,all]"

This adds pytest, pytest-cov, ruff, and mypy for development.

ExtraPackagePurpose
blake3blake3>=0.4BLAKE3 content hashing — significantly faster than SHA-256 on large files
webflask>=3.0Web interface with search UI and CesiumJS 3D globe
postgrespsycopg2-binary>=2.9PostgreSQL database backend for multi-machine deployments
magicpython-magic>=0.4MIME type detection via libmagic
devpytest, ruff, mypyTesting and linting tools
Terminal window
sonar-catalog --version
sonar-catalog --help
  • macOS: Works out of the box. NFS mount discovery uses the mount command.
  • Linux: Full feature set. Uses /proc/mounts, autofs maps, and showmount.
  • Windows: Not supported (NFS mount resolution depends on Unix paths).