diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index a9493d0623..bca28dbe2a 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -97,7 +97,9 @@ jobs:
x86_64-unknown-linux-gnu,
x86_64-unknown-linux-gnu-portable,
x86_64-apple-darwin,
- x86_64-apple-darwin-portable]
+ x86_64-apple-darwin-portable,
+ x86_64-windows,
+ x86_64-windows-portable]
include:
- arch: aarch64-unknown-linux-gnu
platform: ubuntu-latest
@@ -111,6 +113,10 @@ jobs:
platform: macos-latest
- arch: x86_64-apple-darwin-portable
platform: macos-latest
+ - arch: x86_64-windows
+ platform: windows-latest
+ - arch: x86_64-windows-portable
+ platform: windows-latest
runs-on: ${{ matrix.platform }}
needs: extract-version
@@ -168,7 +174,16 @@ jobs:
if: matrix.arch == 'x86_64-apple-darwin'
run: cargo install --path lighthouse --force --locked --features modern
+ - name: Build Lighthouse for Windows portable
+ if: matrix.arch == 'x86_64-windows-portable'
+ run: cargo install --path lighthouse --force --locked --features portable
+
+ - name: Build Lighthouse for Windows modern
+ if: matrix.arch == 'x86_64-windows'
+ run: cargo install --path lighthouse --force --locked --features modern
+
- name: Configure GPG and create artifacts
+ if: startsWith(matrix.arch, 'x86_64-windows') != true
env:
GPG_SIGNING_KEY: ${{ secrets.GPG_SIGNING_KEY }}
GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
@@ -182,6 +197,20 @@ jobs:
echo "$GPG_PASSPHRASE" | gpg --passphrase-fd 0 --pinentry-mode loopback --batch -ab lighthouse-${{ needs.extract-version.outputs.VERSION }}-${{ matrix.arch }}.tar.gz
mv *tar.gz* ..
+ - name: Configure GPG and create artifacts Windows
+ if: startsWith(matrix.arch, 'x86_64-windows')
+ env:
+ GPG_SIGNING_KEY: ${{ secrets.GPG_SIGNING_KEY }}
+ GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
+ run: |
+ echo $env:GPG_SIGNING_KEY | gpg --batch --import
+ mkdir artifacts
+ move $env:USERPROFILE/.cargo/bin/lighthouse.exe ./artifacts
+ cd artifacts
+ tar -czf lighthouse-${{ needs.extract-version.outputs.VERSION }}-${{ matrix.arch }}.tar.gz lighthouse.exe
+ gpg --passphrase "$env:GPG_PASSPHRASE" --batch --pinentry-mode loopback -ab lighthouse-${{ needs.extract-version.outputs.VERSION }}-${{ matrix.arch }}.tar.gz
+ move *tar.gz* ..
+
# =======================================================================
# Upload artifacts
# This is required to share artifacts between different jobs
@@ -276,6 +305,8 @@ jobs:
|
| x86_64 | [lighthouse-${{ env.VERSION }}-x86_64-unknown-linux-gnu-portable.tar.gz](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/lighthouse-${{ env.VERSION }}-x86_64-unknown-linux-gnu-portable.tar.gz) | [PGP Signature](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/lighthouse-${{ env.VERSION }}-x86_64-unknown-linux-gnu-portable.tar.gz.asc) |
|
| aarch64 | [lighthouse-${{ env.VERSION }}-aarch64-unknown-linux-gnu.tar.gz](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/lighthouse-${{ env.VERSION }}-aarch64-unknown-linux-gnu.tar.gz) | [PGP Signature](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/lighthouse-${{ env.VERSION }}-aarch64-unknown-linux-gnu.tar.gz.asc) |
|
| aarch64 | [lighthouse-${{ env.VERSION }}-aarch64-unknown-linux-gnu-portable.tar.gz](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/lighthouse-${{ env.VERSION }}-aarch64-unknown-linux-gnu-portable.tar.gz) | [PGP Signature](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/lighthouse-${{ env.VERSION }}-aarch64-unknown-linux-gnu-portable.tar.gz.asc) |
+ |
| x86_64 | [lighthouse-${{ env.VERSION }}-x86_64-windows.tar.gz](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/lighthouse-${{ env.VERSION }}-x86_64-windows.tar.gz) | [PGP Signature](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/lighthouse-${{ env.VERSION }}-x86_64-windows.tar.gz.asc) |
+ |
| x86_64 | [lighthouse-${{ env.VERSION }}-x86_64-windows-portable.tar.gz](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/lighthouse-${{ env.VERSION }}-x86_64-windows-portable.tar.gz) | [PGP Signature](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/lighthouse-${{ env.VERSION }}-x86_64-windows-portable.tar.gz.asc) |
| | | | |
| **System** | **Option** | - | **Resource** |
|
| Docker | [${{ env.VERSION }}](https://hub.docker.com/r/${{ env.IMAGE_NAME }}/tags?page=1&ordering=last_updated&name=${{ env.VERSION }}) | [${{ env.IMAGE_NAME }}](https://hub.docker.com/r/${{ env.IMAGE_NAME }}) |
diff --git a/book/src/installation-binaries.md b/book/src/installation-binaries.md
index d475c0ad08..4f092c1e29 100644
--- a/book/src/installation-binaries.md
+++ b/book/src/installation-binaries.md
@@ -4,15 +4,16 @@ Each Lighthouse release contains several downloadable binaries in the "Assets"
section of the release. You can find the [releases
on Github](https://github.com/sigp/lighthouse/releases).
-> Note: binaries are not yet provided for Windows native.
+> Note: binaries are provided for Windows native, but Windows Lighthouse support is still in beta testing.
## Platforms
-Binaries are supplied for three platforms:
+Binaries are supplied for four platforms:
- `x86_64-unknown-linux-gnu`: AMD/Intel 64-bit processors (most desktops, laptops, servers)
- `aarch64-unknown-linux-gnu`: 64-bit ARM processors (Raspberry Pi 4)
- `x86_64-apple-darwin`: macOS with Intel chips
+- `x86_64-windows`: Windows with 64-bit processors (Beta)
Additionally there is also a `-portable` suffix which indicates if the `portable` feature is used:
@@ -38,6 +39,8 @@ a portable `x86_64` binary.
1. (Optional) Move the `lighthouse` binary to a location in your `PATH`, so the `lighthouse` command can be called from anywhere.
- E.g., `cp lighthouse /usr/bin`
+> Windows users will need to execute the commands in Step 3 from PowerShell.
+
## Troubleshooting
If you get a SIGILL (exit code 132), then your CPU is incompatible with the optimized build
diff --git a/book/src/installation.md b/book/src/installation.md
index b2cf73dd03..009bfc00c0 100644
--- a/book/src/installation.md
+++ b/book/src/installation.md
@@ -1,6 +1,6 @@
# 📦 Installation
-Lighthouse runs on Linux, macOS, and Windows (via [WSL][] only).
+Lighthouse runs on Linux, macOS, and Windows (still in beta testing).
There are three core methods to obtain the Lighthouse application: