Commit Graph

658 Commits

Author SHA1 Message Date
Manav Rathi
d188abfe65 Add a workaround for the SUID sandbox helper error on Linux
I am able to reproduce this on Ubuntu 24 ARM.

> The SUID sandbox helper binary was found, but is not configured correctly.

See:
- https://github.com/electron/electron/issues/17972
- https://stackoverflow.com/questions/63780918/building-electron-linux-distro-the-suid-sandbox-helper-binary-was-found-but-i
2024-05-12 15:35:18 +05:30
Manav Rathi
2a3bf41937 Update instructions 2024-05-11 19:19:56 +05:30
Manav Rathi
c7aa5ccd1f Document log paths 2024-05-11 18:56:37 +05:30
Manav Rathi
be329bc1c9 electron 30.0.3
https://github.com/electron/electron/releases/tag/v30.0.3

Fixed an issue where fs.createWriteStream could write out of order
https://github.com/electron/electron/pull/42046

Fixed crash after upgrade on Linux
https://github.com/electron/electron/pull/42064
2024-05-11 18:52:07 +05:30
Manav Rathi
1b3e11f713 Log errors/warnings to the console always 2024-05-10 11:00:13 +05:30
Manav Rathi
b22361d652 yarn lint-fix 2024-05-08 12:12:03 +05:30
Manav Rathi
4db07149ae [desktop] Don't invoke electron-builder twice on CI 2024-05-08 12:10:20 +05:30
Manav Rathi
7e0ef23bc1 yarn lint-fix 2024-05-08 11:20:28 +05:30
Manav Rathi
212f863733 Restore the yarn-timeout workaround
e.g. see a recent build failures:
https://github.com/ente-io/photos-desktop/actions/runs/8996782367/job/24713793588

there was another one recently. both of these were on the Windows runner, in one
case the message was:

    info There appears to be trouble with your network connection. Retrying...

