mirror of
https://github.com/saphid/frame-control.git
synced 2026-10-06 07:00:37 +02:00
Package the Frame Control web UI as an installable Electron Mac app and bring in the tooling built alongside it. - app/: Electron wrapper that starts ui/server.py on a free loopback port, hardened window (sandbox, no navigation, runAsNode fuse off), login-shell PATH so Homebrew tools work from Finder, first-run offer to run connect.sh, ad-hoc signed DMG/zip via electron-builder. - ui/: headset view (OpenVR screenshots), device status, library, Steam "Get games" (owned games, install, store search), Android apps as persistent Lepton instances with a rated F-Droid catalogue and a private compatibility database, Android display controls over ADB, file and clipboard transfer, Flatpaks, remote and power actions. - apk-catalog/, compat-db/, frame/: catalogue build pipeline, Lakebed capsule for compatibility reports, Frame-side launchers. - tests/ and CI: server guard and validation tests plus Steam helper tests, run on Python 3.9 with script and app syntax checks. - Docs: README leads with the Mac app; new Android, panels, Steam games and field-notes docs; security notes on LAN-exposed ADB ports. Screenshot values for the headset's IP and Wi-Fi name are placeholders. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
35 lines
995 B
YAML
35 lines
995 B
YAML
name: checks
|
|
|
|
on:
|
|
push:
|
|
branches: [main]
|
|
pull_request:
|
|
|
|
jobs:
|
|
checks:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: actions/setup-python@v5
|
|
with:
|
|
python-version: "3.9" # the oldest python3 the Mac app may pick up (Xcode CLT)
|
|
- uses: actions/setup-node@v4
|
|
with:
|
|
node-version: "24"
|
|
- name: Install zsh
|
|
run: sudo apt-get update -qq && sudo apt-get install -y -qq zsh
|
|
- name: Script syntax
|
|
run: |
|
|
for f in scripts/*.sh frame/*/*.sh; do
|
|
case "$(head -n 1 "$f")" in
|
|
*zsh*) zsh -n "$f" ;;
|
|
*) bash -n "$f" ;;
|
|
esac
|
|
done
|
|
- name: Python compiles
|
|
run: python -m py_compile ui/*.py apk-catalog/*.py frame/android/*.py
|
|
- name: Server tests
|
|
run: python -m unittest discover -s tests -v
|
|
- name: App syntax
|
|
run: node --check app/main.js && node --check app/build/make-icon.js
|