Update NSIS guide. Backport docs to .34. Fix references. Fix titles.

This commit is contained in:
Lea Anthony
2022-03-31 12:23:28 +11:00
parent 5ead563989
commit 2376062008
12 changed files with 572 additions and 36 deletions
+2 -1
View File
@@ -61,7 +61,8 @@ import TabItem from "@theme/TabItem";
<TabItem value="Linux">Linux required the standard <code>gcc</code> build tools plus <code>libgtk3</code> and <code>libwebkit</code>.
Rather than list a ton of commands for different distros, Wails can try to determine
what the installation commands are for your specific distribution. Run <code>wails doctor</code> after installation
to be shown how to install the dependencies.</TabItem>
to be shown how to install the dependencies.
If your distro/package manager is not supported, please consult the <a href="/docs/guides/linux-distro-support"> Add Linux Distro</a> guide.</TabItem>
</Tabs>
## Optional Dependencies
+1 -1
View File
@@ -1,5 +1,5 @@
# Manual builds
# Manual Builds
The Wails CLI does a lot of heavy lifting for the project, but sometimes it's desirable to manually build your project.
This document will discuss the different operations the CLI does and how this may be achieved in different ways.
+10 -10
View File
@@ -1,6 +1,6 @@
# Code signing on GitHub Actions
# Code Signing
This is a guide on how you can sign your binaries generated with Wails on macOS and Windows.
This is a guide on how you can sign your binaries generated with Wails on MacOS and Windows.
The guide will target CI environments, more specifically GitHub Actions.
## Windows
@@ -48,7 +48,7 @@ jobs:
# You may need to manually build you frontend manually here, unless you have configured frontend build and install commands in wails.json.
- name: Get Wails
run: go install github.com/wailsapp/wails/v2/cmd/wails@latest
- name: Build wails app
- name: Build Wails app
run: |
wails build
- name: upload artifacts macOS
@@ -82,7 +82,7 @@ Now we're ready to implement the signing in our workflow using one of the two me
### Method 1: signing with commands
This method uses PowerShell commands to sign our app, and leaves you control over the entire signing process.
After the `"Build wails app"` step, we can add the following step to our workflow:
After the `"Build Wails app"` step, we can add the following step to our workflow:
```yaml
- name: Sign Windows binaries
if: matrix.platform == 'windows-latest'
@@ -128,7 +128,7 @@ jobs:
# You may need to manually build you frontend here, unless you have configured frontend build and install commands in wails.json.
- name: Get Wails
run: go install github.com/wailsapp/wails/v2/cmd/wails@latest
- name: Build wails app
- name: Build Wails app
run: |
wails build
- name: Sign Windows binaries
@@ -203,7 +203,7 @@ jobs:
# You may need to manually build you frontend here, unless you have configured frontend build and install commands in wails.json.
- name: Get Wails
run: go install github.com/wailsapp/wails/v2/cmd/wails@latest
- name: Build wails app
- name: Build Wails app
run: |
wails build
- name: upload artifacts macOS
@@ -223,7 +223,7 @@ jobs:
For code signing on macOS, [gon](https://github.com/mitchellh/gon) is a very handy tool for code signing and communicating with Apple servers, also written in Go, and
will be used in this guide.
After the `Build wails app` step, add the following to the workflow:
After the `Build Wails app` step, add the following to the workflow:
```yaml
- name: MacOS download gon for code signing and app notarization
if: matrix.platform == 'macos-latest'
@@ -247,7 +247,7 @@ Now we need to configure some gon config files in our `build/darwin` directory:
}
}
```
Where `source` is your wails binary, `bundle_id` is your bundle ID, `apple_id` contains your Apple ID username and App-Specific password
Where `source` is your Wails binary, `bundle_id` is your bundle ID, `apple_id` contains your Apple ID username and App-Specific password
which you created earlier, and `sign.application_identity` is your identity which you can find by running the following command:
```bash
security find-identity -v -p codesigning
@@ -293,7 +293,7 @@ Here's an example `Info.plist` file:
</dict></plist>
```
Now we're ready to add the signing step in our workflow after building the wails app:
Now we're ready to add the signing step in our workflow after building the Wails app:
```yaml
- name: Import Code-Signing Certificates for macOS
if: matrix.platform == 'macos-latest'
@@ -339,7 +339,7 @@ jobs:
# You may need to manually build you frontend here, unless you have configured frontend build and install commands in wails.json.
- name: Get Wails
run: go install github.com/wailsapp/wails/v2/cmd/wails@latest
- name: Build wails app
- name: Build Wails app
run: |
wails build
- name: MacOS download gon for code signing and app notarization
+9 -9
View File
@@ -1,11 +1,11 @@
# Building NSIS installer
Wails supports generating Windows installers using the [NSIS installer](https://nsis.sourceforge.io/).
# NSIS installer
<p style={{"text-align": "center"}}>
<img src="/img/nsis.png"></img><br/>
<img src="/img/nsis.png" style={{"max-width":"50%"}}></img><br/>
</p>
Wails supports generating Windows installers using the [NSIS installer](https://nsis.sourceforge.io/).
## Installing NSIS
### Windows
@@ -29,17 +29,17 @@ NSIS is available to install through homebrew: `brew install nsis`.
## Generating the installer
When a new project is created, Wails generates a `.nsi` installer script in `build/windows/installer`. The config
data is read from the project's `wails.json` so you can use this to configure the installer:
When a new project is created, Wails generates the NSIS configuration files in `build/windows/installer`. The config
data is read from `installer/info.json` and that is configured to use the project's `wails.json` Info section:
```json
// ...
"Info": {
"companyName": "wailsvite",
"productName": "wailsvite",
"companyName": "My Company Name",
"productName": "Wails Vite",
"productVersion": "1.0.0",
"copyright": "Copyright.........",
"comments": "Built using Wails (https://wails.app)"
"comments": "Built using Wails (https://wails.io)"
},
```