Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Naming convention docs updated (replaces #553) #581

Merged
merged 5 commits into from
Feb 5, 2016
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 11 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,17 @@ Refer to our full list of goals for [integrating, packaging, distributing, insta

See the documentation [Table of Contents](docs/readme.md) for an overview of the available documentation for Squirrel.Windows. It includes a [Getting Started Guide](docs/getting-started/0-overview.md) as well as additional topics related to using Squirrel in your applications.

## Building Squirrel
For the impatient:

```sh
git clone https://github.com/squirrel/squirrel.windows
git submodule update --init --recursive ## THIS IS THE PART YOU PROBABLY FORGOT
.\.NuGet\NuGet.exe restore
msbuild /p:Configuration=Release
```
See [Contributing](docs/contributing/contributing.md) for additional information on building and contributing to Squirrel.


## License and Usage

Expand Down
1 change: 1 addition & 0 deletions docs/readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ The **[Getting Started Guide](getting-started/0-overview.md)** provides a step-b
* [Machine-wide Installs](using/machine-wide-installs.md) - generating an MSI file suitable for installation via Group Policy.
* [Debugging Installs](using/debugging-installs.md) - tips for debugging Squirrel.Windows initial installs.
* **Packaging** - documentation related to packaging app files and preparing them for release.
* [Naming Conventions](using/naming.md) - overview of sources used in naming (e.g., shortcut name).
* [NuGet Package Metadata](using/nuget-package-metadata.md) - overview of the NuGet metadata and its uses by Squirrel.
* [Squirrel Command Line](using/squirrel-command-line.md) - command line options for `Squirrel --releasify`
* [Delta Packages](using/delta-packages.md) - an overview of how `Squirrel.exe` creates delta packages.
Expand Down
Binary file added docs/using/images/naming-releases.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
11 changes: 6 additions & 5 deletions docs/using/install-process.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
| [docs](..) / [using](.) / install-process.md
|:---|

# Install Process
This section goes into detail about the install process.
# Install Process

This section goes into detail about the install process.

## Setup.exe

Expand Down Expand Up @@ -49,7 +49,7 @@ The `Setup.exe` application preforms the following:
4. **Executes `Update.exe` to Finish Install** - executes the `Updater.exe` application with the `/install` switch to finish the application installation and then launch the application.
1. **Copy MyApp to `app-1.0.0` Directory** - copy the full version of MyApp files to a application sub-directory (e.g., `MyApp\app-1.0.0`).
2. **Launch MyApp** - at the end of the setup process, the Updater launches the newly installed version of MyApp.
6. **MyApp Creates Shortcuts** - the first execution of the application will cause shortcuts to be created on the desktop and Windows start menu for MyApp.
6. **MyApp Creates Shortcuts** - the first execution of the application will cause shortcuts to be created on the desktop and Windows start menu for MyApp.

## Desktop & Windows Start Shortcuts

Expand All @@ -65,7 +65,8 @@ By default, application shortcuts are created on the desktop and the Windows Sta

* [Loading GIF](loading-gif.md) - specify a "loading" image during initial install of large applications.
* [Machine-wide Installs](machine-wide-installs.md) - generating an MSI file suitable for installation via Group Policy.
* [NuGet Package Metadata](using/nuget-package-metadata.md) - overview of the NuGet metadata and its uses by Squirrel.
* [NuGet Package Metadata](nuget-package-metadata.md) - overview of the NuGet metadata and its uses by Squirrel.
* [Naming Conventions](naming.md) - A more complete view of how Squirrel names everything.

---
| Return: [Table of Contents](../readme.md) |
Expand Down
45 changes: 45 additions & 0 deletions docs/using/naming.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
| [docs](..) / [using](.) / naming.md
|:---|

# Naming Conventions

In addition to the [NuGet Package Metadata](nuget-package-metadata.md), there are other places that squirrel pulls naming information from. Here is the logic:

## Shortcut name

The shortcut name is selected from the first non-null item below:

1. `[assembly: AssemblyProduct("MyApp")` (from `AssemblyInfo.cs`)
2. Squirrel NuGet Package Metadata `title` property.
3. `[assembly: AssemblyDescription("MyApp")` (from `AssemblyInfo.cs`)
4. Filename of the Exe (e.g., MyApp)

## Local Install location

The local install location is determined by the `id` in the NuGet package metadata.

* `%LocalAppData%\<NuGet Package ID>`

**Warning:** Using \[dots\] (i.e., "."'s) in your package id will cause issues ([see issue #523](https://github.com/Squirrel/Squirrel.Windows/issues/523)).

## Program and Features Entry
The entry in the Windows Uninstall is determined as follows:

* Squirrel NuGet Package Metadata `title` property

## Releases Folder

The `Squirrel --releasify` command will create update packages based on the following:

* `<NuGet Package ID>-<NuGet Package Version>-delta.nupkg`
* `<NuGet Package ID>-<NuGet Package Version>-full.nupkg`

![](images/naming-releases.png)

## See Also

* [NuGet Package Metadata](nuget-package-metadata.md) - naming from the NuGet Package Metadata perspective.

---
| Return: [Table of Contents](../readme.md) |
|----|
12 changes: 10 additions & 2 deletions docs/using/nuget-package-metadata.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,21 @@

Squirrel uses information from your app's EXE as well as the NuGet package Metadata for the setup and uninstall UI.

* **Id** - name of the application (no spaces or [dots](https://github.com/Squirrel/Squirrel.Windows/issues/523)). Used to name the release packages (e.g., **MyApp**-1.0.0-full.nupkg).
* **Id** - name of the application (**warning:** you must **[avoid using spaces and dots](https://github.com/Squirrel/Squirrel.Windows/issues/523)** in the Id).
* Name of the release packages (e.g., **MyApp**-1.0.0-full.nupkg).
* Local installation directory (e.g., `%LocalAppData%\MyApp`).
* **Title** - used for the name of the application in the Windows Application Uninstaller.
* **Version** - version specified in `Properties\Assembly.cs`. Used for naming the release package(e.g., MyApp-**1.0.0**-full.nupkg) as well as describing the version number in the Windows Uninstaller (see screenshot below).
* **Version** - version specified in `Properties\Assembly.cs`.
* Name of the release package (e.g., MyApp-**1.0.0**-full.nupkg).
* Version number in the Windows Uninstaller (see screenshot below).
* **Icon Url** - url to an icon to be used for the application. Used for the shortcuts and Windows Uninstaller icons.

![](images/uninstall-app.png)

## See Also

* [Naming Conventions](naming.md) - overview of sources used naming (including those outside of the NuGet Package Metadata).

---
| Return: [Table of Contents](../readme.md) |
|----|