Installation
This page explains how to install PythonSCAD on common platforms.
Linux (Debian / Ubuntu / APT)
PythonSCAD packages are published to an APT repository. See https://repos.pythonscad.org/apt/ for detailed instructions.
Alternatively you can download the latest Debian package from our downloads page.
Linux (Fedora / CentOS / RHEL / YUM / DNF)
PythonSCAD packages are published to a YUM repository. See https://repos.pythonscad.org/yum/ for detailed instructions.
Alternatively you can download the latest RPM package from our downloads page.
GNU Guix
We try to keep PythonSCAD up to date in GNU Guix by periodically
submitting updated package definitions. You can run
guix install pythonscad to install it or use one of the other
methods (e.g. guix home).
AppImage (Linux)
AppImages should be distribution agnostic and should run on most Linux distributions.
Download the AppImage from the downloads page.
To use it system-wide you can make it executable and move it into
a directory on your PATH (for example /usr/local/bin):
chmod +x PythonSCAD-<version>.AppImage
sudo mv PythonSCAD-<version>.AppImage /usr/local/bin/pythonscad
Windows
We provide three distribution formats for Windows:
- MSIX package: The recommended install format on Windows 11.
- NSIS Installer: A traditional setup wizard.
- ZIP archive: Extract anywhere and run
pythonscad.exe.
Code signing
PythonSCAD Windows binaries are not yet signed with a Microsoft Authenticode certificate. Each format requires a slightly different workaround.
MSIX package
Open PowerShell as Administrator and run:
Replace the filename with the actual name of the downloaded .msix file.
NSIS installer and ZIP
When you run the installer or the extracted .exe, Windows SmartScreen may
show a blue dialog titled "Windows protected your PC":
- Click More info.
- Click Run anyway.
If Run anyway does not appear (this can happen when Smart App Control is enabled on fresh Windows 11 installations), right-click the downloaded file, choose Properties, tick Unblock at the bottom of the General tab, click OK, and then re-run the file.
macOS
The macOS application bundle provided is not yet signed with an Apple Developer ID. Gatekeeper may prevent the app from opening on first launch. Typical ways to open an unsigned app:
- Right-click (or control-click) the app in Finder and choose Open. In the dialog that appears, click Open again to allow launching the app this time.
- If that does not work, you can remove the quarantine attribute from the app in Terminal (use with caution):
Using the GUI Open option is usually the safest way to grant permission for a single unsigned app.
Installing via Python (pip / pipx)
PythonSCAD is available on PyPI. Installing via pip compiles the C++ extension from source, so you will need the build dependencies listed below.
Build dependencies
A C++17 compiler, pkg-config, bison, flex, and the following
libraries must be installed before running pip install:
- Eigen3, CGAL, GMP, MPFR
- Freetype2, Fontconfig, HarfBuzz
- libxml2, glib2, Cairo
- double-conversion
On Debian/Ubuntu you can install them with:
Install from PyPI
After installing, you can choose between two equivalent imports:
# Recommended for new PythonSCAD designs
from pythonscad import *
# Compatible with upstream OpenSCAD's Python integration
from openscad import *
pythonscad is a strict superset of openscad; both call the same
underlying C extension (_openscad). See
doc/python-modules.md
for the layered module layout.
Alternative: install from source
- Install from a local checkout:
- Install directly from the Git repository:
pipxcan be used to install the CLI in an isolated environment:
Remember these installs are local to the Python environment used
by pip/pipx and do not create system packages.
If you encounter problems installing or running the applications, please create an issue on our GitHub page.