mirror of
https://github.com/signalapp/Signal-Desktop.git
synced 2025-12-05 01:10:49 +00:00
712 lines
28 KiB
JSON
712 lines
28 KiB
JSON
{
|
|
"$schema": "./package.schema.json",
|
|
"packageManager": "pnpm@10.18.1",
|
|
"name": "signal-desktop",
|
|
"productName": "Signal",
|
|
"description": "Private messaging from your desktop",
|
|
"desktopName": "signal.desktop",
|
|
"repository": "https://github.com/signalapp/Signal-Desktop.git",
|
|
"version": "7.84.0-alpha.1",
|
|
"license": "AGPL-3.0-only",
|
|
"author": {
|
|
"name": "Signal Messenger, LLC",
|
|
"email": "support@signal.org"
|
|
},
|
|
"browserslist": "last 1 chrome versions",
|
|
"main": "app/main.main.js",
|
|
"scripts": {
|
|
"postinstall": "pnpm run build:acknowledgments && pnpm run electron:install-app-deps",
|
|
"postuninstall": "pnpm run build:acknowledgments",
|
|
"start": "electron .",
|
|
"generate": "run-s generate:phase-0 generate:phase-1",
|
|
"generate:phase-0": "run-p build:esbuild:scripts",
|
|
"generate:phase-1": "run-p --aggregate-output --print-label generate:phase-1:bundle build:icu-types build:compact-locales build:styles get-expire-time copy-components build:policy-files",
|
|
"generate:phase-1:bundle": "run-s build-protobuf build:esbuild:bundle",
|
|
"build-release": "pnpm run build",
|
|
"sign-release": "node ts/updater/generateSignature.js",
|
|
"notarize": "echo 'No longer necessary'",
|
|
"get-strings": "ts-node ts/scripts/get-strings.node.ts && ts-node ts/scripts/gen-nsis-script.node.ts && ts-node ts/scripts/gen-locales-config.node.ts && run-p get-strings:locales get-strings:countries get-strings:emoji mark-unusued-strings-deleted && run-p build:compact-locales",
|
|
"get-strings:locales": "ts-node ./ts/scripts/build-localized-display-names.node.ts locales ts/scripts/locale-data/locale-display-names.csv build/locale-display-names.json",
|
|
"get-strings:countries": "ts-node ./ts/scripts/build-localized-display-names.node.ts countries ts/scripts/locale-data/country-display-names.csv build/country-display-names.json",
|
|
"get-strings:emoji": "ts-node ./ts/scripts/get-emoji-locales.node.ts",
|
|
"push-strings": "node ts/scripts/remove-strings.node.js && node ts/scripts/push-strings.node.js",
|
|
"mark-unusued-strings-deleted": "ts-node ./ts/scripts/mark-unused-strings-deleted.node.ts",
|
|
"get-expire-time": "node ts/scripts/get-expire-time.node.js",
|
|
"copy-components": "node ts/scripts/copy.node.js",
|
|
"build-module-protobuf": "pbjs --root='signal-desktop' --target static-module --force-long --no-typeurl --no-verify --no-create --no-convert --wrap commonjs --out ts/protobuf/compiled.std.js protos/*.proto && pbts --no-comments --out ts/protobuf/compiled.std.d.ts ts/protobuf/compiled.std.js",
|
|
"clean-module-protobuf": "rm -f ts/protobuf/compiled.std.d.ts ts/protobuf/compiled.std.js",
|
|
"build-protobuf": "pnpm run build-module-protobuf",
|
|
"clean-protobuf": "pnpm run clean-module-protobuf",
|
|
"prepare-beta-build": "node scripts/prepare_beta_build.js",
|
|
"prepare-alpha-build": "node scripts/prepare_alpha_build.js",
|
|
"prepare-alpha-version": "node scripts/prepare_tagged_version.js alpha",
|
|
"prepare-axolotl-build": "node scripts/prepare_axolotl_build.js",
|
|
"prepare-axolotl-version": "node scripts/prepare_tagged_version.js axolotl",
|
|
"prepare-adhoc-build": "node scripts/prepare_adhoc_build.js",
|
|
"prepare-adhoc-version": "node scripts/prepare_tagged_version.js adhoc",
|
|
"prepare-staging-build": "node scripts/prepare_staging_build.js",
|
|
"prepare-linux-build": "node scripts/prepare_linux_build.js",
|
|
"test": "run-s test-node test-electron test-lint-intl test-eslint",
|
|
"test-electron": "node ts/scripts/test-electron.node.js",
|
|
"test-release": "node ts/scripts/test-release.node.js",
|
|
"test-node": "cross-env LANG=en-us electron-mocha --timeout 10000 --file test/setup-test-node.js --recursive ts/test-node",
|
|
"test-mock": "node ts/scripts/mocha-separator.node.js --require ts/test-mock/setup-ci.node.js -- ts/test-mock/**/*_test.node.js",
|
|
"test-mock-docker": "mocha --require ts/test-mock/setup-ci.node.js ts/test-mock/**/*_test.docker.node.js",
|
|
"test-eslint": "mocha .eslint/rules/**/*.test.js --ignore-leaks",
|
|
"test-lint-intl": "ts-node ./build/intl-linter/linter.node.ts --test",
|
|
"eslint": "eslint --cache . --cache-strategy content --max-warnings 0",
|
|
"lint": "run-p --aggregate-output --print-label lint-prettier lint-css check:types eslint",
|
|
"lint-deps": "node ts/util/lint/linter.node.js",
|
|
"lint-license-comments": "ts-node ts/util/lint/license_comments.node.ts",
|
|
"lint-prettier": "pprettier --check '**/*.{ts,tsx,d.ts,js,json,html,scss,md,yml,yaml}' '!node_modules/**'",
|
|
"lint-intl": "ts-node ./build/intl-linter/linter.node.ts",
|
|
"lint-css": "stylelint '**/*.scss' --cache",
|
|
"danger:local": "./danger/danger.sh local --base main",
|
|
"danger:ci": "./danger/danger.sh ci --base origin/main",
|
|
"format": "pprettier --write '**/*.{ts,tsx,d.ts,js,json,html,scss,md,yml,yaml}' '!node_modules/**'",
|
|
"svgo": "svgo --multipass images/**/*.svg images/*.svg",
|
|
"transpile": "run-p check:types build:esbuild",
|
|
"check:types": "tsc --noEmit",
|
|
"clean-transpile": "node ./scripts/clean-transpile.js",
|
|
"ready": "npm-run-all --print-label clean-transpile generate --parallel lint lint-deps lint-intl test-node test-electron",
|
|
"dev": "pnpm run build-protobuf && cross-env SIGNAL_ENV=storybook storybook dev --port 6006",
|
|
"dev:transpile": "run-p \"check:types --watch\" dev:esbuild dev:icu-types dev:protobuf",
|
|
"dev:esbuild": "node scripts/esbuild.js --watch",
|
|
"dev:styles": "pnpm run '/^dev:styles:(sass|tailwind)$/'",
|
|
"dev:styles:sass": "pnpm run build:styles:sass --watch",
|
|
"dev:styles:tailwind": "pnpm run build:styles:tailwind --watch",
|
|
"dev:icu-types": "chokidar ./_locales/en/messages.json --initial --command \"pnpm run build:icu-types\"",
|
|
"dev:protobuf": "chokidar ./protos/**/*.proto --command \"pnpm run build-protobuf\"",
|
|
"build:storybook": "pnpm run build-protobuf && cross-env SIGNAL_ENV=storybook storybook build",
|
|
"test:storybook": "pnpm run build:storybook && run-p --race test:storybook:*",
|
|
"test:storybook:serve": "http-server storybook-static --port 6006 --silent",
|
|
"test:storybook:test": "wait-on http://127.0.0.1:6006/ --timeout 5000 && test-storybook --testTimeout 60000",
|
|
"build": "run-s --print-label generate build:esbuild:prod build:release",
|
|
"build-win32-all": "run-s --print-label generate build:esbuild:prod build:release-win32-all",
|
|
"build-linux": "run-s build:policy-files generate build:esbuild:prod && pnpm run build:release --publish=never",
|
|
"build:acknowledgments": "node scripts/generate-acknowledgments.js",
|
|
"build:dns-fallback": "node ts/scripts/generate-dns-fallback.node.js",
|
|
"build:icu-types": "node ts/scripts/generate-icu-types.node.js",
|
|
"build:compact-locales": "node ts/scripts/generate-compact-locales.node.js",
|
|
"build:tray-icons": "ts-node ts/scripts/generate-tray-icons.node.ts",
|
|
"build:dev": "run-s --print-label generate build:esbuild:prod",
|
|
"build:esbuild": "node scripts/esbuild.js",
|
|
"build:esbuild:scripts": "node scripts/esbuild.js --no-bundle",
|
|
"build:esbuild:bundle": "node scripts/esbuild.js --no-scripts",
|
|
"build:esbuild:prod": "node scripts/esbuild.js --prod",
|
|
"build:policy-files": "node ts/scripts/gen-policy-files.node.js",
|
|
"build:styles": "pnpm run \"/^build:styles:.*/\"",
|
|
"build:styles:sass": "sass stylesheets/manifest.scss:stylesheets/manifest.css stylesheets/manifest_bridge.scss:stylesheets/manifest_bridge.css --fatal-deprecation=1.80.7",
|
|
"build:styles:tailwind": "tailwindcss -i ./stylesheets/tailwind-config.css -o ./stylesheets/tailwind.css",
|
|
"build:electron": "electron-builder --config.extraMetadata.environment=$SIGNAL_ENV",
|
|
"build:release": "cross-env SIGNAL_ENV=production pnpm run build:electron --config.directories.output=release",
|
|
"build:release-win32-all": "pnpm run build:release --arm64 --x64",
|
|
"build:preload-cache": "node ts/scripts/generate-preload-cache.node.js",
|
|
"build:emoji": "run-p build:emoji:32 build:emoji:64",
|
|
"build:emoji:32": "cwebp -progress -mt -preset icon -alpha_filter best -alpha_q 20 -pass 10 -q 75 ./node_modules/emoji-datasource-apple/img/apple/sheets/32.png -o ./images/emoji-sheet-32.webp",
|
|
"build:emoji:64": "cwebp -progress -mt -preset icon -alpha_filter best -alpha_q 20 -pass 10 -q 75 ./node_modules/emoji-datasource-apple/img/apple/sheets/64.png -o ./images/emoji-sheet-64.webp",
|
|
"verify": "run-p --print-label verify:*",
|
|
"verify:ts": "tsc --noEmit",
|
|
"electron:install-app-deps": "electron-builder install-app-deps",
|
|
"check-upgradeable-deps": "ts-node ts/scripts/check-upgradeable-deps.node.ts",
|
|
"react-devtools": "react-devtools",
|
|
"run-with-devtools": "cross-env REACT_DEVTOOLS=1 run-p --print-label react-devtools start"
|
|
},
|
|
"optionalDependencies": {
|
|
"fs-xattr": "0.3.0"
|
|
},
|
|
"dependencies": {
|
|
"@electron/asar": "3.4.1",
|
|
"@formatjs/fast-memoize": "2.2.3",
|
|
"@formatjs/icu-messageformat-parser": "2.9.3",
|
|
"@formatjs/intl-localematcher": "0.2.32",
|
|
"@indutny/dicer": "0.3.2",
|
|
"@indutny/mac-screen-share": "1.0.13",
|
|
"@indutny/range-finder": "1.3.4",
|
|
"@indutny/simple-windows-notifications": "2.0.16",
|
|
"@indutny/sneequals": "4.0.0",
|
|
"@internationalized/date": "3.7.0",
|
|
"@popperjs/core": "2.11.8",
|
|
"@radix-ui/react-tooltip": "1.2.7",
|
|
"@react-aria/focus": "3.19.1",
|
|
"@react-aria/interactions": "3.23.0",
|
|
"@react-aria/utils": "3.25.3",
|
|
"@react-spring/web": "9.7.5",
|
|
"@react-types/shared": "3.27.0",
|
|
"@signalapp/libsignal-client": "0.86.3",
|
|
"@signalapp/minimask": "1.0.1",
|
|
"@signalapp/mute-state-change": "workspace:1.0.0",
|
|
"@signalapp/quill-cjs": "2.1.2",
|
|
"@signalapp/ringrtc": "2.60.5",
|
|
"@signalapp/sqlcipher": "2.4.4",
|
|
"@signalapp/windows-ucv": "1.0.1",
|
|
"@tanstack/react-virtual": "3.11.2",
|
|
"@types/dom-mediacapture-transform": "0.1.11",
|
|
"@types/fabric": "4.5.3",
|
|
"blob-util": "2.0.2",
|
|
"blueimp-load-image": "5.16.0",
|
|
"blurhash": "2.0.5",
|
|
"buffer": "6.0.3",
|
|
"card-validator": "10.0.3",
|
|
"changedpi": "1.0.4",
|
|
"cirbuf": "1.0.2",
|
|
"classnames": "2.5.1",
|
|
"config": "3.3.12",
|
|
"copy-text-to-clipboard": "2.1.0",
|
|
"country-codes-list": "2.0.0",
|
|
"credit-card-type": "10.0.2",
|
|
"dashdash": "2.0.0",
|
|
"direction": "1.0.4",
|
|
"dom-accessibility-api": "0.7.0",
|
|
"emoji-datasource": "16.0.0",
|
|
"emoji-datasource-apple": "16.0.0",
|
|
"emoji-regex": "10.4.0",
|
|
"encoding": "0.1.13",
|
|
"fabric": "4.6.0",
|
|
"fast-glob": "3.3.2",
|
|
"filesize": "9.0.11",
|
|
"firstline": "2.0.2",
|
|
"focus-trap-react": "10.3.1",
|
|
"form-data": "4.0.1",
|
|
"framer-motion": "6.5.1",
|
|
"fs-extra": "11.2.0",
|
|
"fuse.js": "6.5.3",
|
|
"google-libphonenumber": "3.2.39",
|
|
"got": "11.8.5",
|
|
"growing-file": "0.1.3",
|
|
"heic-convert": "2.1.0",
|
|
"humanize-duration": "3.27.1",
|
|
"intl-tel-input": "24.7.0",
|
|
"js-yaml": "4.1.0",
|
|
"linkify-it": "5.0.0",
|
|
"lodash": "4.17.21",
|
|
"long": "5.2.3",
|
|
"lru-cache": "11.0.2",
|
|
"memoizee": "0.4.17",
|
|
"moment": "2.30.1",
|
|
"mp4box": "0.5.3",
|
|
"node-fetch": "2.6.7",
|
|
"nop": "1.0.0",
|
|
"normalize-path": "3.0.0",
|
|
"p-map": "2.1.0",
|
|
"p-queue": "6.6.2",
|
|
"p-timeout": "4.1.0",
|
|
"parsecurrency": "1.1.1",
|
|
"pify": "3.0.0",
|
|
"pino": "9.8.0",
|
|
"protobufjs": "7.3.2",
|
|
"proxy-agent": "6.4.0",
|
|
"qrcode-generator": "1.4.4",
|
|
"radix-ui": "1.4.2",
|
|
"react": "18.3.1",
|
|
"react-aria": "3.35.1",
|
|
"react-aria-components": "1.4.1",
|
|
"react-blurhash": "0.3.0",
|
|
"react-dom": "18.3.1",
|
|
"react-intl": "7.1.11",
|
|
"react-popper": "2.3.0",
|
|
"react-redux": "9.2.0",
|
|
"react-virtualized": "9.22.6",
|
|
"read-last-lines": "1.8.0",
|
|
"redux": "5.0.1",
|
|
"redux-logger": "3.0.6",
|
|
"redux-promise-middleware": "6.2.0",
|
|
"redux-thunk": "3.1.0",
|
|
"reselect": "5.1.1",
|
|
"semver": "7.6.3",
|
|
"split2": "4.2.0",
|
|
"tinykeys": "3.0.0",
|
|
"type-fest": "4.26.1",
|
|
"url": "0.11.4",
|
|
"urlpattern-polyfill": "10.0.0",
|
|
"uuid": "11.0.2",
|
|
"websocket": "1.0.34",
|
|
"write-file-atomic": "6.0.0",
|
|
"zod": "3.23.8"
|
|
},
|
|
"devDependencies": {
|
|
"@babel/core": "7.26.0",
|
|
"@babel/plugin-proposal-class-properties": "7.18.6",
|
|
"@babel/plugin-proposal-nullish-coalescing-operator": "7.18.6",
|
|
"@babel/plugin-proposal-optional-chaining": "7.21.0",
|
|
"@babel/plugin-transform-runtime": "7.25.9",
|
|
"@babel/plugin-transform-typescript": "7.25.9",
|
|
"@babel/preset-react": "7.25.9",
|
|
"@babel/preset-typescript": "7.26.0",
|
|
"@electron/fuses": "1.5.0",
|
|
"@electron/notarize": "2.1.0",
|
|
"@electron/symbolicate-mac": "2.3.1",
|
|
"@formatjs/intl": "2.10.14",
|
|
"@indutny/parallel-prettier": "3.0.0",
|
|
"@indutny/rezip-electron": "2.0.1",
|
|
"@napi-rs/canvas": "0.1.61",
|
|
"@signalapp/mock-server": "15.2.0",
|
|
"@storybook/addon-a11y": "8.4.4",
|
|
"@storybook/addon-actions": "8.4.4",
|
|
"@storybook/addon-controls": "8.4.4",
|
|
"@storybook/addon-interactions": "8.4.4",
|
|
"@storybook/addon-jest": "8.4.4",
|
|
"@storybook/addon-measure": "8.4.4",
|
|
"@storybook/addon-toolbars": "8.4.4",
|
|
"@storybook/addon-viewport": "8.4.4",
|
|
"@storybook/addon-webpack5-compiler-swc": "1.0.5",
|
|
"@storybook/csf": "0.1.11",
|
|
"@storybook/preview-api": "8.4.4",
|
|
"@storybook/react": "8.4.4",
|
|
"@storybook/react-webpack5": "8.4.4",
|
|
"@storybook/test": "8.4.4",
|
|
"@storybook/test-runner": "0.22.0",
|
|
"@storybook/types": "8.1.11",
|
|
"@tailwindcss/cli": "4.1.7",
|
|
"@tailwindcss/postcss": "4.1.7",
|
|
"@types/blueimp-load-image": "5.16.6",
|
|
"@types/chai": "4.3.16",
|
|
"@types/chai-as-promised": "7.1.4",
|
|
"@types/config": "3.3.5",
|
|
"@types/dashdash": "1.14.3",
|
|
"@types/debug": "4.1.12",
|
|
"@types/direction": "1.0.0",
|
|
"@types/fs-extra": "11.0.4",
|
|
"@types/google-libphonenumber": "7.4.30",
|
|
"@types/humanize-duration": "3.18.1",
|
|
"@types/intl-tel-input": "18.1.4",
|
|
"@types/js-yaml": "4.0.9",
|
|
"@types/json-to-ast": "2.1.4",
|
|
"@types/linkify-it": "5.0.0",
|
|
"@types/lodash": "4.14.106",
|
|
"@types/memoizee": "0.4.11",
|
|
"@types/mocha": "10.0.9",
|
|
"@types/node": "20.17.6",
|
|
"@types/node-fetch": "2.6.12",
|
|
"@types/normalize-path": "3.0.2",
|
|
"@types/parsecurrency": "1.0.2",
|
|
"@types/pify": "5.0.4",
|
|
"@types/pixelmatch": "5.2.6",
|
|
"@types/pngjs": "6.0.5",
|
|
"@types/react": "18.3.20",
|
|
"@types/react-dom": "18.3.6",
|
|
"@types/react-redux": "7.1.34",
|
|
"@types/react-virtualized": "9.22.2",
|
|
"@types/redux-logger": "3.0.13",
|
|
"@types/semver": "7.5.8",
|
|
"@types/sinon": "17.0.3",
|
|
"@types/split2": "4.2.3",
|
|
"@types/uuid": "10.0.0",
|
|
"@types/websocket": "1.0.0",
|
|
"@types/write-file-atomic": "4.0.3",
|
|
"@types/yargs": "17.0.33",
|
|
"@typescript-eslint/eslint-plugin": "6.18.1",
|
|
"@typescript-eslint/parser": "6.18.1",
|
|
"axe-core": "4.10.2",
|
|
"babel-core": "7.0.0-bridge.0",
|
|
"babel-loader": "9.2.1",
|
|
"babel-plugin-lodash": "3.3.4",
|
|
"better-blockmap": "1.0.2",
|
|
"casual": "1.6.2",
|
|
"chai": "4.4.1",
|
|
"chai-as-promised": "7.1.1",
|
|
"chalk": "4.1.2",
|
|
"chokidar-cli": "3.0.0",
|
|
"cross-env": "7.0.3",
|
|
"css-loader": "7.1.2",
|
|
"csv-parse": "5.5.6",
|
|
"danger": "12.3.3",
|
|
"debug": "4.3.7",
|
|
"electron": "39.2.4",
|
|
"electron-builder": "26.0.14",
|
|
"electron-mocha": "13.0.1",
|
|
"endanger": "7.0.4",
|
|
"enhanced-resolve": "5.18.3",
|
|
"enquirer": "2.4.1",
|
|
"esbuild": "0.25.9",
|
|
"eslint": "8.56.0",
|
|
"eslint-config-airbnb-typescript-prettier": "5.0.0",
|
|
"eslint-config-prettier": "8.5.0",
|
|
"eslint-plugin-better-tailwindcss": "3.7.2",
|
|
"eslint-plugin-import": "2.32.0",
|
|
"eslint-plugin-local-rules": "1.3.2",
|
|
"eslint-plugin-mocha": "10.1.0",
|
|
"eslint-plugin-more": "1.0.5",
|
|
"eslint-plugin-react": "7.31.10",
|
|
"execa": "5.1.1",
|
|
"html-webpack-plugin": "5.6.3",
|
|
"http-server": "14.1.1",
|
|
"json-to-ast": "2.1.0",
|
|
"log-symbols": "4.1.0",
|
|
"mini-css-extract-plugin": "2.9.2",
|
|
"mocha": "10.8.2",
|
|
"node-gyp": "11.0.0",
|
|
"node-gyp-build": "4.8.4",
|
|
"npm-run-all": "4.1.5",
|
|
"p-limit": "3.1.0",
|
|
"pixelmatch": "5.3.0",
|
|
"playwright": "1.54.2",
|
|
"pngjs": "7.0.0",
|
|
"postcss": "8.5.3",
|
|
"postcss-loader": "8.1.1",
|
|
"prettier": "3.3.3",
|
|
"prettier-plugin-tailwindcss": "0.6.11",
|
|
"protobufjs-cli": "1.1.1",
|
|
"react-devtools": "6.0.1",
|
|
"react-devtools-core": "6.0.1",
|
|
"resedit": "2.0.2",
|
|
"resolve-url-loader": "5.0.0",
|
|
"sass": "1.80.7",
|
|
"sass-loader": "16.0.3",
|
|
"sinon": "19.0.2",
|
|
"storybook": "8.4.4",
|
|
"style-loader": "4.0.0",
|
|
"stylelint": "16.10.0",
|
|
"stylelint-config-css-modules": "4.4.0",
|
|
"stylelint-config-recommended-scss": "14.1.0",
|
|
"stylelint-use-logical-spec": "5.0.1",
|
|
"svgo": "3.3.2",
|
|
"synckit": "0.11.11",
|
|
"tailwindcss": "4.1.7",
|
|
"terser-webpack-plugin": "5.3.10",
|
|
"ts-node": "10.9.2",
|
|
"typescript": "5.6.3",
|
|
"wait-on": "8.0.1",
|
|
"webpack": "5.96.1",
|
|
"webpack-cli": "5.1.4",
|
|
"webpack-dev-server": "5.1.0"
|
|
},
|
|
"pnpm": {
|
|
"overrides": {
|
|
"@storybook/core>node-fetch": "$node-fetch",
|
|
"eslint-config-airbnb-typescript-prettier>eslint-plugin-prettier": "5.2.1",
|
|
"canvas": "-",
|
|
"jsdom": "-",
|
|
"thenify-all>thenify": "3.3.1",
|
|
"@electron/rebuild@3.7.2>@electron/node-gyp": "10.2.0-electron.2"
|
|
},
|
|
"patchedDependencies": {
|
|
"casual@1.6.2": "patches/casual+1.6.2.patch",
|
|
"protobufjs@7.3.2": "patches/protobufjs+7.3.2.patch",
|
|
"@types/express@4.17.21": "patches/@types+express+4.17.21.patch",
|
|
"protobufjs-cli@1.1.1": "patches/protobufjs-cli+1.1.1.patch",
|
|
"@types/fabric@4.5.3": "patches/@types+fabric+4.5.3.patch",
|
|
"qrcode-generator@1.4.4": "patches/qrcode-generator+1.4.4.patch",
|
|
"@types/node-fetch@2.6.12": "patches/@types+node-fetch+2.6.12.patch",
|
|
"fabric@4.6.0": "patches/fabric+4.6.0.patch",
|
|
"@vitest/expect@2.0.5": "patches/@vitest+expect+2.0.5.patch",
|
|
"got@11.8.5": "patches/got+11.8.5.patch",
|
|
"growing-file@0.1.3": "patches/growing-file+0.1.3.patch",
|
|
"websocket@1.0.34": "patches/websocket+1.0.34.patch",
|
|
"@types/websocket@1.0.0": "patches/@types+websocket+1.0.0.patch",
|
|
"node-fetch@2.6.7": "patches/node-fetch+2.6.7.patch",
|
|
"zod@3.23.8": "patches/zod+3.23.8.patch",
|
|
"app-builder-lib": "patches/app-builder-lib.patch",
|
|
"dmg-builder": "patches/dmg-builder.patch",
|
|
"eslint-plugin-better-tailwindcss": "patches/eslint-plugin-better-tailwindcss.patch"
|
|
},
|
|
"onlyBuiltDependencies": [
|
|
"@indutny/mac-screen-share",
|
|
"@indutny/simple-windows-notifications",
|
|
"@parcel/watcher",
|
|
"@signalapp/libsignal-client",
|
|
"@signalapp/sqlcipher",
|
|
"@signalapp/ringrtc",
|
|
"@signalapp/windows-ucv",
|
|
"@swc/core",
|
|
"@tailwindcss/oxide",
|
|
"bufferutil",
|
|
"electron",
|
|
"esbuild",
|
|
"fs-xattr",
|
|
"utf-8-validate"
|
|
],
|
|
"ignoredBuiltDependencies": [
|
|
"core-js",
|
|
"electron-winstaller",
|
|
"es5-ext",
|
|
"protobufjs"
|
|
]
|
|
},
|
|
"engines": {
|
|
"node": "22.21.1"
|
|
},
|
|
"build": {
|
|
"appId": "org.whispersystems.signal-desktop",
|
|
"nativeRebuilder": "parallel",
|
|
"mac": {
|
|
"artifactName": "${name}-mac-${arch}-${version}.${ext}",
|
|
"category": "public.app-category.social-networking",
|
|
"darkModeSupport": true,
|
|
"hardenedRuntime": true,
|
|
"entitlements": "./build/entitlements.mac.plist",
|
|
"entitlementsInherit": "./build/entitlements.mac.inherit.plist",
|
|
"icon": "build/icons/mac/icon.icns",
|
|
"publish": [
|
|
{
|
|
"provider": "generic",
|
|
"url": "https://updates.signal.org/desktop"
|
|
}
|
|
],
|
|
"mergeASARs": true,
|
|
"releaseInfo": {
|
|
"vendor": {
|
|
"minOSVersion": "21.0.1"
|
|
}
|
|
},
|
|
"sign": "./ts/scripts/sign-macos.node.js",
|
|
"singleArchFiles": "node_modules/@signalapp/{libsignal-client/prebuilds/**,ringrtc/build/**,sqlcipher/prebuilds/**}",
|
|
"target": [
|
|
{
|
|
"target": "zip",
|
|
"arch": [
|
|
"x64",
|
|
"arm64"
|
|
]
|
|
},
|
|
{
|
|
"target": "dmg",
|
|
"arch": [
|
|
"universal"
|
|
]
|
|
}
|
|
],
|
|
"bundleVersion": "1",
|
|
"extendInfo": {
|
|
"NSAutoFillRequiresTextContentTypeForOneTimeCodeOnMac": true
|
|
}
|
|
},
|
|
"win": {
|
|
"signtoolOptions": {
|
|
"certificateSubjectName": "Signal Messenger, LLC",
|
|
"certificateSha1": "8D5E3CD800736C5E1FE459A1F5AA48287D4F6EC6",
|
|
"publisherName": "Signal Messenger, LLC",
|
|
"sign": "./ts/scripts/sign-windows.node.js",
|
|
"signingHashAlgorithms": [
|
|
"sha256"
|
|
]
|
|
},
|
|
"artifactName": "${name}-win-${arch}-${version}.${ext}",
|
|
"icon": "build/icons/win/icon.ico",
|
|
"publish": [
|
|
{
|
|
"provider": "generic",
|
|
"url": "https://updates.signal.org/desktop"
|
|
}
|
|
],
|
|
"releaseInfo": {
|
|
"vendor": {
|
|
"minOSVersion": "10.0.10240"
|
|
}
|
|
},
|
|
"signExts": [
|
|
".dll",
|
|
".node"
|
|
],
|
|
"target": [
|
|
"nsis"
|
|
],
|
|
"asarUnpack": [
|
|
"build/icons/win/icon.ico"
|
|
]
|
|
},
|
|
"nsis": {
|
|
"deleteAppDataOnUninstall": true,
|
|
"differentialPackage": true,
|
|
"customNsisBinary": {
|
|
"url": "https://updates.signal.org/desktop/nsis/nsis-3.0.4.1.7z",
|
|
"version": "3.0.4.1-signal",
|
|
"checksum": "D6XH03F8A4Vzfjpq6zS9eZYXGXktdoaeQh5QgxAZ01pdts3KaDfMilem0x+HUzn9FpzfpgZrD8MVTcFlcPfcWg=="
|
|
},
|
|
"customNsisResources": {
|
|
"url": "https://updates.signal.org/desktop/nsis/nsis-resources-3.4.1.7z",
|
|
"version": "3.4.1-signal",
|
|
"checksum": "KmySC53iz92XNYVgEy5gc0/cpXiyWsxxOX5UETBAt889TIvsNlUx7uKBxkQVf3D2Ycex0D2IPGjRdGYr1bftrw=="
|
|
}
|
|
},
|
|
"linux": {
|
|
"executableName": "signal-desktop",
|
|
"category": "Network;InstantMessaging;Chat",
|
|
"desktop": {
|
|
"entry": {
|
|
"StartupWMClass": "signal"
|
|
}
|
|
},
|
|
"artifactName": "${name}_${version}_${arch}.${ext}",
|
|
"target": [
|
|
"deb"
|
|
],
|
|
"icon": "build/icons/png",
|
|
"publish": [
|
|
{
|
|
"provider": "generic",
|
|
"url": ""
|
|
}
|
|
],
|
|
"extraResources": [
|
|
{
|
|
"from": "build",
|
|
"to": "",
|
|
"filter": [
|
|
"org.signalapp.*.policy"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"deb": {
|
|
"depends": [
|
|
"libnotify4",
|
|
"libxtst6",
|
|
"libnss3",
|
|
"libasound2",
|
|
"libpulse0",
|
|
"libxss1",
|
|
"libc6 (>= 2.31)",
|
|
"libgtk-3-0",
|
|
"libgbm1",
|
|
"libx11-xcb1"
|
|
]
|
|
},
|
|
"protocols": {
|
|
"name": "sgnl-url-scheme",
|
|
"schemes": [
|
|
"sgnl",
|
|
"signalcaptcha"
|
|
]
|
|
},
|
|
"artifactBuildCompleted": "ts/scripts/artifact-build-completed.node.js",
|
|
"afterSign": "ts/scripts/after-sign.node.js",
|
|
"afterPack": "ts/scripts/after-pack.node.js",
|
|
"afterAllArtifactBuild": "ts/scripts/after-all-artifact-build.node.js",
|
|
"asar": {
|
|
"smartUnpack": false
|
|
},
|
|
"asarUnpack": [
|
|
"**/*.node"
|
|
],
|
|
"files": [
|
|
"package.json",
|
|
"config/default.json",
|
|
"config/${env.SIGNAL_ENV}.json",
|
|
"config/local-${env.SIGNAL_ENV}.json",
|
|
"bundles/**",
|
|
"background.html",
|
|
"about.html",
|
|
"screenShare.html",
|
|
"settings.html",
|
|
"permissions_popup.html",
|
|
"calling_tools.html",
|
|
"debug_log.html",
|
|
"loading.html",
|
|
{
|
|
"from": "build/compact-locales",
|
|
"to": "_locales",
|
|
"filter": [
|
|
"**/values.json",
|
|
"keys.json"
|
|
]
|
|
},
|
|
"js/**",
|
|
"libtextsecure/**",
|
|
"ts/**/*.js",
|
|
"ts/*.js",
|
|
"!ts/scripts/**",
|
|
"!build",
|
|
"!ts/{storybook,test-helpers,test-node,test-mock,test-electron}",
|
|
"!**/{tsconfig,bower,component}.json",
|
|
"!**/.{github,husky,grenrc,npmrc,nycrc,taprc,bithoundrc}",
|
|
"!**/.testem.json",
|
|
"!**/.babelrc*",
|
|
"!**/.eslintrc*",
|
|
"!**/.prettier*",
|
|
"!**/.jscs*",
|
|
"!**/*travis*.yml",
|
|
"!**/{CHANGES,TODO,CHANGES.md~,README.md~}",
|
|
"!**/*.stories.js",
|
|
"!**/*.jest.js",
|
|
"!**/*.{bak,bnf,flow,patch,markdown,bnf,mli,ts,map}",
|
|
"!node_modules/intl-tel-input/composer.json",
|
|
"!js/register.js",
|
|
"!fixtures",
|
|
"stylesheets/*.css",
|
|
"app/*",
|
|
"!app/*.ts",
|
|
"preload.bundle.js",
|
|
"preload.wrapper.js",
|
|
"preload.bundle.cache",
|
|
"preload_utils.js",
|
|
"main.js",
|
|
"images/**",
|
|
"fonts/**",
|
|
"sounds/*",
|
|
"build/icons",
|
|
"build/available-locales.json",
|
|
"build/locale-display-names.json",
|
|
"build/country-display-names.json",
|
|
"build/dns-fallback.json",
|
|
"build/optional-resources.json",
|
|
"build/jumbomoji.json",
|
|
"node_modules/**",
|
|
"!node_modules/underscore/**",
|
|
"!node_modules/emoji-datasource/emoji_pretty.json",
|
|
"!node_modules/emoji-datasource/img/**/*.png",
|
|
"node_modules/emoji-datasource/categories.json",
|
|
"node_modules/emoji-datasource/emoji.json",
|
|
"!node_modules/emoji-datasource-apple/**",
|
|
"!node_modules/@formatjs/intl-displaynames/**/*",
|
|
"!node_modules/@formatjs/intl-listformat/**/*",
|
|
"!**/node_modules/*/{CHANGELOG.md,README.md,README,readme.md,readme,test,__tests__,tests,powered-test,example,examples,*.d.ts,*.d.ts.map,*.js.map,*.gypi,.snyk-*.flag,benchmark}",
|
|
"!**/node_modules/.bin",
|
|
"!**/node_modules/**/build/**",
|
|
"node_modules/intl-tel-input/build/**",
|
|
"!**/node_modules/**/prebuilds/**",
|
|
"!**/*.{o,hprof,orig,pyc,pyo,rbc,c,h,m}",
|
|
"!**/._*",
|
|
"!**/{.DS_Store,.git,.hg,.svn,CVS,RCS,SCCS,__pycache__,thumbs.db,.gitignore,.gitattributes,.flowconfig,.yarn-metadata.json,.idea,appveyor.yml,.travis.yml,circle.yml,npm-debug.log,.nyc_output,yarn.lock,.yarn-integrity}",
|
|
"node_modules/websocket/build/Release/*.node",
|
|
"!node_modules/websocket/builderror.log",
|
|
"node_modules/socks/build/*.js",
|
|
"node_modules/socks/build/common/*.js",
|
|
"node_modules/socks/build/client/*.js",
|
|
"node_modules/smart-buffer/build/*.js",
|
|
"node_modules/@signalapp/sqlcipher/prebuilds/${platform}-${arch}/*.node",
|
|
"node_modules/@signalapp/libsignal-client/prebuilds/${platform}-${arch}/*.node",
|
|
"!node_modules/@signalapp/ringrtc/scripts/*",
|
|
"node_modules/@signalapp/ringrtc/build/${platform}/*${arch}*.node",
|
|
"node_modules/@signalapp/windows-ucv/build/Release/*.node",
|
|
"node_modules/@signalapp/mute-state-change/build/Release/*.node",
|
|
"node_modules/@signalapp/mute-state-change/build/Release/*.mm",
|
|
"node_modules/@indutny/simple-windows-notifications/prebuilds/${platform}-${arch}/*.node",
|
|
"node_modules/@indutny/mac-screen-share/build/Release/*.node",
|
|
"node_modules/fs-xattr/build/Release/*.node",
|
|
"!node_modules/@indutny/simple-windows-notifications/*.cpp",
|
|
"!node_modules/@indutny/mac-screen-share/*.{mm,h}",
|
|
"!node_modules/libheif-js/libheif",
|
|
"!node_modules/libheif-js/libheif-wasm/libheif-bundle.mjs",
|
|
"!node_modules/libheif-js/libheif-wasm/*.wasm",
|
|
"!node_modules/@react-aria/**",
|
|
"!node_modules/react-aria-components/**",
|
|
"!node_modules/react-virtualized/**",
|
|
"!node_modules/@react-stately/**",
|
|
"!node_modules/@popperjs/**",
|
|
"!node_modules/@internationalized/**",
|
|
"!node_modules/protobufjs/dist/**",
|
|
"node_modules/protobufjs/dist/minimal/**",
|
|
"!**/node_modules/react-dom/*/*.development.js",
|
|
"!node_modules/mp4box/**",
|
|
"node_modules/mp4box/package.json",
|
|
"node_modules/mp4box/dist/mp4box.all.js",
|
|
"!node_modules/@signalapp/quill-cjs/**",
|
|
"node_modules/@signalapp/quill-cjs/dist/*.css",
|
|
"!node_modules/node_modules/fabric/src/**",
|
|
"!node_modules/react-blurhash/docs/**",
|
|
"!node_modules/framer-motion/**",
|
|
"!node_modules/intl-tel-input/**",
|
|
"!node_modules/@motionone/**",
|
|
"!node_modules/@swc/**",
|
|
"!node_modules/@react-spring/**",
|
|
"!node_modules/@babel/**",
|
|
"!node_modules/.cache",
|
|
"sticker-creator/dist/**"
|
|
]
|
|
},
|
|
"volta": {
|
|
"node": "22.21.1"
|
|
}
|
|
}
|