Skip to content

Update README.md

Update README.md #449

Workflow file for this run

name: build
on:
workflow_dispatch:
push:
branches:
- main
pull_request:
jobs:
build:
name: build ${{ matrix.variant }}
runs-on: ${{matrix.os}}
env:
DISPLAY: ':99'
strategy:
fail-fast: false
matrix:
include:
- variant: ubuntu-x11-latest
os: ubuntu-latest
headless: Xvfb :99 -screen 0 1024x768x24 > /dev/null 2>&1 &
dependencies: sudo apt-get install libxtst-dev libevdev-dev libudev-dev --assume-yes
build: cargo build --verbose --features x11
test: cargo test --verbose --features=serialize,x11
- variant: ubuntu-wayland-latest
os: ubuntu-latest
headless: weston --no-config --socket=wl-test-env --backend=headless &
dependencies: |
sudo apt-get install libxtst-dev libevdev-dev libudev-dev libinput-dev libxkbcommon-dev weston --assume-yes
sudo chown root:input /dev/uinput
sudo chmod g+rw /dev/uinput
id -a
whoami
sudo usermod -aG input runner
echo 'KERNEL=="uinput", MODE="0660", GROUP="input", TAG+="uaccess"' | sudo tee /etc/udev/rules.d/99-uinput.rules
sudo udevadm control --reload-rules
sudo udevadm trigger --attr-match=name="uinput"
build: cargo build --verbose --features wayland
# Keyboard not implemented in wayland
test: WAYLAND_DISPLAY=wl-test-env cargo test --verbose --no-default-features --features=serialize,wayland -- --skip test_grab --skip test_listen_and_simulate
- variant: macos-latest
os: macos-latest
build: cargo build --verbose
# TODO: We can't test this on github, we can't set accessibility yet.
test: cargo test --verbose --all-features -- --skip test_listen_and_simulate --skip test_grab
- variant: windows-latest
os: windows-latest
build: cargo build --verbose
test: cargo test --verbose --all-features
steps:
- uses: actions/checkout@v4
- name: CargoFmt
run: rustup component add rustfmt
- name: Dependencies
run: ${{matrix.dependencies}}
- name: Setup headless environment
run: ${{matrix.headless}}
- name: Check formatting
run: |
rustup component add rustfmt
cargo fmt -- --check
- name: Build
run: ${{ matrix.build }}
- name: Run tests
run: ${{matrix.test}}
- name: Linter
run: |
rustup component add clippy
cargo clippy --all-features --verbose -- -Dwarnings