mirror of
https://github.com/Universal-Debloater-Alliance/universal-android-debloater-next-generation.git
synced 2026-08-28 02:10:39 +02:00
Useful if UAD is distributed into repositories. The update process will then be managed by a package manager. Note: MacOS builds are will now also be released as a compressed tarball (like for Linux)
71 lines
No EOL
2.8 KiB
YAML
71 lines
No EOL
2.8 KiB
YAML
name: Build artifacts
|
|
on: workflow_dispatch
|
|
|
|
jobs:
|
|
build:
|
|
name: Building ${{ matrix.build_target }} [${{ matrix.graphics }}] [${{ matrix.update_feature }}]
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
matrix:
|
|
build_target: [linux, macos, windows]
|
|
graphics: [glow, wgpu]
|
|
update_feature: [self-update, no-self-update]
|
|
exclude:
|
|
- build_target: windows
|
|
update_feature: no-self-update
|
|
include:
|
|
- build_target: linux
|
|
os: ubuntu-latest
|
|
- build_target: macos
|
|
os: macos-latest
|
|
- build_target: windows
|
|
os: windows-latest
|
|
- graphics: glow
|
|
renderer: "-opengl"
|
|
- graphics: wgpu
|
|
renderer: '' # Vulkan but we don't want this in the binary filename
|
|
- update_feature: self-update
|
|
update_name: '' # we don't want this in the binary filename
|
|
- update_feature: no-self-update
|
|
update_name: "-noseflupdate"
|
|
steps:
|
|
- name: Install Rust toolchain
|
|
uses: actions-rs/toolchain@v1
|
|
with:
|
|
toolchain: nightly
|
|
override: true
|
|
target: ${{ matrix.target }}
|
|
profile: minimal
|
|
- name: Install Linux dependencies
|
|
if: matrix.os == 'ubuntu-latest'
|
|
run: |
|
|
sudo apt-get -qq update
|
|
sudo apt-get install -y libxkbcommon-dev lld
|
|
- uses: actions/checkout@v2
|
|
- name: Cargo build
|
|
uses: actions-rs/cargo@v1
|
|
with:
|
|
command: build
|
|
args: --release --no-default-features --features ${{ matrix.graphics }},${{ matrix.update_feature }}
|
|
- name: Renaming binaries [Windows]
|
|
if: matrix.os == 'windows-latest'
|
|
run: mv target/release/uad_gui.exe target/release/uad_gui-${{ matrix.build_target }}${{ matrix.renderer }}.exe
|
|
- name: Renaming binaries [Others]
|
|
if: matrix.os != 'windows-latest'
|
|
run: mv target/release/uad_gui target/release/uad_gui${{ matrix.update_name }}-${{ matrix.build_target }}${{ matrix.renderer }}
|
|
- name: Tarball Linux binary
|
|
if: matrix.os == 'ubuntu-latest'
|
|
run: |
|
|
cd target/release/
|
|
tar --remove-files -czf uad_gui${{ matrix.update_name }}-${{ matrix.build_target }}${{ matrix.renderer }}{.tar.gz,}
|
|
- name: Tarball MacOS binaries # --remove-files is not available on bsd tar
|
|
if: matrix.target.os == 'macos-latest'
|
|
run: |
|
|
brew install gnu-tar
|
|
cd target/release/
|
|
gtar --remove-files -czf uad_gui${{ matrix.update_name }}-${{ matrix.build_target }}${{ matrix.renderer }}{.tar.gz,}
|
|
- name: Upload artifact
|
|
uses: actions/upload-artifact@v2
|
|
with:
|
|
name: uad_gui${{ matrix.update_name }}-${{ matrix.build_target }}${{ matrix.renderer }}
|
|
path: target/release/uad_gui-* |