1
0
Fork 0
mirror of https://github.com/alacritty/alacritty.git synced 2024-11-25 14:05:41 -05:00
alacritty/.github/workflows/release.yml
2024-08-31 08:35:48 +00:00

91 lines
3.5 KiB
YAML

name: Release
on:
push:
tags: ["v[0-9]+.[0-9]+.[0-9]+*"]
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
CARGO_TERM_COLOR: always
jobs:
macos:
runs-on: macos-latest
steps:
- uses: actions/checkout@v4
- name: Install dependencies
run: brew install scdoc
- name: Install ARM target
run: rustup update && rustup target add aarch64-apple-darwin && rustup target add x86_64-apple-darwin
- name: Test
run: cargo test --release --target=x86_64-apple-darwin
- name: Build ARM
run: cargo build --release --target=aarch64-apple-darwin
- name: Make DMG
run: make dmg-universal
- name: Upload Application
run: |
mv ./target/release/osx/Alacritty.dmg ./Alacritty-${GITHUB_REF##*/}.dmg
./.github/workflows/upload_asset.sh ./Alacritty-${GITHUB_REF##*/}.dmg $GITHUB_TOKEN
windows:
runs-on: windows-latest
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v4
- name: Test
run: cargo test --release
- name: Build
run: cargo build --release
- name: Upload portable executable
run: |
cp ./target/release/alacritty.exe ./Alacritty-${GITHUB_REF##*/}-portable.exe
./.github/workflows/upload_asset.sh \
./Alacritty-${GITHUB_REF##*/}-portable.exe $GITHUB_TOKEN
- name: Install WiX
run: dotnet tool install --global wix --version 4.0.5
- name: Create msi installer
run: |
wix extension add WixToolset.UI.wixext/4.0.5 WixToolset.Util.wixext/4.0.5
wix build -arch "x64" -ext WixToolset.UI.wixext -ext WixToolset.Util.wixext \
-out "./Alacritty-${GITHUB_REF##*/}-installer.msi" "alacritty/windows/wix/alacritty.wxs"
- name: Upload msi installer
run: |
./.github/workflows/upload_asset.sh \
./Alacritty-${GITHUB_REF##*/}-installer.msi $GITHUB_TOKEN
linux:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install dependencies
run: |
sudo apt-get install cmake pkg-config libfreetype6-dev libfontconfig1-dev \
libxcb-xfixes0-dev libxkbcommon-dev python3 scdoc
- name: Test
run: cargo test --release
- name: Generate manpages
run: |
scdoc < extra/man/alacritty.1.scd | gzip -c > "./alacritty.1.gz"
scdoc < extra/man/alacritty-msg.1.scd | gzip -c > "./alacritty-msg.1.gz"
scdoc < extra/man/alacritty.5.scd | gzip -c > "./alacritty.5.gz"
scdoc < extra/man/alacritty-bindings.5.scd | gzip -c > "./alacritty-bindings.5.gz"
- name: Upload Assets
run: |
mv ./extra/logo/alacritty-term.svg ./Alacritty.svg
./.github/workflows/upload_asset.sh ./Alacritty.svg $GITHUB_TOKEN
./.github/workflows/upload_asset.sh ./alacritty.1.gz $GITHUB_TOKEN
./.github/workflows/upload_asset.sh ./alacritty-msg.1.gz $GITHUB_TOKEN
./.github/workflows/upload_asset.sh ./alacritty.5.gz $GITHUB_TOKEN
./.github/workflows/upload_asset.sh ./alacritty-bindings.5.gz $GITHUB_TOKEN
./.github/workflows/upload_asset.sh ./extra/completions/alacritty.bash $GITHUB_TOKEN
./.github/workflows/upload_asset.sh ./extra/completions/alacritty.fish $GITHUB_TOKEN
./.github/workflows/upload_asset.sh ./extra/completions/_alacritty $GITHUB_TOKEN
./.github/workflows/upload_asset.sh ./extra/linux/Alacritty.desktop $GITHUB_TOKEN
./.github/workflows/upload_asset.sh ./extra/alacritty.info $GITHUB_TOKEN