diff --git a/app/gui/qt/wix/BUILD_MSI.md b/app/gui/qt/wix/BUILD_MSI.md new file mode 100644 index 0000000000000000000000000000000000000000..758185510a7c824c02bdac4a709393f9a438294a --- /dev/null +++ b/app/gui/qt/wix/BUILD_MSI.md @@ -0,0 +1,18 @@ +# How to build an MSI installer using WiX + +1. Build `sonic-pi.exe` and run it to test. +2. Copy wix directory to top level sonic-pi directory +3. Remove files in `etc` and `app\gui` you don't want to include in the msi + - `app\gui` should likely only have the `release` and `theme` dirs, everything else can go +4. Generate the wixobj files + - `wix\gen_wix.bat` +5. Update version number + - edit wix\sonic-pi.wxs + - change version number (from X.Y.Z) +6. Remove duplicate info + - edit `wix\gui.wxs` + - remove sonic-pi.exe component and componentref (both have identical IDs) +7. Build the msi! + - `wix\gen_msi.bat` +8. Your MSI should be found in the `wix` dir. + diff --git a/app/gui/qt/wix/gen_msi.bat b/app/gui/qt/wix/gen_msi.bat new file mode 100755 index 0000000000000000000000000000000000000000..d85a7c0043d8a2a9bb7323fc5bf30692039925c6 --- /dev/null +++ b/app/gui/qt/wix/gen_msi.bat @@ -0,0 +1,5 @@ +cd %~dp0 +cd .. + +candle wix\sonic-pi.wxs etc.wxs gui.wxs server.wxs -ext WixUtilExtension +light sonic-pi.wixobj etc.wixobj gui.wixobj server.wixobj -ext WixUtilExtension -ext WixUIExtension -o wix\Sonic-Pi.msi -b etc -b app\gui -b app\server diff --git a/app/gui/qt/wix/gen_wix.bat b/app/gui/qt/wix/gen_wix.bat new file mode 100755 index 0000000000000000000000000000000000000000..3d1dc548de0e8d1f45f96f9ae70e4e8374ce46a1 --- /dev/null +++ b/app/gui/qt/wix/gen_wix.bat @@ -0,0 +1,10 @@ +cd %~dp0 +cd .. + +heat dir etc -gg -g1 -sfrag -dr SonicPi -cg ETC -out etc.wxs +heat dir app\gui -gg -g1 -sfrag -dr AppDir -cg GUI -out gui.wxs +heat dir app\server -gg -g1 -sfrag -dr AppDir -cg SERVER -out server.wxs + +echo Update version number in wix\sonic-pi.wxs +echo Remove duplicate sonic-pi.exe info from wix\gui.wxs +echo Then run gen_msi.bat diff --git a/app/gui/qt/wix/sonic-pi.wxs b/app/gui/qt/wix/sonic-pi.wxs index de08561527d7859e0fb69e1147cf3355d9257210..81d1d3a3f9f2a659590f5d1de4be47ed8a10401b 100644 --- a/app/gui/qt/wix/sonic-pi.wxs +++ b/app/gui/qt/wix/sonic-pi.wxs @@ -1,31 +1,6 @@ - - @@ -33,9 +8,9 @@ light sonic-pi.wixobj etc.wixobj gui.wixobj server.wixobj -ext WixUtilExtension - - - + + + https://in-thread.sonic-pi.net https://in-thread.sonic-pi.net http://sonic-pi.net