diff options
author | Daniel Peukert | 2023-02-08 23:50:41 +0100 |
---|---|---|
committer | Daniel Peukert | 2023-02-08 23:50:41 +0100 |
commit | bed21a1c8b09dc340a27764bdbd307906660c1bb (patch) | |
tree | 1727b985ec15a85589bcf303e55759969f9767ff | |
parent | deef71ef8a6886cead2c715dfc501f78d1fa9ab3 (diff) | |
download | aur-bed21a1c8b09dc340a27764bdbd307906660c1bb.tar.gz |
Update mongodb-compass-beta to 1.35.1-beta.3, fix argv handling
-rw-r--r-- | .SRCINFO | 15 | ||||
-rw-r--r-- | PKGBUILD | 33 | ||||
-rw-r--r-- | fix-argv.diff | 75 | ||||
-rw-r--r-- | hadron-build.diff | 10 |
4 files changed, 104 insertions, 29 deletions
@@ -1,6 +1,6 @@ pkgbase = mongodb-compass-isolated-beta pkgdesc = The official GUI for MongoDB - Isolated Edition - beta version - pkgver = 1.35.1.beta.1 + pkgver = 1.35.1.beta.3 pkgrel = 1 url = https://www.mongodb.com/products/compass arch = x86_64 @@ -13,17 +13,16 @@ pkgbase = mongodb-compass-isolated-beta makedepends = npm>=8.0.0 makedepends = python makedepends = unzip - makedepends = patchutils - depends = electron15 + depends = electron depends = krb5 depends = libsecret depends = lsb-release optdepends = org.freedesktop.secrets - source = mongodb-compass-isolated-beta-1.35.1.beta.1-1.tar.gz::https://github.com/mongodb-js/compass/archive/v1.35.1-beta.1.tar.gz - source = mongodb-compass-isolated-beta-1.35.1.beta.1-1-browserslist.diff::https://github.com/browserslist/browserslist/pull/378.diff + source = mongodb-compass-isolated-beta-1.35.1.beta.3-1.tar.gz::https://github.com/mongodb-js/compass/archive/v1.35.1-beta.3.tar.gz source = hadron-build.diff - sha512sums = 16e867533b7179be6fb07cb82bcd0e10195d1b0e335e90f1119c173ed527f484051354f770e41d9eeacf73854c345db90cfd801c8dce1ac7623e8fb27e009224 - sha512sums = d7fb3d9d9417bf03aee8a27a813f600756acfd2b8db581f609e13a6c8482f6f70ce1659831c9ddd85bb1a4141430213b79524227b3be775b78b4fa3619fe36d1 - sha512sums = 8d26820139d918c4e9da05b062a86865664218bfbf32b9f002995c30fa22b64e088f59263bee5f8fb4797565fe88b7daf48c383a572c0ced657dab0639e57b94 + source = fix-argv.diff + sha512sums = 0bc0c596adbb7936664075744f78e9513560e28fce08bf3b8c16ad56dc026a2b5c3e9cd3fc3008846f857ea5052bba4a75a1ca3816b09940f224015209a3856c + sha512sums = 18029ff1479cbacb413f7154d5ca7589855273c559ee15bb5b5006eed65b8edcb58fac64cc8deabd20c36e06f298dc4b7152f61391975d2a3ecb6351b787fae7 + sha512sums = 1a2345b90196d3c856d0288d9406cfd667d0ebcce400e6886c7eba2825fa52d7813d45f2c375fcaf4e28d116b68107219e6f662b5bdbb12bf0e402ca61194cf7 pkgname = mongodb-compass-isolated-beta @@ -2,31 +2,38 @@ _target='compass-isolated-beta' _edition=' Isolated Edition Beta' pkgname="mongodb-$_target" -_pkgver='1.35.1-beta.1' +_pkgver='1.35.1-beta.3' pkgver="$(printf '%s' "$_pkgver" | tr '-' '.')" pkgrel='1' pkgdesc='The official GUI for MongoDB - Isolated Edition - beta version' arch=('x86_64' 'i686' 'armv7h' 'aarch64') url='https://www.mongodb.com/products/compass' license=('custom:SSPL') -_electronpkg='electron15' +if [[ "$_target" =~ -beta$ ]]; then + _electronpkg='electron' +else + _electronpkg='electron15' +fi depends=("$_electronpkg" 'krb5' 'libsecret' 'lsb-release') -makedepends=('git' 'nodejs>=16.0.0' 'npm>=8.0.0' 'python' 'unzip' 'patchutils') +makedepends=('git' 'nodejs>=16.0.0' 'npm>=8.0.0' 'python' 'unzip') optdepends=('org.freedesktop.secrets') source=( "$pkgname-$pkgver-$pkgrel.tar.gz::https://github.com/mongodb-js/compass/archive/v$_pkgver.tar.gz" - "$pkgname-$pkgver-$pkgrel-browserslist.diff::https://github.com/browserslist/browserslist/pull/378.diff" 'hadron-build.diff' + 'fix-argv.diff' ) -sha512sums=('16e867533b7179be6fb07cb82bcd0e10195d1b0e335e90f1119c173ed527f484051354f770e41d9eeacf73854c345db90cfd801c8dce1ac7623e8fb27e009224' - 'd7fb3d9d9417bf03aee8a27a813f600756acfd2b8db581f609e13a6c8482f6f70ce1659831c9ddd85bb1a4141430213b79524227b3be775b78b4fa3619fe36d1' - '8d26820139d918c4e9da05b062a86865664218bfbf32b9f002995c30fa22b64e088f59263bee5f8fb4797565fe88b7daf48c383a572c0ced657dab0639e57b94') +sha512sums=('0bc0c596adbb7936664075744f78e9513560e28fce08bf3b8c16ad56dc026a2b5c3e9cd3fc3008846f857ea5052bba4a75a1ca3816b09940f224015209a3856c' + '18029ff1479cbacb413f7154d5ca7589855273c559ee15bb5b5006eed65b8edcb58fac64cc8deabd20c36e06f298dc4b7152f61391975d2a3ecb6351b787fae7' + '1a2345b90196d3c856d0288d9406cfd667d0ebcce400e6886c7eba2825fa52d7813d45f2c375fcaf4e28d116b68107219e6f662b5bdbb12bf0e402ca61194cf7') _sourcedirectory="compass-$_pkgver" prepare() { cd "$srcdir/$_sourcedirectory/" + # Disable husky command + sed -i '/husky install/d' 'package.json' + # Set system Electron version for ABI compatibility sed -E -i 's|("electron": ").*"|\1'"$(cat "/usr/lib/$_electronpkg/version")"'"|' {'configs','packages'}'/'*'/package.json' @@ -36,18 +43,12 @@ prepare() { # Apply hadron-build fixes patch --forward -p1 < "$srcdir/hadron-build.diff" + # Apply argv fixes + patch --forward -p1 < "$srcdir/fix-argv.diff" + # Run the first part of npm run bootstrap npm install - # Apply browserslist fixes - filterdiff --exclude='*/test/*' "$srcdir/$pkgname-$pkgver-$pkgrel-browserslist.diff" > "$srcdir/$pkgname-$pkgver-$pkgrel-browserslist-filtered.diff" - - for _folder in 'node_modules/@mongodb-js/'*'/node_modules/browserslist'; do - if grep -q '"version": "2' "$_folder/package.json"; then - patch -d "$_folder/" --forward -p1 < "$srcdir/$pkgname-$pkgver-$pkgrel-browserslist-filtered.diff" - fi - done - # Run the second part of npm run bootstrap NODE_OPTIONS='--openssl-legacy-provider' npx lerna run bootstrap --stream } diff --git a/fix-argv.diff b/fix-argv.diff new file mode 100644 index 000000000000..4a048d1ea8e3 --- /dev/null +++ b/fix-argv.diff @@ -0,0 +1,75 @@ +diff --git a/packages/compass-preferences-model/src/global-config.ts b/packages/compass-preferences-model/src/global-config.ts +index ed438e40f..10d2a5aba 100644 +--- a/packages/compass-preferences-model/src/global-config.ts ++++ b/packages/compass-preferences-model/src/global-config.ts +@@ -210,8 +210,6 @@ export interface ParsedGlobalPreferencesResult { + preferenceParseErrors: string[]; + } + +-// See https://github.com/electron/electron/issues/4690 +-const argvStartIndex = process.versions.electron && !process.defaultApp ? 1 : 2; + export async function parseAndValidateGlobalPreferences( + sources: GlobalPreferenceSources = {} + ): Promise<ParsedGlobalPreferencesResult> { +@@ -220,6 +218,16 @@ export async function parseAndValidateGlobalPreferences( + ); + let argv = sources.argv; + if (!argv) { ++ let argvStartIndex = 0; ++ ++ for (const arg of process.argv) { ++ argvStartIndex++; ++ ++ if (arg.includes('app.asar') === true) { ++ break; ++ } ++ } ++ + argv = process.argv.slice(argvStartIndex); + } + const cliPreferences = parseCliArgs(argv); +@@ -309,11 +317,17 @@ export function getHelpText(): string { + text += ` ${path}\n`; + } + if (globalConfigPaths.length > 0) { ++ let binaryName = ''; ++ ++ for (const arg of process.argv) { ++ if (arg.includes('app.asar') === true) { ++ binaryName = arg.replace('/usr/lib/', '').replace('/app.asar', ''); ++ break; ++ } ++ } ++ + text += '\nIf no global configuration file exists, running Compass as\n'; +- text += ` ${escapeShell(process.execPath)}${ +- argvStartIndex >= 2 ? ' ' + escapeShell(process.argv[1]) : '' +- } `; +- text += `--show-example-config > ${escapeShell(globalConfigPaths[0])}\n`; ++ text += ` ${binaryName} --show-example-config > ${escapeShell(globalConfigPaths[0])}\n`; + text += 'can be used to install one.\n'; + } + text += '\nSee the MongoDB Compass documentation for more details.\n'; +diff --git a/packages/compass/src/main/protocol-handling.ts b/packages/compass/src/main/protocol-handling.ts +index fb4486333..6f2921174 100644 +--- a/packages/compass/src/main/protocol-handling.ts ++++ b/packages/compass/src/main/protocol-handling.ts +@@ -13,9 +13,15 @@ async function appProtocolsConfig(): Promise<ProtocolsList> { + return (await import('../../package.json')).config.hadron.protocols; + } + +-const commandArgv = process.defaultApp +- ? [process.execPath, path.resolve(process.argv[1]), '--'] +- : [process.execPath, '--']; ++let commandArgv = []; ++ ++for (const arg of process.argv) { ++ if (arg.includes('app.asar') === true) { ++ commandArgv[0] = arg.replace('/usr/lib/', '').replace('/app.asar', ''); ++ commandArgv[1] = '--'; ++ break; ++ } ++} + + export async function setupProtocolHandlers( + action: 'install' | 'uninstall', diff --git a/hadron-build.diff b/hadron-build.diff index bf34794cdd6f..57e050fb3b95 100644 --- a/hadron-build.diff +++ b/hadron-build.diff @@ -1,8 +1,8 @@ diff --git a/packages/hadron-build/commands/release.js b/packages/hadron-build/commands/release.js -index 117444603..6d7fbd336 100644 +index 1b4611457..9295a2a3a 100644 --- a/packages/hadron-build/commands/release.js +++ b/packages/hadron-build/commands/release.js -@@ -491,9 +491,6 @@ exports.run = (argv, done) => { +@@ -543,9 +543,6 @@ exports.run = (argv, done) => { task('write license file', writeLicenseFile), task('remove development files', removeDevelopmentFiles), !noAsar && task('create application asar', createApplicationAsar), @@ -12,7 +12,7 @@ index 117444603..6d7fbd336 100644 ].filter(Boolean)); return async.series(tasks, (_err) => { -@@ -507,9 +504,5 @@ exports.run = (argv, done) => { +@@ -568,9 +565,5 @@ exports.run = (argv, done) => { exports.handler = (argv) => { exports.run(argv, (_err, CONFIG) => { cli.abortIfError(_err); @@ -23,7 +23,7 @@ index 117444603..6d7fbd336 100644 }); }; diff --git a/packages/hadron-build/lib/target.js b/packages/hadron-build/lib/target.js -index 16a1ec4e3..2a61c3850 100644 +index 39ed422ab..959ce16c9 100644 --- a/packages/hadron-build/lib/target.js +++ b/packages/hadron-build/lib/target.js @@ -10,7 +10,6 @@ const path = require('path'); @@ -34,7 +34,7 @@ index 16a1ec4e3..2a61c3850 100644 const windowsInstallerVersion = require('./windows-installer-version'); const debug = require('debug')('hadron-build:target'); const execFile = promisify(childProcess.execFile); -@@ -241,7 +240,6 @@ class Target { +@@ -227,7 +226,6 @@ class Target { arch: this.arch, electronVersion: this.electronVersion, sign: null, |