Installation#

Getting Patcher onto your Mac in a single command.


Patcher ships as a single package (patcherctl) that includes both the CLI and the importable Python library. Pick whichever one fits your workflow.

Prerequisites#

macOS (13+)

Patcher is macOS-only, sorry Windows users!

Python 3.11+

From Python.org or install and use uv

Jamf Pro Access

For OAuth client credential creation and patch title management

Install#

$ uv pip install patcherctl
$ python3 -m pip install patcherctl

Adding to Environment Path#

If patcherctl --version returns command not found, your Python user-base directory isnโ€™t set on your environment path.

Adjust the profile path for your shell if youโ€™re not using zsh (e.g. ~/.bashrc).#
$ echo 'export PATH=$(python3 -m site --user-base)/bin:$PATH' >> ~/.zshrc && source ~/.zshrc

SSL Verification#

Patcher uses httpx with truststore to bridge TLS verification to your macOS Keychain. Any CA your MDM installs at the OS level is automatically trusted (no Python-specific configuration required), and TLS-inspecting proxies (Zscaler, Netskope, Cloudflare Gateway, Palo Alto GlobalProtect) work transparently.

Changed in version 2.4.1

The HTTP transport migrated from subprocess-curl to httpx. This is an internal change; patcherctl and PatcherClient behavior is unchanged for end users.

If you encounter certificate errors anyway, see TLS / Corporate Proxies on the Troubleshooting page for diagnostic steps.