Files
backspace/package.json
T
devsyncwrld bd8decb4b3
OpenSSF Scorecard / Scorecard analysis (push) Waiting to run
CI / Build & test (Node 20) (push) Canceled after 0s
CI / Build & test (Node 24) (push) Canceled after 0s
CI / Build & test (push) Canceled after 0s
CodeQL / Analyze (javascript-typescript) (push) Canceled after 0s
Security / Secret scan (gitleaks) (push) Canceled after 0s
Security / Dependency scan (OSV-Scanner) (push) Canceled after 0s
Security / IaC/config scan (Trivy) (push) Canceled after 0s
Security / License compliance scan (Trivy) (push) Canceled after 0s
fix(ci): actually compile the native audio module, and prove it
The previous run went green and produced an installer with no system-audio
capture in it — the exact silent failure this module exists to prevent.

Two causes. electron-rebuild takes -w as one comma-separated list, not a
repeated flag; passing it twice made argv.w an array and the CLI threw
'argv.w.split is not a function', which also broke uiohook-napi's rebuild that
had been working. And pnpm 10 refuses to run a dependency's build script unless
it is listed in onlyBuiltDependencies, so node-gyp never ran for it at all —
the log said 'Ignored build scripts' and nothing else complained.

Neither surfaced because desktop's postinstall ends in , which
exists so contributors without build tools can install. That is reasonable
locally and dangerous in CI, so the workflow now asserts a compiled .node
exists and fails loudly when it does not, instead of trusting an exit code that
was designed to lie.
2026-09-01 15:13:26 -03:00

50 lines
1.6 KiB
JSON

{
"name": "backspace",
"version": "1.1.0",
"private": true,
"description": "Open, self-hosted communication platform \u2014 text, voice, video, and federation",
"license": "AGPL-3.0-only",
"author": "Jannis Braun",
"homepage": "https://github.com/TheZwiss/backspace",
"repository": {
"type": "git",
"url": "https://github.com/TheZwiss/backspace.git"
},
"scripts": {
"dev:server": "pnpm --filter @backspace/server dev",
"dev:web": "pnpm --filter @backspace/web dev",
"dev": "pnpm --parallel --filter @backspace/server --filter @backspace/web dev",
"build:shared": "pnpm --filter @backspace/shared build",
"build:server": "pnpm --filter @backspace/server build",
"build:web": "pnpm --filter @backspace/web build",
"build": "pnpm --filter @backspace/shared build && pnpm --filter @backspace/server build && pnpm --filter @backspace/web build",
"typecheck": "pnpm --filter @backspace/shared build && pnpm -r typecheck",
"test": "pnpm -r test",
"dev:desktop": "pnpm --filter @backspace/desktop dev",
"build:desktop": "pnpm --filter @backspace/desktop build",
"gen-icons": "node scripts/gen-icons.mjs"
},
"devDependencies": {
"sharp": "^0.33.5",
"png-to-ico": "^2.1.8",
"png2icons": "^2.0.1"
},
"pnpm": {
"onlyBuiltDependencies": [
"better-sqlite3",
"electron",
"electron-native-screenshare",
"esbuild",
"sharp"
],
"patchedDependencies": {
"uiohook-napi@1.5.5": "patches/uiohook-napi@1.5.5.patch"
}
},
"packageManager": "pnpm@10.34.3",
"engines": {
"node": ">=20.0.0",
"pnpm": ">=10.0.0"
}
}