# Inno Setup installer script ## What is `windows-installer.iss`? On Windows, programs are conventionally installed using an installer, also known as an installation wizard. The installer is a single executable that takes care of: * Creating a directory to store the program's files * Downloading assets * Initializing registry entries * Creating a desktop icon * ... and more, depending on the application's needs. `windows-installer.iss` is an **Inno Setup script**: a configuration file for building a Galaxy installer. The Inno Setup Compiler takes a script file and generates an installer executable. This is roughly equivalent to the bundling process on MacOS. ## How to edit the installer See the Inno Setup documentation: [Inno Setup Help](https://jrsoftware.org/ishelp/). This script can be edited manually using any code editor. However, it requires the Inno Setup compiler to be turned into a `.exe` file. ## How to compile this installer First, ensure you've set up your environment. * Download and install the [Inno Setup Compiler](https://jrsoftware.org/isdl.php). * Run `cargo build` to ensure the installer uses the latest version of Galaxy. ### Option 1: Use the CLI 1. Add the Inno Setup Command-line Compiler executable to your shell path. By default, it is located at `C:\Program Files (x86)\Inno Setup 6\ISCC.exe`. 2. Compile the installer: ```shell iscc .\script\windows\windows-installer.iss ``` 3. Run the generated executable: ```shell .\script\windows\Output\GalaxySetup.exe ``` The script begins with a series of preprocessor definitions. From the command line, use the `/D` flag to emulate preprocessor definitions and override the hardcoded defaults. Usage: `iscc