Files
galaxy/script/windows
David Stern 4a00689af9 Fix CI to work in the warpdotdev/warp repo. (#9226)
## Description

A couple issues that needed fixing:
* Using `--all-features` and `--all-targets` causes us to try to build
the first-party binaries with embedded configuration, which isn't
available from this repository. To unblock CI, we'll only run clippy on
the default feature set for right now.
* Similarly, testing compilation with release configuration was trying
to build the `dev` channel; this switches that over to the `oss`
channel.
2026-04-28 11:34:34 -04:00
..
2026-04-28 08:43:33 -05:00
2026-04-28 08:43:33 -05:00

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 Warp 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. 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.
  • Run cargo build to ensure the installer uses the latest version of Warp.

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:
iscc .\script\windows\windows-installer.iss`.
  1. Run the generated executable:
.\script\windows\Output\Warp-Windows-Setup.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 <script path> /D<name>[=<value>]

The following constants can be overwritten:

  • MyAppVersion (default: 0.1.0)
  • MyAppExeName (default: warp.exe)
  • ReleaseChannel (default: dev)
  • TargetProfileDir (default: debug)

Option 2: Use the GUI

  1. Open the Inno Setup application and select this script.
  2. Click the "compile" button. This will generate an installer executable in a directory called Output at the same level as this script.
  3. To run the installer, click the "run" button in Inno Setup.

Using icons

Windows has its own icon file format that bundles together multiple icon sizes. App icons are located in app/channels/<channel_name>/icon/no-padding. The .ico files are generated using imagemagick:

convert 16x16.png 32x32.png 48x48.png 64x64.png 256x256.png icon.ico

Note that sizes above 256x256 are not supported. See the Inno Setup docs.