SunnyFORM is an experimental CastFORM Windows Installer project.
CastFORM v1.0.0 through v2.0.1 was built via iExpress and while this was serviceable, it was also clearly lacking many creature comforts like the ability to uninstall (rather than manually deleting the install folder).
SunnyFORM aims to improve upon this by leveraging on Windows Installer to provide an installation experience that is more aligned with the expectations of users.
At the moment, WiX v4 is still very new, and its documentations are still in development. As such, this repository currently aims to adapt their presently available documentation for Flutter projects as our MVP. As FireGiant puts out new documentation, we will revisit and continue to refine this repository to provide more comprehensive instructions, as well as a more pleasing UI.
You may find the official tutorial here, and the official docs here.
SunnyFORM is designed as a part of the toolchain for CastFORM, a Pokémon registration sheet filler.
Being a form-automation application based around Pokémon TCG, CastFORM is a play on words using the name of one of the playable Pokémon.
This project inherits its name from Castform's forms, which changes depending on the weather: under harsh sunlight, Castform will be in its Sunny Form and be a Fire-type Pokémon.
Our test bench is set up with the following dependencies:
- Visual Studio Community 2022 v17.8.1
- .NET SDK 8 (via Visual Studio)
- HeatWave for VS2022 v1.0.2 (Visual Studio extension)
- This is the name on the Visual Studio marketplace
- FireGiant which produces both WiX and HeatWave calls this version
HeatWave Community Edition
instead
- WiX Toolset v4 (HeatWave obtains this from nuget - no installation needed)
WiX supports a number of interfaces including CLI - we decided to go with the Visual Studio approach for dealing with WiX, so we grabbed the HeatWave extension.
At the time of writing, we are letting HeatWave and WiX generate GUIDs instead of managing them manually.
Should we want to micromanage this in the future, we will probably use the New-Guid
PowerShell cmdlet to generate new GUIDs.
- Run
flutter build windows
, and note CastFORM version - Clone the repository, and open in Visual Studio. Set the build configuration to x64 (required for Flutter).
- In the top toolbar go to
Project > Properties > Build
, and modify the absolute paths for Fluttter build output and Visual C++ Redistributable libraries directories - Navigate to
Package.wxs
, and under thePackage
tag, update the version number attribute - Check if the the folder structure in
CastFORM/build/windows/runner/Release
has changed, and updateFolders.wxs
accordingly - Check if the file structure has changed, and update
AppComponents.wxs
accordingly - In the top toolbar got to
Build > Build Solution
- Go to
Installer/bin/x64/Release/en-US
to findCastFORM_Installer_x64.msi
and upload that to the CastFORM releases page
This section has been migrated to its own repository.
This section has been migrated to its own repository.
SunnyFORM is an open-source project for creating CastFORM installers for the Windows platform.
SunnyFORM is part of the developer toolchain created for CastFORM.
SunnyFORM is non-monetised, and provided as is. Every reasonable effort has been taken to ensure correctness and reliability of Weather Ball.
We will not be liable for any special, direct, indirect, or consequential damages or any damages whatsoever resulting from
loss of use, data or profits, whether in an action if contract, negligence or other tortious action, arising out of or in connection with the use of SunnyFORM (in part or in whole).