directories:
  output: dist-electron
toolsets:
  appimage: "1.0.3"
files:
  - electron/**/*
  - server/**/*
  - "!server/dist/opencode-plugins/**"
  - package.json
extraResources:
  - from: ../app/dist
    to: app-dist
  - from: server/dist/opencode-plugins
    to: opencode-plugins
    filter:
      - "*.js"
  - from: ../../packages/docs
    to: openwork-docs
    filter:
      - "**/*.md"
      - "**/*.mdx"
      - "docs.json"
asar: true
asarUnpack:
  - node_modules/.pnpm/@lydell+node-pty*/**
  - node_modules/node-pty/**
npmRebuild: false
afterPack: scripts/electron-after-pack.cjs
afterSign: scripts/electron-after-sign.cjs
publish:
  - provider: github
    owner: different-ai
    repo: openwork
    releaseType: release
mac:
  icon: resources/icons/icon.icns
  category: public.app-category.developer-tools
  hardenedRuntime: true
  gatekeeperAssess: false
  notarize: false
  entitlements: build/entitlements.mac.plist
  entitlementsInherit: build/entitlements.mac.plist
  extendInfo:
    NSMicrophoneUsageDescription: OpenWork uses the microphone when you start Voice Mode so you can speak commands to your agent.
  extraResources:
    - from: resources/sidecars
      to: sidecars
      filter:
        - opencode
        - opencode-aarch64-apple-darwin
        - opencode-x86_64-apple-darwin
        - versions.json
        - versions.json-aarch64-apple-darwin
        - versions.json-x86_64-apple-darwin
    - from: resources/helpers
      to: helpers
      filter:
        - "OpenWork Computer Use.app/**"
  target:
    - dmg
    - zip
linux:
  icon: resources/icons/linux
  syncDesktopName: true
  extraResources:
    - from: resources/icons/linux
      to: icons/linux
      filter:
        - "*.png"
    - from: resources/sidecars
      to: sidecars
      filter:
        - opencode
        - opencode-aarch64-unknown-linux-gnu
        - opencode-x86_64-unknown-linux-gnu
        - versions.json
        - versions.json-aarch64-unknown-linux-gnu
        - versions.json-x86_64-unknown-linux-gnu
  target:
    - AppImage
    - tar.gz
win:
  icon: resources/icons/icon.ico
  extraResources:
    - from: resources/sidecars
      to: sidecars
      filter:
        - opencode.exe
        - opencode-aarch64-pc-windows-msvc.exe
        - opencode-x86_64-pc-windows-msvc.exe
        - versions.json
        - versions.json-aarch64-pc-windows-msvc.exe
        - versions.json-x86_64-pc-windows-msvc.exe
  target:
    - nsis
nsis:
  include: build/installer.nsh
