DBus Monitor to pass events to input modules: First cut #273
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Software | |
on: | |
push: | |
branches: | |
- master | |
- dev-* | |
paths-ignore: | |
- 'b1display/**' | |
- 'c1minimal/**' | |
- 'fl16-inputmodules/**' | |
- 'ledmatrix/**' | |
pull_request: | |
branches: | |
- '*' | |
paths-ignore: | |
- 'b1display/**' | |
- 'c1minimal/**' | |
- 'fl16-inputmodules/**' | |
- 'ledmatrix/**' | |
env: | |
CARGO_TERM_COLOR: always | |
CARGO_NET_GIT_FETCH_WITH_CLI: true | |
jobs: | |
# Enable later | |
#freebsd-cross-build: | |
# name: Cross-Build for FreeBSD | |
# runs-on: 'ubuntu-22.04' | |
# steps: | |
# - uses: actions/checkout@v3 | |
# - name: Setup Rust toolchain | |
# run: rustup show | |
# - name: Install cross compilation tool | |
# run: cargo install cross | |
# - name: Build FreeBSD tool | |
# run: cross build --target=x86_64-unknown-freebsd | |
# - name: Upload FreeBSD App | |
# uses: actions/upload-artifact@v3 | |
# with: | |
# name: qmk_hid_freebsd | |
# path: target/x86_64-unknown-freebsd/debug/qmk_hid | |
build: | |
name: Build Linux | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Install dependencies | |
run: | | |
sudo apt-get update | |
sudo apt-get install -y libudev-dev libasound2-dev | |
- name: Setup Rust toolchain | |
run: rustup show | |
- run: cargo install cargo-make | |
- name: Build Linux tool | |
run: cargo make --cwd inputmodule-control build-release | |
- name: Check if Linux tool can start | |
run: cargo make --cwd inputmodule-control run -- --help | grep 'RAW HID and VIA commandline' | |
- name: Upload Linux tool | |
uses: actions/upload-artifact@v3 | |
with: | |
name: inputmodule-control | |
path: target/x86_64-unknown-linux-gnu/release/inputmodule-control | |
build-windows: | |
name: Build Windows | |
runs-on: windows-2022 | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Setup Rust toolchain | |
run: rustup show | |
- run: cargo install cargo-make | |
- name: Build Windows tool | |
run: cargo make --cwd inputmodule-control build-release | |
- name: Check if Windows tool can start | |
run: cargo make --cwd inputmodule-control run -- --help | grep 'RAW HID and VIA commandline' | |
- name: Upload Windows App | |
uses: actions/upload-artifact@v3 | |
with: | |
name: inputmodule-control.exe | |
path: target/x86_64-pc-windows-msvc/release/inputmodule-control.exe | |
# Or manually with | |
# pyinstaller --onefile --windowed --add-data 'res;res' ledmatrix_control.py | |
build-gui: | |
name: Build GUI | |
runs-on: windows-latest | |
# runs-on: ubuntu-22.04 | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Create Executable | |
uses: Martin005/pyinstaller-action@main | |
with: | |
python_ver: '3.11' | |
spec: ledmatrix_control.py #'src/build.spec' | |
requirements: 'requirements.txt' | |
upload_exe_with_name: 'ledmatrix_control.py' | |
options: --onefile, --windowed, --add-data 'res;res' | |
lints: | |
name: Lints | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Install dependencies | |
run: | | |
sudo apt-get update | |
sudo apt-get install -y libudev-dev libasound2-dev | |
- name: Setup Rust toolchain | |
run: rustup show | |
- run: cargo install cargo-make | |
- name: Run cargo fmt | |
run: cargo fmt -p inputmodule-control -- --check | |
- name: Run cargo clippy | |
run: cargo make clippy --cwd inputmodule-control |