September 29, 2025Sep 29 Hi @Rysz ,I'm running unraid 7.1.4 with the latest python 3 plugin (2025.08.21). I recently enabled SSL in unraid (Settings --> Management Access --> Use SSL/TLS set to Strict) and now I can't use pip. I'm getting the following error message when running pip listpip list Package Version -------------- ------- configshell-fb 1.1.29 gobject 0.1.0 pip 20.2.3 pycairo 1.21.0 PyGObject 3.42.2 pyparsing 2.4.7 pyudev 0.24.0 rtslib-fb 2.1.75 setuptools 49.2.1 six 1.16.0 targetcli-fb 2.1.54 urwid 2.1.2 WARNING: pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available. Could not fetch URL https://pypi.org/simple/pip/: There was a problem confirming the ssl certificate: HTTPSConnectionPool(host='pypi.org', port=443): Max retries exceeded with url: /simple/pip/ (Caused by SSLError("Can't connect to HTTPS URL because the SSL module is not available.")) - skippingThen when running pip search <anything> I get this errorpip search setuptools WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError("Can't connect to HTTPS URL because the SSL module is not available.")': /pypi WARNING: Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError("Can't connect to HTTPS URL because the SSL module is not available.")': /pypi WARNING: Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError("Can't connect to HTTPS URL because the SSL module is not available.")': /pypi WARNING: Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError("Can't connect to HTTPS URL because the SSL module is not available.")': /pypi WARNING: Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError("Can't connect to HTTPS URL because the SSL module is not available.")': /pypi ERROR: Exception: Traceback (most recent call last): File "/usr/lib/python3.9/site-packages/pip/_vendor/urllib3/connectionpool.py", line 659, in urlopen conn = self._get_conn(timeout=pool_timeout) File "/usr/lib/python3.9/site-packages/pip/_vendor/urllib3/connectionpool.py", line 279, in _get_conn return conn or self._new_conn() File "/usr/lib/python3.9/site-packages/pip/_vendor/urllib3/connectionpool.py", line 945, in _new_conn raise SSLError( pip._vendor.urllib3.exceptions.SSLError: Can't connect to HTTPS URL because the SSL module is not available. During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib/python3.9/site-packages/pip/_vendor/requests/adapters.py", line 439, in send resp = conn.urlopen( File "/usr/lib/python3.9/site-packages/pip/_vendor/urllib3/connectionpool.py", line 752, in urlopen return self.urlopen( File "/usr/lib/python3.9/site-packages/pip/_vendor/urllib3/connectionpool.py", line 752, in urlopen return self.urlopen( File "/usr/lib/python3.9/site-packages/pip/_vendor/urllib3/connectionpool.py", line 752, in urlopen return self.urlopen( [Previous line repeated 2 more times] File "/usr/lib/python3.9/site-packages/pip/_vendor/urllib3/connectionpool.py", line 724, in urlopen retries = retries.increment( File "/usr/lib/python3.9/site-packages/pip/_vendor/urllib3/util/retry.py", line 439, in increment raise MaxRetryError(_pool, url, error or ResponseError(cause)) pip._vendor.urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='pypi.org', port=443): Max retries exceeded with url: /pypi (Caused by SSLError("Can't connect to HTTPS URL because the SSL module is not available.")) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib/python3.9/site-packages/pip/_internal/cli/base_command.py", line 228, in _main status = self.run(options, args) File "/usr/lib/python3.9/site-packages/pip/_internal/commands/search.py", line 60, in run pypi_hits = self.search(query, options) File "/usr/lib/python3.9/site-packages/pip/_internal/commands/search.py", line 80, in search hits = pypi.search({'name': query, 'summary': query}, 'or') File "/usr/lib/python3.9/xmlrpc/client.py", line 1116, in __call__ return self.__send(self.__name, args) File "/usr/lib/python3.9/xmlrpc/client.py", line 1456, in __request response = self.__transport.request( File "/usr/lib/python3.9/site-packages/pip/_internal/network/xmlrpc.py", line 41, in request response = self._session.post(url, data=request_body, File "/usr/lib/python3.9/site-packages/pip/_vendor/requests/sessions.py", line 578, in post return self.request('POST', url, data=data, json=json, **kwargs) File "/usr/lib/python3.9/site-packages/pip/_internal/network/session.py", line 421, in request return super(PipSession, self).request(method, url, *args, **kwargs) File "/usr/lib/python3.9/site-packages/pip/_vendor/requests/sessions.py", line 530, in request resp = self.send(prep, **send_kwargs) File "/usr/lib/python3.9/site-packages/pip/_vendor/requests/sessions.py", line 643, in send r = adapter.send(request, **kwargs) File "/usr/lib/python3.9/site-packages/pip/_vendor/cachecontrol/adapter.py", line 53, in send resp = super(CacheControlAdapter, self).send(request, **kw) File "/usr/lib/python3.9/site-packages/pip/_vendor/requests/adapters.py", line 514, in send raise SSLError(e, request=request) pip._vendor.requests.exceptions.SSLError: HTTPSConnectionPool(host='pypi.org', port=443): Max retries exceeded with url: /pypi (Caused b y SSLError("Can't connect to HTTPS URL because the SSL module is not available."))Any help would be greatly appreciated Edited September 29, 2025Sep 29 by msalad
September 29, 2025Sep 29 2 hours ago, msalad said:Any help would be greatly appreciatedIts your own fault.Read what "strict" means:"Select Strict to enable exclusive use of a myunraid.net SSL certificate for https access (see Provision below). Note that a DNS server must be reachable."This means, all other certs are considered to be invalid. A very paranoid setting. Only connections to unraid.net are allowed anymore.Switch to "yes" then python will love you again.
September 29, 2025Sep 29 11 hours ago, MAM59 said:Switch to "yes" then python will love you again.I did this and the issue still persists.
September 29, 2025Sep 29 1 minute ago, msalad said:I did this and the issue still persists.did you reboot afterwards?
September 29, 2025Sep 29 Author 14 hours ago, msalad said:Hi @Rysz ,I'm running unraid 7.1.4 with the latest python 3 plugin (2025.08.21). I recently enabled SSL in unraid (Settings --> Management Access --> Use SSL/TLS set to Strict) and now I can't use pip. I'm getting the following error message when running pip listpip list Package Version -------------- ------- configshell-fb 1.1.29 gobject 0.1.0 pip 20.2.3 pycairo 1.21.0 PyGObject 3.42.2 pyparsing 2.4.7 pyudev 0.24.0 rtslib-fb 2.1.75 setuptools 49.2.1 six 1.16.0 targetcli-fb 2.1.54 urwid 2.1.2 WARNING: pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available. Could not fetch URL https://pypi.org/simple/pip/: There was a problem confirming the ssl certificate: HTTPSConnectionPool(host='pypi.org', port=443): Max retries exceeded with url: /simple/pip/ (Caused by SSLError("Can't connect to HTTPS URL because the SSL module is not available.")) - skippingThen when running pip search <anything> I get this errorpip search setuptools WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError("Can't connect to HTTPS URL because the SSL module is not available.")': /pypi WARNING: Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError("Can't connect to HTTPS URL because the SSL module is not available.")': /pypi WARNING: Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError("Can't connect to HTTPS URL because the SSL module is not available.")': /pypi WARNING: Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError("Can't connect to HTTPS URL because the SSL module is not available.")': /pypi WARNING: Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError("Can't connect to HTTPS URL because the SSL module is not available.")': /pypi ERROR: Exception: Traceback (most recent call last): File "/usr/lib/python3.9/site-packages/pip/_vendor/urllib3/connectionpool.py", line 659, in urlopen conn = self._get_conn(timeout=pool_timeout) File "/usr/lib/python3.9/site-packages/pip/_vendor/urllib3/connectionpool.py", line 279, in _get_conn return conn or self._new_conn() File "/usr/lib/python3.9/site-packages/pip/_vendor/urllib3/connectionpool.py", line 945, in _new_conn raise SSLError( pip._vendor.urllib3.exceptions.SSLError: Can't connect to HTTPS URL because the SSL module is not available. During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib/python3.9/site-packages/pip/_vendor/requests/adapters.py", line 439, in send resp = conn.urlopen( File "/usr/lib/python3.9/site-packages/pip/_vendor/urllib3/connectionpool.py", line 752, in urlopen return self.urlopen( File "/usr/lib/python3.9/site-packages/pip/_vendor/urllib3/connectionpool.py", line 752, in urlopen return self.urlopen( File "/usr/lib/python3.9/site-packages/pip/_vendor/urllib3/connectionpool.py", line 752, in urlopen return self.urlopen( [Previous line repeated 2 more times] File "/usr/lib/python3.9/site-packages/pip/_vendor/urllib3/connectionpool.py", line 724, in urlopen retries = retries.increment( File "/usr/lib/python3.9/site-packages/pip/_vendor/urllib3/util/retry.py", line 439, in increment raise MaxRetryError(_pool, url, error or ResponseError(cause)) pip._vendor.urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='pypi.org', port=443): Max retries exceeded with url: /pypi (Caused by SSLError("Can't connect to HTTPS URL because the SSL module is not available.")) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib/python3.9/site-packages/pip/_internal/cli/base_command.py", line 228, in _main status = self.run(options, args) File "/usr/lib/python3.9/site-packages/pip/_internal/commands/search.py", line 60, in run pypi_hits = self.search(query, options) File "/usr/lib/python3.9/site-packages/pip/_internal/commands/search.py", line 80, in search hits = pypi.search({'name': query, 'summary': query}, 'or') File "/usr/lib/python3.9/xmlrpc/client.py", line 1116, in __call__ return self.__send(self.__name, args) File "/usr/lib/python3.9/xmlrpc/client.py", line 1456, in __request response = self.__transport.request( File "/usr/lib/python3.9/site-packages/pip/_internal/network/xmlrpc.py", line 41, in request response = self._session.post(url, data=request_body, File "/usr/lib/python3.9/site-packages/pip/_vendor/requests/sessions.py", line 578, in post return self.request('POST', url, data=data, json=json, **kwargs) File "/usr/lib/python3.9/site-packages/pip/_internal/network/session.py", line 421, in request return super(PipSession, self).request(method, url, *args, **kwargs) File "/usr/lib/python3.9/site-packages/pip/_vendor/requests/sessions.py", line 530, in request resp = self.send(prep, **send_kwargs) File "/usr/lib/python3.9/site-packages/pip/_vendor/requests/sessions.py", line 643, in send r = adapter.send(request, **kwargs) File "/usr/lib/python3.9/site-packages/pip/_vendor/cachecontrol/adapter.py", line 53, in send resp = super(CacheControlAdapter, self).send(request, **kw) File "/usr/lib/python3.9/site-packages/pip/_vendor/requests/adapters.py", line 514, in send raise SSLError(e, request=request) pip._vendor.requests.exceptions.SSLError: HTTPSConnectionPool(host='pypi.org', port=443): Max retries exceeded with url: /pypi (Caused b y SSLError("Can't connect to HTTPS URL because the SSL module is not available."))Any help would be greatly appreciated/usr/lib/python3.9/site-packagesAnother Python installation is somewhere on your system - my plugin does not ship Python 3.9.Please check /boot/extra (= extra folder on your USB stick) if there is such a package, remove it & reboot.Attach diagnostics to your next reply to this topic, so I can take a look at what might be causing this as well.
September 29, 2025Sep 29 5 hours ago, MAM59 said:did you reboot afterwards?yes, did not fix the issue.4 hours ago, Rysz said:/usr/lib/python3.9/site-packagesAnother Python installation is somewhere on your system - my plugin does not ship Python 3.9.Please check /boot/extra (= extra folder on your USB stick) if there is such a package, remove it & reboot.Attach diagnostics to your next reply to this topic, so I can take a look at what might be causing this as well.I think what @bmartino1 said might be going on - another plugin I'm using could have shipped with python 3.9. I am using the disk location plugin, like they mention. The only files in my /boot/extra folder are fdupes, ipmitool, and jdupes, which I've installed with ich777's un-get app (link). This has allowed me to get these apps for unraid 7.x.That said, if I type python --version, it shows I'm using 3.13.5, which is what I'm expecting (screenshot of my python3 plugin settings page). But if I type python3 --version, it shows version 3.9.2.I've attached my diagnostics file. Thanks for taking a look1 hour ago, bmartino1 said:what other plugin are you running. I don't remember which ones, but there are some older plugins that shipped with there own 3.9 Python packages to run that plugin.disk location was one at one time per example.I think this could be what is going on re: me having python 3.9. I'm using the disk location plugin. msaladunraid-diagnostics-20250929-1704.zip
September 30, 2025Sep 30 Author 7 hours ago, msalad said:yes, did not fix the issue.I think what @bmartino1 said might be going on - another plugin I'm using could have shipped with python 3.9. I am using the disk location plugin, like they mention. The only files in my /boot/extra folder are fdupes, ipmitool, and jdupes, which I've installed with ich777's un-get app (link). This has allowed me to get these apps for unraid 7.x.That said, if I type python --version, it shows I'm using 3.13.5, which is what I'm expecting (screenshot of my python3 plugin settings page). But if I type python3 --version, it shows version 3.9.2.I've attached my diagnostics file. Thanks for taking a lookI think this could be what is going on re: me having python 3.9. I'm using the disk location plugin.msaladunraid-diagnostics-20250929-1704.zipThank you, it's the iSCSI plugin that installs a conflicting Python version. (not Disk Location)You'll have to use either that plugin's Python or uninstall it and be able to use my plugin's Python.
October 1, 2025Oct 1 20 hours ago, Rysz said:Thank you, it's the iSCSI plugin that installs a conflicting Python version. (not Disk Location)You'll have to use either that plugin's Python or uninstall it and be able to use my plugin's Python.Ok, thanks for taking a look at my diagnostics. bmartino1 posted information about how to use call python 3.13 when I wanted to use that version, while still keeping 3.9 (and the iSCSI plugin) install but I think they deleted that post =/.I need to keep the iSCSI plugin so I guess I can use just python3.13when I want to use python 3.13 instead of python 3.9. Edited October 1, 2025Oct 1 by msalad
October 1, 2025Oct 1 49 minutes ago, msalad said:Ok, thanks for taking a look at my diagnostics. bmartino1 posted information about how to use call python 3.13 when I wanted to use that version, while still keeping 3.9 (and the iSCSI plugin) install but I think they deleted that post =/.I need to keep the iSCSI plugin so I guess I can use just python3.13when I want to use python 3.13 instead of python 3.9.For continued back and forth please make a general post. Replied to the PM. it was most likely removed by a mod.I highly recommend making and using a python venv. info can be found earlier in this post.
October 1, 2025Oct 1 Hi @Rysz ,I saw you just pushed an update to disallow install of your python3 plugin if the iSCSI plugin is installed. Is this necessary? For my use case, I want to use the latest python for other things but I also need iSCSI. Wouldn't a warning during install be better to allow use cases such as mine?
October 1, 2025Oct 1 Author 1 hour ago, msalad said:Hi @Rysz ,I saw you just pushed an update to disallow install of your python3 plugin if the iSCSI plugin is installed. Is this necessary? For my use case, I want to use the latest python for other things but I also need iSCSI. Wouldn't a warning during install be better to allow use cases such as mine?No, every time it takes me +/- 15 minutes of looking through other people's GitHub repositories to identify where such package collisions are coming from. In this case it's even worse as this isn't even installed as a normal package, but actually bundled into another package, despite half that Python installation being unusable due to missing SSL libraries on newer OS versions. Two colliding Python installations will cause the problems and respective support volume we've seen in your case, so that's not something I can sustainably support in the long term.You can pull the packages themselves and put them into /boot/extra, if that's something you really want:https://raw.githubusercontent.com/desertwitch/python-unRAID/main/plugin/dwpython.plg
December 16, 2025Dec 16 Hi there.I'm a complete noob to this and I don't under Python at all, and hardly much of how linux works either. This is why this description has me confused a bit:# Put here all commands that you wish to to execute after a system reboot.# They are executed NON-BLOCKING (but sequentially), ensuring the boot sequence proceeds regardless of any script error.## The purpose of this script, for example, is to establish that certain global packages are always installed with pip.# Please keep in mind that using virtual environments is always preferable over globally installing any Python packages.## All output is directed to the SYSLOG. To prevent this, append &>/dev/null (without quotes) to the end of any command.# Alternatively, just put exec &>/dev/null on the first non-comment line of this script to disable ALL commands outputs.How exactly do I launch my python script from this? Is it just /path/to/filename.py or do I need to add something more here? Edited December 16, 2025Dec 16 by d0mmie
December 19, 2025Dec 19 Author On 12/16/2025 at 11:01 AM, d0mmie said:Hi there.I'm a complete noob to this and I don't under Python at all, and hardly much of how linux works either. This is why this description has me confused a bit:# Put here all commands that you wish to to execute after a system reboot.# They are executed NON-BLOCKING (but sequentially), ensuring the boot sequence proceeds regardless of any script error.## The purpose of this script, for example, is to establish that certain global packages are always installed with pip.# Please keep in mind that using virtual environments is always preferable over globally installing any Python packages.## All output is directed to the SYSLOG. To prevent this, append &>/dev/null (without quotes) to the end of any command.# Alternatively, just put exec &>/dev/null on the first non-comment line of this script to disable ALL commands outputs.How exactly do I launch my python script from this? Is it just /path/to/filename.py or do I need to add something more here?Usually you'd just open a command line and run python3 my_script.pyThe autostart script is just for stuff that needs to be installed on system boot, most users won't need this.
May 31May 31 Very much a noob question.I installed Python 3 (Python 3 for UNRAID) thinking it was a docker container. Just needed to run a tinytuya script and I don't have another system to run it on.Question is, I don't need this since it's not a container. I "uninstalled" it but it said it didn't find 'xxxx' so I'm not sure It was uninstalled properly.Can you please let me know how to ensure it is no longer installed?Thanks!
May 31May 31 Author 4 minutes ago, frank_sp61 said:Very much a noob question.I installed Python 3 (Python 3 for UNRAID) thinking it was a docker container. Just needed to run a tinytuya script and I don't have another system to run it on.Question is, I don't need this since it's not a container. I "uninstalled" it but it said it didn't find 'xxxx' so I'm not sure It was uninstalled properly.Can you please let me know how to ensure it is no longer installed?Thanks!It's normal it says some packages were not found during the uninstall process. If you're unsure you can reboot the server to ensure any leftover files are gone (but there shouldn't be any).
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.