From 47dc1727dfc4870462eee5476d27e77734e66cda Mon Sep 17 00:00:00 2001 From: Peter Dave Hello Date: Mon, 30 Nov 2020 01:49:53 +0800 Subject: [PATCH 01/10] Clean up apt local cache in Dockerfile This will make the image smaller --- package/docker/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package/docker/Dockerfile b/package/docker/Dockerfile index 39c4cf61..4184281c 100644 --- a/package/docker/Dockerfile +++ b/package/docker/Dockerfile @@ -17,7 +17,7 @@ FROM nginx:stable LABEL maintainer="antelle.net@gmail.com" # install -RUN apt-get -y update && apt-get -y install openssl curl unzip +RUN apt-get -y update && apt-get -y install openssl curl unzip && rm -rf /var/lib/apt/lists/* # setup nginx RUN rm -rf /etc/nginx/conf.d/*; \ From 57296ba313370f6cd17ff3b6437b7ce2bf906b84 Mon Sep 17 00:00:00 2001 From: Peter Dave Hello Date: Mon, 30 Nov 2020 01:51:47 +0800 Subject: [PATCH 02/10] Ask apk to leave no cache in Dockerfile This will make the image smaller --- package/docker-rpi/Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/package/docker-rpi/Dockerfile b/package/docker-rpi/Dockerfile index eaa760ae..5b9f18e0 100644 --- a/package/docker-rpi/Dockerfile +++ b/package/docker-rpi/Dockerfile @@ -17,11 +17,11 @@ FROM armhf/alpine:latest MAINTAINER Antelle "antelle.net@gmail.com" # install nginx -RUN apk add --update bash nginx && \ +RUN apk add --no-cache bash nginx && \ mkdir -p /run/nginx/ # install -RUN apk add --update openssl wget unzip ca-certificates +RUN apk add --no-cache openssl wget unzip ca-certificates # setup nginx RUN rm -rf /etc/nginx/conf.d/*; \ From 94cfa4f3d4fdca3529adcdf38a39aeaccc95dbff Mon Sep 17 00:00:00 2001 From: Peter Dave Hello Date: Mon, 30 Nov 2020 09:11:32 +0800 Subject: [PATCH 03/10] Replace ADD with COPY instruction in Dockerfile MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Reference: - https://docs.docker.com/develop/develop-images/dockerfile_best-practices/#add-or-copy > For other items (files, directories) that do not require ADD’s tar > auto-extraction capability, you should always use COPY. --- package/docker-rpi/Dockerfile | 4 ++-- package/docker/Dockerfile | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package/docker-rpi/Dockerfile b/package/docker-rpi/Dockerfile index 5b9f18e0..11466fd8 100644 --- a/package/docker-rpi/Dockerfile +++ b/package/docker-rpi/Dockerfile @@ -31,7 +31,7 @@ RUN sed -i 's/access_log.*/access_log \/dev\/stdout;/g' /etc/nginx/nginx.conf; \ sed -i 's/error_log.*/error_log \/dev\/stdout info;/g' /etc/nginx/nginx.conf; \ sed -i 's/error_log \/dev\/stdout info;/error_log \/dev\/stdout info;\n\n# daemon mode off\ndaemon off;/g' /etc/nginx/nginx.conf -ADD keeweb.conf /etc/nginx/conf.d/keeweb.conf +COPY keeweb.conf /etc/nginx/conf.d/keeweb.conf # clone keeweb RUN wget https://github.com/keeweb/keeweb/archive/gh-pages.zip; \ @@ -46,7 +46,7 @@ RUN wget https://github.com/keeweb/keeweb-plugins/archive/master.zip; \ mv keeweb-plugins-master/docs keeweb/plugins; \ rm -rf keeweb-plugins-master; -ADD entrypoint.sh /opt/entrypoint.sh +COPY entrypoint.sh /opt/entrypoint.sh RUN chmod a+x /opt/entrypoint.sh ENTRYPOINT ["/opt/entrypoint.sh"] diff --git a/package/docker/Dockerfile b/package/docker/Dockerfile index 4184281c..f83c64c8 100644 --- a/package/docker/Dockerfile +++ b/package/docker/Dockerfile @@ -27,13 +27,13 @@ RUN sed -i 's/access_log.*/access_log \/dev\/stdout;/g' /etc/nginx/nginx.conf; \ sed -i 's/error_log.*/error_log \/dev\/stdout info;/g' /etc/nginx/nginx.conf; \ sed -i 's/^pid/daemon off;\npid/g' /etc/nginx/nginx.conf -ADD keeweb.conf /etc/nginx/conf.d/keeweb.conf +COPY keeweb.conf /etc/nginx/conf.d/keeweb.conf -ADD entrypoint.sh /opt/entrypoint.sh +COPY entrypoint.sh /opt/entrypoint.sh RUN chmod a+x /opt/entrypoint.sh # add keeweb files -ADD dist keeweb +COPY dist keeweb # clone keeweb plugins RUN curl -Ss -L -O https://github.com/keeweb/keeweb-plugins/archive/master.zip; \ From bd400c079798776ebfd8541610373a10aa3f0755 Mon Sep 17 00:00:00 2001 From: antelle Date: Mon, 30 Nov 2020 18:51:06 +0100 Subject: [PATCH 04/10] up native modules --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 470ccbcd..43af9f68 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1982,8 +1982,8 @@ } }, "@keeweb/keeweb-native-modules": { - "version": "https://github.com/keeweb/keeweb-native-modules/releases/download/0.4.1/keeweb-native-modules.tgz", - "integrity": "sha512-3cGNjwdSxGGf50DEXHJIOm6/9lBrEh5al+hBwe25nTlWGAnWo4S92vLspGairUI1jew9ewuDgTDfB7+l5t0pFA==" + "version": "https://github.com/keeweb/keeweb-native-modules/releases/download/0.5.0/keeweb-native-modules.tgz", + "integrity": "sha512-5p2PC+iElugEsMvIxzHFMv40LtLl+aJaoGPbrUtKyVfYCaUqkUhEFtC2Dmq1Tg2ZR6Wh3l26GXATRAG3RiNWZQ==" }, "@sindresorhus/is": { "version": "0.14.0", diff --git a/package.json b/package.json index f90dcdd4..26e2711b 100644 --- a/package.json +++ b/package.json @@ -16,7 +16,7 @@ "@babel/plugin-proposal-optional-chaining": "^7.12.7", "@babel/preset-env": "^7.12.7", "@fortawesome/fontawesome-free": "^5.15.1", - "@keeweb/keeweb-native-modules": "https://github.com/keeweb/keeweb-native-modules/releases/download/0.4.1/keeweb-native-modules.tgz", + "@keeweb/keeweb-native-modules": "https://github.com/keeweb/keeweb-native-modules/releases/download/0.5.0/keeweb-native-modules.tgz", "adm-zip": "^0.5.1", "argon2-browser": "1.15.2", "autoprefixer": "^10.0.4", From 9410fc6a8c4f1ee26a4195569446bdc1029eaac5 Mon Sep 17 00:00:00 2001 From: antelle Date: Mon, 30 Nov 2020 20:52:09 +0100 Subject: [PATCH 05/10] apple silicon build --- Gruntfile.js | 94 ++++++++++++++++++++++++++++++++------------ grunt.entrypoints.js | 10 ++--- grunt.tasks.js | 20 ++++++---- 3 files changed, 86 insertions(+), 38 deletions(-) diff --git a/Gruntfile.js b/Gruntfile.js index c3004a15..b629d474 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -49,6 +49,24 @@ module.exports = function (grunt) { InternalName: 'KeeWeb' }; + const appdmgOptions = (arch) => ({ + title: 'KeeWeb', + icon: 'graphics/icon.icns', + background: 'graphics/dmg-background.png', + 'background-color': '#E0E6F9', + 'icon-size': 80, + window: { size: { width: 658, height: 498 } }, + contents: [ + { x: 438, y: 344, type: 'link', path: '/Applications' }, + { + x: 192, + y: 344, + type: 'file', + path: `tmp/desktop/KeeWeb-darwin-${arch}/KeeWeb.app` + } + ] + }); + grunt.initConfig({ noop: { noop: {} }, gitinfo: { @@ -130,13 +148,19 @@ module.exports = function (grunt) { dest: 'tmp/desktop/update/', nonull: true }, - 'desktop-darwin-helper': { + 'desktop-darwin-helper-x64': { src: 'helper/darwin/KeeWebHelper', dest: 'tmp/desktop/KeeWeb-darwin-x64/KeeWeb.app/Contents/Resources/', nonull: true, options: { mode: '0755' } }, - 'desktop-darwin-installer-helper': { + 'desktop-darwin-helper-arm64': { + src: 'helper/darwin/KeeWebHelper', + dest: 'tmp/desktop/KeeWeb-darwin-arm64/KeeWeb.app/Contents/Resources/', + nonull: true, + options: { mode: '0755' } + }, + 'desktop-darwin-installer-helper-x64': { cwd: 'package/osx/KeeWeb Installer.app', src: '**', dest: @@ -145,6 +169,15 @@ module.exports = function (grunt) { nonull: true, options: { mode: true } }, + 'desktop-darwin-installer-helper-arm64': { + cwd: 'package/osx/KeeWeb Installer.app', + src: '**', + dest: + 'tmp/desktop/KeeWeb-darwin-arm64/KeeWeb.app/Contents/Installer/KeeWeb Installer.app', + expand: true, + nonull: true, + options: { mode: true } + }, 'desktop-windows-helper-x64': { src: 'helper/win32/KeeWebHelper.exe', dest: 'tmp/desktop/KeeWeb-win32-x64/Resources/', @@ -175,11 +208,16 @@ module.exports = function (grunt) { dest: `dist/desktop/KeeWeb-${pkg.version}.win.arm64.exe`, nonull: true }, - 'native-modules-darwin': { + 'native-modules-darwin-x64': { src: 'node_modules/@keeweb/keeweb-native-modules/*-darwin-x64.node', dest: 'tmp/desktop/KeeWeb-darwin-x64/KeeWeb.app/Contents/Resources/', nonull: true }, + 'native-modules-darwin-arm64': { + src: 'node_modules/@keeweb/keeweb-native-modules/*-darwin-arm64.node', + dest: 'tmp/desktop/KeeWeb-darwin-arm64/KeeWeb.app/Contents/Resources/', + nonull: true + }, 'native-modules-win32-x64': { src: 'node_modules/@keeweb/keeweb-native-modules/*-win32-x64.node', dest: 'tmp/desktop/KeeWeb-win32-x64/resources/', @@ -331,14 +369,24 @@ module.exports = function (grunt) { options: { name: 'keeweb', platform: 'linux', - arch: ['x64'], + arch: 'x64', icon: 'graphics/icon.ico' } }, - darwin: { + 'darwin-x64': { options: { platform: 'darwin', - arch: ['x64'], + arch: 'x64', + icon: 'graphics/icon.icns', + appBundleId: 'net.antelle.keeweb', + appCategoryType: 'public.app-category.productivity', + extendInfo: 'package/osx/extend.plist' + } + }, + 'darwin-arm64': { + options: { + platform: 'darwin', + arch: 'arm64', icon: 'graphics/icon.icns', appBundleId: 'net.antelle.keeweb', appCategoryType: 'public.app-category.productivity', @@ -439,25 +487,13 @@ module.exports = function (grunt) { } }, appdmg: { - options: { - title: 'KeeWeb', - icon: 'graphics/icon.icns', - background: 'graphics/dmg-background.png', - 'background-color': '#E0E6F9', - 'icon-size': 80, - window: { size: { width: 658, height: 498 } }, - contents: [ - { x: 438, y: 344, type: 'link', path: '/Applications' }, - { - x: 192, - y: 344, - type: 'file', - path: 'tmp/desktop/KeeWeb-darwin-x64/KeeWeb.app' - } - ] + x64: { + options: appdmgOptions('x64'), + dest: `dist/desktop/KeeWeb-${pkg.version}.mac.x64.dmg` }, - app: { - dest: `dist/desktop/KeeWeb-${pkg.version}.mac.dmg` + arm64: { + options: appdmgOptions('amd64'), + dest: `dist/desktop/KeeWeb-${pkg.version}.mac.arm64.dmg` } }, nsis: { @@ -604,8 +640,11 @@ module.exports = function (grunt) { 'entitlements-inherit': 'package/osx/entitlements.mac.plist', 'gatekeeper-assess': false }, - desktop: { + 'desktop-x64': { src: 'tmp/desktop/KeeWeb-darwin-x64/KeeWeb.app' + }, + 'desktop-arm64': { + src: 'tmp/desktop/KeeWeb-darwin-arm64/KeeWeb.app' } }, notarize: { @@ -619,8 +658,11 @@ module.exports = function (grunt) { return getCodeSignConfig().teamId; } }, - desktop: { + 'desktop-x64': { src: 'tmp/desktop/KeeWeb-darwin-x64/KeeWeb.app' + }, + 'desktop-arm64': { + src: 'tmp/desktop/KeeWeb-darwin-arm64/KeeWeb.app' } }, 'sign-exe': { diff --git a/grunt.entrypoints.js b/grunt.entrypoints.js index e0c6c3e4..217ee384 100644 --- a/grunt.entrypoints.js +++ b/grunt.entrypoints.js @@ -54,10 +54,10 @@ module.exports = function(grunt) { grunt.registerTask('dev-desktop-darwin', 'Build a macOS app in dev environment', [ 'default', 'build-desktop-app-content', - 'electron:darwin', - 'copy:desktop-darwin-helper', - 'copy:desktop-darwin-installer-helper', - 'copy:native-modules-darwin' + 'electron:darwin-x64', + 'copy:desktop-darwin-helper-x64', + 'copy:desktop-darwin-installer-helper-x64', + 'copy:native-modules-darwin-x64' ]); grunt.registerTask('dev-desktop-win32', 'Build a Windows app in dev environment', [ @@ -75,7 +75,7 @@ module.exports = function(grunt) { 'chmod:linux-desktop-x64', 'copy:native-modules-linux-x64' ]); - + grunt.registerTask('test', 'Build and run tests', [ 'build-test', 'run-test' diff --git a/grunt.tasks.js b/grunt.tasks.js index 390ec169..8ca9bcae 100644 --- a/grunt.tasks.js +++ b/grunt.tasks.js @@ -41,12 +41,18 @@ module.exports = function (grunt) { ]); grunt.registerTask('build-desktop-executables-darwin', [ - 'electron:darwin', - 'copy:desktop-darwin-helper', - 'copy:desktop-darwin-installer-helper', - 'copy:native-modules-darwin', - sign ? 'osx-sign:desktop' : 'noop', - sign ? 'notarize:desktop' : 'noop' + 'electron:darwin-x64', + 'electron:darwin-arm64', + 'copy:desktop-darwin-helper-x64', + 'copy:desktop-darwin-helper-arm64', + 'copy:desktop-darwin-installer-helper-x64', + 'copy:desktop-darwin-installer-helper-arm64', + 'copy:native-modules-darwin-x64', + 'copy:native-modules-darwin-arm64', + sign ? 'osx-sign:desktop-x64' : 'noop', + sign ? 'osx-sign:desktop-arm64' : 'noop', + sign ? 'notarize:desktop-x64' : 'noop', + sign ? 'notarize:desktop-arm64' : 'noop' ]); grunt.registerTask('build-desktop-executables-win32', [ @@ -83,7 +89,7 @@ module.exports = function (grunt) { 'build-desktop-archives-win32' ]); - grunt.registerTask('build-desktop-dist-darwin', ['appdmg']); + grunt.registerTask('build-desktop-dist-darwin', ['appdmg:x64', 'appdmg:arm64']); grunt.registerTask('build-desktop-dist-win32', [ 'nsis:win32-un-x64', From bd4a6d0eee501e6ced2d8839e0e32558e3c24083 Mon Sep 17 00:00:00 2001 From: antelle Date: Mon, 30 Nov 2020 21:03:20 +0100 Subject: [PATCH 06/10] fixed arm64 --- Gruntfile.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Gruntfile.js b/Gruntfile.js index b629d474..13af2949 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -492,7 +492,7 @@ module.exports = function (grunt) { dest: `dist/desktop/KeeWeb-${pkg.version}.mac.x64.dmg` }, arm64: { - options: appdmgOptions('amd64'), + options: appdmgOptions('arm64'), dest: `dist/desktop/KeeWeb-${pkg.version}.mac.arm64.dmg` } }, From 464c49257a1729af4294512993929f7bba80fbdf Mon Sep 17 00:00:00 2001 From: antelle Date: Mon, 30 Nov 2020 21:16:17 +0100 Subject: [PATCH 07/10] building arm64.dmg --- .github/workflows/build.yaml | 35 +++++++++++++++++++++++++++-------- 1 file changed, 27 insertions(+), 8 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index af87a9ec..9121f7b2 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -136,11 +136,16 @@ jobs: p12-password: ${{ secrets.APPLE_CERTIFICATE_PASSWORD }} - name: Grunt run: grunt desktop-darwin ${{ github.repository != 'keeweb/keeweb' && '--skip-sign' || '' }} - - name: Upload dmg artifact + - name: Upload x64 dmg artifact uses: actions/upload-artifact@v1 with: - name: KeeWeb-${{ steps.get_tag.outputs.tag }}.mac.dmg - path: dist/desktop/KeeWeb-${{ steps.get_tag.outputs.tag }}.mac.dmg + name: KeeWeb-${{ steps.get_tag.outputs.tag }}.mac.x64.dmg + path: dist/desktop/KeeWeb-${{ steps.get_tag.outputs.tag }}.mac.x64.dmg + - name: Upload arm64 dmg artifact + uses: actions/upload-artifact@v1 + with: + name: KeeWeb-${{ steps.get_tag.outputs.tag }}.mac.arm64.dmg + path: dist/desktop/KeeWeb-${{ steps.get_tag.outputs.tag }}.mac.arm64.dmg win32: runs-on: windows-latest @@ -274,10 +279,15 @@ jobs: with: name: KeeWeb-${{ steps.get_tag.outputs.tag }}.linux.x86_64.rpm path: assets - - name: Download darwin.dmg artifact + - name: Download darwin.x64.dmg artifact uses: actions/download-artifact@v1 with: - name: KeeWeb-${{ steps.get_tag.outputs.tag }}.mac.dmg + name: KeeWeb-${{ steps.get_tag.outputs.tag }}.mac.x64.dmg + path: assets + - name: Download darwin.arm64.dmg artifact + uses: actions/download-artifact@v1 + with: + name: KeeWeb-${{ steps.get_tag.outputs.tag }}.mac.arm64.dmg path: assets - name: Download win32.ia32.exe artifact uses: actions/download-artifact@v1 @@ -414,14 +424,23 @@ jobs: asset_path: assets/KeeWeb-${{ steps.get_tag.outputs.tag }}.linux.x86_64.rpm asset_name: KeeWeb-${{ steps.get_tag.outputs.tag }}.linux.x86_64.rpm asset_content_type: application/octet-stream - - name: Upload darwin.dmg asset + - name: Upload darwin.x64.dmg asset uses: actions/upload-release-asset@v1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: assets/KeeWeb-${{ steps.get_tag.outputs.tag }}.mac.dmg - asset_name: KeeWeb-${{ steps.get_tag.outputs.tag }}.mac.dmg + asset_path: assets/KeeWeb-${{ steps.get_tag.outputs.tag }}.mac.x64.dmg + asset_name: KeeWeb-${{ steps.get_tag.outputs.tag }}.mac.x64.dmg + asset_content_type: application/octet-stream + - name: Upload darwin.arm64.dmg asset + uses: actions/upload-release-asset@v1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ steps.create_release.outputs.upload_url }} + asset_path: assets/KeeWeb-${{ steps.get_tag.outputs.tag }}.mac.arm64.dmg + asset_name: KeeWeb-${{ steps.get_tag.outputs.tag }}.mac.arm64.dmg asset_content_type: application/octet-stream - name: Upload win32.ia32.exe asset uses: actions/upload-release-asset@v1 From 446f293da05b0ff5f4ff5b1a364760939c429013 Mon Sep 17 00:00:00 2001 From: antelle Date: Thu, 3 Dec 2020 22:12:42 +0100 Subject: [PATCH 08/10] rebuilt KeeWebHelper as a universal app --- helper/darwin/KeeWebHelper | Bin 78720 -> 217136 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/helper/darwin/KeeWebHelper b/helper/darwin/KeeWebHelper index f79d16bfe4c01cf05a20926ef33c55ac7cc81f45..4e1892c1aa82899a2327693e6533e2aeedd5957d 100755 GIT binary patch literal 217136 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⪙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 m=(9kd1^O(|XMsKo^jV Date: Thu, 3 Dec 2020 22:12:52 +0100 Subject: [PATCH 09/10] up node_modules --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 43af9f68..c18d1618 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1982,8 +1982,8 @@ } }, "@keeweb/keeweb-native-modules": { - "version": "https://github.com/keeweb/keeweb-native-modules/releases/download/0.5.0/keeweb-native-modules.tgz", - "integrity": "sha512-5p2PC+iElugEsMvIxzHFMv40LtLl+aJaoGPbrUtKyVfYCaUqkUhEFtC2Dmq1Tg2ZR6Wh3l26GXATRAG3RiNWZQ==" + "version": "https://github.com/keeweb/keeweb-native-modules/releases/download/0.5.2/keeweb-native-modules.tgz", + "integrity": "sha512-0a03vFWcYLTfxptmuqdk8GOYrt4XMmddG1gsmNoM5mydg87zZodRfOuV244D6A/i8kFlcYx8qrSrbav79VPo4A==" }, "@sindresorhus/is": { "version": "0.14.0", diff --git a/package.json b/package.json index 26e2711b..bfb054cc 100644 --- a/package.json +++ b/package.json @@ -16,7 +16,7 @@ "@babel/plugin-proposal-optional-chaining": "^7.12.7", "@babel/preset-env": "^7.12.7", "@fortawesome/fontawesome-free": "^5.15.1", - "@keeweb/keeweb-native-modules": "https://github.com/keeweb/keeweb-native-modules/releases/download/0.5.0/keeweb-native-modules.tgz", + "@keeweb/keeweb-native-modules": "https://github.com/keeweb/keeweb-native-modules/releases/download/0.5.2/keeweb-native-modules.tgz", "adm-zip": "^0.5.1", "argon2-browser": "1.15.2", "autoprefixer": "^10.0.4", From a7fcbae65fd61b6c6cc0c659f92f39c95551d3a6 Mon Sep 17 00:00:00 2001 From: antelle Date: Fri, 4 Dec 2020 07:25:29 +0100 Subject: [PATCH 10/10] up native modules --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index c18d1618..a7608997 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1982,8 +1982,8 @@ } }, "@keeweb/keeweb-native-modules": { - "version": "https://github.com/keeweb/keeweb-native-modules/releases/download/0.5.2/keeweb-native-modules.tgz", - "integrity": "sha512-0a03vFWcYLTfxptmuqdk8GOYrt4XMmddG1gsmNoM5mydg87zZodRfOuV244D6A/i8kFlcYx8qrSrbav79VPo4A==" + "version": "https://github.com/keeweb/keeweb-native-modules/releases/download/0.5.3/keeweb-native-modules.tgz", + "integrity": "sha512-kXwHkSrS2uDI+HxLSH/db6P+6Prh1OwnLRYJOK/en295Ao7iCn5dLwdh9jgkhRmCBHmFTVoqPY7CrKWzkyKbOg==" }, "@sindresorhus/is": { "version": "0.14.0", diff --git a/package.json b/package.json index bfb054cc..139b91ce 100644 --- a/package.json +++ b/package.json @@ -16,7 +16,7 @@ "@babel/plugin-proposal-optional-chaining": "^7.12.7", "@babel/preset-env": "^7.12.7", "@fortawesome/fontawesome-free": "^5.15.1", - "@keeweb/keeweb-native-modules": "https://github.com/keeweb/keeweb-native-modules/releases/download/0.5.2/keeweb-native-modules.tgz", + "@keeweb/keeweb-native-modules": "https://github.com/keeweb/keeweb-native-modules/releases/download/0.5.3/keeweb-native-modules.tgz", "adm-zip": "^0.5.1", "argon2-browser": "1.15.2", "autoprefixer": "^10.0.4",