{ "appId": "com.gizmolabs.openwhispr", "afterPack": "scripts/afterPack.js", "extraMetadata": { "windowsTrayIdentity": true }, "productName": "OpenWhispr", "protocols": { "name": "OpenWhispr Protocol", "schemes": ["openwhispr"] }, "directories": { "output": "dist" }, "npmRebuild": true, "buildDependenciesFromSource": false, "files": [ "main.js", "preload.js", "package.json", "node_modules/**/*", "src/dist/**/*", "src/helpers/**/*", "src/workers/**/*", "src/config/**/*", "src/constants/**/*", "src/locales/**/*", "src/hooks/**/*", "src/models/**/*", "src/services/localReasoningBridge.js", "src/services/transcriptionBaseUrl.ts", "src/stores/policyRules.ts", "src/types/**/*", "src/utils.js", "src/utils/**/*", "src/updater.js", "src/components.json", "!node_modules/.cache/**/*", "!src/node_modules/**/*", "!**/node_modules/electron/**", "!**/node_modules/electron-builder/**", "!**/node_modules/app-builder-bin/**", "!**/node_modules/app-builder-lib/**", "!**/node_modules/builder-util/**", "!**/node_modules/dmg-builder/**", "!**/node_modules/7zip-bin/**", "!**/node_modules/typescript/**", "!**/node_modules/prettier/**", "!**/node_modules/eslint/**", "!**/node_modules/eslint-*/**", "!**/node_modules/@eslint/**", "!**/node_modules/@typescript-eslint/**", "!**/node_modules/globals/**", "!**/node_modules/vite/**", "!**/node_modules/@vitejs/**", "!**/node_modules/esbuild/**", "!**/node_modules/@esbuild/**", "!**/node_modules/rollup/**", "!**/node_modules/@rollup/**", "!**/node_modules/postcss/**", "!**/node_modules/autoprefixer/**", "!**/node_modules/tailwindcss/**", "!**/node_modules/@tailwindcss/**", "!**/node_modules/lightningcss*/**", "!**/node_modules/react/**", "!**/node_modules/react-dom/**", "!**/node_modules/lucide-react/**", "!**/node_modules/@radix-ui/**", "!**/node_modules/class-variance-authority/**", "!**/node_modules/clsx/**", "!**/node_modules/tailwind-merge/**", "!**/node_modules/tw-animate-css/**", "!**/node_modules/react-markdown/**", "!**/node_modules/shadcn-ui/**", "!**/node_modules/@types/**", "!**/node_modules/concurrently/**", "!**/node_modules/cross-env/**", "!**/node_modules/@electron/notarize/**", "!**/node_modules/**/test/**", "!**/node_modules/**/tests/**", "!**/node_modules/**/*.ts", "!**/node_modules/**/*.map", "!**/node_modules/**/CHANGELOG*", "!**/node_modules/**/.github/**" ], "asarUnpack": [ "**/node_modules/ffmpeg-static/**/*", "**/node_modules/ps-list/**/*", "**/node_modules/better-sqlite3/**/*", "**/node_modules/onnxruntime-node/**/*", "**/node_modules/@napi-rs/keyring/**/*", "src/workers/**/*" ], "extraResources": [ ".env", { "from": "src/assets", "to": "src/assets", "filter": ["**/*", "!fonts/yowza/**"] }, { "from": "resources/bin/", "to": "bin/", "filter": [ "whisper-cpp-*", "whisper-server-*", "llama-server-*", "sherpa-onnx-*", "yt-dlp-*", "qdrant-*", "macos-audio-tap", "macos-globe-listener", "macos-fast-paste", "macos-mic-listener", "macos-calendar-listener", "macos-text-monitor", "macos-window-bounds", "macos-media-remote", "MediaRemoteAdapter.framework/**", "linux-fast-paste", "linux-system-audio-helper", "linux-text-monitor", "linux-key-listener*", "meeting-aec-helper-*", "windows-key-listener*", "windows-mic-listener*", "windows-system-audio-helper*", "windows-text-monitor*", "windows-fast-paste*", "all-MiniLM-L6-v2/**/*", "diarization-models/**/*", "whisper-vad/**/*", "*.dylib", "*.dll", "*.so*" ] }, { "from": "resources/mediaremote-adapter/bin/mediaremote-adapter.pl", "to": "bin/mediaremote-adapter.pl" }, { "from": "resources/mediaremote-adapter/LICENSE", "to": "bin/mediaremote-adapter.LICENSE" } ], "mac": { "category": "public.app-category.productivity", "target": ["dmg", "zip"], "icon": "src/assets/icon.icns", "gatekeeperAssess": false, "hardenedRuntime": true, "entitlements": "resources/mac/entitlements.mac.plist", "entitlementsInherit": "resources/mac/entitlements.mac.plist", "identity": "Gizmo Labs Inc. (T832773L2J)", "notarize": true, "extraResources": [ { "from": "src/assets/Assets.car", "to": "Assets.car" } ], "extendInfo": { "LSUIElement": false, "CFBundleIconName": "openwhispr", "NSMicrophoneUsageDescription": "OpenWhispr uses the microphone to capture your voice for transcription.", "NSAudioCaptureUsageDescription": "OpenWhispr uses system audio to capture other participants' audio from calls and meetings.", "NSAccessibilityUsageDescription": "OpenWhispr needs accessibility permissions to paste transcribed text into other applications.", "NSCalendarsUsageDescription": "OpenWhispr reads your calendar to detect upcoming meetings and link meeting notes to events.", "NSCalendarsFullAccessUsageDescription": "OpenWhispr reads your calendar to detect upcoming meetings and link meeting notes to events." } }, "win": { "target": ["nsis"], "icon": "src/assets/icon.ico", "forceCodeSigning": true, "azureSignOptions": { "endpoint": "https://eus.codesigning.azure.net/", "certificateProfileName": "openwhispr-release", "codeSigningAccountName": "OpenWhispr", "publisherName": "CN=Gizmo Labs Inc., O=Gizmo Labs Inc., L=Wilmington, S=Delaware, C=US" }, "extraResources": [ { "from": "resources/bin/nircmd.exe", "to": "bin/nircmd.exe" } ] }, "linux": { "target": ["AppImage", "deb", "rpm", "tar.gz"], "icon": "src/assets/icon.png", "category": "Utility", "artifactName": "${productName}-${version}-${os}-${arch}.${ext}" }, "flatpak": { "runtime": "org.freedesktop.Platform", "runtimeVersion": "24.08", "sdk": "org.freedesktop.Sdk", "useWaylandFlags": true, "finishArgs": [ "--socket=wayland", "--socket=fallback-x11", "--share=network", "--share=ipc", "--device=dri", "--socket=pulseaudio", "--filesystem=home", "--filesystem=xdg-documents", "--filesystem=xdg-download", "--talk-name=org.freedesktop.Notifications", "--talk-name=org.freedesktop.portal.Desktop" ] }, "deb": { "afterInstall": "resources/linux/after-install.sh", "afterRemove": "resources/linux/after-remove.sh", "depends": ["ydotool", "libpipewire-0.3-0"], "fpm": [ "--deb-recommends", "ydotoold", "--deb-suggests", "xdotool", "--deb-suggests", "wtype", "--deb-recommends", "wl-clipboard", "--deb-recommends", "xclip", "--deb-suggests", "xsel" ] }, "rpm": { "fpm": [ "--after-install", "resources/linux/after-install.sh", "--rpm-rpmbuild-define", "_build_id_links none", "--rpm-tag", "Recommends: ydotool", "--rpm-tag", "Requires: libpipewire-0.3.so.0()(64bit)", "--rpm-tag", "Suggests: xdotool", "--rpm-tag", "Suggests: wtype", "--rpm-tag", "Recommends: wl-clipboard", "--rpm-tag", "Recommends: xclip", "--rpm-tag", "Suggests: xsel" ] }, "nsis": { "oneClick": false, "allowToChangeInstallationDirectory": true, "createDesktopShortcut": true, "createStartMenuShortcut": true, "include": "resources/nsis/installer.nsh" }, "dmg": { "title": "OpenWhispr", "icon": "src/assets/icon.icns", "window": { "width": 540, "height": 380 } }, "publish": { "provider": "github", "owner": "OpenWhispr", "repo": "openwhispr", "private": false, "releaseType": "draft" } }