From e12325e23f76536020b30541a29500d48bee973d Mon Sep 17 00:00:00 2001 From: Simon Hofmann Date: Tue, 8 Nov 2022 11:10:49 +0100 Subject: [PATCH 1/2] (#141) Switch to using @nut-tree/node-mac-permissions for universal binaries to support both x64 and Apple Silicon --- package-lock.json | 63 ++++++++++++++++++++--------------------------- package.json | 2 +- 2 files changed, 28 insertions(+), 37 deletions(-) diff --git a/package-lock.json b/package-lock.json index 48f3f33..196ee12 100644 --- a/package-lock.json +++ b/package-lock.json @@ -20,11 +20,26 @@ "dependencies": { "bindings": "1.5.0", "cmake-js": "6.1.0", - "node-addon-api": "5.0.0", - "node-mac-permissions": "2.2.1" + "node-addon-api": "5.0.0" }, "engines": { "node": ">=10.15.3" + }, + "optionalDependencies": { + "@nut-tree/node-mac-permissions": "2.2.1" + } + }, + "node_modules/@nut-tree/node-mac-permissions": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@nut-tree/node-mac-permissions/-/node-mac-permissions-2.2.1.tgz", + "integrity": "sha512-yoijwCqt2yS9UFTv7THGUwZgy2D2TorN703QpYNOergbTJ6vEmeG379pIZDfBuvf56n24RMzKJVoSqr9WIq/Yw==", + "optional": true, + "os": [ + "darwin" + ], + "dependencies": { + "bindings": "1.5.0", + "node-addon-api": "5.0.0" } }, "node_modules/ajv": { @@ -785,24 +800,6 @@ "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-5.0.0.tgz", "integrity": "sha512-CvkDw2OEnme7ybCykJpVcKH+uAOLV2qLqiyla128dN9TkEWfrYmxG6C2boDe5KcNQqZF3orkqzGgOMvZ/JNekA==" }, - "node_modules/node-mac-permissions": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/node-mac-permissions/-/node-mac-permissions-2.2.1.tgz", - "integrity": "sha512-lmSuexF/XcAvtanSReDDrr61Bz4FveSmVl1wHY0Be6RV0+QpCK1RMpjWxtKG0ALqX4p+k2cJ/u7GBV8dkUeLeA==", - "hasInstallScript": true, - "os": [ - "darwin" - ], - "dependencies": { - "bindings": "^1.5.0", - "node-addon-api": "^3.0.2" - } - }, - "node_modules/node-mac-permissions/node_modules/node-addon-api": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.2.1.tgz", - "integrity": "sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A==" - }, "node_modules/npmlog": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-1.2.1.tgz", @@ -1297,6 +1294,16 @@ } }, "dependencies": { + "@nut-tree/node-mac-permissions": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@nut-tree/node-mac-permissions/-/node-mac-permissions-2.2.1.tgz", + "integrity": "sha512-yoijwCqt2yS9UFTv7THGUwZgy2D2TorN703QpYNOergbTJ6vEmeG379pIZDfBuvf56n24RMzKJVoSqr9WIq/Yw==", + "optional": true, + "requires": { + "bindings": "1.5.0", + "node-addon-api": "5.0.0" + } + }, "ajv": { "version": "6.12.6", "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", @@ -1942,22 +1949,6 @@ "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-5.0.0.tgz", "integrity": "sha512-CvkDw2OEnme7ybCykJpVcKH+uAOLV2qLqiyla128dN9TkEWfrYmxG6C2boDe5KcNQqZF3orkqzGgOMvZ/JNekA==" }, - "node-mac-permissions": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/node-mac-permissions/-/node-mac-permissions-2.2.1.tgz", - "integrity": "sha512-lmSuexF/XcAvtanSReDDrr61Bz4FveSmVl1wHY0Be6RV0+QpCK1RMpjWxtKG0ALqX4p+k2cJ/u7GBV8dkUeLeA==", - "requires": { - "bindings": "^1.5.0", - "node-addon-api": "^3.0.2" - }, - "dependencies": { - "node-addon-api": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.2.1.tgz", - "integrity": "sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A==" - } - } - }, "npmlog": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-1.2.1.tgz", diff --git a/package.json b/package.json index ae05738..02d45ab 100644 --- a/package.json +++ b/package.json @@ -40,7 +40,7 @@ "node-addon-api": "5.0.0" }, "optionalDependencies": { - "node-mac-permissions": "2.2.1" + "@nut-tree/node-mac-permissions": "2.2.1" }, "engines": { "node": ">=10.15.3" From 27934c8d3d8c78fc83119f42f3906afbb5f3256c Mon Sep 17 00:00:00 2001 From: Simon Hofmann Date: Tue, 8 Nov 2022 11:11:20 +0100 Subject: [PATCH 2/2] (#141) Change package import for @nut-tree/node-mac-permissions, adjust message for screen capture --- permissionCheck.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/permissionCheck.js b/permissionCheck.js index a7d17a6..5a49a54 100644 --- a/permissionCheck.js +++ b/permissionCheck.js @@ -1,7 +1,7 @@ const libnut = require("bindings")("libnut"); try { - const permissions = require("node-mac-permissions"); + const permissions = require("@nut-tree/node-mac-permissions"); const wrapWithWarning = (message, nativeFunction) => (...args) => { console.warn(message); @@ -31,7 +31,7 @@ try { return nativeFunction; } else if (screenCaptureStatus === 'not determined' || screenCaptureStatus === 'denied') { permissions.askForScreenCaptureAccess(); - return wrapWithWarning(`##### WARNING! The application running this script tries to access accessibility features to execute ${functionName}! Please grant the requested access and visit https://github.com/nut-tree/nut.js#macos for further information. #####`, nativeFunction); + return wrapWithWarning(`##### WARNING! The application running this script tries to screen recording features to execute ${functionName}! Please grant the requested access and visit https://github.com/nut-tree/nut.js#macos for further information. #####`, nativeFunction); } } @@ -70,4 +70,4 @@ try { console.warn(`Returning original module.`); } finally { module.exports = libnut; -} \ No newline at end of file +}