Skip to content

snap: Need separate connection for each hidraw device #54

snap: Need separate connection for each hidraw device

snap: Need separate connection for each hidraw device #54

Workflow file for this run

name: Build Linux Packages
on:
push:
# tags:
# - 'v*'
workflow_dispatch:
jobs:
build-deb:
name: Build .deb
runs-on: ubuntu-24.04
# env:
# CARGO_NET_GIT_FETCH_WITH_CLI: true
steps:
- uses: actions/checkout@v6
- name: Install dependencies
run: |
sudo apt-get update
sudo apt-get install -y libudev-dev
- name: Setup Rust toolchain
run: rustup show
- name: Install cargo-deb
run: cargo install cargo-deb
- name: Build .deb package
run: cargo deb -p framework_tool
- name: Upload .deb package
uses: actions/upload-artifact@v6
with:
name: framework-tool-deb
path: target/debian/*.deb
build-rpm:
name: Build .rpm
runs-on: ubuntu-24.04
# env:
# CARGO_NET_GIT_FETCH_WITH_CLI: true
steps:
- uses: actions/checkout@v6
- name: Install dependencies
run: |
sudo apt-get update
sudo apt-get install -y libudev-dev
- name: Setup Rust toolchain
run: rustup show
- name: Install cargo-generate-rpm
run: cargo install cargo-generate-rpm
- name: Build release binary
run: cargo build -p framework_tool --release --features nvidia
- name: Strip binary
run: strip -s target/release/framework_tool
- name: Build .rpm package
run: cargo generate-rpm -p framework_tool
- name: Upload .rpm package
uses: actions/upload-artifact@v6
with:
name: framework-tool-rpm
path: target/generate-rpm/*.rpm
build-snap:
name: Build Snap
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v6
- name: Build snap
uses: snapcore/action-build@v1
id: build
- name: Upload snap artifact
uses: actions/upload-artifact@v6
with:
name: framework-tool-snap
path: ${{ steps.build.outputs.snap }}
- name: Publish to edge channel
if: github.ref == 'refs/heads/main'
uses: snapcore/action-publish@v1
env:
SNAPCRAFT_STORE_CREDENTIALS: ${{ secrets.SNAPCRAFT_STORE_CREDENTIALS }}
with:
snap: ${{ steps.build.outputs.snap }}
release: edge
- name: Publish to candidate channel
if: github.ref_type == 'tag' || github.event_name == 'release'
uses: snapcore/action-publish@v1
env:
SNAPCRAFT_STORE_CREDENTIALS: ${{ secrets.SNAPCRAFT_STORE_CREDENTIALS }}
with:
snap: ${{ steps.build.outputs.snap }}
release: candidate