name: Debian Package on: workflow_dispatch: push: tags: - "*" permissions: contents: read 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/