Building from source
A onefile Windows .exe is produced with Nuitka via
pyside6-deploy, and an optional installer with Inno Setup.
Quick start
.\build.ps1 # output: dist\QtTaskManager.exe (+ standalone runtime)
.\build.ps1 -Clean # remove previous build artifacts first
.\build.ps1 -Installer # also build dist\QtTaskManager-Setup-<version>.exe
build.ps1 will:
- Sync dependencies (including the
devgroup that provides Nuitka) withuv. - Regenerate
app.icofrom the programmatic icon (skip with-SkipIcon). - Run
pyside6-deployagainstpysidedeploy.spec(standalone, no console). - With
-Installer, runiscconinstaller.issto produce the setup exe.
Flags
| Flag | Effect |
|---|---|
-Clean | Remove dist, build, *.build, *.dist, *.onefile-build first |
-SkipIcon | Don't regenerate app.ico |
-Installer | Build the Inno Setup installer after the exe |
Requirements
uvonPATH.- A C toolchain — Nuitka downloads one (and Dependency Walker) on first use and
caches it under
%LOCALAPPDATA%\Nuitka. - For
-Installer: Inno Setup 6 (iscconPATH, or at its default install location).
Version provenance
The build bakes the version, the commit it was cut from, and the build date into a
generated procman/_build_info.py. At runtime Help › About reads that file;
in a dev checkout (where the file is absent) it falls back to git and the package
metadata. See procman/version.py.
Continuous builds
The Release GitHub Actions workflow builds the Windows exe and installer on a
tag push (v*) and drafts a GitHub release with both attached. It caches the Nuitka
toolchain between runs. See .github/workflows/release.yml.