Configuration

jupyter-positron-server can be configured using environment variables to customize how Positron Server runs within your Jupyter environment.

Optional: Environment Variables

Variable Description
POSITRON_LICENSE_KEY_FILE Path to your Positron license key file. The user starting Positron must have write access to the Positron Server’s installation directory, as Positron will copy the license file to the location where Positron Server expects to find it. Positron Server will look for a license at <positron-server-path>/resources/activation/linux/{ARCH}/license.lic (where {ARCH} is x86_64 or aarch64) if not set.
POSITRON_HOST Host address for Positron Server to bind to. Defaults to 127.0.0.1.
JSP_POSITRON_LAUNCHER_DISABLED Set to any value to hide the Positron launcher entry in JupyterLab.

Admin-Enforced Settings

POSITRON_ENFORCED_SETTINGS lets administrators lock Positron settings so users cannot override them via the Settings UI or by editing settings.json directly. Locked settings appear grayed out with a policy indicator in the UI. Enforced settings survive profile changes, workspace switches, and direct edits to ~/.positron-server/data/User/settings.json.

Requirements: jupyter-positron-server >= 0.0.4, Positron Server >= 2026.05.0-179

Step 1 — Create the config file

cat > /opt/tljh/config/jupyterhub_config.d/positron_enforced.py << 'EOF'
c.Spawner.environment = {
    'POSITRON_ENFORCED_SETTINGS': '{"workbench.colorTheme":"Default Positron Dark","extensions.autoUpdate":false}'
}
EOF

Existing user sessions are not affected until they start a new session.