Skip to content

stop the on-screen keyboard through KWin's D-Bus interface, not kwinrc #13

stop the on-screen keyboard through KWin's D-Bus interface, not kwinrc

stop the on-screen keyboard through KWin's D-Bus interface, not kwinrc #13

Workflow file for this run

name: Build UScreen
on:
push:
branches: [main, develop]
pull_request:
branches: [main]
jobs:
build-host:
name: Build Linux host (daemon + GUI + helper)
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Rust
uses: dtolnay/rust-toolchain@stable
- name: Install system dependencies
run: |
sudo apt-get update
sudo apt-get install -y \
libxkbcommon-dev libwayland-dev libxcb-render0-dev \
libxcb-shape0-dev libxcb-xfixes0-dev libssl-dev \
libdrm-dev
# libevdi headers are needed only for the C helper; not in all repos
sudo apt-get install -y libevdi0-dev || echo "libevdi-dev unavailable, helper build will be skipped"
- name: Cache cargo
uses: actions/cache@v4
with:
path: |
~/.cargo/registry
~/.cargo/git
target
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
- name: Build daemon and GUI
run: cargo build --release
- name: Run tests
run: cargo test --release
- name: Build EVDI helper
run: make build-helper || echo "Skipped (libevdi headers not available)"
- name: Upload host binaries
uses: actions/upload-artifact@v4
with:
name: uscreen-linux-x86_64
path: |
target/release/uscreen
target/release/uscreen-gui
build-android:
name: Build Android APK
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
- name: Setup Android SDK
uses: android-actions/setup-android@v3
- name: Build debug APK
run: |
cd android
chmod +x gradlew
./gradlew assembleDebug
- name: Upload APK
uses: actions/upload-artifact@v4
with:
name: uscreen-android-debug
path: android/app/build/outputs/apk/debug/app-debug.apk