200 lines
5.6 KiB
YAML
200 lines
5.6 KiB
YAML
appId: app.deskclaw.desktop
|
|
productName: DeskClaw
|
|
copyright: Copyright © 2026 DeskClaw
|
|
compression: maximum
|
|
artifactName: ${productName}-${version}-${os}-${arch}.${ext}
|
|
|
|
directories:
|
|
output: release
|
|
buildResources: resources
|
|
|
|
files:
|
|
- dist
|
|
- dist-electron
|
|
- package.json
|
|
|
|
extraResources:
|
|
- from: resources/
|
|
to: resources/
|
|
filter:
|
|
- "**/*"
|
|
- "!icons/*.md"
|
|
- "!icons/*.svg"
|
|
- "!bin/**"
|
|
- "!screenshot/**"
|
|
# OpenClaw package (node_modules copied separately by afterPack hook
|
|
# because electron-builder respects .gitignore which excludes node_modules/)
|
|
- from: build/openclaw/
|
|
to: openclaw/
|
|
# Pre-bundled third-party skills (full directories, not only SKILL.md)
|
|
- from: build/preinstalled-skills/
|
|
to: resources/preinstalled-skills/
|
|
# NOTE: OpenClaw plugin mirrors (dingtalk, etc.) are bundled by the
|
|
# afterPack hook (after-pack.cjs) directly from node_modules, so they
|
|
# don't need an extraResources entry here.
|
|
|
|
afterPack: ./scripts/after-pack.cjs
|
|
|
|
asar: true
|
|
asarUnpack:
|
|
- "**/*.node"
|
|
# lru-cache CJS/ESM interop: older CJS versions (v5, v6, v7) don't export
|
|
# `LRUCache` as a named property, breaking `import { LRUCache }` in Node.js
|
|
# 22+ (Electron 40+). Unpacking lets afterPack patch them in place.
|
|
- "**/node_modules/lru-cache/**"
|
|
|
|
# Disable native module rebuilding.
|
|
# The Electron renderer/main process has no native (.node) dependencies.
|
|
# All native modules (opus, sharp, koffi …) belong to openclaw, which is
|
|
# bundled separately (bundle-openclaw.mjs → extraResources) and runs in its
|
|
# own process — @electron/rebuild must NOT touch them.
|
|
npmRebuild: false
|
|
|
|
# Auto-update configuration
|
|
# Primary: Alibaba Cloud OSS (fast for Chinese users, used for auto-update)
|
|
# Fallback: GitHub Releases (backup, used when OSS is unavailable)
|
|
publish:
|
|
- provider: generic
|
|
url: https://oss.intelli-spectrum.com/latest
|
|
useMultipleRangeRequest: false
|
|
- provider: github
|
|
owner: ValueCell-ai
|
|
repo: DeskClaw
|
|
|
|
# macOS Configuration
|
|
mac:
|
|
extraResources:
|
|
- from: resources/bin/darwin-${arch}
|
|
to: bin
|
|
- from: resources/cli/posix/
|
|
to: cli/
|
|
category: public.app-category.productivity
|
|
icon: resources/icons/icon.icns
|
|
target:
|
|
- target: dmg
|
|
arch:
|
|
- x64
|
|
- arm64
|
|
- target: zip
|
|
arch:
|
|
- x64
|
|
- arm64
|
|
darkModeSupport: true
|
|
hardenedRuntime: true
|
|
gatekeeperAssess: false
|
|
entitlements: entitlements.mac.plist
|
|
entitlementsInherit: entitlements.mac.plist
|
|
notarize: true
|
|
extendInfo:
|
|
NSMicrophoneUsageDescription: ClawX requires microphone access for voice features
|
|
NSCameraUsageDescription: ClawX requires camera access for video features
|
|
|
|
dmg:
|
|
# Explicit volume size prevents dmg-builder@1.2.0 auto-calculation from
|
|
# underestimating (causes "No space left on device" for large app bundles).
|
|
# The final .dmg is bzip2-compressed, so this only affects the temp volume.
|
|
size: 2g
|
|
background: resources/dmg-background.png
|
|
icon: resources/icons/icon.icns
|
|
iconSize: 100
|
|
window:
|
|
width: 540
|
|
height: 380
|
|
contents:
|
|
- type: file
|
|
x: 130
|
|
y: 220
|
|
- type: link
|
|
path: /Applications
|
|
x: 410
|
|
y: 220
|
|
|
|
# Windows Configuration
|
|
win:
|
|
# Skip update signature verification: we ship via OSS + GitHub without a
|
|
# code-signing certificate, so verifying would always fail on the updater.
|
|
verifyUpdateCodeSignature: false
|
|
signAndEditExecutable: false
|
|
extraResources:
|
|
- from: resources/bin/win32-${arch}
|
|
to: bin
|
|
- from: resources/cli/win32/
|
|
to: cli/
|
|
icon: resources/icons/icon.ico
|
|
target:
|
|
- target: nsis
|
|
arch: x64
|
|
- target: portable
|
|
arch: x64
|
|
|
|
nsis:
|
|
artifactName: ${productName}-Setup-${version}-${os}-${arch}.${ext}
|
|
oneClick: false
|
|
perMachine: false
|
|
warningsAsErrors: false
|
|
allowToChangeInstallationDirectory: true
|
|
deleteAppDataOnUninstall: false
|
|
differentialPackage: true
|
|
createDesktopShortcut: true
|
|
createStartMenuShortcut: true
|
|
shortcutName: DeskClaw
|
|
uninstallDisplayName: DeskClaw
|
|
license: LICENSE
|
|
include: scripts/installer.nsh
|
|
installerIcon: resources/icons/icon.ico
|
|
uninstallerIcon: resources/icons/icon.ico
|
|
|
|
|
|
portable:
|
|
artifactName: ${productName}-Portable-${version}-${os}-${arch}.${ext}
|
|
# Linux Configuration
|
|
linux:
|
|
extraResources:
|
|
- from: resources/bin/linux-${arch}
|
|
to: bin
|
|
- from: resources/cli/posix/
|
|
to: cli/
|
|
icon: resources/icons
|
|
target:
|
|
- target: AppImage
|
|
arch:
|
|
- x64
|
|
- arm64
|
|
- target: deb
|
|
arch:
|
|
- x64
|
|
- arm64
|
|
- target: rpm
|
|
arch:
|
|
- x64
|
|
category: Utility
|
|
maintainer: DeskClaw Team <public@valuecell.ai>
|
|
vendor: DeskClaw
|
|
synopsis: AI Assistant powered by OpenClaw
|
|
description: ClawX is a graphical AI assistant application that integrates with OpenClaw Gateway to provide intelligent automation and assistance across multiple messaging platforms.
|
|
desktop:
|
|
entry:
|
|
Name: DeskClaw
|
|
Comment: AI Assistant powered by OpenClaw
|
|
Categories: Utility;Network;
|
|
Keywords: ai;assistant;automation;chat;
|
|
StartupWMClass: deskclaw
|
|
|
|
appImage:
|
|
license: LICENSE
|
|
|
|
deb:
|
|
depends:
|
|
# Use OR syntax to support both Ubuntu 22.04 and Ubuntu 24.04 (t64 transition).
|
|
# Ubuntu 24.04 renamed many libraries with a t64 suffix (64-bit time_t ABI transition).
|
|
- libgtk-3-0 | libgtk-3-0t64
|
|
- libnotify4 | libnotify4t64
|
|
- libnss3
|
|
- libxss1 | libxss1t64
|
|
- libxtst6 | libxtst6t64
|
|
- xdg-utils
|
|
- libatspi2.0-0 | libatspi2.0-0t64
|
|
- libuuid1
|
|
afterInstall: scripts/linux/after-install.sh
|
|
afterRemove: scripts/linux/after-remove.sh
|