in another case the issue manifested later

    D:\a\photos-desktop\photos-desktop\web\node_modules\date-fns\formatISO\index.js:11
    /**

    SyntaxError: Invalid or unexpected token
        at internalCompileFunction (node:internal/vm:128:18)
        at wrapSafe (node:internal/modules/cjs/loader:1280:20)

but retrying fixed it, so I'm counting it as a broken package install.
2024-05-08 11:17:15 +05:30
Manav Rathi
a07d999b74 Clarify 2024-05-08 10:26:21 +05:30
Manav Rathi
771a02c36b rc 2024-05-08 10:15:12 +05:30
Manav Rathi
145a7cee2a yarn lint-fix 2024-05-08 10:10:34 +05:30
Manav Rathi
0d1ad8b8e1 More release shenanigans 2024-05-08 10:04:16 +05:30
Manav Rathi
8eac3d701f Finalize 2024-05-07 21:09:15 +05:30
Manav Rathi
8635162259 Force a version 2024-05-07 20:38:51 +05:30
Manav Rathi
abe8a5eed0 Force a feed URL 2024-05-07 20:38:51 +05:30
Manav Rathi
0949f32638 Use provided timeoutMS 2024-05-07 20:35:59 +05:30
Manav Rathi
977557146b Improve 2024-05-07 16:18:04 +05:30
Manav Rathi
2208d686da Add a potential approach
Refs:
- Testing auto updates
  https://github.com/electron-userland/electron-builder/issues/3053
- https://github.com/electron-userland/electron-builder/issues/1505
- https://github.com/electron-userland/electron-builder/issues/1393
2024-05-07 15:13:43 +05:30
Manav Rathi
5d3bb71bbf Make the hide dock icon setting macOS only 2024-05-07 14:30:37 +05:30
Manav Rathi
c090300175 Remove electron-builder-notarize
The environment variables we are passing get picked by the built in notarization
code in electron-builder which signs successfully.

    notarization successful

But thereafter electron-builder-notarize starts throwing some errors:

    Error: The appleIdPassword property is required when using notarization with password credentials
        at validateNotaryToolAuthorizationArgs (/Users/runner/work/photos-desktop/photos-desktop/desktop/node_modules/electron-notarize/src/validate-args.ts:107:13)
    Skipping notarization: The appleIdPassword property is required when using notarization with appleId
        at module.exports (/Users/runner/work/photos-desktop/photos-desktop/desktop/node_modules/electron-builder-notarize/validate.js:42:18)

Since the notarization has already happened, we don't need this
2024-05-07 14:25:22 +05:30
Manav Rathi
08b5672f93 Migrate off from deprecated API 2024-05-07 09:46:12 +05:30
Manav Rathi
6efbaacdd1 Add note about keychain 2024-05-07 09:43:32 +05:30
Manav Rathi
939b228a0d Note about appDir 2024-05-07 09:37:44 +05:30
Manav Rathi
555eda0619 Check 2024-05-06 19:28:05 +05:30
Manav Rathi
333f364d38 Serve legacy face crops 2024-05-06 19:20:25 +05:30
Manav Rathi
0af7d2c13e Retain the devtools option for perhaps another build to help in extreme cases 2024-05-06 16:31:18 +05:30
Manav Rathi
8a8d29e6b9 Fix loading of preload scripts 2024-05-06 16:29:51 +05:30
Manav Rathi
a8d3a8bfe8 Remove duplicate notarization attempt
From build logs:

     • notarization successful
    Error: The appleIdPassword property is required when using notarization with password credentials
        at validateNotaryToolAuthorizationArgs (/Users/runner/work/photos-desktop/photos-desktop/desktop/node_modules/electron-notarize/src/validate-args.ts:107:13)

Not sure, but at the face of it (since this was not enabled earlier too), our
notarization process kicks in during signing because of the presence of env
vars, and specifying it again here starts a separate process we haven't
configured.
2024-05-06 16:08:23 +05:30
Manav Rathi
5f964e533c Show always (for temp debugging) 2024-05-06 16:07:35 +05:30
Manav Rathi
51e9383ce0 lint 2024-05-06 15:33:21 +05:30
Manav Rathi
c2f5c3968c Note what I noticed 2024-05-06 15:31:07 +05:30
Manav Rathi
90d56f3886 Show dev tools always 2024-05-06 15:26:26 +05:30
Manav Rathi
aa81e14fed Draft release for testing 2024-05-06 15:22:21 +05:30
Manav Rathi
2b9ee7824d lint 2024-05-03 14:44:24 +05:30
Manav Rathi
ea812561c6 Run everywhere 2024-05-03 14:38:56 +05:30
Manav Rathi
3fafc5fd99 Use an Electron Builder version that supports notarytool
We need the following patch (from the release notes of v25.0.0-alpha.6)
https://github.com/electron-userland/electron-builder/releases

> feat: Make notarization with Apple ID more usable by
> https://github.com/electron-userland/electron-builder/pull/8159
2024-05-03 13:17:58 +05:30
Manav Rathi
b24d80a267 Move to new notarization mechanism
Refs:
- https://www.electron.build/configuration/mac.html#NotarizeLegacyOptions
- https://github.com/electron-userland/electron-builder/blob/master/packages/app-builder-lib/src/macPackager.ts
- https://github.com/samuelmeuli/action-electron-builder/issues/101
2024-05-03 13:02:19 +05:30
Manav Rathi
0f3555468d Provide repository
Fixes:

    Cannot detect repository by .git/config. Please specify "repository" in the package.json (https://docs.npmjs.com/files/package.json#repository).
    Please see https://electron.build/configuration/publish  failedTask=build stackTrace=Error: Cannot detect repository by .git/config. Please specify "repository" in the package.json (https://docs.npmjs.com/files/package.json#repository).
2024-05-03 12:09:03 +05:30
Manav Rathi
e9feec37d5 Run the electron builder in the correct path 2024-05-03 11:28:06 +05:30
Manav Rathi
5d0e62cf5f Use same convention as other preexisting tags in our repo 2024-05-03 11:08:06 +05:30
Manav Rathi
647cc0d803 [desktop] Fix ref ref in action
ref_name is the (from my understanding) the shorthand we need for prefixing. Untested, will do a test build.
2024-05-03 11:00:55 +05:30
Manav Rathi
ddad863b31 Prepare for release 2024-05-03 10:50:21 +05:30
Manav Rathi
0c4da8c86a POSIX paths 2024-05-02 21:38:02 +05:30
Manav Rathi
6a99002064 Start using it 2024-05-02 21:25:44 +05:30
Manav Rathi
67eed1aa89 Upgrade to Electron 30
This picks up the stream fix we need
> Fixed data corruption when protocol.handle() processed incoming data asynchronously. #41933 (Also in 31)
>
> https://github.com/electron/electron/releases/tag/v30.0.2
2024-05-02 21:20:26 +05:30
Manav Rathi
2f2d15c9f2 lint 2024-05-02 20:22:40 +05:30
Manav Rathi
fecfb4a8b7 Hopes and dreams 2024-05-02 19:52:39 +05:30
Manav Rathi
3b3d24e9e0 It'll need to live in the releases repo, reword accordingly 2024-05-02 19:34:58 +05:30
Manav Rathi
fa182b951d [desktop] Resurrect build
Untested
2024-05-02 12:55:08 +05:30