Ctrl K
ComunidadGuías…

electron-builder.json

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
{
  "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"
  }
}