|
| 1 | +{ |
| 2 | + "$schema": "https://raw.githubusercontent.com/SocketDev/socket-btm/main/packages/build-infra/lib/external-tools-schema.json", |
| 3 | + "description": "External tools required to build + release socket-cli. Wrapped `tools` shape matches the canonical schema every fleet repo now uses. When composite actions or scripts want sha256-verified downloads of pnpm / sfw / zizmor, they read from `config.tools.<name>` in this file.", |
| 4 | + "tools": { |
| 5 | + "git": { |
| 6 | + "description": "Git CLI — checkout, submodule init, tag signing.", |
| 7 | + "version": "2.30+", |
| 8 | + "notes": [ |
| 9 | + "Required: yes (all platforms)", |
| 10 | + "Preinstalled on macOS (Xcode CLT) and most Linux distros", |
| 11 | + "Windows: https://git-scm.com/download/win or via winget/scoop" |
| 12 | + ] |
| 13 | + }, |
| 14 | + "node": { |
| 15 | + "description": "Node.js — runs the SDK and all build scripts.", |
| 16 | + "version": "18.20+", |
| 17 | + "notes": [ |
| 18 | + "Required: yes", |
| 19 | + "package.json engines.node pins the floor (18.20.8); .node-version pins the dev version", |
| 20 | + "Consumers of the built dist/*.mjs don't need Node 25+; that's only for running .mts source natively" |
| 21 | + ] |
| 22 | + }, |
| 23 | + "pnpm": { |
| 24 | + "description": "pnpm — the fleet's package manager.", |
| 25 | + "version": "11.0.0-rc.5", |
| 26 | + "packageManager": "pnpm", |
| 27 | + "repository": "github:pnpm/pnpm", |
| 28 | + "release": "asset", |
| 29 | + "notes": [ |
| 30 | + "Required: yes", |
| 31 | + "Bootstrap locally via `corepack enable pnpm`", |
| 32 | + "CI downloads + sha256-verifies the pinned tarball" |
| 33 | + ], |
| 34 | + "checksums": { |
| 35 | + "darwin-arm64": { |
| 36 | + "asset": "pnpm-darwin-arm64.tar.gz", |
| 37 | + "sha256": "32a50710ccacfdcf14e6d5995d5368298eec913b0ce3903b9e09b6555f06f4e5" |
| 38 | + }, |
| 39 | + "darwin-x64": { |
| 40 | + "asset": "pnpm-darwin-x64.tar.gz", |
| 41 | + "sha256": "71dca33f4275da6b43bf1eb40bdc4d876f59a116716eacbf01079c3d985ff85d" |
| 42 | + }, |
| 43 | + "linux-arm64": { |
| 44 | + "asset": "pnpm-linux-arm64.tar.gz", |
| 45 | + "sha256": "2dd04127ff10b1f9dd20bae248b779c77a8ec67e3afa35e7256e5f94abddd493" |
| 46 | + }, |
| 47 | + "linux-x64": { |
| 48 | + "asset": "pnpm-linux-x64.tar.gz", |
| 49 | + "sha256": "7ebef4b616ba41fb0d54a207b36508fae3346723283a088b43fc1e038ee6fed0" |
| 50 | + }, |
| 51 | + "win-arm64": { |
| 52 | + "asset": "pnpm-win32-arm64.zip", |
| 53 | + "sha256": "e4a39ad4c251db5e34b18b98561ef25bab5506ad65cad2fa3602af58d1972667" |
| 54 | + }, |
| 55 | + "win-x64": { |
| 56 | + "asset": "pnpm-win32-x64.zip", |
| 57 | + "sha256": "147485ae2f38c3d1ccf2f5db00d0244416bcd22b9114c02388e6a78f41538fc4" |
| 58 | + } |
| 59 | + } |
| 60 | + }, |
| 61 | + "gh": { |
| 62 | + "description": "GitHub CLI — workflow dispatch, release downloads, PR creation.", |
| 63 | + "version": "2.63+", |
| 64 | + "notes": [ |
| 65 | + "Required: only in workflows that call `gh api` / `gh pr create`", |
| 66 | + "Preinstalled on GitHub-hosted runners", |
| 67 | + "Local: `brew install gh` / `winget install gh` / `apt install gh`" |
| 68 | + ] |
| 69 | + }, |
| 70 | + "zizmor": { |
| 71 | + "description": "GitHub Actions security linter — audits .github/ for workflow-injection / credential-leak patterns.", |
| 72 | + "version": "1.23.1", |
| 73 | + "repository": "github:zizmorcore/zizmor", |
| 74 | + "release": "asset", |
| 75 | + "notes": [ |
| 76 | + "Used by the setup-and-install composite action", |
| 77 | + "Blocks merges on medium+ findings" |
| 78 | + ], |
| 79 | + "checksums": { |
| 80 | + "darwin-arm64": { |
| 81 | + "asset": "zizmor-aarch64-apple-darwin.tar.gz", |
| 82 | + "sha256": "2632561b974c69f952258c1ab4b7432d5c7f92e555704155c3ac28a2910bd717" |
| 83 | + }, |
| 84 | + "darwin-x64": { |
| 85 | + "asset": "zizmor-x86_64-apple-darwin.tar.gz", |
| 86 | + "sha256": "89d5ed42081dd9d0433a10b7545fac42b35f1f030885c278b9712b32c66f2597" |
| 87 | + }, |
| 88 | + "linux-arm64": { |
| 89 | + "asset": "zizmor-aarch64-unknown-linux-gnu.tar.gz", |
| 90 | + "sha256": "3725d7cd7102e4d70827186389f7d5930b6878232930d0a3eb058d7e5b47e658" |
| 91 | + }, |
| 92 | + "linux-x64": { |
| 93 | + "asset": "zizmor-x86_64-unknown-linux-gnu.tar.gz", |
| 94 | + "sha256": "67a8df0a14352dd81882e14876653d097b99b0f4f6b6fe798edc0320cff27aff" |
| 95 | + }, |
| 96 | + "win-x64": { |
| 97 | + "asset": "zizmor-x86_64-pc-windows-msvc.zip", |
| 98 | + "sha256": "33c2293ff02834720dd7cd8b47348aafb2e95a19bdc993c0ecaca9c804ade92a" |
| 99 | + } |
| 100 | + } |
| 101 | + }, |
| 102 | + "sfw-free": { |
| 103 | + "description": "Socket Firewall (free tier) — malware gate on dep installs.", |
| 104 | + "version": "1.7.2", |
| 105 | + "repository": "github:SocketDev/sfw-free", |
| 106 | + "release": "asset", |
| 107 | + "notes": [ |
| 108 | + "Used when SOCKET_API_KEY is not set", |
| 109 | + "Shims npm/yarn/pnpm so every install call passes through the firewall" |
| 110 | + ], |
| 111 | + "checksums": { |
| 112 | + "darwin-arm64": { |
| 113 | + "asset": "sfw-free-macos-arm64", |
| 114 | + "sha256": "248fb588e1e1a27e7192f7b079f739fc29a9de61f0bad7e90928363022dc5643" |
| 115 | + }, |
| 116 | + "darwin-x64": { |
| 117 | + "asset": "sfw-free-macos-x86_64", |
| 118 | + "sha256": "a5427d479d440f08e3789fa191ba57599be64997196daf42e67d964fec0382b4" |
| 119 | + }, |
| 120 | + "linux-arm64": { |
| 121 | + "asset": "sfw-free-linux-arm64", |
| 122 | + "sha256": "84a045e4e1bb320cc5c0d3929f02e53f199398b5be0637e8846d02d9ef0027b1" |
| 123 | + }, |
| 124 | + "linux-x64": { |
| 125 | + "asset": "sfw-free-linux-x86_64", |
| 126 | + "sha256": "93e2d9dfa244b82a74e014dc26b1c6af18b4adec20f35254378943db5fe91411" |
| 127 | + }, |
| 128 | + "win-x64": { |
| 129 | + "asset": "sfw-free-windows-x86_64.exe", |
| 130 | + "sha256": "6d333b4cac9d7c5712e2e99677ca634ac8a3020d550c6308312c60bea97f0a28" |
| 131 | + } |
| 132 | + } |
| 133 | + }, |
| 134 | + "sfw-enterprise": { |
| 135 | + "description": "Socket Firewall (enterprise tier) — selected when SOCKET_API_KEY is set.", |
| 136 | + "version": "1.7.2", |
| 137 | + "repository": "github:SocketDev/firewall-release", |
| 138 | + "release": "asset", |
| 139 | + "notes": [ |
| 140 | + "Used when SOCKET_API_KEY is set (e.g. via repo secrets in CI)", |
| 141 | + "Same shims as sfw-free, broader ecosystem support" |
| 142 | + ], |
| 143 | + "checksums": { |
| 144 | + "darwin-arm64": { |
| 145 | + "asset": "sfw-macos-arm64", |
| 146 | + "sha256": "b1cdc3bdbd2a3161247bd5cc215eb3c44a90b87fe0b800a33889a14f61bb0d6d" |
| 147 | + }, |
| 148 | + "darwin-x64": { |
| 149 | + "asset": "sfw-macos-x86_64", |
| 150 | + "sha256": "da252d2a9a5d0edb271bb771e0d01b9cd6fa1635b6d765f61efd61edb6739f12" |
| 151 | + }, |
| 152 | + "linux-arm64": { |
| 153 | + "asset": "sfw-linux-arm64", |
| 154 | + "sha256": "c24a79c27e1a01a59b7a160c165930ae029816c72b141fcfcdb2f73e0774898a" |
| 155 | + }, |
| 156 | + "linux-x64": { |
| 157 | + "asset": "sfw-linux-x86_64", |
| 158 | + "sha256": "4482b52e6367bd4610519bfd57a104d5907ec87d5399142ed3bb3d222de1f33d" |
| 159 | + }, |
| 160 | + "win-x64": { |
| 161 | + "asset": "sfw-windows-x86_64.exe", |
| 162 | + "sha256": "e52ad806a1c41b440f04098eb1c7e407845f03f5740a6a79006ba6fd172056ec" |
| 163 | + } |
| 164 | + } |
| 165 | + } |
| 166 | + } |
| 167 | +} |
0 commit comments