Python Netgear Switch Interface Library
Query and control all your Netgear switches — SNMP (managed), NSDP and HTTP
web-UI (Plus) — behind one model-driven Python API and the ngsw CLI.
Status: early development. See docs/superpowers/specs/ for the design and
docs/superpowers/plans/ for the implementation plans.
Installation
pip / uv (PyPI)
pip install python-netgear-switch-library
# or: uv add python-netgear-switch-library
Optional extras: [async] (pysnmp), [http] (httpx). The synchronous SNMP
transport shells out to the net-snmp command-line tools, a system package
(not a Python dependency):
sudo apt install snmp # provides snmpget/snmpbulkwalk/snmpset
Debian / Ubuntu (apt)
Signed .deb packages for Debian trixie and sid are published to a
GitHub Pages apt repository. Pick the line matching your suite:
sudo install -d -m0755 /etc/apt/keyrings
curl -fsSL https://mithro.github.io/python-netgear-switch-library/netgear-switch.gpg \
| sudo tee /etc/apt/keyrings/netgear-switch.gpg > /dev/null
# trixie:
echo "deb [signed-by=/etc/apt/keyrings/netgear-switch.gpg] https://mithro.github.io/python-netgear-switch-library/trixie/ ./" \
| sudo tee /etc/apt/sources.list.d/netgear-switch.list
# sid:
echo "deb [signed-by=/etc/apt/keyrings/netgear-switch.gpg] https://mithro.github.io/python-netgear-switch-library/sid/ ./" \
| sudo tee /etc/apt/sources.list.d/netgear-switch.list
sudo apt update
sudo apt install python3-netgear-switch-library
This installs the netgear_switch library and the ngsw CLI, and pulls in the
snmp net-snmp CLI tools automatically.
Either way, once installed run ngsw --help to see available commands.
Versioning
This project is a rolling release: the version is derived from git
(0.0.postN / X.Y.postN), and every merge to main publishes a new version
to PyPI and the apt repo. There are no tags or manual version bumps.
Development
uv sync --all-extras
uv run pytest
uv run ruff check
License
Apache-2.0.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file python_netgear_switch_library-0.0.post154.tar.gz.
File metadata
- Download URL: python_netgear_switch_library-0.0.post154.tar.gz
- Upload date:
- Size: 445.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9d8b63982ad3719ae6a87a68c86093f7180c77216e2cc4e4bcdd981e6ffc988e
|
|
| MD5 |
2e42c7fd9d63c030d8844b5a6a622344
|
|
| BLAKE2b-256 |
6b1451af9504c53ab98a9a54ba32dd1efb5a41cd96e932b194d0b7336abbac4b
|
Provenance
The following attestation bundles were made for python_netgear_switch_library-0.0.post154.tar.gz:
Publisher:
publish-pypi.yml on mithro/python-netgear-switch-library
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
python_netgear_switch_library-0.0.post154.tar.gz -
Subject digest:
9d8b63982ad3719ae6a87a68c86093f7180c77216e2cc4e4bcdd981e6ffc988e - Sigstore transparency entry: 2204771828
- Sigstore integration time:
-
Permalink:
mithro/python-netgear-switch-library@064f3ca2741b5edacf8e6ad6c2f1db429fe2f12f -
Branch / Tag:
refs/heads/main - Owner: https://github.com/mithro
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-pypi.yml@064f3ca2741b5edacf8e6ad6c2f1db429fe2f12f -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file python_netgear_switch_library-0.0.post154-py3-none-any.whl.
File metadata
- Download URL: python_netgear_switch_library-0.0.post154-py3-none-any.whl
- Upload date:
- Size: 137.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c72c302b080d4902b6c95706e3c872219fde9073102c850163825d3e0ca2c38a
|
|
| MD5 |
435e8b45e0e9e4415c5b50cb0cdb529f
|
|
| BLAKE2b-256 |
7feb44f8553a090c3fadc183b46bc501b57aa2eb25062d13a42b1f23130b9987
|
Provenance
The following attestation bundles were made for python_netgear_switch_library-0.0.post154-py3-none-any.whl:
Publisher:
publish-pypi.yml on mithro/python-netgear-switch-library
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
python_netgear_switch_library-0.0.post154-py3-none-any.whl -
Subject digest:
c72c302b080d4902b6c95706e3c872219fde9073102c850163825d3e0ca2c38a - Sigstore transparency entry: 2204771846
- Sigstore integration time:
-
Permalink:
mithro/python-netgear-switch-library@064f3ca2741b5edacf8e6ad6c2f1db429fe2f12f -
Branch / Tag:
refs/heads/main - Owner: https://github.com/mithro
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-pypi.yml@064f3ca2741b5edacf8e6ad6c2f1db429fe2f12f -
Trigger Event:
workflow_dispatch
-
Statement type: