diff options
-rw-r--r-- | .SRCINFO | 13 | ||||
-rw-r--r-- | PKGBUILD | 34 | ||||
-rw-r--r-- | hadron-build-beta.diff | 48 | ||||
-rw-r--r-- | hadron-build.diff | 19 |
4 files changed, 88 insertions, 26 deletions
@@ -1,7 +1,7 @@ pkgbase = mongodb-compass-beta pkgdesc = The official GUI for MongoDB - beta version pkgver = 1.27.0.beta.10 - pkgrel = 1 + pkgrel = 2 url = https://www.mongodb.com/products/compass arch = x86_64 arch = i686 @@ -9,7 +9,8 @@ pkgbase = mongodb-compass-beta arch = aarch64 license = custom:SSPL makedepends = git - makedepends = npm + makedepends = nodejs-lts-erbium + makedepends = npm>=7.0.0 makedepends = python makedepends = unzip depends = electron6-bin @@ -17,9 +18,11 @@ pkgbase = mongodb-compass-beta depends = libsecret depends = lsb-release optdepends = org.freedesktop.secrets - source = mongodb-compass-beta-1.27.0.beta.10-1.tar.gz::https://github.com/mongodb-js/compass/archive/v1.27.0-beta.10.tar.gz + source = mongodb-compass-beta-1.27.0.beta.10-2.tar.gz::https://github.com/mongodb-js/compass/archive/v1.27.0-beta.10.tar.gz source = hadron-build.diff - sha256sums = 821ef6b52ed861c1d98c3a403a89724d5bb06da7ae1dc5a5323c1ae373676023 - sha256sums = 62eea772fce3eb086b59fc5509b8afab6346da9c4c65f28880bb334104c02104 + source = hadron-build-beta.diff + sha512sums = d8f312c61c23700235197156bc5f931a8b425a982064e010f09614b7451601655f11ca335b91786b52c0cbc7dce447ddda031b025c441436668d58fd9949d8b7 + sha512sums = 9c93c8aa513c9238e04bb860626d09f1e83643cbfd1b8cd66add35cd41e6a7172fedff42f9f9eeedb0e8a3d6b852e1671a8b5a1fa3066d7dd5a543052392946d + sha512sums = 1623ebab6dc95445cd1b512ffa858fc08e2a06cf6d938ef98f14e7bdd639c3df76173fab6e0831e1bd7487b63c99322d294d53d316bc51f5a5da6d3020e9c8a2 pkgname = mongodb-compass-beta @@ -4,38 +4,44 @@ _edition=' Beta' pkgname="mongodb-$_target" _pkgver='1.27.0-beta.10' pkgver="$(printf '%s' "$_pkgver" | tr '-' '.')" -pkgrel='1' +pkgrel='2' pkgdesc='The official GUI for MongoDB - beta version' arch=('x86_64' 'i686' 'armv7h' 'aarch64') url='https://www.mongodb.com/products/compass' license=('custom:SSPL') depends=('electron6-bin' 'krb5' 'libsecret' 'lsb-release') -makedepends=('git' 'npm' 'python' 'unzip') +makedepends=('git' 'nodejs-lts-erbium' 'npm>=7.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" 'hadron-build.diff' + 'hadron-build-beta.diff' ) -sha256sums=('821ef6b52ed861c1d98c3a403a89724d5bb06da7ae1dc5a5323c1ae373676023' - '62eea772fce3eb086b59fc5509b8afab6346da9c4c65f28880bb334104c02104') +sha512sums=('d8f312c61c23700235197156bc5f931a8b425a982064e010f09614b7451601655f11ca335b91786b52c0cbc7dce447ddda031b025c441436668d58fd9949d8b7' + '9c93c8aa513c9238e04bb860626d09f1e83643cbfd1b8cd66add35cd41e6a7172fedff42f9f9eeedb0e8a3d6b852e1671a8b5a1fa3066d7dd5a543052392946d' + '1623ebab6dc95445cd1b512ffa858fc08e2a06cf6d938ef98f14e7bdd639c3df76173fab6e0831e1bd7487b63c99322d294d53d316bc51f5a5da6d3020e9c8a2') -_sourcedirectory="compass-$_pkgver/packages/compass" +_sourcedirectory="compass-$_pkgver" _homedirectory="$pkgname-$pkgver-$pkgrel-home" prepare() { cd "$srcdir/$_sourcedirectory/" # Loosen node version restriction - sed -E -i 's|("node": ").*"|\1'"$(node -v | sed 's/^v//')"'"|' 'package.json' + sed -E -i 's|("node": ").*"|\1'"$(node -v | sed 's/^v//')"'"|' 'packages/compass/package.json' # Set system Electron version for ABI compatibility - sed -E -i 's|("electron": ").*"|\1'"$(cat '/usr/lib/electron6/version')"'"|' 'package.json' + sed -E -i 's|("electron": ").*"|\1'"$(cat '/usr/lib/electron6/version')"'"|' 'packages/compass/package.json' # Prepare dependencies - HOME="$srcdir/$_homedirectory" npm install + HOME="$srcdir/$_homedirectory" npm run bootstrap # Apply hadron-build fixes - patch -d 'node_modules/hadron-build/' --forward -p1 < "$srcdir/hadron-build.diff" + if [[ "$target" =~ -beta$ ]]; then + patch -d 'node_modules/hadron-build/' --forward -p1 < "$srcdir/hadron-build-beta.diff" + else + patch -d 'node_modules/hadron-build/' --forward -p1 < "$srcdir/hadron-build.diff" + fi } build() { @@ -46,11 +52,15 @@ build() { # and let electron-packager use it for building # https://github.com/electron/electron-packager/issues/187 - NODE_ENV='production' HOME="$srcdir/$_homedirectory" npm run release-evergreen "${_target%-beta}" + if [[ "$target" =~ -beta$ ]]; then + NODE_ENV='production' HOME="$srcdir/$_homedirectory" npm run release-evergreen "${_target%-beta}" + else + NODE_ENV='production' HOME="$srcdir/$_homedirectory" npm run package-compass "${_target%-beta}" + fi } package() { - local _distFolder="$srcdir/$_sourcedirectory/dist/MongoDB Compass$_edition-linux" + local _distFolder="$srcdir/$_sourcedirectory/packages/compass/dist/MongoDB Compass$_edition-linux" case "$CARCH" in i686) _distFolder="$_distFolder-ia32" @@ -89,7 +99,7 @@ StartupNotify=true Categories=Office;Database;Building;Debugger;IDE;GUIDesigner;Profiling; EOF - install -Dm644 "$srcdir/$_sourcedirectory/src/app/images/linux/mongodb-compass.png" "$pkgdir/usr/share/pixmaps/$pkgname.png" + install -Dm644 "$srcdir/$_sourcedirectory/packages/compass/src/app/images/linux/mongodb-compass.png" "$pkgdir/usr/share/pixmaps/$pkgname.png" install -dm755 "$pkgdir/usr/share/licenses/$pkgname/" for _license in 'LICENSE' 'LICENSES.chromium.html'; do diff --git a/hadron-build-beta.diff b/hadron-build-beta.diff new file mode 100644 index 000000000000..d28b93761630 --- /dev/null +++ b/hadron-build-beta.diff @@ -0,0 +1,48 @@ +diff --git a/commands/release.js b/commands/release.js +index 174fd8cc4..cf39a5d4a 100644 +--- a/commands/release.js ++++ b/commands/release.js +@@ -574,9 +574,7 @@ exports.run = (argv, done) => { + task('create module cache', createModuleCache), + task('create packaged styles', createPackagedStyles), + task('remove development files', removeDevelopmentFiles), +- task('create application asar', createApplicationAsar), +- task('create branded installer', createBrandedInstaller), +- task('create application zip', createApplicationZip) ++ task('create application asar', createApplicationAsar) + ]); + + return async.series(tasks, (_err) => { +@@ -590,9 +588,5 @@ exports.run = (argv, done) => { + exports.handler = (argv) => { + exports.run(argv, (_err, CONFIG) => { + cli.abortIfError(_err); +- cli.ok(`${CONFIG.assets.length} assets successfully built`); +- CONFIG.assets.map(function(asset) { +- cli.info(asset.path); +- }); + }); + }; +diff --git a/lib/target.js b/lib/target.js +index 73a0056b7..ade573f8b 100644 +--- a/lib/target.js ++++ b/lib/target.js +@@ -4,8 +4,6 @@ const semver = require('semver'); + const path = require('path'); + const normalizePkg = require('normalize-package-data'); + const parseGitHubRepoURL = require('parse-github-repo-url'); +-const ffmpegAfterExtract = require('electron-packager-plugin-non-proprietary-codecs-ffmpeg') +- .default; + const windowsInstallerVersion = require('./windows-installer-version'); + const debug = require('debug')('hadron-build:target'); + +@@ -183,8 +181,7 @@ class Target { + platform: this.platform, + arch: this.arch, + electronVersion: this.electronVersion, +- sign: null, +- afterExtract: [ffmpegAfterExtract] ++ sign: null + }; + + if (this.platform === 'win32') { diff --git a/hadron-build.diff b/hadron-build.diff index b4fa1bb2b8cb..d035d410e1a0 100644 --- a/hadron-build.diff +++ b/hadron-build.diff @@ -1,19 +1,20 @@ diff --git a/commands/release.js b/commands/release.js -index 174fd8cc4..cf39a5d4a 100644 +index 4405eaa1d..979269fdb 100644 --- a/commands/release.js +++ b/commands/release.js -@@ -574,9 +574,7 @@ exports.run = (argv, done) => { +@@ -616,10 +616,7 @@ exports.run = (argv, done) => { task('create module cache', createModuleCache), task('create packaged styles', createPackagedStyles), task('remove development files', removeDevelopmentFiles), -- task('create application asar', createApplicationAsar), -- task('create branded installer', createBrandedInstaller), -- task('create application zip', createApplicationZip) -+ task('create application asar', createApplicationAsar) - ]); +- !noAsar && task('create application asar', createApplicationAsar), +- !skipInstaller && task('create branded installer', createBrandedInstaller), +- task('create application zip', createApplicationZip), +- task('store build configuration as json', writeConfigToJson) ++ !noAsar && task('create application asar', createApplicationAsar) + ].filter(Boolean)); return async.series(tasks, (_err) => { -@@ -590,9 +588,5 @@ exports.run = (argv, done) => { +@@ -633,9 +630,5 @@ exports.run = (argv, done) => { exports.handler = (argv) => { exports.run(argv, (_err, CONFIG) => { cli.abortIfError(_err); @@ -24,7 +25,7 @@ index 174fd8cc4..cf39a5d4a 100644 }); }; diff --git a/lib/target.js b/lib/target.js -index 73a0056b7..ade573f8b 100644 +index 062285659..668e2e57b 100644 --- a/lib/target.js +++ b/lib/target.js @@ -4,8 +4,6 @@ const semver = require('semver'); |