Installation
This guide covers how to install the sungazer library and its dependencies.
Prerequisites
Before installing sungazer, ensure you have:
Python 3.10 or higher
Access to a SunPower PVS6 device and a way to connect to it (see Connecting to Your PVS6 Device)
Installation Methods
From PyPI with pip
python -m venv .venv
source .venv/bin/activate
pip install sungazer
From PyPI with uv
sh -c "$(curl -fsSL https://astral.sh/uv/install)"
uv tool install sungazer
# Ensure you have ./local/bin in your PATH, since that's where uv puts the
# executable
sungazer --help
From Source
If you want to install from the latest development version:
git clone https://github.com/cmalek/sungazer.git
sh -c "$(curl -fsSL https://astral.sh/uv/install)"
cd sungazer
uv tool install .
Verification
After installation, verify that sungazer is properly installed:
source .venv/bin/activate
python -c "import sungazer; print(sungazer.__version__)"
You should also be able to run the CLI:
sungazer --help
Dependencies
sungazer has the following key dependencies:
httpx: Modern HTTP client for Python
pydantic: Data validation using Python type annotations
click: Command line interface creation kit
rich: Rich text and beautiful formatting in the terminal
These dependencies are automatically installed when you install sungazer.
Development Installation
If you plan to contribute to sungazer or need the latest development features:
sh -c "$(curl -fsSL https://astral.sh/uv/install)"
git clone https://github.com/your-repo/sungazer.git
cd sungazer
uv sync --dev
This installs additional development dependencies including:
pytest: Testing framework
mypy: Static type checker
black: Code formatter
ruff: Fast Python linter
Configuration
After installation, you may want to configure sungazer for your specific
PVS6 device. See Configuration: Command Line Tool and Configuration: Python Client for
detailed configuration options.
Getting Help
If you encounter issues during installation:
Check the GitHub issues
Review the troubleshooting section above
Ensure your Python environment meets the prerequisites
Try installing in a virtual environment to isolate dependencies