Move the Photos bridge types into the desktop contract, expose rakazoDesktop.media.photos from the preload, connect the sync runner in the main process through an authenticated oRPC client, package and sign the helper, and build and test it on macOS CI. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0138YqDj3ttfayRwuMKKrqVj
102 lines
2.7 KiB
JSON
102 lines
2.7 KiB
JSON
{
|
|
"name": "@rakazo/desktop",
|
|
"productName": "Rakazo",
|
|
"version": "0.1.6",
|
|
"license": "Apache-2.0",
|
|
"type": "module",
|
|
"main": "dist/main.js",
|
|
"scripts": {
|
|
"dev": "pnpm build && electron .",
|
|
"build": "tsc -p tsconfig.json && node scripts/copy-static.mjs",
|
|
"pack": "pnpm --filter @rakazo/web build && pnpm build && electron-builder --mac --win --linux",
|
|
"pack:dir": "pnpm --filter @rakazo/web build && pnpm build && electron-builder --dir",
|
|
"check": "tsc --noEmit -p tsconfig.json",
|
|
"test": "vitest run --root ../.. apps/desktop/src",
|
|
"test:e2e": "pnpm build && playwright test --config e2e/playwright.config.ts",
|
|
"release": "pnpm --filter @rakazo/web build && pnpm build && electron-builder --publish never"
|
|
},
|
|
"dependencies": {
|
|
"@orpc/client": "1.15.0",
|
|
"@orpc/contract": "1.15.0",
|
|
"@rakazo/contracts": "workspace:*",
|
|
"electron-updater": "6.8.9"
|
|
},
|
|
"devDependencies": {
|
|
"@playwright/test": "1.63.0",
|
|
"@rakazo/ui-tokens": "workspace:*",
|
|
"electron": "44.3.0",
|
|
"electron-builder": "26.15.3",
|
|
"typescript": "7.0.2",
|
|
"vitest": "4.1.11"
|
|
},
|
|
"build": {
|
|
"appId": "dev.rakazo.desktop",
|
|
"directories": {
|
|
"output": "out",
|
|
"buildResources": "assets"
|
|
},
|
|
"files": [
|
|
"dist/**/*",
|
|
"package.json"
|
|
],
|
|
"extraResources": [
|
|
{
|
|
"from": "../web/dist",
|
|
"to": "web"
|
|
},
|
|
{
|
|
"from": "../../infra/compose/docker-compose.images.yml",
|
|
"to": "stack/docker-compose.images.yml"
|
|
},
|
|
{
|
|
"from": "../../infra/compose/.env.images.example",
|
|
"to": "stack/.env.images.example"
|
|
}
|
|
],
|
|
"extraMetadata": {
|
|
"main": "dist/main.js"
|
|
},
|
|
"mac": {
|
|
"icon": "../../packages/ui-tokens/assets/Rakazo.icon",
|
|
"category": "public.app-category.productivity",
|
|
"target": [
|
|
"dmg",
|
|
"zip"
|
|
],
|
|
"notarize": true,
|
|
"entitlements": "native/photos-helper/entitlements.mac.plist",
|
|
"entitlementsInherit": "native/photos-helper/entitlements.mac.plist",
|
|
"extendInfo": {
|
|
"NSPhotoLibraryUsageDescription": "Rakazo adds your photos and videos to the media library on your Rakazo server."
|
|
},
|
|
"extraResources": [
|
|
{
|
|
"from": "native/photos-helper/.build/apple/Products/Release/photos-helper",
|
|
"to": "bin/photos-helper"
|
|
}
|
|
]
|
|
},
|
|
"win": {
|
|
"icon": "assets/icon.ico",
|
|
"target": [
|
|
"nsis"
|
|
],
|
|
"verifyUpdateCodeSignature": true
|
|
},
|
|
"linux": {
|
|
"executableName": "rakazo",
|
|
"icon": "assets/icon.png",
|
|
"target": [
|
|
"AppImage"
|
|
]
|
|
},
|
|
"publish": [
|
|
{
|
|
"provider": "github",
|
|
"owner": "elie222",
|
|
"repo": "rakazo"
|
|
}
|
|
]
|
|
}
|
|
}
|