vuinputd/.github/workflows/debian-package.yml

63 lines
1.7 KiB
YAML

name: Debian Package
on:
workflow_dispatch:
push:
tags:
- "*"
env:
CARGO_TERM_COLOR: always
DEB_BUILD_OPTIONS: nocheck
jobs:
build-deb:
runs-on: ubuntu-latest
steps:
- name: Checkout source
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Install build dependencies
run: |
sudo apt update
# cargo deps
sudo apt install -y \
build-essential \
devscripts \
debhelper \
dh-cargo \
cargo \
rustc \
pkg-config \
libudev-dev \
libfuse3-dev \
fuse3 \
libclang-dev
# debian packages, if packages are not downloaded via cargo
sudo apt install -y librust-bindgen-dev librust-nix-dev librust-libc-dev librust-time-dev librust-log-dev librust-env-logger-dev librust-libudev-dev librust-regex-dev librust-async-channel-dev librust-futures-dev librust-async-io-dev librust-anyhow-dev librust-clap-dev librust-base64-dev librust-smallvec-dev librust-async-trait-dev
- name: Show versions (debug)
run: |
rustc --version
cargo --version
dpkg-buildpackage --version
- name: Build Debian package
run: |
dpkg-buildpackage -us -uc -b
- name: Collect artifacts
run: |
mkdir -p artifacts
mv ../*.deb artifacts/ || true
mv ../*.buildinfo artifacts/ || true
mv ../*.changes artifacts/ || true
- name: Upload Debian artifacts
uses: actions/upload-artifact@v4
with:
name: vuinputd-debian-package
path: artifacts/