mirror of
https://github.com/CherryHQ/cherry-studio.git
synced 2026-01-13 21:57:30 +08:00
chore: update package.json and pnpm-lock.yaml with new architecture-specific dependencies
- Added new architecture-specific dependencies for image processing and database support in package.json and pnpm-lock.yaml. - Updated the before-pack script to streamline package installation logic based on architecture and platform. - Enhanced the exclusion logic for packages to improve build efficiency across different architectures.
This commit is contained in:
parent
cb81f72d03
commit
40fe6f2c08
22
package.json
22
package.json
@ -411,7 +411,27 @@
|
||||
"yjs": "^13.6.27",
|
||||
"youtubei.js": "^15.0.1",
|
||||
"zipread": "^1.3.3",
|
||||
"zod": "^4.1.5"
|
||||
"zod": "^4.1.5",
|
||||
"@img/sharp-darwin-arm64": "0.34.3",
|
||||
"@img/sharp-darwin-x64": "0.34.3",
|
||||
"@img/sharp-linux-arm64": "0.34.3",
|
||||
"@img/sharp-linux-x64": "0.34.3",
|
||||
"@img/sharp-win32-arm64": "0.34.3",
|
||||
"@img/sharp-win32-x64": "0.34.3",
|
||||
"@img/sharp-libvips-darwin-arm64": "1.2.4",
|
||||
"@img/sharp-libvips-darwin-x64": "1.2.4",
|
||||
"@img/sharp-libvips-linux-arm64": "1.2.4",
|
||||
"@img/sharp-libvips-linux-x64": "1.2.4",
|
||||
"@libsql/darwin-arm64": "0.4.7",
|
||||
"@libsql/darwin-x64": "0.4.7",
|
||||
"@libsql/linux-arm64-gnu": "0.4.7",
|
||||
"@libsql/linux-x64-gnu": "0.4.7",
|
||||
"@libsql/win32-x64-msvc": "0.4.7",
|
||||
"@strongtz/win32-arm64-msvc": "0.4.7",
|
||||
"@napi-rs/system-ocr-darwin-arm64": "1.0.2",
|
||||
"@napi-rs/system-ocr-darwin-x64": "1.0.2",
|
||||
"@napi-rs/system-ocr-win32-arm64-msvc": "1.0.2",
|
||||
"@napi-rs/system-ocr-win32-x64-msvc": "1.0.2"
|
||||
},
|
||||
"pnpm": {
|
||||
"overrides": {
|
||||
|
||||
132
pnpm-lock.yaml
generated
132
pnpm-lock.yaml
generated
@ -325,6 +325,36 @@ importers:
|
||||
'@hello-pangea/dnd':
|
||||
specifier: ^18.0.1
|
||||
version: 18.0.1(@types/react@19.2.7)(react-dom@19.2.3(react@19.2.3))(react@19.2.3)
|
||||
'@img/sharp-darwin-arm64':
|
||||
specifier: 0.34.3
|
||||
version: 0.34.3
|
||||
'@img/sharp-darwin-x64':
|
||||
specifier: 0.34.3
|
||||
version: 0.34.3
|
||||
'@img/sharp-libvips-darwin-arm64':
|
||||
specifier: 1.2.4
|
||||
version: 1.2.4
|
||||
'@img/sharp-libvips-darwin-x64':
|
||||
specifier: 1.2.4
|
||||
version: 1.2.4
|
||||
'@img/sharp-libvips-linux-arm64':
|
||||
specifier: 1.2.4
|
||||
version: 1.2.4
|
||||
'@img/sharp-libvips-linux-x64':
|
||||
specifier: 1.2.4
|
||||
version: 1.2.4
|
||||
'@img/sharp-linux-arm64':
|
||||
specifier: 0.34.3
|
||||
version: 0.34.3
|
||||
'@img/sharp-linux-x64':
|
||||
specifier: 0.34.3
|
||||
version: 0.34.3
|
||||
'@img/sharp-win32-arm64':
|
||||
specifier: 0.34.3
|
||||
version: 0.34.3
|
||||
'@img/sharp-win32-x64':
|
||||
specifier: 0.34.3
|
||||
version: 0.34.3
|
||||
'@kangfenmao/keyv-storage':
|
||||
specifier: ^0.1.3
|
||||
version: 0.1.3
|
||||
@ -340,6 +370,21 @@ importers:
|
||||
'@langchain/textsplitters':
|
||||
specifier: 0.1.0
|
||||
version: 0.1.0(@langchain/core@1.0.2(patch_hash=8dc787a82cebafe8b23c8826f25f29aca64fc8b43a0a1878e0010782e4da96ed)(@opentelemetry/api@1.9.0)(@opentelemetry/sdk-trace-base@2.2.0(@opentelemetry/api@1.9.0))(openai@6.15.0(ws@8.18.3)(zod@4.3.4)))
|
||||
'@libsql/darwin-arm64':
|
||||
specifier: 0.4.7
|
||||
version: 0.4.7
|
||||
'@libsql/darwin-x64':
|
||||
specifier: 0.4.7
|
||||
version: 0.4.7
|
||||
'@libsql/linux-arm64-gnu':
|
||||
specifier: 0.4.7
|
||||
version: 0.4.7
|
||||
'@libsql/linux-x64-gnu':
|
||||
specifier: 0.4.7
|
||||
version: 0.4.7
|
||||
'@libsql/win32-x64-msvc':
|
||||
specifier: 0.4.7
|
||||
version: 0.4.7
|
||||
'@mistralai/mistralai':
|
||||
specifier: ^1.7.5
|
||||
version: 1.11.0
|
||||
@ -349,6 +394,18 @@ importers:
|
||||
'@mozilla/readability':
|
||||
specifier: ^0.6.0
|
||||
version: 0.6.0
|
||||
'@napi-rs/system-ocr-darwin-arm64':
|
||||
specifier: 1.0.2
|
||||
version: 1.0.2
|
||||
'@napi-rs/system-ocr-darwin-x64':
|
||||
specifier: 1.0.2
|
||||
version: 1.0.2
|
||||
'@napi-rs/system-ocr-win32-arm64-msvc':
|
||||
specifier: 1.0.2
|
||||
version: 1.0.2
|
||||
'@napi-rs/system-ocr-win32-x64-msvc':
|
||||
specifier: 1.0.2
|
||||
version: 1.0.2
|
||||
'@notionhq/client':
|
||||
specifier: ^2.2.15
|
||||
version: 2.3.0(encoding@0.1.13)
|
||||
@ -391,6 +448,9 @@ importers:
|
||||
'@shikijs/markdown-it':
|
||||
specifier: ^3.12.0
|
||||
version: 3.20.0
|
||||
'@strongtz/win32-arm64-msvc':
|
||||
specifier: 0.4.7
|
||||
version: 0.4.7
|
||||
'@swc/core':
|
||||
specifier: ^1.15.8
|
||||
version: 1.15.8
|
||||
@ -2493,16 +2553,31 @@ packages:
|
||||
cpu: [arm64]
|
||||
os: [darwin]
|
||||
|
||||
'@img/sharp-libvips-darwin-arm64@1.2.4':
|
||||
resolution: {integrity: sha512-zqjjo7RatFfFoP0MkQ51jfuFZBnVE2pRiaydKJ1G/rHZvnsrHAOcQALIi9sA5co5xenQdTugCvtb1cuf78Vf4g==}
|
||||
cpu: [arm64]
|
||||
os: [darwin]
|
||||
|
||||
'@img/sharp-libvips-darwin-x64@1.2.0':
|
||||
resolution: {integrity: sha512-M64XVuL94OgiNHa5/m2YvEQI5q2cl9d/wk0qFTDVXcYzi43lxuiFTftMR1tOnFQovVXNZJ5TURSDK2pNe9Yzqg==}
|
||||
cpu: [x64]
|
||||
os: [darwin]
|
||||
|
||||
'@img/sharp-libvips-darwin-x64@1.2.4':
|
||||
resolution: {integrity: sha512-1IOd5xfVhlGwX+zXv2N93k0yMONvUlANylbJw1eTah8K/Jtpi15KC+WSiaX/nBmbm2HxRM1gZ0nSdjSsrZbGKg==}
|
||||
cpu: [x64]
|
||||
os: [darwin]
|
||||
|
||||
'@img/sharp-libvips-linux-arm64@1.2.0':
|
||||
resolution: {integrity: sha512-RXwd0CgG+uPRX5YYrkzKyalt2OJYRiJQ8ED/fi1tq9WQW2jsQIn0tqrlR5l5dr/rjqq6AHAxURhj2DVjyQWSOA==}
|
||||
cpu: [arm64]
|
||||
os: [linux]
|
||||
|
||||
'@img/sharp-libvips-linux-arm64@1.2.4':
|
||||
resolution: {integrity: sha512-excjX8DfsIcJ10x1Kzr4RcWe1edC9PquDRRPx3YVCvQv+U5p7Yin2s32ftzikXojb1PIFc/9Mt28/y+iRklkrw==}
|
||||
cpu: [arm64]
|
||||
os: [linux]
|
||||
|
||||
'@img/sharp-libvips-linux-arm@1.2.0':
|
||||
resolution: {integrity: sha512-mWd2uWvDtL/nvIzThLq3fr2nnGfyr/XMXlq8ZJ9WMR6PXijHlC3ksp0IpuhK6bougvQrchUAfzRLnbsen0Cqvw==}
|
||||
cpu: [arm]
|
||||
@ -2523,6 +2598,11 @@ packages:
|
||||
cpu: [x64]
|
||||
os: [linux]
|
||||
|
||||
'@img/sharp-libvips-linux-x64@1.2.4':
|
||||
resolution: {integrity: sha512-tJxiiLsmHc9Ax1bz3oaOYBURTXGIRDODBqhveVHonrHJ9/+k89qbLl0bcJns+e4t4rvaNBxaEZsFtSfAdquPrw==}
|
||||
cpu: [x64]
|
||||
os: [linux]
|
||||
|
||||
'@img/sharp-libvips-linuxmusl-arm64@1.0.4':
|
||||
resolution: {integrity: sha512-9Ti+BbTYDcsbp4wfYib8Ctm1ilkugkA/uscUn6UXK1ldpC1JjiXbLfFZtRlBhjPZ5o1NCLiDbg8fhUPKStHoTA==}
|
||||
cpu: [arm64]
|
||||
@ -4486,6 +4566,11 @@ packages:
|
||||
'@standard-schema/utils@0.3.0':
|
||||
resolution: {integrity: sha512-e7Mew686owMaPJVNNLs55PUvgz371nKgwsc4vxE49zsODpJEnxgxRo2y/OKrqueavXgZNMDVj3DdHFlaSAeU8g==}
|
||||
|
||||
'@strongtz/win32-arm64-msvc@0.4.7':
|
||||
resolution: {integrity: sha512-LMU0CVfKGxKzIUawkDw6pwCNFb64DSwqEQhVAfEdLGMZcvVIdJghWB9yMW+72DHzALpwHscIssAJGhYAT4AbfA==}
|
||||
cpu: [arm64]
|
||||
os: [win32]
|
||||
|
||||
'@svta/common-media-library@0.17.4':
|
||||
resolution: {integrity: sha512-nP/KThzQW5FZKdc9V7ICTa9/A7xGw66VQoLPYOEwwMZTTrISp1zIQAX4KAYJw2PN/VPnxJQJXIYbzZTXgMHctw==}
|
||||
engines: {node: '>=20'}
|
||||
@ -14435,22 +14520,26 @@ snapshots:
|
||||
'@img/sharp-darwin-arm64@0.34.3':
|
||||
optionalDependencies:
|
||||
'@img/sharp-libvips-darwin-arm64': 1.2.0
|
||||
optional: true
|
||||
|
||||
'@img/sharp-darwin-x64@0.34.3':
|
||||
optionalDependencies:
|
||||
'@img/sharp-libvips-darwin-x64': 1.2.0
|
||||
optional: true
|
||||
|
||||
'@img/sharp-libvips-darwin-arm64@1.2.0':
|
||||
optional: true
|
||||
|
||||
'@img/sharp-libvips-darwin-arm64@1.2.4': {}
|
||||
|
||||
'@img/sharp-libvips-darwin-x64@1.2.0':
|
||||
optional: true
|
||||
|
||||
'@img/sharp-libvips-darwin-x64@1.2.4': {}
|
||||
|
||||
'@img/sharp-libvips-linux-arm64@1.2.0':
|
||||
optional: true
|
||||
|
||||
'@img/sharp-libvips-linux-arm64@1.2.4': {}
|
||||
|
||||
'@img/sharp-libvips-linux-arm@1.2.0':
|
||||
optional: true
|
||||
|
||||
@ -14463,6 +14552,8 @@ snapshots:
|
||||
'@img/sharp-libvips-linux-x64@1.2.0':
|
||||
optional: true
|
||||
|
||||
'@img/sharp-libvips-linux-x64@1.2.4': {}
|
||||
|
||||
'@img/sharp-libvips-linuxmusl-arm64@1.0.4':
|
||||
optional: true
|
||||
|
||||
@ -14478,7 +14569,6 @@ snapshots:
|
||||
'@img/sharp-linux-arm64@0.34.3':
|
||||
optionalDependencies:
|
||||
'@img/sharp-libvips-linux-arm64': 1.2.0
|
||||
optional: true
|
||||
|
||||
'@img/sharp-linux-arm@0.34.3':
|
||||
optionalDependencies:
|
||||
@ -14498,7 +14588,6 @@ snapshots:
|
||||
'@img/sharp-linux-x64@0.34.3':
|
||||
optionalDependencies:
|
||||
'@img/sharp-libvips-linux-x64': 1.2.0
|
||||
optional: true
|
||||
|
||||
'@img/sharp-linuxmusl-arm64@0.33.5':
|
||||
optionalDependencies:
|
||||
@ -14525,14 +14614,12 @@ snapshots:
|
||||
'@emnapi/runtime': 1.8.0
|
||||
optional: true
|
||||
|
||||
'@img/sharp-win32-arm64@0.34.3':
|
||||
optional: true
|
||||
'@img/sharp-win32-arm64@0.34.3': {}
|
||||
|
||||
'@img/sharp-win32-ia32@0.34.3':
|
||||
optional: true
|
||||
|
||||
'@img/sharp-win32-x64@0.34.3':
|
||||
optional: true
|
||||
'@img/sharp-win32-x64@0.34.3': {}
|
||||
|
||||
'@inquirer/ansi@1.0.2': {}
|
||||
|
||||
@ -14883,11 +14970,9 @@ snapshots:
|
||||
dependencies:
|
||||
js-base64: 3.7.7
|
||||
|
||||
'@libsql/darwin-arm64@0.4.7':
|
||||
optional: true
|
||||
'@libsql/darwin-arm64@0.4.7': {}
|
||||
|
||||
'@libsql/darwin-x64@0.4.7':
|
||||
optional: true
|
||||
'@libsql/darwin-x64@0.4.7': {}
|
||||
|
||||
'@libsql/hrana-client@0.7.0':
|
||||
dependencies:
|
||||
@ -14909,20 +14994,17 @@ snapshots:
|
||||
- bufferutil
|
||||
- utf-8-validate
|
||||
|
||||
'@libsql/linux-arm64-gnu@0.4.7':
|
||||
optional: true
|
||||
'@libsql/linux-arm64-gnu@0.4.7': {}
|
||||
|
||||
'@libsql/linux-arm64-musl@0.4.7':
|
||||
optional: true
|
||||
|
||||
'@libsql/linux-x64-gnu@0.4.7':
|
||||
optional: true
|
||||
'@libsql/linux-x64-gnu@0.4.7': {}
|
||||
|
||||
'@libsql/linux-x64-musl@0.4.7':
|
||||
optional: true
|
||||
|
||||
'@libsql/win32-x64-msvc@0.4.7':
|
||||
optional: true
|
||||
'@libsql/win32-x64-msvc@0.4.7': {}
|
||||
|
||||
'@malept/cross-spawn-promise@2.0.0':
|
||||
dependencies:
|
||||
@ -15018,17 +15100,13 @@ snapshots:
|
||||
hls.js: 1.6.15
|
||||
mux-embed: 5.15.0
|
||||
|
||||
'@napi-rs/system-ocr-darwin-arm64@1.0.2':
|
||||
optional: true
|
||||
'@napi-rs/system-ocr-darwin-arm64@1.0.2': {}
|
||||
|
||||
'@napi-rs/system-ocr-darwin-x64@1.0.2':
|
||||
optional: true
|
||||
'@napi-rs/system-ocr-darwin-x64@1.0.2': {}
|
||||
|
||||
'@napi-rs/system-ocr-win32-arm64-msvc@1.0.2':
|
||||
optional: true
|
||||
'@napi-rs/system-ocr-win32-arm64-msvc@1.0.2': {}
|
||||
|
||||
'@napi-rs/system-ocr-win32-x64-msvc@1.0.2':
|
||||
optional: true
|
||||
'@napi-rs/system-ocr-win32-x64-msvc@1.0.2': {}
|
||||
|
||||
'@napi-rs/system-ocr@1.0.2(patch_hash=aa1a73e445ee644774745b620589bb99d85bee6c95cc2a91fe9137e580da5bde)':
|
||||
optionalDependencies:
|
||||
@ -16187,6 +16265,8 @@ snapshots:
|
||||
|
||||
'@standard-schema/utils@0.3.0': {}
|
||||
|
||||
'@strongtz/win32-arm64-msvc@0.4.7': {}
|
||||
|
||||
'@svta/common-media-library@0.17.4': {}
|
||||
|
||||
'@swc/core-darwin-arm64@1.15.8':
|
||||
|
||||
@ -1,39 +1,31 @@
|
||||
const { Arch } = require('electron-builder')
|
||||
const { execSync } = require('child_process')
|
||||
const { xor } = require('lodash')
|
||||
|
||||
// if you want to add new prebuild binaries packages with different architectures, you can add them here
|
||||
// please add to allX64 and allArm64 from pnpm-lock.yaml
|
||||
const allArm64 = {
|
||||
'@img/sharp-darwin-arm64': '0.34.3',
|
||||
'@img/sharp-win32-arm64': '0.34.3',
|
||||
'@img/sharp-linux-arm64': '0.34.3',
|
||||
|
||||
'@img/sharp-libvips-darwin-arm64': '1.2.4',
|
||||
'@img/sharp-libvips-linux-arm64': '1.2.4',
|
||||
|
||||
'@libsql/darwin-arm64': '0.4.7',
|
||||
'@libsql/linux-arm64-gnu': '0.4.7',
|
||||
'@strongtz/win32-arm64-msvc': '0.4.7',
|
||||
|
||||
'@napi-rs/system-ocr-darwin-arm64': '1.0.2',
|
||||
'@napi-rs/system-ocr-win32-arm64-msvc': '1.0.2'
|
||||
}
|
||||
|
||||
const allX64 = {
|
||||
'@img/sharp-darwin-x64': '0.34.3',
|
||||
'@img/sharp-linux-x64': '0.34.3',
|
||||
'@img/sharp-win32-x64': '0.34.3',
|
||||
|
||||
'@img/sharp-libvips-darwin-x64': '1.2.4',
|
||||
'@img/sharp-libvips-linux-x64': '1.2.4',
|
||||
|
||||
'@libsql/darwin-x64': '0.4.7',
|
||||
'@libsql/linux-x64-gnu': '0.4.7',
|
||||
'@libsql/win32-x64-msvc': '0.4.7',
|
||||
|
||||
'@napi-rs/system-ocr-darwin-x64': '1.0.2',
|
||||
'@napi-rs/system-ocr-win32-x64-msvc': '1.0.2'
|
||||
}
|
||||
const packages = [
|
||||
'@img/sharp-darwin-arm64',
|
||||
'@img/sharp-darwin-x64',
|
||||
'@img/sharp-linux-arm64',
|
||||
'@img/sharp-linux-x64',
|
||||
'@img/sharp-win32-arm64',
|
||||
'@img/sharp-win32-x64',
|
||||
'@img/sharp-libvips-darwin-arm64',
|
||||
'@img/sharp-libvips-darwin-x64',
|
||||
'@img/sharp-libvips-linux-arm64',
|
||||
'@img/sharp-libvips-linux-x64',
|
||||
'@libsql/darwin-arm64',
|
||||
'@libsql/darwin-x64',
|
||||
'@libsql/linux-arm64-gnu',
|
||||
'@libsql/linux-x64-gnu',
|
||||
'@libsql/win32-x64-msvc',
|
||||
'@napi-rs/system-ocr-darwin-arm64',
|
||||
'@napi-rs/system-ocr-darwin-x64',
|
||||
'@napi-rs/system-ocr-win32-arm64-msvc',
|
||||
'@napi-rs/system-ocr-win32-x64-msvc',
|
||||
'@strongtz/win32-arm64-msvc'
|
||||
]
|
||||
|
||||
const platformToArch = {
|
||||
mac: 'darwin',
|
||||
@ -46,46 +38,24 @@ exports.default = async function (context) {
|
||||
const platformName = context.packager.platform.name
|
||||
const platform = platformToArch[platformName]
|
||||
|
||||
const downloadPackages = async (packages) => {
|
||||
// Skip if target architecture matches current system architecture
|
||||
if (arch === process.arch) {
|
||||
console.log(`Skipping install: target architecture (${arch}) matches current system`)
|
||||
return
|
||||
}
|
||||
|
||||
console.log('installing packages ......')
|
||||
const packagesToInstall = []
|
||||
|
||||
for (const name of Object.keys(packages)) {
|
||||
if (name.includes(`${platform}`) && name.includes(`-${arch}`)) {
|
||||
packagesToInstall.push(`${name}@${packages[name]}`)
|
||||
}
|
||||
}
|
||||
|
||||
if (packagesToInstall.length > 0) {
|
||||
console.log('Installing:', packagesToInstall.join(' '))
|
||||
execSync(
|
||||
`pnpm install --config.platform=${platform} --config.architecture=${arch} ${packagesToInstall.join(' ')}`,
|
||||
{ stdio: 'inherit' }
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
const changeFilters = async (filtersToExclude, filtersToInclude) => {
|
||||
const excludePackages = async (packagesToExclude) => {
|
||||
// remove filters for the target architecture (allow inclusion)
|
||||
let filters = context.packager.config.files[0].filter
|
||||
filters = filters.filter((filter) => !filtersToInclude.includes(filter))
|
||||
|
||||
// add filters for other architectures (exclude them)
|
||||
filters.push(...filtersToExclude)
|
||||
filters.push(...packagesToExclude)
|
||||
|
||||
context.packager.config.files[0].filter = filters
|
||||
}
|
||||
|
||||
await downloadPackages(context.arch === Arch.arm64 ? allArm64 : allX64)
|
||||
const arm64Packages = packages.filter((p) => p.includes('arm64')).filter((p) => p.includes(platform))
|
||||
const x64Packages = packages.filter((p) => p.includes('x64')).filter((p) => p.includes(platform))
|
||||
|
||||
const arm64Filters = Object.keys(allArm64).map((f) => '!node_modules/' + f + '/**')
|
||||
const x64Filters = Object.keys(allX64).map((f) => '!node_modules/' + f + '/**')
|
||||
const arm64ExcludePackages = xor(packages, x64Packages).map((p) => '!node_modules/' + p + '/**')
|
||||
const x64ExcludePackages = xor(packages, arm64Packages).map((p) => '!node_modules/' + p + '/**')
|
||||
|
||||
console.log('Exclude packages for arm64', arm64ExcludePackages)
|
||||
console.log('Exclude packages for x64', x64ExcludePackages)
|
||||
|
||||
const excludeRipgrepFilters = ['arm64-darwin', 'arm64-linux', 'x64-darwin', 'x64-linux', 'x64-win32']
|
||||
.filter((f) => {
|
||||
@ -98,8 +68,8 @@ exports.default = async function (context) {
|
||||
.map((f) => '!node_modules/@anthropic-ai/claude-agent-sdk/vendor/ripgrep/' + f + '/**')
|
||||
|
||||
if (context.arch === Arch.arm64) {
|
||||
await changeFilters([...x64Filters, ...excludeRipgrepFilters], arm64Filters)
|
||||
await excludePackages([...arm64ExcludePackages, ...excludeRipgrepFilters])
|
||||
} else {
|
||||
await changeFilters([...arm64Filters, ...excludeRipgrepFilters], x64Filters)
|
||||
await excludePackages([...x64ExcludePackages, ...excludeRipgrepFilters])
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user