Nuitka Downloads
General
Thank you for downloading Nuitka. This is the standard edition, free and open source. Please also consider becoming a Nuitka commercial subscriber for IP protection features.
IP Protection / Performance / Python
Three pillars make Nuitka the best platform to deploy your application: IP Protection for commercial users, Performance for every program, and Python compatibility you can rely on.
Protecting your IP is critical to your business success. Do not allow competitors, malicious clients, or exploiting customers to easily steal your work. Nuitka Commercial offers a full array of tools that make Python the best platform to deploy your application.
No source code, no bytecode - only a compiled binary that cannot be easily reversed.
Program constants and data are obfuscated so they are not readable in the compiled program.
Your data files are embedded as part of the program constants and protected that way.
Tracebacks and program outputs are encrypted, so only you can decode them.
Exclusive commercial-only features and plugins on top of the standard Nuitka offering.
Feature Rich - So Many Things Cannot Fit Here
Windows, macOS, Linux, and many more targets from a single compiler.
Bundle your code, dependencies, and data into a single executable.
Support for a wide range of Python versions, including older and latest releases.
Create self-contained distributions that do not require a Python installation.
Compile to extension modules and programs, not just executables.
Compatible with nearly all Python packages out of the box.
A rich plugin system to handle complex frameworks and integrate with your workflow.
Priority support and commercial features available for professional users.
Integrate Nuitka into your existing build system with setuptools support.
Pricing - Thanks for Supporting Nuitka
Important
Click the buttons in the boxes below for Stripe payment (bank transfer, credit card, SEPA debit charge, etc).
Nuitka Standard vs Nuitka Commercial
The standard edition is what you download here. It lacks features that commercial users might want for IP protection. Nuitka standard bundles your code, dependencies, and data into a single executable, accelerates your program to run faster in the same environment, and can also produce extension modules.
Nuitka Commercial
The commercial edition additionally protects your code, data, and outputs, so that users of the executable cannot access these. This is a private repository of plugins that you pay to get access to. Additionally, you can purchase priority support.
Learn more about Nuitka Commercial
The current release is Nuitka 4.2. Stable releases are supported with hotfix releases, indicated by the third version number, e.g. 4.2.1 is a hotfix of 4.2.
Note
Stable releases are the recommended choice and work reliably for production use. Develop releases are pre-releases of the next stable release; they are generally stable too, but may occasionally break.
Note
Package builds may lag behind a release by a couple of days.
Quick Install
Recommended: Install via PyPI (all platforms)
# pip - Standard version with minimal dependencies
python -m pip install -U Nuitka
# pip - Standard version with onefile/app dependencies
python -m pip install -U "Nuitka[app]"
# pip - Standard version with all dependencies
python -m pip install -U "Nuitka[all]"
# uv - Standard version with minimal dependencies
uv add Nuitka
# uv - Standard version with onefile/app dependencies
uv add "Nuitka[app]"
# uv - Standard version with all dependencies
uv add "Nuitka[all]"
For the latest development version:
# pip - Develop version with minimal dependencies
python -m pip install -U "https://github.com/Nuitka/Nuitka/archive/develop.zip"
# pip - Develop version with onefile/app dependencies
python -m pip install -U "Nuitka[app] @ https://github.com/Nuitka/Nuitka/archive/develop.zip"
# pip - Develop version with all dependencies
python -m pip install -U "Nuitka[all] @ https://github.com/Nuitka/Nuitka/archive/develop.zip"
# uv - Develop version with minimal dependencies
uv add --reinstall "git+https://github.com/Nuitka/Nuitka.git@develop"
# uv - Develop version with onefile/app dependencies
uv add --reinstall "Nuitka[app] @ git+https://github.com/Nuitka/Nuitka.git@develop"
# uv - Develop version with all dependencies
uv add --reinstall "Nuitka[all] @ git+https://github.com/Nuitka/Nuitka.git@develop"
Note
Use the Python interpreter you want to compile with, that is the easiest way. And also invoke as python -m nuitka with that interpreter. It is the easiest and most reliable way.
Other install options: Debian/Ubuntu/Mint RHEL RHEL Version RPM Repository Stable Develop RHEL 8 Nuitka 4.1.3 Nuitka 4.3rc1 RHEL 7 Nuitka 4.1.3 Nuitka 4.3rc1 CentOS CentOS Version RPM Repository Stable Develop CentOS 8 Nuitka 4.1.3 Nuitka 4.3rc1 CentOS 7 Nuitka 4.1.3 Nuitka 4.3rc1 CentOS 6 Nuitka 4.1.3 Nuitka 4.3rc1 Fedora Fedora Version RPM Repository Stable Develop Fedora 43 Nuitka 4.1.3 Nuitka 4.3rc1 Fedora 42 Nuitka 4.1.3 Nuitka 4.3rc1 Fedora 41 Nuitka 4.1.3 Nuitka 4.3rc1 Fedora 40 Nuitka 4.1.3 Nuitka 4.3rc1 Fedora 39 Nuitka 4.1.3 Nuitka 4.3rc1 Fedora 38 Nuitka 4.1.3 Nuitka 4.3rc1 Fedora 37 Nuitka 4.1.3 Nuitka 4.3rc1 Fedora 36 Nuitka 4.1.3 Nuitka 4.3rc1 openSUSE SUSE Version RPM Repository Stable Develop SLE 15 Nuitka 4.1.3 Nuitka 4.3rc1 openSUSE Leap 15.4 Nuitka 4.1.3 Nuitka 4.3rc1 Arch Gentoo There is no installer for macOS. Use PyPI with Branch zip tar.gz tar.bz2 Stable Develop Note The source archives can be used directly after unpacking, simply start with Visit https://github.com/Nuitka/Nuitkafor the Nuitka repository on GitHub.Linux (Debian, Ubuntu, Mint, Fedora, CentOS, RHEL, SuSE, Arch)
Stable: Debian/Ubuntu/Mint repositoriessudo apt install ca-certificates gpg lsb-release wget
sudo install -d -m 0755 /etc/apt/keyrings
CODENAME=$(awk -F= '$1=="VERSION_CODENAME"{v=$2} $1=="UBUNTU_CODENAME"{u=$2} END{print (u?u:v)}' /etc/os-release)
if [ -z "$CODENAME" ]; then
CODENAME=$(lsb_release -c -s)
fi
wget -qO - https://nuitka.net/deb/archive.key.gpg | gpg --dearmor | sudo tee /etc/apt/keyrings/nuitka.gpg >/dev/null
echo "deb [signed-by=/etc/apt/keyrings/nuitka.gpg] https://nuitka.net/deb/stable/$CODENAME $CODENAME main" | sudo tee /etc/apt/sources.list.d/nuitka.list >/dev/null
sudo apt update
sudo apt install nuitka
Develop: Debian/Ubuntu/Mint repositoriessudo apt install ca-certificates gpg lsb-release wget
sudo install -d -m 0755 /etc/apt/keyrings
CODENAME=$(awk -F= '$1=="VERSION_CODENAME"{v=$2} $1=="UBUNTU_CODENAME"{u=$2} END{print (u?u:v)}' /etc/os-release)
if [ -z "$CODENAME" ]; then
CODENAME=$(lsb_release -c -s)
fi
wget -qO - https://nuitka.net/deb/archive.key.gpg | gpg --dearmor | sudo tee /etc/apt/keyrings/nuitka.gpg >/dev/null
echo "deb [signed-by=/etc/apt/keyrings/nuitka.gpg] https://nuitka.net/deb/develop/$CODENAME $CODENAME main" | sudo tee /etc/apt/sources.list.d/nuitka.list >/dev/null
sudo apt update
sudo apt install nuitka
repositories# Detect the RHEL version
eval `grep VERSION_ID= /etc/os-release`
yum-config-manager --add-repo http://download.opensuse.org/repositories/home:/kayhayen/RedHat_RHEL-${VERSION_ID}/home:kayhayen.repo
# Install only one of these, not both.
yum install nuitka
yum install nuitka-unstable
repositories# CentOS 6:
yum-config-manager --add-repo http://download.opensuse.org/repositories/home:/kayhayen/CentOS_CentOS-6/home:kayhayen.repo
# CentOS 7
yum-config-manager --add-repo http://download.opensuse.org/repositories/home:/kayhayen/CentOS_7/home:kayhayen.repo
# CentOS 8
yum-config-manager --add-repo http://download.opensuse.org/repositories/home:/kayhayen/CentOS_8/home:kayhayen.repo
# Install only one of these, not both.
yum install nuitka
yum install nuitka-unstable
repositories# Detect the Fedora version
eval `grep VERSION_ID= /etc/os-release`
# Use yum on older versions
dnf config-manager --add-repo https://download.opensuse.org/repositories/home:/kayhayen/Fedora_${VERSION_ID}/home:kayhayen.repo
# Install only one of these, not both.
dnf install nuitka
dnf install nuitka-unstable
repositories# Detect the openSUSE Leap version
eval `grep VERSION_ID= /etc/os-release`
# Add Nuitka repo
zypper ar -f https://download.opensuse.org/repositories/home:/kayhayen/Open_${VERSION_ID}/home:kayhayen.repo
# Install only one of these, not both.
zypper install nuitka
zypper install nuitka-unstable
Stable: Arch Linux, execute pacman -S nuitka or use from AUR https://aur.archlinux.org/packages/nuitka
Gentoo Linux, execute emerge -a dev-python/nuitkamacOS
python -m pip install Nuitka, clone from git, or use the source packages.Source Code
python bin/nuitka --help. They do not even have to be installed.GitHub
Stable: git clone –branch main https://github.com/Nuitka/Nuitka
Develop: git clone –branch develop https://github.com/Nuitka/Nuitka
For commercial support and advanced features, see Nuitka Commercial.
License
Nuitka is licensed under the GNU Affero General Public License v3; you may not use it except in compliance with the License. Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an “as is” basis, without warranties or conditions of any kind, either express or implied. See the License for the specific language governing permissions and limitations under the License.
There is an exception to the AGPLv3 for the created binaries, which are not bound by the AGPLv3 requirements for the user’s code. This is similar to how gcc (GPLv3) works, i.e. you can use Nuitka to compile your own code without any impact on the license of your code or your binaries.