Raspberry Pi compile #35
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Raspberry Pi compile | ||
on: | ||
workflow_dispatch: | ||
env: | ||
VERSION: 2.0.5 | ||
jobs: | ||
build: | ||
strategy: | ||
matrix: | ||
arch: [aarch64, armv7l] | ||
include: | ||
- arch: aarch64 | ||
cpu: cortex-a72 | ||
deb: arm64 | ||
other: aarch64 | ||
base_image: https://dietpi.com/downloads/images/DietPi_RPi-ARMv8-Bookworm.img.xz | ||
- arch: armv7l | ||
cpu: cortex-a53 | ||
deb: armhf | ||
other: armhfp | ||
base_image: https://dietpi.com/downloads/images/DietPi_RPi-ARMv7-Bookworm.img.xz | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- uses: pguyot/arm-runner-action@v2.5.2 | ||
with: | ||
base_image: ${{ matrix.base_image }} | ||
cpu: ${{ matrix.cpu }} | ||
bind_mount_repository: true | ||
image_additional_mb: 10240 | ||
optimize_image: false | ||
commands: | | ||
# Rust complains (rightly) that $HOME doesn't match eid home | ||
export HOME=/root | ||
# Workaround to CI worker being stuck on Updating crates.io index | ||
export CARGO_REGISTRIES_CRATES_IO_PROTOCOL=sparse | ||
# Install setup prerequisites | ||
apt-get update -y --allow-releaseinfo-change | ||
apt-get autoremove -y | ||
apt-get install -y curl npm libwebkit2gtk-4.1-dev build-essential libssl-dev libgtk-3-dev libayatana-appindicator3-dev librsvg2-dev | ||
curl https://sh.rustup.rs -sSf | sh -s -- -y --default-toolchain nightly | ||
. "$HOME/.cargo/env" | ||
# curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash | ||
# Install framework specific packages | ||
sudo npm install --force -g npm@latest | ||
sudo npm install --force -g nodejs@latest | ||
# Install Rust Nightly | ||
rustup default nightly # Only Enable for nightly builds | ||
# Install frontend dependencies | ||
npm install | ||
# Build the application | ||
npm run tauri build -- --bundles deb rpm | ||
- name: Upload deb bundle | ||
uses: actions/upload-artifact@v3 | ||
with: | ||
name: Debian ${{ matrix.deb }}Bundle | ||
path: ${{ github.workspace }}/src-tauri/target/release/bundle/deb/Rosary_${{ env.VERSION }}_${{ matrix.deb }}.deb | ||
- name: Upload rpm ${{}}bundle | ||
uses: actions/upload-artifact@v3 | ||
with: | ||
name: RPM ${{ matrix.other }}Bundle | ||
path: ${{ github.workspace }}/src-tauri/target/release/bundle/rpm/rosary_${{ env.VERSION }}-1_${{ matrix.other }}.rpm |