Skip to main content

fix-conda-ssl

Fix the dreaded Conda SSLError on Windows by copying DDLs. This is not about validating certificates behind a corporate firewall but about Python not being able to import ssl inside conda environments resulting in "SSL module is not available" errors.

The Problem

Every once in a while, the planets are out of alignment and conda on Windows is broken again. Sometimes it is only the conda-forge channel for the newest version of Python, sometimes it is (much) worse. Reinstalling the latest version of Anaconda is, unfortunately, not a quick solution for my lab full of university-managed Windows PCs without administrator access. After noticing on a Friday late-afternoon that SSL was broken again and you could not only not install packages into a conda environment but also not run pipx-installed applications like Poetry inside of an environment, I needed a student-friendly solution to the problem. After all, when my students come in after the weekend I don't want to send them home because of broken machines. So, I sat down to write this tool.

The solution

Many reports can be found detailing the problem starting years ago. The solution seems to be pretty straight-forward, although it can be a bit cumbersome to perform. Basically, you just need to copy libcrypo-something.dll and libssl-something.dll from the environments Library/bin folder to its DLLs folder. So, enter fixconda.

Screenshot of the terminal user interface

Installation and usage

You probably won't be able to install this package inside broken environments. Usually, the base environment works well so be sure to activate the base environment before performing these steps.

It is best to install using pipx to keep this application out of your base conda environment:

> pipx install fix-conda-ssl

If needed, you can also install using pip but won't be able to fix the environment fix-conda-ssl is installed to:

> pip install fix-conda-ssl

Start the application by typing:

> fixconda

Select an environment using the mouse or cursor keys and click or press enter to fix the environment.

Metadata

Release files for fix-conda-ssl 0.3.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for fix-conda-ssl 0.3.2
File Size Uploaded Provenance
fix_conda_ssl-0.3.2.tar.gz 16.1 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for fix-conda-ssl 0.3.2
File Interpreter ABI Platform
fix_conda_ssl-0.3.2-py3-none-any.whl Python 3 none any Details

Total release size: 33.2 kB

Release files / fix_conda_ssl-0.3.2.tar.gz

Download URL fix_conda_ssl-0.3.2.tar.gz
Size 16.1 kB
Tags Source
SHA-256 checksum
How to use checksums
6180682832d3681957b5d4493a623b20fc4893d53f5ee6ce6b18a8308b49e33d
BLAKE2b-256 checksum
How to use checksums
8eaf4c82ea0cb3583d8f8b133a998eeec3d53c99d6099e8ad8f8164e6f5a9fbc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.7.0 CPython/3.10.13 Darwin/23.2.0

Release files / fix_conda_ssl-0.3.2-py3-none-any.whl

Download URL fix_conda_ssl-0.3.2-py3-none-any.whl
Size 17.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
85c31d32545712c9cdef8c191b6369557971e76f22c14be3d5279a02e6f26fa3
BLAKE2b-256 checksum
How to use checksums
c4242084db10e73f630117e7bb6ef20498fbc557762f08a8c8d56e3859e62c8d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.7.0 CPython/3.10.13 Darwin/23.2.0

Security for fix-conda-ssl 0.3.2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page