macos: enable running lan-mouse on macos (#42)

* macos: initial support

- adapted conditional compilation
- moved lan-mouse socket to ~/Library/Caches/lan-mouse-socket.sock instead of XDG_RUNTIME_DIR
- support for mouse input emulation
TODO: Keycode translation, input capture
This commit is contained in:
Ferdinand Schober
2023-12-09 01:35:08 +01:00
committed by GitHub
parent 5a7e0cf89c
commit e3f9947284
13 changed files with 419 additions and 21 deletions

View File

@@ -39,9 +39,23 @@ jobs:
name: lan-mouse-windows
path: target/release/lan-mouse.exe
macos-release-build:
runs-on: macos-latest
steps:
- uses: actions/checkout@v3
- name: install dependencies
run: brew install gtk4 libadwaita
- name: Release Build
run: cargo build --release
- name: Upload build artifact
uses: actions/upload-artifact@v3
with:
name: lan-mouse-macos
path: target/release/lan-mouse
pre-release:
name: "Pre Release"
needs: [windows-release-build, linux-release-build]
needs: [windows-release-build, linux-release-build, macos-release-build]
runs-on: "ubuntu-latest"
steps:
- name: Download build artifacts
@@ -56,3 +70,4 @@ jobs:
files: |
lan-mouse-linux/lan-mouse
lan-mouse-windows/lan-mouse.exe
lan-mouse-macos/lan-mouse

View File

@@ -46,3 +46,19 @@ jobs:
with:
name: lan-mouse-windows
path: target/debug/lan-mouse.exe
build-macos:
runs-on: macos-latest
steps:
- uses: actions/checkout@v3
- name: install dependencies
run: brew install gtk4 libadwaita
- name: Build
run: cargo build --verbose
- name: Run tests
run: cargo test --verbose
- name: Upload build artifact
uses: actions/upload-artifact@v3
with:
name: lan-mouse-macos
path: target/debug/lan-mouse

View File

@@ -35,9 +35,23 @@ jobs:
name: lan-mouse-windows
path: target/release/lan-mouse.exe
macos-release-build:
runs-on: macos-latest
steps:
- uses: actions/checkout@v3
- name: install dependencies
run: brew install gtk4 libadwaita
- name: Release Build
run: cargo build --release
- name: Upload build artifact
uses: actions/upload-artifact@v3
with:
name: lan-mouse-macos
path: target/release/lan-mouse
tagged-release:
name: "Tagged Release"
needs: [windows-release-build, linux-release-build]
needs: [windows-release-build, linux-release-build, macos-release-build]
runs-on: "ubuntu-latest"
steps:
- name: Download build artifacts
@@ -50,3 +64,4 @@ jobs:
files: |
lan-mouse-linux/lan-mouse
lan-mouse-windows/lan-mouse.exe
lan-mouse-macos/lan-mouse