Installation

Install

Requires Python 3.10 or higher.

Create a virtual environment and install the package into it (do not install into system Python):

python3 -m venv .venv
source .venv/bin/activate
pip install rms-ephemeris-tools

This provides the ephemeris-tools command.

Optional dependencies

Install extras for development or documentation:

pip install "rms-ephemeris-tools[dev]"
pip install "rms-ephemeris-tools[docs]"

Use [dev] for testing, linting, type-checking, and coverage; use [docs] for building Sphinx documentation.

Web tools (CGI forms and samples)

To deploy the bundled web forms and sample files (e.g. for a CGI-capable server), run the install_ephemeris_tools_files command with a target directory:

install_ephemeris_tools_files /path/to/htdocs/tools

All files from the package’s web/tools tree are copied into the given directory (subdirectories such as samples/ are preserved). This works when the package is installed from PyPI or from source. Use -v for verbose (log) output.

Environment variables

Environment variables

Variable

Purpose

Default

SPICE_PATH

Root directory for SPICE kernels. Must contain SPICE_planets.txt, SPICE_spacecraft.txt, and kernel files (e.g. leapseconds.ker, planet/moon SPKs).

/var/www/SPICE/

TEMP_PATH

Directory for temporary or output files.

/var/www/work/

STARLIST_PATH

Directory for star catalog files (e.g. starlist_sat.txt).

/var/www/documents/tools/

JULIAN_LEAPSECS

Path to a NAIF LSK leap-second file. If unset, the code looks under SPICE_PATH, then leapsecs.txt; if missing or not LSK format, rms-julian’s bundled LSK is used.

(see above)

EPHEMERIS_TOOLS_LOG_LEVEL

Logging level: DEBUG, INFO, WARNING, ERROR, or CRITICAL.

WARNING

Ensure SPICE_PATH contains (or points to) the expected config and kernel files. Without these, ephemeris/tracker/viewer runs will fail when loading kernels.

Running the tools

Use the ephemeris-tools command:

ephemeris-tools <command> [options]

See Command-line interface and Examples for command examples (ephemeris, tracker, viewer).