Files
velopack/specs/Tools.md
Paul Betts 45d4a14025 First hack at cleaning up the specs
These are 90% full of lies
2014-09-28 20:31:22 -07:00

20 lines
1.2 KiB
Markdown

## Scenarios
At the end of the day, here's how a developer will use Squirrel:
1. Add the **Squirrel** package to your application
1. As part of the install for Squirrel, NuGet Package Build is enabled in the csproj file
1. The user edits the generated `.nuspec` to specify some details about their app
1. From the NuGet package console, run `Squirrel --releasify` - this builds the world, and you end up with a `$SolutionDir/Releases` folder that has both a Squirrel release package as well as a `Setup.exe`
## How does this work:
As part of adding Squirrel to your application, a `targets` file gets added to your csproj file. This targets file dumps all of the references in your application to the output directory in a simple text file, as well as a list of files marked as content.
Calling `Squirrel --releasify` results in this process being kicked off:
1. For the current project, build release and delta packages.
1. Create a Zip file consisting of `update.exe` and the latest full release from `Releases`.
1. Using Win32 API Abuse™, put that into `setup.exe`, a C++ bootstrapper application whose sole goal is to download .NET 4.5, install it, then run update.exe
1. Copy that to the Releases folder.