Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(ci): Lint + Build for aarch64 #1581

Merged
merged 3 commits into from
Jan 23, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 9 additions & 6 deletions .github/workflows/cd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,16 +13,19 @@ jobs:
publish:
name: Publishing ${{ matrix.build_target }}
runs-on: ${{ matrix.os }}
container: ${{ matrix.container }}
strategy:
matrix:
include:
- build_target: linux-x86_64
os: ubuntu-latest
container: rust
target: x86_64-unknown-linux-gnu
features: ''
dependencies: 'libpulse-dev libdbus-1-dev libncursesw5-dev libxcb-shape0-dev libxcb-xfixes0-dev'
- build_target: linux-arm64
os: ubuntu-24.04-arm
target: aarch64-unknown-linux-gnu
features: ''
dependencies: 'libpulse-dev libdbus-1-dev libncursesw5-dev libxcb-shape0-dev libxcb-xfixes0-dev'
- build_target: macos-x86_64
os: macos-latest
target: x86_64-apple-darwin
Expand Down Expand Up @@ -53,17 +56,17 @@ jobs:
if: matrix.os == 'macos-latest'
run: brew install portaudio pkg-config
- name: Install Linux dependencies
if: startsWith(matrix.build_target, 'linux-')
if: runner.os == 'Linux'
run: |
apt update
apt install -y ${{ matrix.dependencies }}
sudo apt update
sudo apt install -y ${{ matrix.dependencies }}
- uses: actions/cache@v4
with:
path: |
~/.cargo/registry/index/
~/.cargo/registry/
~/.cargo/git/db/
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
key: ${{ runner.os }}-${{ runner.arch }}-cargo-${{ hashFiles('**/Cargo.lock') }}
- name: Running cargo build
run: cargo build --release --target ${{ matrix.target }} ${{ matrix.features }}
- name: Extract git tag
Expand Down
11 changes: 6 additions & 5 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,17 +19,18 @@ jobs:
include:
- build_target: linux-x86_64
os: ubuntu-latest
artifact_suffix: linux-x86_64
target: x86_64-unknown-linux-gnu
features: ''
- build_target: linux-arm64
os: ubuntu-24.04-arm
target: aarch64-unknown-linux-gnu
features: ''
- build_target: macos-aarch64
os: macos-14
artifact_suffix: macos-aarch64
target: aarch64-apple-darwin
features: '--no-default-features --features rodio_backend,pancurses_backend'
- build_target: windows-x86_64
os: windows-latest
artifact_suffix: windows-x86_64
target: x86_64-pc-windows-msvc
features: '--no-default-features --features rodio_backend,pancurses_backend,share_clipboard,notify'
steps:
Expand All @@ -43,7 +44,7 @@ jobs:
~/.cargo/registry/cache/
~/.cargo/git/db/
target/
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
key: ${{ runner.os }}-${{ runner.arch }}-cargo-${{ hashFiles('**/Cargo.lock') }}
- name: Install rustup
if: runner.os != 'Windows'
shell: bash
Expand All @@ -58,7 +59,7 @@ jobs:
if: matrix.os == 'macos-latest'
run: brew install portaudio pkg-config
- name: Install Linux dependencies
if: matrix.os == 'ubuntu-latest'
if: runner.os == 'Linux'
run: |
sudo apt update
sudo apt install libpulse-dev libdbus-1-dev libncursesw5-dev libxcb-shape0-dev libxcb-xfixes0-dev
Expand Down
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Added

- `%artist` formatting option to only show single artist name
- Build release for aarch64 on Linux

### Removed

Expand Down
Loading