diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 05c59e27..ec6cf227 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -91,6 +91,8 @@ jobs: APPSTORE_USERNAME: ${{ secrets.APPSTORE_USERNAME }} APPSTORE_PASSWORD: ${{ secrets.APPSTORE_PASSWORD }} USE_HARD_LINKS: false + AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} + AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} # DEBUG: electron-builder,electron-builder:* - name: Build packages without signing @@ -168,6 +170,8 @@ jobs: env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} USE_HARD_LINKS: false + AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} + AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} # DEBUG: electron-builder,electron-builder:* - name: Build web resources @@ -280,6 +284,8 @@ jobs: WIN_CSC_LINK: ${{ secrets.WIN_CSC_LINK }} WIN_CSC_KEY_PASSWORD: ${{ secrets.WIN_CSC_KEY_PASSWORD }} DEBUG: electron-builder,electron-builder:* + AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} + AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} - name: Build packages without signing run: node scripts/build-windows.js diff --git a/app/package.json b/app/package.json index be9fc1f3..442e1e45 100644 --- a/app/package.json +++ b/app/package.json @@ -8,7 +8,7 @@ "email": "e@ajenti.org" }, "main": "dist/main.js", - "version": "1.0.0-alpha.1", + "version": "1.0.0", "scripts": { "postinstall": "patch-package", "build": "webpack --progress --color --display-modules", diff --git a/electron-builder.yml b/electron-builder.yml index 512ce8c6..eab8754c 100644 --- a/electron-builder.yml +++ b/electron-builder.yml @@ -35,6 +35,9 @@ extraResources: asarUnpack: - 'dist/*.map' publish: +- provider: s3 + bucket: tabby-updates + path: 'updates-${channel}-${env.ARCH}' - provider: github win: diff --git a/package.json b/package.json index dfc79121..2b59bf85 100644 --- a/package.json +++ b/package.json @@ -35,7 +35,7 @@ "css-loader": "^6.7.1", "deep-equal": "2.0.5", "electron": "18.0.4", - "electron-builder": "^22.14.13", + "electron-builder": "^23.0.3", "electron-download": "^4.1.1", "electron-installer-snap": "^5.1.0", "electron-notarize": "^1.2.1", @@ -46,7 +46,6 @@ "graceful-fs": "^4.2.9", "html-loader": "3.1.0", "json-loader": "^0.5.7", - "thenby": "^1.3.4", "lru-cache": "^6.0.0", "macos-release": "^3.0.1", "ngx-sortablejs": "^11.1.0", @@ -75,6 +74,7 @@ "ssh2": "^1.9.0", "style-loader": "^3.3.1", "svg-inline-loader": "^0.8.2", + "thenby": "^1.3.4", "ts-loader": "^9.2.8", "tslib": "^2.3.1", "typedoc": "^0.22.13", diff --git a/tabby-electron/src/services/updater.service.ts b/tabby-electron/src/services/updater.service.ts index 8115e4e5..9ff2ae8d 100644 --- a/tabby-electron/src/services/updater.service.ts +++ b/tabby-electron/src/services/updater.service.ts @@ -56,9 +56,8 @@ export class ElectronUpdaterService extends UpdaterService { this.logger.debug('Checking for updates') try { this.autoUpdater.setFeedURL({ - provider: 'github', - repo: 'tabby', - owner: 'eugeny', + provider: 's3', + path: `updates-latest-${process.arch}`, }) this.autoUpdater.checkForUpdates() } catch (e) { diff --git a/yarn.lock b/yarn.lock index 6b135f2d..31168870 100644 --- a/yarn.lock +++ b/yarn.lock @@ -161,16 +161,18 @@ global-agent "^3.0.0" global-tunnel-ng "^2.7.1" -"@electron/universal@1.0.5": - version "1.0.5" - resolved "https://registry.yarnpkg.com/@electron/universal/-/universal-1.0.5.tgz#b812340e4ef21da2b3ee77b2b4d35c9b86defe37" - integrity sha512-zX9O6+jr2NMyAdSkwEUlyltiI4/EBLu2Ls/VD3pUQdi3cAYeYfdQnT2AJJ38HE4QxLccbU13LSpccw1IWlkyag== +"@electron/universal@1.2.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@electron/universal/-/universal-1.2.0.tgz#518cac72bccd79c00bf41345119e6fdbabdb871d" + integrity sha512-eu20BwNsrMPKoe2bZ3/l9c78LclDvxg3PlVXrQf3L50NaUuW5M59gbPytI+V4z7/QMrohUHetQaU0ou+p1UG9Q== dependencies: "@malept/cross-spawn-promise" "^1.1.0" - asar "^3.0.3" + asar "^3.1.0" debug "^4.3.1" dir-compare "^2.4.0" fs-extra "^9.0.1" + minimatch "^3.0.4" + plist "^3.0.4" "@eslint/eslintrc@^0.4.3": version "0.4.3" @@ -1042,29 +1044,29 @@ ansistyles@~0.1.3: resolved "https://registry.npmjs.org/ansistyles/-/ansistyles-0.1.3.tgz" integrity sha1-XeYEFb2gcbs3EnhUyGT0GyMlRTk= -app-builder-bin@3.7.1: - version "3.7.1" - resolved "https://registry.yarnpkg.com/app-builder-bin/-/app-builder-bin-3.7.1.tgz#cb0825c5e12efc85b196ac3ed9c89f076c61040e" - integrity sha512-ql93vEUq6WsstGXD+SBLSIQw6SNnhbDEM0swzgugytMxLp3rT24Ag/jcC80ZHxiPRTdew1niuR7P3/FCrDqIjw== +app-builder-bin@4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/app-builder-bin/-/app-builder-bin-4.0.0.tgz#1df8e654bd1395e4a319d82545c98667d7eed2f0" + integrity sha512-xwdG0FJPQMe0M0UA4Tz0zEB8rBJTRA5a476ZawAqiBkMv16GRK5xpXThOjMaEOFnZ6zabejjG4J3da0SXG63KA== -app-builder-lib@22.14.13: - version "22.14.13" - resolved "https://registry.yarnpkg.com/app-builder-lib/-/app-builder-lib-22.14.13.tgz#c1f5b6afc86596357598bb90b69eef06c7c2eeb3" - integrity sha512-SufmrtxU+D0Tn948fjEwAOlCN9757UXLkzzTWXMwZKR/5hisvgqeeBepWfphMIE6OkDGz0fbzEhL1P2Pty4XMg== +app-builder-lib@23.0.3: + version "23.0.3" + resolved "https://registry.yarnpkg.com/app-builder-lib/-/app-builder-lib-23.0.3.tgz#44c90237abdc4ad9b34a24658bee022828ad6205" + integrity sha512-1qrtXYHXJfXhzJnMtVGjIva3067F1qYQubl2oBjI61gCBoCHvhghdYJ57XxXTQQ0VxnUhg1/Iaez87uXp8mD8w== dependencies: "7zip-bin" "~5.1.1" "@develar/schema-utils" "~2.6.5" - "@electron/universal" "1.0.5" + "@electron/universal" "1.2.0" "@malept/flatpak-bundler" "^0.4.0" async-exit-hook "^2.0.1" bluebird-lst "^1.0.9" - builder-util "22.14.13" - builder-util-runtime "8.9.2" + builder-util "23.0.2" + builder-util-runtime "9.0.0" chromium-pickle-js "^0.2.0" debug "^4.3.2" ejs "^3.1.6" - electron-osx-sign "^0.5.0" - electron-publish "22.14.13" + electron-osx-sign "^0.6.0" + electron-publish "23.0.2" form-data "^4.0.0" fs-extra "^10.0.0" hosted-git-info "^4.0.2" @@ -1158,7 +1160,7 @@ asap@~2.0.3: resolved "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz" integrity sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY= -asar@^3.0.0, asar@^3.0.3: +asar@^3.0.0: version "3.0.3" resolved "https://registry.npmjs.org/asar/-/asar-3.0.3.tgz" integrity sha512-k7zd+KoR+n8pl71PvgElcoKHrVNiSXtw7odKbyNpmgKe7EGRF9Pnu3uLOukD37EvavKwVFxOUpqXTIZC5B5Pmw== @@ -1170,6 +1172,18 @@ asar@^3.0.0, asar@^3.0.3: optionalDependencies: "@types/glob" "^7.1.1" +asar@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/asar/-/asar-3.1.0.tgz#70b0509449fe3daccc63beb4d3c7d2e24d3c6473" + integrity sha512-vyxPxP5arcAqN4F/ebHd/HhwnAiZtwhglvdmc7BR2f0ywbVNTOpSeyhLDbGXtE/y58hv1oC75TaNIXutnsOZsQ== + dependencies: + chromium-pickle-js "^0.2.0" + commander "^5.0.0" + glob "^7.1.6" + minimatch "^3.0.4" + optionalDependencies: + "@types/glob" "^7.1.1" + asn1.js@^5.2.0: version "5.4.1" resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-5.4.1.tgz#11a980b84ebb91781ce35b0fdc2ee294e3783f07" @@ -1539,25 +1553,25 @@ buildcheck@0.0.3: resolved "https://registry.yarnpkg.com/buildcheck/-/buildcheck-0.0.3.tgz#70451897a95d80f7807e68fc412eb2e7e35ff4d5" integrity sha512-pziaA+p/wdVImfcbsZLNF32EiWyujlQLwolMqUQE8xpKNOH7KmZQaY8sXN7DGOEzPAElo9QTaeNRfGnf3iOJbA== -builder-util-runtime@8.9.2: - version "8.9.2" - resolved "https://registry.yarnpkg.com/builder-util-runtime/-/builder-util-runtime-8.9.2.tgz#a9669ae5b5dcabfe411ded26678e7ae997246c28" - integrity sha512-rhuKm5vh7E0aAmT6i8aoSfEjxzdYEFX7zDApK+eNgOhjofnWb74d9SRJv0H/8nsgOkos0TZ4zxW0P8J4N7xQ2A== +builder-util-runtime@9.0.0: + version "9.0.0" + resolved "https://registry.yarnpkg.com/builder-util-runtime/-/builder-util-runtime-9.0.0.tgz#3a40ba7382712ccdb24471567f91d7c167e00830" + integrity sha512-SkpEtSmTkREDHRJnxKEv43aAYp8sYWY8fxYBhGLBLOBIRXeaIp6Kv3lBgSD7uR8jQtC7CA659sqJrpSV6zNvSA== dependencies: debug "^4.3.2" sax "^1.2.4" -builder-util@22.14.13: - version "22.14.13" - resolved "https://registry.yarnpkg.com/builder-util/-/builder-util-22.14.13.tgz#41b5b7b4ee53aff4e09cc007fb144522598f3ce6" - integrity sha512-oePC/qrrUuerhmH5iaCJzPRAKlSBylrhzuAJmRQClTyWnZUv6jbaHh+VoHMbEiE661wrj2S2aV7/bQh12cj1OA== +builder-util@23.0.2: + version "23.0.2" + resolved "https://registry.yarnpkg.com/builder-util/-/builder-util-23.0.2.tgz#da84a971076397e3a671726f4bb96f0c2214fea7" + integrity sha512-HaNHL3axNW/Ms8O1mDx3I07G+ZnZ/TKSWWvorOAPau128cdt9S+lNx5ocbx8deSaHHX4WFXSZVHh3mxlaKJNgg== dependencies: "7zip-bin" "~5.1.1" "@types/debug" "^4.1.6" "@types/fs-extra" "^9.0.11" - app-builder-bin "3.7.1" + app-builder-bin "4.0.0" bluebird-lst "^1.0.9" - builder-util-runtime "8.9.2" + builder-util-runtime "9.0.0" chalk "^4.1.1" cross-spawn "^7.0.3" debug "^4.3.2" @@ -2480,14 +2494,14 @@ dir-glob@^3.0.1: dependencies: path-type "^4.0.0" -dmg-builder@22.14.13: - version "22.14.13" - resolved "https://registry.yarnpkg.com/dmg-builder/-/dmg-builder-22.14.13.tgz#cc613f3c18e889b8777d525991fd52f50a564f8c" - integrity sha512-xNOugB6AbIRETeU2uID15sUfjdZZcKdxK8xkFnwIggsM00PJ12JxpLNPTjcRoUnfwj3WrPjilrO64vRMwNItQg== +dmg-builder@23.0.3: + version "23.0.3" + resolved "https://registry.yarnpkg.com/dmg-builder/-/dmg-builder-23.0.3.tgz#ea94bc76fcd94612641580f3c6ae42c3f07f3fee" + integrity sha512-mBYrHHnSM5PC656TDE+xTGmXIuWHAGmmRfyM+dV0kP+AxtwPof4pAXNQ8COd0/exZQ4dqf72FiPS3B9G9aB5IA== dependencies: - app-builder-lib "22.14.13" - builder-util "22.14.13" - builder-util-runtime "8.9.2" + app-builder-lib "23.0.3" + builder-util "23.0.2" + builder-util-runtime "9.0.0" fs-extra "^10.0.0" iconv-lite "^0.6.2" js-yaml "^4.1.0" @@ -2598,17 +2612,17 @@ ejs@^3.1.6: dependencies: jake "^10.6.1" -electron-builder@^22.14.13: - version "22.14.13" - resolved "https://registry.yarnpkg.com/electron-builder/-/electron-builder-22.14.13.tgz#fd40564685cf5422a8f8d667940af3d3776f4fb8" - integrity sha512-3fgLxqF2TXVKiUPeg74O4V3l0l3j7ERLazo8sUbRkApw0+4iVAf2BJkHsHMaXiigsgCoEzK/F4/rB5rne/VAnw== +electron-builder@^23.0.3: + version "23.0.3" + resolved "https://registry.yarnpkg.com/electron-builder/-/electron-builder-23.0.3.tgz#16264a0d8e3d40da1467bcc8ef7917538b54a3bc" + integrity sha512-0lnTsljAgcOMuIiOjPcoFf+WxOOe/O04hZPgIvvUBXIbz3kolbNu0Xdch1f5WuQ40NdeZI7oqs8Eo395PcuGHQ== dependencies: "@types/yargs" "^17.0.1" - app-builder-lib "22.14.13" - builder-util "22.14.13" - builder-util-runtime "8.9.2" + app-builder-lib "23.0.3" + builder-util "23.0.2" + builder-util-runtime "9.0.0" chalk "^4.1.1" - dmg-builder "22.14.13" + dmg-builder "23.0.3" fs-extra "^10.0.0" is-ci "^3.0.0" lazy-val "^1.0.5" @@ -2707,10 +2721,10 @@ electron-notarize@^1.2.1: debug "^4.1.1" fs-extra "^9.0.1" -electron-osx-sign@^0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/electron-osx-sign/-/electron-osx-sign-0.5.0.tgz#fc258c5e896859904bbe3d01da06902c04b51c3a" - integrity sha512-icoRLHzFz/qxzDh/N4Pi2z4yVHurlsCAYQvsCSG7fCedJ4UJXBS6PoQyGH71IfcqKupcKeK7HX/NkyfG+v6vlQ== +electron-osx-sign@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/electron-osx-sign/-/electron-osx-sign-0.6.0.tgz#9b69c191d471d9458ef5b1e4fdd52baa059f1bb8" + integrity sha512-+hiIEb2Xxk6eDKJ2FFlpofCnemCbjbT5jz+BKGpVBrRNT3kWTGs4DfNX6IzGwgi33hUcXF+kFs9JW+r6Wc1LRg== dependencies: bluebird "^3.5.0" compare-version "^0.1.2" @@ -2719,14 +2733,14 @@ electron-osx-sign@^0.5.0: minimist "^1.2.0" plist "^3.0.1" -electron-publish@22.14.13: - version "22.14.13" - resolved "https://registry.yarnpkg.com/electron-publish/-/electron-publish-22.14.13.tgz#8b71e6975af8cc6ac5b21f293ade23f8704047c7" - integrity sha512-0oP3QiNj3e8ewOaEpEJV/o6Zrmy2VarVvZ/bH7kyO/S/aJf9x8vQsKVWpsdmSiZ5DJEHgarFIXrnO0ZQf0P9iQ== +electron-publish@23.0.2: + version "23.0.2" + resolved "https://registry.yarnpkg.com/electron-publish/-/electron-publish-23.0.2.tgz#aa11419ae57b847df4beb63b95e2b2a43161957c" + integrity sha512-8gMYgWqv96lc83FCm85wd+tEyxNTJQK7WKyPkNkO8GxModZqt1GO8S+/vAnFGxilS/7vsrVRXFfqiCDUCSuxEg== dependencies: "@types/fs-extra" "^9.0.11" - builder-util "22.14.13" - builder-util-runtime "8.9.2" + builder-util "23.0.2" + builder-util-runtime "9.0.0" chalk "^4.1.1" fs-extra "^10.0.0" lazy-val "^1.0.5" @@ -6406,7 +6420,7 @@ pkg-up@^2.0.0: dependencies: find-up "^2.1.0" -plist@^3.0.1: +plist@^3.0.1, plist@^3.0.4: version "3.0.5" resolved "https://registry.yarnpkg.com/plist/-/plist-3.0.5.tgz#2cbeb52d10e3cdccccf0c11a63a85d830970a987" integrity sha512-83vX4eYdQp3vP9SxuYgEM/G/pJQqLUz/V/xzPrzruLs7fz7jxGQ1msZ/mg1nwZxUSuOp4sb+/bEIbRrbzZRxDA==