UNPKG

cnpmcore

Version:
907 lines 60.5 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const Binary_1 = require("../app/common/enum/Binary"); const binaries = { // NwjsBinary nwjs: { category: 'nwjs', description: 'NW.js (previously known as node-webkit) lets you call all Node.js modules directly from DOM and enables a new way of writing applications with all Web technologies.', type: Binary_1.BinaryType.Nwjs, repo: 'nwjs/nw.js', distUrl: 'https://dl.nwjs.io/', }, // NodeBinary node: { category: 'node', description: 'Node.js® is a JavaScript runtime built on Chrome\'s V8 JavaScript engine.', type: Binary_1.BinaryType.Node, repo: 'nodejs/node', distUrl: 'https://nodejs.org/dist', }, 'node-rc': { category: 'node-rc', description: 'Node.js Release Candidate', type: Binary_1.BinaryType.Node, repo: 'nodejs/node', distUrl: 'https://nodejs.org/download/rc', }, 'node-nightly': { category: 'node-nightly', description: 'Node.js Nightly Build', type: Binary_1.BinaryType.Node, repo: 'nodejs/node', distUrl: 'https://nodejs.org/download/nightly', }, 'node-unofficial-builds': { category: 'node-unofficial-builds', description: 'Node.js unofficial-builds project https://unofficial-builds.nodejs.org/', type: Binary_1.BinaryType.Node, repo: 'nodejs/unofficial-builds', distUrl: 'https://unofficial-builds.nodejs.org/download/release', }, alinode: { category: 'alinode', description: 'Node.js 性能平台(Node.js Performance Platform)是面向中大型 Node.js 应用提供性能监控、安全提醒、故障排查、性能优化等服务的整体性解决方案。凭借对 Node.js 内核深入的理解,我们提供完善的工具链和服务,协助客户主动、快速发现和定位线上问题。', type: Binary_1.BinaryType.Node, repo: '', distUrl: 'http://alinode.aliyun.com/dist/new-alinode', }, python: { category: 'python', description: 'The Python programming language https://www.python.org/', type: Binary_1.BinaryType.Node, repo: 'python/cpython', distUrl: 'https://www.python.org/ftp/python', ignoreFiles: [ '/src/Python-1.6.tar.gz', ], options: { // https://www.python.org/ftp/python/3.9.14/Python-3.9.14.tar.xz.sig status(403) ignoreDownloadStatuses: [403], }, }, // CypressBinary cypress: { category: 'cypress', description: 'Fast, easy and reliable testing for anything that runs in a browser.', type: Binary_1.BinaryType.Cypress, repo: 'cypress-io/cypress', distUrl: 'https://www.cypress.io/', }, // SqlcipherBinary '@journeyapps/sqlcipher': { category: '@journeyapps/sqlcipher', description: 'SQLCipher bindings for Node', type: Binary_1.BinaryType.Sqlcipher, repo: 'journeyapps/node-sqlcipher', distUrl: 'https://journeyapps-node-binary.s3.amazonaws.com', }, // puppeteer binary 'chromium-browser-snapshots': { category: 'chromium-browser-snapshots', description: 'chromium-browser-snapshots sync for puppeteer', type: Binary_1.BinaryType.Puppeteer, repo: 'puppeteer/puppeteer', distUrl: 'https://chromium-browser-snapshots.storage.googleapis.com/?delimiter=/&prefix=', }, // ChromeBinary 'chrome-for-testing': { category: 'chrome-for-testing', description: 'chrome-for-testing for puppeteer', type: Binary_1.BinaryType.ChromeForTesting, repo: 'puppeteer/puppeteer', distUrl: 'https://edgedl.me.gvt1.com/edgedl/chrome/chrome-for-testing/', }, // NodePreGypBinary 'grpc-tools': { category: 'grpc-tools', description: 'Tools for developing with gRPC on Node.js', type: Binary_1.BinaryType.NodePreGyp, repo: 'https://github.com/grpc/grpc-node/blob/master/packages/grpc-tools/', distUrl: 'https://node-precompiled-binaries.grpc.io', }, grpc: { category: 'grpc', description: 'gRPC Library for Node', type: Binary_1.BinaryType.NodePreGyp, repo: 'grpc/grpc-node', distUrl: 'https://node-precompiled-binaries.grpc.io', }, 'skia-canvas': { category: 'skia-canvas', description: 'A canvas environment for Node', type: Binary_1.BinaryType.NodePreGyp, repo: 'samizdatco/skia-canvas', distUrl: 'https://skia-canvas.s3.us-east-1.amazonaws.com', options: { requiredNapiVersions: true, }, }, wrtc: { category: 'wrtc', description: 'node-webrtc is a Node.js Native Addon that provides bindings to WebRTC M87.', type: Binary_1.BinaryType.NodePreGyp, repo: 'node-webrtc/node-webrtc', distUrl: 'https://node-webrtc.s3.amazonaws.com', }, nodegit: { category: 'nodegit', description: 'Native Node bindings to Git.', type: Binary_1.BinaryType.NodePreGyp, repo: 'nodegit/nodegit', distUrl: 'https://axonodegit.s3.amazonaws.com/nodegit', options: { nodeArchs: { linux: ['x64'], darwin: ['x64'], // https://github.com/nodegit/nodegit/blob/master/.github/workflows/tests.yml#L141 win32: ['x64', 'ia32'], }, }, // don't sync it for now disable: true, }, // BucketBinary chromedriver: { category: 'chromedriver', description: 'WebDriver is an open source tool for automated testing of webapps across many browsers', type: Binary_1.BinaryType.Bucket, repo: 'https://chromedriver.chromium.org/contributing', distUrl: 'https://chromedriver.storage.googleapis.com/', }, selenium: { category: 'selenium', description: 'Selenium automates browsers. That\'s it!', type: Binary_1.BinaryType.Bucket, repo: 'https://www.selenium.dev/', distUrl: 'https://selenium-release.storage.googleapis.com/', }, 'node-inspector': { category: 'node-inspector', description: 'Node.js debugger based on Blink Developer Tools', type: Binary_1.BinaryType.Bucket, repo: 'node-inspector/node-inspector', distUrl: 'https://node-inspector.s3.amazonaws.com/', ignoreDirs: [ '/AWSLogs/', ], }, fsevents: { category: 'fsevents', description: 'Native access to MacOS FSEvents in Node.js', type: Binary_1.BinaryType.Bucket, repo: 'fsevents/fsevents', distUrl: 'https://fsevents-binaries.s3-us-west-2.amazonaws.com/', }, 'tfjs-models': { category: 'tfjs-models', description: 'Pretrained models for TensorFlow.js', type: Binary_1.BinaryType.Bucket, repo: 'tensorflow/tfjs-models', distUrl: 'https://tfjs-models.storage.googleapis.com/', }, tensorflow: { category: 'tensorflow', description: 'A WebGL accelerated JavaScript library for training and deploying ML models.', type: Binary_1.BinaryType.Bucket, repo: 'tensorflow/tfjs', distUrl: 'https://tensorflow.storage.googleapis.com/', }, 'tf-builds': { category: 'tf-builds', description: 'A WebGL accelerated JavaScript library for training and deploying ML models.', type: Binary_1.BinaryType.Bucket, repo: 'tensorflow/tfjs', distUrl: 'https://tf-builds.storage.googleapis.com/', }, prisma: { category: 'prisma', description: 'Next-generation Node.js and TypeScript ORM https://www.prisma.io/', type: Binary_1.BinaryType.Prisma, repo: 'prisma/prisma', distUrl: 'https://list-binaries.prisma-orm.workers.dev/', }, // ImageminBinary 'jpegtran-bin': { category: 'jpegtran-bin', description: 'jpegtran bin-wrapper that makes it seamlessly available as a local dependency', type: Binary_1.BinaryType.Imagemin, repo: 'imagemin/jpegtran-bin', distUrl: 'https://raw.githubusercontent.com', options: { // https://github.com/imagemin/jpegtran-bin/blob/v4.0.0/lib/index.js nodePlatforms: ['macos', 'linux', 'freebsd', 'sunos', 'win'], nodeArchs: { macos: [], linux: ['x86', 'x64'], freebsd: ['x86', 'x64'], sunos: ['x86', 'x64'], win: ['x86', 'x64'], }, binFiles: { macos: ['jpegtran'], linux: ['jpegtran'], freebsd: ['jpegtran'], sunos: ['jpegtran'], win: ['jpegtran.exe', 'libjpeg-62.dll'], }, }, }, 'pngquant-bin': { category: 'pngquant-bin', description: 'pngquant bin-wrapper that makes it seamlessly available as a local dependency', type: Binary_1.BinaryType.Imagemin, repo: 'imagemin/pngquant-bin', distUrl: 'https://raw.githubusercontent.com', options: { // https://github.com/imagemin/pngquant-bin/blob/v4.0.0/lib/index.js nodePlatforms: ['macos', 'linux', 'freebsd', 'win'], nodeArchs: { macos: [], linux: ['x86', 'x64'], freebsd: ['x64'], win: [], }, binFiles: { macos: ['pngquant'], linux: ['pngquant'], freebsd: ['pngquant'], win: ['pngquant.exe'], }, }, }, 'mozjpeg-bin': { category: 'mozjpeg-bin', description: 'mozjpeg bin-wrapper that makes it seamlessly available as a local dependency', type: Binary_1.BinaryType.Imagemin, repo: 'imagemin/mozjpeg-bin', distUrl: 'https://raw.githubusercontent.com', options: { // should use https://www.npmjs.com/package/mozjpeg npmPackageName: 'mozjpeg', // https://github.com/imagemin/mozjpeg-bin/blob/v4.0.0/lib/index.js // https://github.com/imagemin/mozjpeg-bin/blob/v5.0.0/lib/index.js nodePlatforms: ['osx', 'macos', 'linux', 'win'], nodeArchs: { osx: [], macos: [], linux: [], win: [], }, binFiles: { osx: ['cjpeg'], macos: ['cjpeg'], linux: ['cjpeg'], win: ['cjpeg.exe'], }, }, }, 'gifsicle-bin': { category: 'gifsicle-bin', description: 'gifsicle bin-wrapper that makes it seamlessly available as a local dependency', type: Binary_1.BinaryType.Imagemin, repo: 'imagemin/gifsicle-bin', distUrl: 'https://raw.githubusercontent.com', options: { // should use https://www.npmjs.com/package/gifsicle npmPackageName: 'gifsicle', // https://github.com/imagemin/gifsicle-bin/blob/v4.0.0/lib/index.js // https://github.com/imagemin/gifsicle-bin/blob/v5.0.0/lib/index.js nodePlatforms: ['macos', 'linux', 'freebsd', 'win'], nodeArchs: { macos: [], linux: ['x86', 'x64'], freebsd: ['x86', 'x64'], win: ['x86', 'x64'], }, binFiles: { macos: ['gifsicle'], linux: ['gifsicle'], freebsd: ['gifsicle'], win: ['gifsicle.exe'], }, }, }, 'optipng-bin': { category: 'optipng-bin', description: 'optipng bin-wrapper that makes it seamlessly available as a local dependency', type: Binary_1.BinaryType.Imagemin, repo: 'imagemin/optipng-bin', distUrl: 'https://raw.githubusercontent.com', options: { // https://github.com/imagemin/optipng-bin/blob/v4.0.0/lib/index.js // https://github.com/imagemin/optipng-bin/blob/v5.0.0/lib/index.js nodePlatforms: ['macos', 'linux', 'freebsd', 'sunos', 'win'], nodeArchs: { macos: [], linux: ['x86', 'x64'], freebsd: ['x86', 'x64'], sunos: ['x86', 'x64'], win: [], }, binFiles: { macos: ['optipng'], linux: ['optipng'], freebsd: ['optipng'], sunos: ['optipng'], win: ['optipng.exe'], }, }, }, 'zopflipng-bin': { category: 'zopflipng-bin', description: 'zopflipng bin-wrapper that makes it seamlessly available as a local dependency', type: Binary_1.BinaryType.Imagemin, repo: 'imagemin/zopflipng-bin', distUrl: 'https://raw.githubusercontent.com', options: { // https://github.com/imagemin/zopflipng-bin/blob/v4.0.0/lib/index.js // https://github.com/imagemin/zopflipng-bin/blob/v5.0.0/lib/index.js nodePlatforms: ['osx', 'linux', 'win32'], nodeArchs: { osx: [], linux: [], win32: [], }, binFiles: { osx: ['zopflipng'], linux: ['zopflipng'], win32: ['zopflipng.exe'], }, }, }, 'jpegoptim-bin': { category: 'jpegoptim-bin', description: 'jpegoptim bin-wrapper that makes it seamlessly available as a local dependency', type: Binary_1.BinaryType.Imagemin, repo: 'imagemin/jpegoptim-bin', distUrl: 'https://raw.githubusercontent.com', options: { // https://github.com/imagemin/jpegoptim-bin/blob/v4.0.0/lib/index.js // https://github.com/imagemin/jpegoptim-bin/blob/v5.0.0/lib/index.js nodePlatforms: ['osx', 'linux', 'win32'], nodeArchs: { osx: [], linux: [], win32: [], }, binFiles: { osx: ['jpegoptim'], linux: ['jpegoptim'], win32: ['jpegoptim.exe'], }, }, }, 'jpeg-recompress-bin': { category: 'jpeg-recompress-bin', description: 'jpeg-recompress bin-wrapper that makes it seamlessly available as a local dependency', type: Binary_1.BinaryType.Imagemin, repo: 'imagemin/jpeg-recompress-bin', distUrl: 'https://raw.githubusercontent.com', options: { // https://github.com/imagemin/jpeg-recompress-bin/blob/v4.0.0/lib/index.js // https://github.com/imagemin/jpeg-recompress-bin/blob/v5.0.0/lib/index.js nodePlatforms: ['osx', 'linux', 'win'], nodeArchs: { osx: [], linux: [], win: [], }, binFiles: { osx: ['jpeg-recompress'], linux: ['jpeg-recompress'], win: ['jpeg-recompress.exe'], }, }, }, 'pngcrush-bin': { category: 'pngcrush-bin', description: 'pngcrush bin-wrapper that makes it seamlessly available as a local dependency', type: Binary_1.BinaryType.Imagemin, repo: 'imagemin/pngcrush-bin', distUrl: 'https://raw.githubusercontent.com', options: { // https://github.com/imagemin/pngcruss-bin/blob/v4.0.0/lib/index.js // https://github.com/imagemin/pngcrush-bin/blob/v5.0.0/lib/index.js nodePlatforms: ['osx', 'linux', 'win'], nodeArchs: { osx: [], linux: [], win: ['x64', 'x86'], }, binFiles: { osx: ['pngcrush'], linux: ['pngcrush'], win: ['pngcrush.exe'], }, }, }, 'pngout-bin': { category: 'pngout-bin', description: 'pngout bin-wrapper that makes it seamlessly available as a local dependency', type: Binary_1.BinaryType.Imagemin, repo: 'imagemin/pngout-bin', distUrl: 'https://raw.githubusercontent.com', options: { // https://github.com/imagemin/pngout-bin/blob/v4.0.0/lib/index.js // https://github.com/imagemin/pngout-bin/blob/v5.0.0/lib/index.js nodePlatforms: ['osx', 'linux', 'freebsd', 'win32'], nodeArchs: { osx: [], linux: ['x64', 'x86'], freebsd: ['x64', 'x86'], win32: [], }, binFiles: { osx: ['pngcrush'], linux: ['pngcrush'], freebsd: ['pngout'], win32: ['pngcrush.exe'], }, }, }, 'gif2webp-bin': { category: 'gif2webp-bin', description: 'gif2webp bin-wrapper that makes it seamlessly available as a local dependency', type: Binary_1.BinaryType.Imagemin, repo: 'imagemin/gif2webp-bin', distUrl: 'https://raw.githubusercontent.com', options: { // https://github.com/imagemin/gif2webp-bin/blob/v4.0.0/lib/index.js nodePlatforms: ['macos', 'linux', 'win'], nodeArchs: { macos: [], linux: [], win: [], }, binFiles: { macos: ['gif2webp'], linux: ['gif2webp'], win: ['gif2webp.exe'], }, }, }, 'guetzli-bin': { category: 'guetzli-bin', description: 'guetzli bin-wrapper that makes it seamlessly available as a local dependency', type: Binary_1.BinaryType.Imagemin, repo: 'imagemin/guetzli-bin', distUrl: 'https://raw.githubusercontent.com', options: { // should use https://www.npmjs.com/package/guetzli npmPackageName: 'guetzli', // https://github.com/imagemin/guetzli-bin/blob/v4.0.0/lib/index.js nodePlatforms: ['macos', 'linux', 'win'], nodeArchs: { macos: [], linux: [], win: [], }, binFiles: { macos: ['guetzli'], linux: ['guetzli'], win: ['guetzli.exe'], }, }, }, 'advpng-bin': { category: 'advpng-bin', description: 'advpng bin-wrapper that makes it seamlessly available as a local dependency', type: Binary_1.BinaryType.Imagemin, repo: 'imagemin/advpng-bin', distUrl: 'https://raw.githubusercontent.com', options: { // https://github.com/imagemin/advpng-bin/blob/v4.0.0/lib/index.js nodePlatforms: ['osx', 'linux', 'win32'], nodeArchs: { osx: [], linux: [], win32: [], }, binFiles: { osx: ['advpng'], linux: ['advpng'], win32: ['advpng.exe'], }, }, }, 'cwebp-bin': { category: 'cwebp-bin', description: 'cwebp bin-wrapper that makes it seamlessly available as a local dependency', type: Binary_1.BinaryType.Imagemin, repo: 'imagemin/cwebp-bin', distUrl: 'https://raw.githubusercontent.com', options: { // https://github.com/imagemin/cwebp-bin/blob/v4.0.0/lib/index.js nodePlatforms: ['osx', 'linux', 'win'], nodeArchs: { osx: [], linux: ['x86', 'x64'], win: ['x86', 'x64'], }, binFiles: { osx: ['cwebp'], linux: ['cwebp'], win: ['cwebp.exe'], }, }, }, // GithubBinary npm: { category: 'npm', description: 'the package manager for JavaScript', type: Binary_1.BinaryType.GitHub, repo: 'npm/cli', distUrl: 'https://github.com/npm/cli/releases', options: { maxPage: 3, }, }, xprofiler: { category: 'xprofiler', description: '🌀An addon for node.js, which supporting output performance log and real-time profiling through sampling.', type: Binary_1.BinaryType.GitHub, repo: 'X-Profiler/xprofiler', distUrl: 'https://github.com/X-Profiler/xprofiler/releases', }, 'node-sass': { category: 'node-sass', description: '🌈 Node.js bindings to libsass', type: Binary_1.BinaryType.GitHub, repo: 'sass/node-sass', distUrl: 'https://github.com/sass/node-sass/releases', }, 'sass-embedded': { category: 'sass-embedded', description: 'This is a wrapper for Dart Sass that implements the compiler side of the Embedded Sass protocol.', type: Binary_1.BinaryType.GitHub, repo: 'sass/dart-sass-embedded', distUrl: 'https://github.com/sass/dart-sass-embedded/releases', }, electron: { category: 'electron', description: 'Build cross-platform desktop apps with JavaScript, HTML, and CSS', type: Binary_1.BinaryType.Electron, repo: 'electron/electron', distUrl: 'https://github.com/electron/electron/releases', options: { // for sync more old versions maxPage: 1, }, }, 'electron-nightly': { category: 'electron-nightly', description: 'Build cross-platform desktop apps with JavaScript, HTML, and CSS', type: Binary_1.BinaryType.GitHub, repo: 'electron/nightlies', distUrl: 'https://github.com/electron/nightlies/releases', options: { maxPage: 3, }, }, 'electron-builder-binaries': { category: 'electron-builder-binaries', description: 'electron-builder downloads required tools files on demand (e.g. to code sign windows application, to make AppX).', type: Binary_1.BinaryType.GitHub, repo: 'electron-userland/electron-builder-binaries', distUrl: 'https://github.com/electron-userland/electron-builder-binaries/releases', }, 'ffmpeg-static': { category: 'ffmpeg-static', description: 'ffmpeg static binaries for Mac OSX and Linux and Windows', type: Binary_1.BinaryType.GitHub, repo: 'eugeneware/ffmpeg-static', distUrl: 'https://github.com/eugeneware/ffmpeg-static/releases', }, nodejieba: { category: 'nodejieba', description: '"结巴"中文分词的Node.js版本', type: Binary_1.BinaryType.GitHub, repo: 'yanyiwu/nodejieba', distUrl: 'https://github.com/yanyiwu/nodejieba/releases', }, 'git-for-windows': { category: 'git-for-windows', description: 'A fork of Git containing Windows-specific patches.', type: Binary_1.BinaryType.GitHub, repo: 'git-for-windows/git', distUrl: 'https://github.com/git-for-windows/git/releases', }, atom: { category: 'atom', description: 'The hackable text editor', type: Binary_1.BinaryType.GitHub, repo: 'atom/atom', distUrl: 'https://github.com/atom/atom/releases', }, operadriver: { category: 'operadriver', description: 'OperaDriver for Chromium-based Opera releases', type: Binary_1.BinaryType.GitHub, repo: 'operasoftware/operachromiumdriver', distUrl: 'https://github.com/operasoftware/operachromiumdriver/releases', }, geckodriver: { category: 'geckodriver', description: 'WebDriver for Firefox', type: Binary_1.BinaryType.GitHub, repo: 'mozilla/geckodriver', distUrl: 'https://github.com/mozilla/geckodriver/releases', }, leveldown: { category: 'leveldown', description: 'Pure C++ Node.js LevelDB binding. An abstract-leveldown compliant store.', type: Binary_1.BinaryType.GitHub, repo: 'Level/leveldown', distUrl: 'https://github.com/Level/leveldown/releases', }, couchbase: { category: 'couchbase', description: 'Couchbase Node.js Client Library (Official)', type: Binary_1.BinaryType.GitHub, repo: 'couchbase/couchnode', distUrl: 'https://github.com/couchbase/couchnode/releases', }, gl: { category: 'gl', description: '🎃 Windowless WebGL for node.js', type: Binary_1.BinaryType.GitHub, repo: 'stackgl/headless-gl', distUrl: 'https://github.com/stackgl/headless-gl/releases', }, flow: { category: 'flow', description: 'Adds static typing to JavaScript to improve developer productivity and code quality.', type: Binary_1.BinaryType.GitHub, repo: 'facebook/flow', distUrl: 'https://github.com/facebook/flow/releases', }, robotjs: { category: 'robotjs', description: 'Node.js Desktop Automation. http://robotjs.io/', type: Binary_1.BinaryType.GitHub, repo: 'octalmage/robotjs', distUrl: 'https://github.com/octalmage/robotjs/releases', }, poi: { category: 'poi', description: 'Scalable KanColle browser and tool. https://poi.io/', type: Binary_1.BinaryType.GitHub, repo: 'poooi/poi', distUrl: 'https://github.com/poooi/poi/releases', }, 'utf-8-validate': { category: 'utf-8-validate', description: 'Check if a buffer contains valid UTF-8', type: Binary_1.BinaryType.GitHub, repo: 'websockets/utf-8-validate', distUrl: 'https://github.com/websockets/utf-8-validate/releases', }, minikube: { category: 'minikube', description: 'Run Kubernetes locally https://minikube.sigs.k8s.io/', type: Binary_1.BinaryType.GitHub, repo: 'kubernetes/minikube', distUrl: 'https://github.com/kubernetes/minikube/releases', }, 'sentry-cli': { category: 'sentry-cli', description: 'A command line utility to work with Sentry. https://docs.sentry.io/cli/', type: Binary_1.BinaryType.GitHub, repo: 'getsentry/sentry-cli', distUrl: 'https://github.com/getsentry/sentry-cli/releases', }, 'sharp-libvips': { category: 'sharp-libvips', description: 'Packaging scripts to prebuild libvips and its dependencies - you\'re probably looking for https://github.com/lovell/sharp', type: Binary_1.BinaryType.GitHub, repo: 'lovell/sharp-libvips', distUrl: 'https://github.com/lovell/sharp-libvips/releases', }, sharp: { category: 'sharp', description: 'High performance Node.js image processing, the fastest module to resize JPEG, PNG, WebP, AVIF and TIFF images. Uses the libvips library. https://sharp.pixelplumbing.com/', type: Binary_1.BinaryType.GitHub, repo: 'lovell/sharp', distUrl: 'https://github.com/lovell/sharp/releases', }, swc: { category: 'swc', description: 'swc is a super-fast compiler written in rust; producing widely-supported javascript from modern standards and typescript. https://swc.rs/', type: Binary_1.BinaryType.GitHub, repo: 'swc-project/swc', distUrl: 'https://github.com/swc-project/swc/releases', }, 'node-swc': { category: 'node-swc', description: 'Experimental repo to avoid spamming watchers, see https://github.com/swc-project/swc', type: Binary_1.BinaryType.GitHub, repo: 'swc-project/node-swc', distUrl: 'https://github.com/swc-project/node-swc/releases', }, argon2: { category: 'argon2', description: 'Node.js bindings for Argon2 hashing algorithm', type: Binary_1.BinaryType.GitHub, repo: 'ranisalt/node-argon2', distUrl: 'https://github.com/ranisalt/node-argon2/releases', }, iohook: { category: 'iohook', description: 'Node.js global keyboard and mouse listener.', type: Binary_1.BinaryType.GitHub, repo: 'wilix-team/iohook', distUrl: 'https://github.com/wilix-team/iohook/releases', }, saucectl: { category: 'saucectl', description: 'A command line interface to run testrunner tests', type: Binary_1.BinaryType.GitHub, repo: 'saucelabs/saucectl', distUrl: 'https://github.com/saucelabs/saucectl/releases', }, 'node-gdal-async': { category: 'node-gdal-async', description: 'Node.js bindings for GDAL (Geospatial Data Abstraction Library) with full async support. https://mmomtchev.github.io/node-gdal-async/', type: Binary_1.BinaryType.GitHub, repo: 'mmomtchev/node-gdal-async', distUrl: 'https://github.com/mmomtchev/node-gdal-async/releases', }, 'looksgood-s2': { category: 'looksgood-s2', description: 'Node.js JavaScript & TypeScript bindings for Google S2.', type: Binary_1.BinaryType.GitHub, repo: 'looksgood/s2', distUrl: 'https://github.com/looksgood/s2/releases', }, 'ali-zeromq': { category: 'ali-zeromq', description: 'Node.js bindings for zeromq', type: Binary_1.BinaryType.GitHub, repo: 'looksgood/zeromq.js', distUrl: 'https://github.com/looksgood/zeromq.js/releases', }, 'ali-usb_ctl': { category: 'ali-usb_ctl', description: 'Node.js usb control module', type: Binary_1.BinaryType.GitHub, repo: 'looksgood/ali-usb_ctl', distUrl: 'https://github.com/looksgood/ali-usb_ctl/releases', }, 'node-re2': { category: 'node-re2', description: 'node.js bindings for RE2: fast, safe alternative to backtracking regular expression engines.', type: Binary_1.BinaryType.GitHub, repo: 'uhop/node-re2', distUrl: 'https://github.com/uhop/node-re2/releases', }, sqlite3: { category: 'sqlite3', description: 'Asynchronous, non-blocking SQLite3 bindings for Node.js', type: Binary_1.BinaryType.GitHub, repo: 'TryGhost/node-sqlite3', distUrl: 'https://github.com/TryGhost/node-sqlite3/releases', }, 'better-sqlite3': { category: 'better-sqlite3', description: 'AsyncThe fastest and simplest library for SQLite3 in Node.js', type: Binary_1.BinaryType.GitHub, repo: 'WiseLibs/better-sqlite3', distUrl: 'https://github.com/WiseLibs/better-sqlite3/releases', }, keytar: { category: 'keytar', description: 'Native Password Node Module', type: Binary_1.BinaryType.GitHub, repo: 'atom/node-keytar', distUrl: 'https://github.com/atom/node-keytar/releases', }, // PlaywrightBinary playwright: { category: 'playwright', description: 'Playwright is a framework for Web Testing and Automation.', type: Binary_1.BinaryType.Playwright, repo: 'microsoft/playwright', distUrl: 'https://github.com/microsoft/playwright/releases', }, nydus: { category: 'nydus', description: 'the Dragonfly image service, providing fast, secure and easy access to container images.', type: Binary_1.BinaryType.GitHub, repo: 'dragonflyoss/image-service', distUrl: 'https://github.com/dragonflyoss/image-service/releases', }, canvas: { // canvas@<=2.6.1 二进制需要从 node-canvas-prebuilt 下载 category: 'node-canvas-prebuilt', description: 'Node canvas is a Cairo backed Canvas implementation for NodeJS.', type: Binary_1.BinaryType.GitHub, repo: 'Automattic/node-canvas', distUrl: 'https://github.com/Automattic/node-canvas/releases', }, 'canvas-prebuilt': { category: 'canvas-prebuilt', distUrl: 'https://github.com/node-gfx/node-canvas-prebuilt/releases', repo: 'chearon/node-canvas-prebuilt', description: 'Prebuilt versions of node-canvas as a drop-in replacement', type: Binary_1.BinaryType.GitHub, options: { nodeArchs: { linux: ['x64'], darwin: ['x64'], win32: ['x64'], }, }, }, 'node-canvas-prebuilt': { category: 'node-canvas-prebuilt', distUrl: 'https://github.com/node-gfx/node-canvas-prebuilt/releases', repo: 'node-gfx/node-canvas-prebuilt', description: 'Repo used to build binaries for node-canvas on CI', type: Binary_1.BinaryType.GitHub, options: { nodeArchs: { linux: ['x64'], darwin: ['x64'], win32: ['x64'], }, }, }, 'libpg-query-node': { category: 'libpg-query-node', description: 'libpg-query is a real PostgreSQL query parser', type: Binary_1.BinaryType.NodePreGyp, repo: 'pyramation/libpg-query-node', distUrl: 'https://supabase-public-artifacts-bucket.s3.amazonaws.com', options: { npmPackageName: 'libpg-query', }, }, 'fuse-t': { category: 'fuse-t', description: 'FUSE-T is a kext-less implementation of FUSE for macOS that uses NFS v4 local server instead of a kernel extension.', type: Binary_1.BinaryType.GitHub, repo: 'macos-fuse-t/fuse-t', distUrl: 'https://github.com/macos-fuse-t/fuse-t/releases', }, 'ant-design-charts': { category: 'ant-design-charts', description: 'A React Chart Library https://ant-design-charts-next.antgroup.com/', type: Binary_1.BinaryType.GitHub, repo: 'ant-design/ant-design-charts', distUrl: 'https://github.com/ant-design/ant-design-charts/releases', }, 'pkg-fetch': { category: 'pkg-fetch', description: 'pkg-fetch provides prebuilt node binaries used by pkg. yao-pkg/pkg-fetch is currently the most actively maintained fork of vercel/pkg-fetch.', type: Binary_1.BinaryType.GitHub, repo: 'yao-pkg/pkg-fetch', distUrl: 'https://github.com/yao-pkg/pkg-fetch/releases', }, bun: { category: 'bun', description: 'Incredibly fast JavaScript runtime, bundler, test runner, and package manager – all in one', type: Binary_1.BinaryType.GitHub, repo: 'oven-sh/bun', distUrl: 'https://github.com/oven-sh/bun/releases', }, edgedriver: { category: 'edgedriver', description: 'Microsofts\' EdgeDriver', type: Binary_1.BinaryType.Edgedriver, repo: 'webdriverio-community/node-edgedriver', distUrl: 'https://developer.microsoft.com/zh-cn/microsoft-edge/tools/webdriver/', }, 'homebrew-macos-cross-toolchains': { category: 'homebrew-macos-cross-toolchains', description: 'macOS cross compiler toolchains', type: Binary_1.BinaryType.GitHub, repo: 'messense/homebrew-macos-cross-toolchains', distUrl: 'https://github.com/messense/homebrew-macos-cross-toolchains/releases', }, }; const BinaryConfigMap = { ...binaries, }; exports.default = BinaryConfigMap; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmluYXJpZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9jb25maWcvYmluYXJpZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxzREFBdUQ7QUEyQnZELE1BQU0sUUFBUSxHQUFHO0lBQ2YsYUFBYTtJQUNiLElBQUksRUFBRTtRQUNKLFFBQVEsRUFBRSxNQUFNO1FBQ2hCLFdBQVcsRUFBRSxzS0FBc0s7UUFDbkwsSUFBSSxFQUFFLG1CQUFVLENBQUMsSUFBSTtRQUNyQixJQUFJLEVBQUUsWUFBWTtRQUNsQixPQUFPLEVBQUUscUJBQXFCO0tBQy9CO0lBQ0QsYUFBYTtJQUNiLElBQUksRUFBRTtRQUNKLFFBQVEsRUFBRSxNQUFNO1FBQ2hCLFdBQVcsRUFBRSwyRUFBMkU7UUFDeEYsSUFBSSxFQUFFLG1CQUFVLENBQUMsSUFBSTtRQUNyQixJQUFJLEVBQUUsYUFBYTtRQUNuQixPQUFPLEVBQUUseUJBQXlCO0tBQ25DO0lBQ0QsU0FBUyxFQUFFO1FBQ1QsUUFBUSxFQUFFLFNBQVM7UUFDbkIsV0FBVyxFQUFFLDJCQUEyQjtRQUN4QyxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxJQUFJO1FBQ3JCLElBQUksRUFBRSxhQUFhO1FBQ25CLE9BQU8sRUFBRSxnQ0FBZ0M7S0FDMUM7SUFDRCxjQUFjLEVBQUU7UUFDZCxRQUFRLEVBQUUsY0FBYztRQUN4QixXQUFXLEVBQUUsdUJBQXVCO1FBQ3BDLElBQUksRUFBRSxtQkFBVSxDQUFDLElBQUk7UUFDckIsSUFBSSxFQUFFLGFBQWE7UUFDbkIsT0FBTyxFQUFFLHFDQUFxQztLQUMvQztJQUNELHdCQUF3QixFQUFFO1FBQ3hCLFFBQVEsRUFBRSx3QkFBd0I7UUFDbEMsV0FBVyxFQUFFLHlFQUF5RTtRQUN0RixJQUFJLEVBQUUsbUJBQVUsQ0FBQyxJQUFJO1FBQ3JCLElBQUksRUFBRSwwQkFBMEI7UUFDaEMsT0FBTyxFQUFFLHVEQUF1RDtLQUNqRTtJQUNELE9BQU8sRUFBRTtRQUNQLFFBQVEs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