# Advanced installation

Most users should follow the install instructions in the top-level
[`README.md`](../README.md). This page covers two additional scenarios:
installing from an internal package mirror, and installing in an
air-gapped environment.

All commands assume you have unpacked the release ZIP and are running
from inside the unpacked `DADOS_Python_Connector/` directory (one level
above this file).

## Internal mirror

Point pip at your organisation's index instead of public PyPI. The local
`wheels/` directory still supplies the `lightning-client` wheel; the
mirror supplies runtime dependencies (`pyarrow`, `datafusion`, and any
extras):

```bash
pip install --index-url https://pypi.internal.example.com/simple \
            --find-links wheels lightning-client
```

For extras:

```bash
pip install --index-url https://pypi.internal.example.com/simple \
            --find-links wheels "lightning-client[pandas]"
```

## Air-gapped

`--no-index` makes pip use only files available locally and never reach
PyPI:

```bash
pip install --no-index --find-links wheels lightning-client
```

This only works if every runtime dependency wheel (`pyarrow`,
`datafusion`, and any extras you ask for) is **already installed in the
target environment** or **also available locally** to pip.

The default release ZIP does not bundle third-party dependency wheels —
`wheels/` contains only the `lightning-client` wheels. To install fully
offline, do one of the following:

- Pre-install `pyarrow` and `datafusion` (and any extras you need) into
  the target Python environment from your organisation's offline
  package store, then run the `--no-index` command above.
- Or, place the matching `pyarrow` / `datafusion` wheels into the local
  `wheels/` directory before running pip, so `--find-links wheels` can
  resolve them locally.

If pip reports `No matching distribution found for pyarrow` (or
`datafusion`, or any extra), one of those wheels is missing from your
local environment.
