mirror of
https://github.com/saphid/frame-control.git
synced 2026-10-27 08:01:40 +01:00
#38 built and bundled the native host into the Windows and both Linux installers (adding a Linux ARM64 installer). Only the Windows installer gets it now; the Linux and macOS installer jobs are as on main. x264 is GPL and Windows encodes with Media Foundation, so the shipped bundle leaves it out. desktop/build.py --with-x264 adds it for the native CI jobs' headless protocol tests, which no longer upload their bundles. The release job tests the packaged app's own bundle with its bundled Python and checks x264 isn't in it. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
225 lines
5.5 KiB
JSON
225 lines
5.5 KiB
JSON
{
|
|
"name": "frame-control",
|
|
"productName": "Frame Control",
|
|
"version": "0.4.9",
|
|
"description": "Desktop app for managing a Valve Steam Frame over SSH",
|
|
"private": true,
|
|
"main": "main.js",
|
|
"license": "MIT",
|
|
"scripts": {
|
|
"start": "env -u ELECTRON_RUN_AS_NODE electron .",
|
|
"icon": "env -u ELECTRON_RUN_AS_NODE electron build/make-icon.js",
|
|
"dist": "sh ../mac/frame-mac-view/build.sh && node build/fetch-deps.js mac arm64 && electron-builder --mac --arm64 --publish never",
|
|
"dist:dir": "sh ../mac/frame-mac-view/build.sh && node build/fetch-deps.js mac arm64 && electron-builder --mac --arm64 --dir",
|
|
"dist:linux": "node build/fetch-deps.js linux x64 arm64 && electron-builder --linux --x64 --arm64 --publish never",
|
|
"dist:win": "node build/fetch-deps.js win x64 && electron-builder --win --x64 --publish never"
|
|
},
|
|
"devDependencies": {
|
|
"electron": "^44.4.5",
|
|
"electron-builder": "^26.15.3"
|
|
},
|
|
"build": {
|
|
"appId": "com.saphid.frame-control",
|
|
"productName": "Frame Control",
|
|
"protocols": [
|
|
{
|
|
"name": "Frame Control install link",
|
|
"schemes": [
|
|
"frame-control"
|
|
]
|
|
}
|
|
],
|
|
"afterPack": "build/check-resources.js",
|
|
"directories": {
|
|
"output": "dist",
|
|
"buildResources": "build"
|
|
},
|
|
"files": [
|
|
"main.js",
|
|
"preload.js",
|
|
"install-link.js",
|
|
"updater.js",
|
|
"preferences.js",
|
|
"meta-signin.js",
|
|
"package.json",
|
|
"build/icon.png"
|
|
],
|
|
"extraResources": [
|
|
{
|
|
"from": "../ui",
|
|
"to": "ui",
|
|
"filter": [
|
|
"*.py",
|
|
"*.html",
|
|
"*.js",
|
|
"*.css",
|
|
"telemetry.json"
|
|
]
|
|
},
|
|
{
|
|
"from": "../ui/apk_sources",
|
|
"to": "ui/apk_sources",
|
|
"filter": [
|
|
"*.py",
|
|
"*.json"
|
|
]
|
|
},
|
|
{
|
|
"from": "../scripts",
|
|
"to": "scripts",
|
|
"filter": [
|
|
"*.sh"
|
|
]
|
|
},
|
|
{
|
|
"from": "../frame/android",
|
|
"to": "frame/android",
|
|
"filter": [
|
|
"*.sh",
|
|
"*.py",
|
|
"*.js"
|
|
]
|
|
},
|
|
{
|
|
"from": "../frame/openxr-compat",
|
|
"to": "frame/openxr-compat",
|
|
"filter": [
|
|
"XrApiLayer_FRAME_compat.json",
|
|
"prebuilt/**/*.so.gz"
|
|
]
|
|
},
|
|
{
|
|
"from": "../frame/devkit-utils",
|
|
"to": "frame/devkit-utils",
|
|
"filter": [
|
|
"**/*",
|
|
"!**/__pycache__/**"
|
|
]
|
|
},
|
|
{
|
|
"from": "../frame/kdeconnect",
|
|
"to": "frame/kdeconnect",
|
|
"filter": [
|
|
"packages.json",
|
|
"NOTICE.md",
|
|
"LICENSES/**/*",
|
|
"packages/*.pkg.tar.zst"
|
|
]
|
|
},
|
|
{
|
|
"from": "../apk-catalog",
|
|
"to": "apk-catalog",
|
|
"filter": [
|
|
"*.py",
|
|
"pins.json",
|
|
"site/apps.js"
|
|
]
|
|
},
|
|
{
|
|
"from": "build/deps/${os}-${arch}/python",
|
|
"to": "python",
|
|
"filter": [
|
|
"**/*"
|
|
]
|
|
},
|
|
{
|
|
"from": "build/deps/${os}-${arch}/tools",
|
|
"to": "tools",
|
|
"filter": [
|
|
"**/*"
|
|
]
|
|
},
|
|
{
|
|
"from": "../THIRD_PARTY_NOTICES.md",
|
|
"to": "THIRD_PARTY_NOTICES.md"
|
|
},
|
|
{
|
|
"from": "../LICENSE",
|
|
"to": "LICENSE"
|
|
}
|
|
],
|
|
"mac": {
|
|
"category": "public.app-category.utilities",
|
|
"icon": "build/icon.icns",
|
|
"identity": "-",
|
|
"hardenedRuntime": false,
|
|
"target": [
|
|
"dmg",
|
|
"zip"
|
|
],
|
|
"extraResources": [
|
|
{
|
|
"from": "../mac/bin",
|
|
"to": "mac/bin",
|
|
"filter": [
|
|
"frame-mac-view"
|
|
]
|
|
}
|
|
],
|
|
"extendInfo": {
|
|
"NSAppleEventsUsageDescription": "Frame Control opens Terminal for SSH sessions and for power actions that need the Developer Mode password.",
|
|
"NSLocalNetworkUsageDescription": "Frame Control connects to your Steam Frame over SSH on the local network.",
|
|
"NSScreenCaptureUsageDescription": "Frame Control shows your Mac's windows and screens inside the Steam Frame when you ask it to."
|
|
},
|
|
"artifactName": "Frame-Control-mac-${arch}.${ext}"
|
|
},
|
|
"dmg": {
|
|
"title": "Frame Control ${version}"
|
|
},
|
|
"electronFuses": {
|
|
"runAsNode": false,
|
|
"enableNodeOptionsEnvironmentVariable": false,
|
|
"enableNodeCliInspectArguments": false
|
|
},
|
|
"linux": {
|
|
"target": [
|
|
"AppImage",
|
|
"deb"
|
|
],
|
|
"category": "Utility",
|
|
"icon": "build/icon.png",
|
|
"executableName": "frame-control",
|
|
"synopsis": "Manage a Valve Steam Frame over SSH",
|
|
"artifactName": "Frame-Control-linux-${arch}.${ext}",
|
|
"desktop": {
|
|
"entry": {
|
|
"StartupWMClass": "frame-control"
|
|
}
|
|
}
|
|
},
|
|
"deb": {
|
|
"depends": [
|
|
"openssh-client"
|
|
]
|
|
},
|
|
"win": {
|
|
"target": [
|
|
"nsis",
|
|
"zip"
|
|
],
|
|
"icon": "build/icon.png",
|
|
"artifactName": "Frame-Control-win-${arch}.${ext}",
|
|
"extraResources": [
|
|
{
|
|
"from": "build/desktop/${os}-${arch}",
|
|
"to": "desktop/bundle",
|
|
"filter": [
|
|
"**/*"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"nsis": {
|
|
"oneClick": false,
|
|
"perMachine": false,
|
|
"allowToChangeInstallationDirectory": true,
|
|
"artifactName": "Frame-Control-Setup-${arch}.${ext}"
|
|
}
|
|
},
|
|
"homepage": "https://github.com/saphid/steam-frame",
|
|
"author": {
|
|
"name": "saphid",
|
|
"email": "4596216+saphid@users.noreply.github.com"
|
|
}
|
|
}
|