| 1 | <img src="https://github.com/wixtoolset/Home/raw/master/imgs/wix-white-bg.png" alt="WiX Toolset" height="128" /> |
| 2 | |
| 3 | [](https://www.nuget.org/packages/wix) |
| 4 | [](https://www.nuget.org/stats/packages/WiX?groupby=Version) |
| 5 | [](https://github.com/wixtoolset/wix/actions/workflows/build.yml?query=branch%3Amain) |
| 6 | |
| 7 | # WiX Toolset |
| 8 | |
| 9 | This repository contains the WiX Toolset codebase. |
| 10 | |
| 11 | # Developing WiX |
| 12 | |
| 13 | ## Prerequisites |
| 14 | |
| 15 | - A command line Git client that is in the system path |
| 16 | - Visual Studio 2022 (17.8.2 or higher) with the following installed: |
| 17 | |
| 18 | | Workloads | |
| 19 | | :-------- | |
| 20 | | ASP.NET and web development | |
| 21 | | .NET desktop development | |
| 22 | | Desktop development with C++ | |
| 23 | |
| 24 | | Individual components | |
| 25 | | :-------------------- | |
| 26 | | .NET 6.0 Runtime (Long Term Support) | |
| 27 | | .NET Framework 4.7.2 SDK | |
| 28 | | .NET Framework 4.7.2 targeting pack | |
| 29 | | .NET Framework 4.6.2 targeting pack | |
| 30 | | MSVC v143 - VS 2022 C++ ARM64/ARM64EC build tools (Latest) | |
| 31 | | MSVC v143 - VS 2022 C++ x64/x86 build tools (Latest) | |
| 32 | | Git for Windows | |
| 33 | |
| 34 | - [Download the latest nuget.exe command-line tool](https://www.nuget.org/downloads) and put it in a directory on the path. |
| 35 | |
| 36 | ##### Getting started: |
| 37 | |
| 38 | * [Fork the WiX repository](https://github.com/wixtoolset/wix/fork) |
| 39 | into your own GitHub repository |
| 40 | * Clone the WiX repository from your fork (`git clone https://github.com/yourdomain/wix.git`) |
| 41 | into the directory of your choice |
| 42 | |
| 43 | ##### To build the WiX toolset: |
| 44 | |
| 45 | * Start a VS2022 'Developer Command Prompt' |
| 46 | * Change directory to the root of the cloned repository |
| 47 | * Issue the command `devbuild` (or `devbuild release` if you want to create a release version) |
| 48 | |
| 49 | ##### Executing your newly built WiX toolset |
| 50 | |
| 51 | * `build\wix\Debug\publish\wix\wix --help` (Change `Debug` to `Release` if you built in release mode) |
| 52 | |
| 53 | ##### Pull request expectations |
| 54 | |
| 55 | * Pick an [outstanding WiX issue](https://github.com/wixtoolset/issues/issues?q=is%3Aissue+is%3Aopen+label%3A%22up+for+grabs%22) (or [create a new one](https://github.com/wixtoolset/issues/issues/new/choose)). Add a comment requesting that you be assigned to the issue. Wait for confirmation. |
| 56 | * To create a pull request, [fork a new branch](https://github.com/wixtoolset/wix/fork) from the `main` branch |
| 57 | * Make changes to effect whatever changed behavior is required for the pull request |
| 58 | * Push the changes to your repository origin as needed |
| 59 | * If the `main` branch has changed since you created your branch, rebase to the latest updates. |
| 60 | * If needed (ie, you squashed or rebased), do a force push of your branch |
| 61 | * Create a pull request with your branch against the WiX repository. |