Windows binaries (#2492)
## Issue Addressed Resolves #2406 ## Proposed Changes Add windows release binaries to our CI ## Additional Info Co-authored-by: realbigsean <seananderson33@gmail.com>
This commit is contained in:
parent
02fd54bea7
commit
bc0599246f
33
.github/workflows/release.yml
vendored
33
.github/workflows/release.yml
vendored
@ -97,7 +97,9 @@ jobs:
|
|||||||
x86_64-unknown-linux-gnu,
|
x86_64-unknown-linux-gnu,
|
||||||
x86_64-unknown-linux-gnu-portable,
|
x86_64-unknown-linux-gnu-portable,
|
||||||
x86_64-apple-darwin,
|
x86_64-apple-darwin,
|
||||||
x86_64-apple-darwin-portable]
|
x86_64-apple-darwin-portable,
|
||||||
|
x86_64-windows,
|
||||||
|
x86_64-windows-portable]
|
||||||
include:
|
include:
|
||||||
- arch: aarch64-unknown-linux-gnu
|
- arch: aarch64-unknown-linux-gnu
|
||||||
platform: ubuntu-latest
|
platform: ubuntu-latest
|
||||||
@ -111,6 +113,10 @@ jobs:
|
|||||||
platform: macos-latest
|
platform: macos-latest
|
||||||
- arch: x86_64-apple-darwin-portable
|
- arch: x86_64-apple-darwin-portable
|
||||||
platform: macos-latest
|
platform: macos-latest
|
||||||
|
- arch: x86_64-windows
|
||||||
|
platform: windows-latest
|
||||||
|
- arch: x86_64-windows-portable
|
||||||
|
platform: windows-latest
|
||||||
|
|
||||||
runs-on: ${{ matrix.platform }}
|
runs-on: ${{ matrix.platform }}
|
||||||
needs: extract-version
|
needs: extract-version
|
||||||
@ -168,7 +174,16 @@ jobs:
|
|||||||
if: matrix.arch == 'x86_64-apple-darwin'
|
if: matrix.arch == 'x86_64-apple-darwin'
|
||||||
run: cargo install --path lighthouse --force --locked --features modern
|
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
|
- name: Configure GPG and create artifacts
|
||||||
|
if: startsWith(matrix.arch, 'x86_64-windows') != true
|
||||||
env:
|
env:
|
||||||
GPG_SIGNING_KEY: ${{ secrets.GPG_SIGNING_KEY }}
|
GPG_SIGNING_KEY: ${{ secrets.GPG_SIGNING_KEY }}
|
||||||
GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
|
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
|
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* ..
|
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
|
# Upload artifacts
|
||||||
# This is required to share artifacts between different jobs
|
# This is required to share artifacts between different jobs
|
||||||
@ -276,6 +305,8 @@ jobs:
|
|||||||
| <img src="https://simpleicons.org/icons/linux.svg" style="width: 32px;"/> | 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) |
|
| <img src="https://simpleicons.org/icons/linux.svg" style="width: 32px;"/> | 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) |
|
||||||
| <img src="https://simpleicons.org/icons/raspberrypi.svg" style="width: 32px;"/> | 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) |
|
| <img src="https://simpleicons.org/icons/raspberrypi.svg" style="width: 32px;"/> | 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) |
|
||||||
| <img src="https://simpleicons.org/icons/raspberrypi.svg" style="width: 32px;"/> | 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) |
|
| <img src="https://simpleicons.org/icons/raspberrypi.svg" style="width: 32px;"/> | 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) |
|
||||||
|
| <img src="https://simpleicons.org/icons/windows.svg" style="width: 32px;"/> | 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) |
|
||||||
|
| <img src="https://simpleicons.org/icons/windows.svg" style="width: 32px;"/> | 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** |
|
| **System** | **Option** | - | **Resource** |
|
||||||
| <img src="https://simpleicons.org/icons/docker.svg" style="width: 32px;"/> | 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 }}) |
|
| <img src="https://simpleicons.org/icons/docker.svg" style="width: 32px;"/> | 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 }}) |
|
||||||
|
@ -4,15 +4,16 @@ Each Lighthouse release contains several downloadable binaries in the "Assets"
|
|||||||
section of the release. You can find the [releases
|
section of the release. You can find the [releases
|
||||||
on Github](https://github.com/sigp/lighthouse/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
|
## 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)
|
- `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)
|
- `aarch64-unknown-linux-gnu`: 64-bit ARM processors (Raspberry Pi 4)
|
||||||
- `x86_64-apple-darwin`: macOS with Intel chips
|
- `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:
|
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.
|
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`
|
- E.g., `cp lighthouse /usr/bin`
|
||||||
|
|
||||||
|
> Windows users will need to execute the commands in Step 3 from PowerShell.
|
||||||
|
|
||||||
## Troubleshooting
|
## Troubleshooting
|
||||||
|
|
||||||
If you get a SIGILL (exit code 132), then your CPU is incompatible with the optimized build
|
If you get a SIGILL (exit code 132), then your CPU is incompatible with the optimized build
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
# 📦 Installation
|
# 📦 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:
|
There are three core methods to obtain the Lighthouse application:
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user