Factorizer/Cluster ERP WikiCluster ERP Türkçe
Home / Operations

Reference

Windows installer

The Inno Setup script, the INSTALL.bat launcher, the Turkish install guide, and the tkinter setup wizard that install Cluster ERP on a Windows workstation.

The repository contains a graphical install path for a single Windows workstation: an Inno Setup script in installer/cluster_erp_setup.iss, the launcher INSTALL.bat, the guide README_INSTALL.txt, and the setup wizard installer/setup_wizard.pyw. This page describes what each file does. A Linux node uses a different path, described in install a Linux node.

Scope and source

  • Defined in: installer/cluster_erp_setup.iss, INSTALL.bat, README_INSTALL.txt, installer/setup_wizard.pyw (SetupWizard).
  • Count: six wizard pages, counted from the docstring list (installer/setup_wizard.pyw:6-12); nine numbered install steps in the wizard log, of which step 8 has no log line (installer/setup_wizard.pyw:504-699).

Default values that the wizard pre-fills for accounts and passwords are omitted under the security disclosure policy.

Inno Setup script

Section Content Source
Defines Product name, version 0.1.0, publisher, and start_desktop.bat as the program entry. installer/cluster_erp_setup.iss:5-9
[Setup] Installs under the program files folder, needs administrator rights, writes a setup log, and names the output after the version. installer/cluster_erp_setup.iss:11-25
[Languages] Turkish and English. installer/cluster_erp_setup.iss:27-29
[Files] src, migrations, pyproject.toml, alembic.ini, .env.example, and the wizard. installer/cluster_erp_setup.iss:31-37
[Run] Starts the wizard after the copy. installer/cluster_erp_setup.iss:39-40
[Icons], [Tasks] Start-menu entries for the program, the wizard, and the uninstaller; an optional desktop shortcut. installer/cluster_erp_setup.iss:42-49
[UninstallDelete] Removes the virtual environment, __pycache__, and .env on uninstall. installer/cluster_erp_setup.iss:51-54

INSTALL.bat and README_INSTALL.txt

INSTALL.bat checks that python is on the PATH, prints its version, and starts the wizard; without Python it prints the download address and stops (INSTALL.bat:11-40). README_INSTALL.txt is a Turkish guide in four steps: install Python, install PostgreSQL, run INSTALL.bat, and start the program, followed by troubleshooting notes (README_INSTALL.txt:5-66).

Setup wizard

The wizard is a tkinter application that needs only Python 3.12 or newer and refuses older versions (installer/setup_wizard.pyw:1-12, installer/setup_wizard.pyw:794-800).

Step Behaviour Source
1 Copies the source tree to the chosen folder, without .git, .env, virtual environments, and node_modules. installer/setup_wizard.pyw:503-519
2 Creates a virtual environment venv. installer/setup_wizard.pyw:521-528
3 Installs the project with pip install -e ., then PySide6==6.8.3 and email-validator. installer/setup_wizard.pyw:533-545
4 Writes .env with the database settings, server host and port, CLUSTER_ERP_DEBUG=false, and a random secret key. installer/setup_wizard.pyw:547-567
5 If PostgreSQL tools are found and the option is on, creates the database role and the database and grants rights on them. installer/setup_wizard.pyw:569-626
6 Runs alembic upgrade head. installer/setup_wizard.pyw:628-653
7 Creates the first administrator in the database with an argon2 password hash. installer/setup_wizard.pyw:655-696
9 Writes start_server.bat and start_desktop.bat and creates shortcuts. installer/setup_wizard.pyw:698-734

The wizard looks for the PostgreSQL tools under the program files folders and then on the PATH (installer/setup_wizard.pyw:420-434). Database names and role names must match _SAFE_IDENT (installer/setup_wizard.pyw:58-67). start_desktop.bat stops any process listening on the server port, starts the server in the background, waits, and starts the desktop client (installer/setup_wizard.pyw:709-724).

Constraints and validation

  • The wizard installs packages without requirements.lock and its hashes, unlike the Linux node and continuous integration (installer/setup_wizard.pyw:533-545, deploy/install.sh:153, .github/workflows/ci.yml:47).
  • The [Files] list of the Inno Setup script contains no webapp folder (installer/cluster_erp_setup.iss:31-37); the server mounts /app only when that folder exists (src/cluster_erp/server/app.py:1633-1634).
  • The product version in the script and the wizard is the constant 0.1.0 (installer/cluster_erp_setup.iss:6, installer/setup_wizard.pyw:51).

Discrepancies

Terms introduced

Term Code identifier Definition Turkish term Source
setup wizard SetupWizard The tkinter program that installs Cluster ERP on a Windows workstation. kurulum sihirbazı installer/setup_wizard.pyw:74

Verified against commit 92f8051 on 2026-11-13.

Verified against commit 92f8051 · 2026-11-13