Python 3.14.10-1
Python 3.14: replaces the NAS's own Python 3.9 as python3, with pip, venv and uv (Intel models)
Securitydevelopmentsystem
Security: Replaces WD's Python 3.9, which has had no security fixes since October 2025.
Download
| NAS | Size | SHA256 | |
|---|---|---|---|
| My Cloud PR4100 | 51 MB | Download | 4d1d07fadb04695f… |
| My Cloud PR2100 | 51 MB | Download | e31c04889cfeb2a7… |
| My Cloud DL4100 | 51 MB | Download | 4b4bde4f124748ce… |
| My Cloud DL2100 | 51 MB | Download | 96c8e47352756d1a… |
Not available for: My Cloud EX4100, My Cloud EX2100, My Cloud EX2 Ultra, My Cloud Mirror (Gen 2), My Cloud (Gen 2), WD Cloud.
Easier: install it from the Store, which also updates it.
Makes Python 3.14 the NAS's python3, in place of WD's own Python 3.9, with pip, virtual environments (venv) and uv. It's a portable build of Python (python-build-standalone, the builds uv uses), depending only on the NAS's system library.
- When the app starts (at every boot) it points
/usr/bin/python3at Python 3.14, and addspython3.14,pip3,pydoc3,uvanduvx. Stopping or removing the app puts WD'spython3back. WD's own files are never changed - only those links, which are in RAM anyway. - WD's scripts were checked before making this app: WD's Python has no extra packages, only the standard library, and the scripts that use it -
wsdd(Windows network discovery),mysql_reset.pyand a couple of one-line JSON reads - use nothing that's been removed since Python 3.9. Both compile with every warning treated as an error, andwsddwas run on 3.14. WD's boot scripts andwsddstart before the apps, so they always run on WD's own Python 3.9 anyway; only what WD runs later uses Python 3.14. - There's no plain
pythoncommand: a few of WD's scripts ask for it, but they're Python 2 code that has never been able to run on OS5 - with apythonthey'd start and crash instead. - The management page can switch
python3back to WD's Python 3.9 (and back again) as a safety net - the choice is kept across reboots and reinstalls.
Packages
Install packages into a virtual environment, kept wherever you like - e.g. under /home/root (persistent with the Entware app) or on a share. Packages installed into the app's Python itself would be lost with its next update, so pip refuses that (add --break-system-packages to do it anyway):
python3 -m venv /home/root/venvs/myproject
/home/root/venvs/myproject/bin/pip install requests
/home/root/venvs/myproject/bin/python myscript.py
Or with uv, which also runs tools and single scripts with their own packages:
uv venv /home/root/venvs/myproject
uvx ruff check myscript.py
uv run --with requests myscript.py
- Virtual environments use the app's Python, so they keep working across the app's updates within 3.14; a new line (e.g. 3.15) needs them made again.
- The NAS has no compiler, so packages come from ready-built wheels - almost all popular packages have them (the NAS's glibc is 2.31, which
manylinux_2_28wheels suit). - Programs using
curses(full-screen terminal programs) need a terminal database, which the NAS doesn't have: install Entware'sncurses-terminfoand setTERMINFO_DIRS=/opt/share/terminfo. Python's own interactive prompt doesn't need it.
Management page
The Python app's page in the NAS dashboard (Apps → Python) shows which Python python3 is, the app's and WD's versions, pip and uv, the commands the app has added, and which Python wsdd is running on. It switches python3 between the app's Python and WD's. Only NAS admins can use the page (see Management pages).
Updates come with new versions of the app (the NAS shows an alert when a new 3.14 release is out, checked weekly).