Commit graph

405 commits

Author SHA1 Message Date
Manav Rathi 73ef03a5d9
Move read/write whole files into fs 2024-04-15 12:17:33 +05:30
Manav Rathi 8d24a489f6
[desktop] Fix payment redirect
Fixes: https://github.com/ente-io/ente/issues/1440

There were two issues:

- It was a backward incompatible change to change the scheme from ente:// to
  next://. Revert.

- We also need to setup a top level redirect when the user presses back without
  making any changes to their subscription.

**Tested by**

Running payments app and desktop app locally, and verifying that after
interactions with the payments endpoint we go back to the desktop app's actual
contents correctly.
2024-04-15 10:47:14 +05:30
Manav Rathi 18ac361688
Remove unused IPC method 2024-04-14 20:11:25 +05:30
Manav Rathi f5a4830a5a
Remove unnecessary check
e.g. macOS node shell

    > await fs.rename("/tmp/foo/bar/quxx.txt", "/tmp/foo/a.txt")
    [Error: ENOENT: no such file or directory, rename '/tmp/foo/bar/quxx.txt' -> '/tmp/foo/a.txt']
2024-04-14 18:28:10 +05:30
Manav Rathi eb64a00ed2
Remove unnecessary checks
It is simpler for us to parallel the rm command than our bespoke variant.
2024-04-14 18:22:46 +05:30
Manav Rathi 59b9e3e586
Move into fs 2024-04-14 18:12:19 +05:30
Manav Rathi 0f1c2fa1cd
Remove unnecessary check
Mentioned in rmdir docs

Tested on macOS with a node shell

    > await fs.rmdir("/tmp/foo/bar/baz")
    Uncaught [Error: ENOTEMPTY: directory not empty, rmdir '/tmp/foo/bar/baz']
2024-04-14 18:06:49 +05:30
Manav Rathi fb5ae3a2ac
Remove unnecessary check
rmdir docs already mention it'll only work on folders

Also tested on macOS with a node shell

    > await fs.rmdir("/tmp/foo/bar/baz/quxx.txt")
    Uncaught [Error: ENOTDIR: not a directory, rmdir '/tmp/foo/bar/baz/quxx.txt'] {
2024-04-14 17:55:40 +05:30
Manav Rathi 7438c3301e
Move mkdirIfNeeded into fs 2024-04-14 10:25:28 +05:30
Manav Rathi 72dd47fa7b
Audit rename 2024-04-14 09:27:52 +05:30
Manav Rathi 41472eb87d
Document and structure more 2024-04-12 20:24:48 +05:30
Manav Rathi 02763e3be4
Kill the renderer when we quit the app 2024-04-12 14:05:10 +05:30
Manav Rathi 8045bd1e5a
Rename and prune 2024-04-12 14:01:53 +05:30
Manav Rathi d1d9cd9518
Document 2024-04-12 13:48:16 +05:30
Manav Rathi 39912d9b35
Remove unused code 2024-04-12 13:25:48 +05:30
Manav Rathi cfec6ca52e
Enable the Chromium sandbox 2024-04-12 10:39:00 +05:30
Manav Rathi 98c3e43b70
Inline 2024-04-12 10:28:23 +05:30
Manav Rathi 87905a39f8
Dedup 2024-04-12 10:22:04 +05:30
Manav Rathi a71ca93696
Inline 2024-04-12 10:15:08 +05:30
Manav Rathi e651e9d9c7
Inline 2024-04-12 10:11:38 +05:30
Manav Rathi 664cf2157b
Reword 2024-04-12 10:07:03 +05:30
Manav Rathi aace18aba0
Inline and rename 2024-04-12 09:51:08 +05:30
Manav Rathi 4d867898f7
Remove the sharedarraybuffer flag
From my understanding, this was needed for the wasm FFMPEG, which we are no
longer using when running as the desktop app.
2024-04-12 09:43:52 +05:30
Manav Rathi 9c786da73b
Tweak 2024-04-12 09:38:38 +05:30
Manav Rathi 61143c9c62
Cleanup 2024-04-11 16:36:56 +05:30
Manav Rathi f5bf776848
lint 2024-04-11 15:06:03 +05:30
Manav Rathi 52727f2255
Also move the embedding 2024-04-11 15:04:18 +05:30
Manav Rathi 9ff4989d81
Cleanup 2024-04-11 14:44:00 +05:30
Manav Rathi a1d6ef43b4
Roundtrip 2024-04-11 14:37:44 +05:30
Manav Rathi 41f7b30ca0
Wire together 2024-04-11 14:22:52 +05:30
Manav Rathi a88f551b6a
WIP IPC API 2024-04-11 13:58:52 +05:30
Manav Rathi 7bf8912dbc
Duplicate for now 2024-04-11 13:45:02 +05:30
Manav Rathi 2b6047a979
Split 2024-04-11 13:40:35 +05:30
Manav Rathi d3eb85be8d
Split 2024-04-11 13:17:56 +05:30
Manav Rathi 500022d4b9
Import onnxruntime with TypeScript types
Refs:
- https://github.com/microsoft/onnxruntime/issues/17979
2024-04-10 21:01:30 +05:30
Manav Rathi 2da9565dcb
Rearrange files 2024-04-10 20:44:52 +05:30
Manav Rathi 8f8d93d11e
Use standard import for jpeg-js 2024-04-10 20:36:46 +05:30
Manav Rathi 008b6d5186
Spruce dependencies docs 2024-04-10 20:36:46 +05:30
Manav Rathi d913cbeae5
Remove unnecessary require 2024-04-10 20:32:32 +05:30
Manav Rathi 11451efffd
Restore macOS icon
git checkout 42679bc9daa4108681683079f4cb1f2832f4578c~ -- build/icon.icns
2024-04-10 20:32:32 +05:30
Manav Rathi ecf40a70cf
[desktop] Build ARM64 variant of Windows
Fixes https://github.com/ente-io/ente/issues/1374

A customer reported that the app fails to run on Windows ARM. The error is
coming when trying to load ONNX.

ONNX runtime supports Windows ARM, e.g. see
- https://www.jsdelivr.com/package/npm/onnxruntime-node?tab=files&path=bin%2Fnapi-v3%2Fwin32
- https://github.com/microsoft/onnxruntime/issues/18078

The issue then seems to be that we're not actually building for Windows ARM. I'm
not sure about this (don't have a Windows ARM machine at hand), but my theory is
that since we don't ask Electron Builder to build for win arm64, it doesn't copy
the corresponding ONNX binary into the generated bundle.

Other refs:
- https://www.electron.build/cli.html
2024-04-10 19:33:37 +05:30
Manav Rathi c73c674ee4
Update to the new product name where possible
(without breaking auto-updates)
2024-04-10 16:07:25 +05:30
Manav Rathi e57e6845a5
Product name 2024-04-10 16:06:04 +05:30
Manav Rathi 3123caea92
Document the tray icon 2024-04-10 16:05:52 +05:30
Manav Rathi 4e3cce51de
Inline 2024-04-10 15:59:57 +05:30
Manav Rathi 127bb9988f
Remove top level wrapper 2024-04-10 15:55:58 +05:30
Manav Rathi 6ec4cc7c89
Log unhandled errors and promise rejections in the desktop app
Test code:

    setTimeout(() => testFunctionSync(), 5000);
    setTimeout(
        () => testFunction().then(() => console.log("done testFunction")),
        10000,
    );

    const testFunctionSync = () => {
        console.log("sleeping not");
        throw new Error("Handle me");
    };

    const testFunction = async () => {
        console.log("sleeping");
        await fs.mkdir("/tmp/foo", { recursive: true });
        console.log("woke up");
        throw new Error("Handle me");
    };
2024-04-10 13:35:04 +05:30
Manav Rathi af79f4f0c9
Audit app update functions 2024-04-10 12:32:43 +05:30
Manav Rathi 3c7277a0b1
onMainWindowFocus 2024-04-10 11:16:21 +05:30
Manav Rathi 170aef9b30
Rename 2024-04-10 11:06:18 +05:30
Manav Rathi 8bcf77b7f7
IPC keys 2024-04-10 11:03:36 +05:30
Manav Rathi 18606b2358
IPC cleanup 2024-04-10 10:18:06 +05:30
Manav Rathi 6a7220ca43
Remove support files for (removed) Windows GGML binary
These were added together with the GGML Windows binary in commit
c3887847bc.
2024-04-09 21:32:41 +05:30
Manav Rathi e8d224c511
Remove stale ggml reference 2024-04-09 21:29:15 +05:30
Manav Rathi 7dccdecff3
Improve log 2024-04-09 21:24:31 +05:30
Manav Rathi 4327cfdb23
Only ONNX, desktop 2024-04-09 20:46:27 +05:30
Manav Rathi af07de58f6
More docs 2024-04-09 16:36:23 +05:30
Manav Rathi b937102cda
A more apropos link 2024-04-09 16:22:02 +05:30
Manav Rathi 2b7aa372bd
Switch 2024-04-09 10:33:54 +05:30
Manav Rathi 3c9f11ee60
Tweak log format 2024-04-09 10:03:30 +05:30
Manav Rathi 90a770c619
WIP 2024-04-08 18:09:08 +05:30
Manav Rathi f4f041552f
Move electron API types to lower layer 2024-04-08 16:51:48 +05:30
Manav Rathi 48f741b792
Tweak docs 2024-04-08 15:02:32 +05:30
Manav Rathi 7be4b47e51
Tighten type checking progressively 2024-04-08 14:57:49 +05:30
Manav Rathi f65e738507
Move to types 2024-04-08 14:42:44 +05:30
Manav Rathi c8089fbb60
Inline uncaptured errors 2024-04-08 14:40:44 +05:30
Manav Rathi 15e290a993
api => services 2024-04-08 14:31:19 +05:30
Manav Rathi 12fa3be6c5
Event handler cleanup 2024-04-08 14:24:50 +05:30
Manav Rathi 5ae6d7d47b
Don't wait for ready before logging startup banner
> The only hint is to call the code in main.ts without waiting for the ready event.
>
> https://github.com/megahertz/electron-log/issues/408
2024-04-08 14:17:02 +05:30
Manav Rathi 18e47b3d4e
Synchronize startup banners 2024-04-08 14:09:59 +05:30
Manav Rathi 35736c447d
Cleanup 2024-04-08 13:59:40 +05:30
Manav Rathi c458b429a0
Let the web side log errors for the bridged methods 2024-04-08 13:58:28 +05:30
Manav Rathi c5bb479c4f
Consolidate logging / desktop 2024-04-08 13:44:39 +05:30
Manav Rathi 5810d2b762
Add yarn preview:* 2024-03-30 18:06:58 +05:30
Manav Rathi 3706b99d36
Remove debug print 2024-03-27 21:21:31 +05:30
Manav Rathi 1bb79854a5
Mollify TypeScript 2024-03-27 21:17:30 +05:30
Manav Rathi c9f8ad3e88
Tidy and prune the app's menu
- Switch to title case (discussed with others that the app's main menu is an
  appropriate choice and exception to our sentence casing otherwise).

- Prune
2024-03-27 21:12:45 +05:30
Manav Rathi 0dda25800e
Update the node version number in tsconfig doc comments 2024-03-27 20:34:10 +05:30
Manav Rathi 95eec1f3d6
Remove brew special casing
Brew Formulae support an `auto_updates true` flag which tells brew's auto update
mechanism to stay out of the way.

Ref: https://docs.brew.sh/FAQ#why-arent-some-apps-included-during-brew-upgrade

Will need to open a PR to update our Formula though.

9241d331b6/Casks/e/ente.rb (L9)
2024-03-27 20:29:11 +05:30
Manav Rathi 5ac4799ce1
Support arbitrary parameters like console.log 2024-03-27 20:26:16 +05:30
Manav Rathi 3699118f0c
Don't shellescape fully formed commands 2024-03-27 20:10:45 +05:30
Manav Rathi cf71d1477b
update to new functions in more places 2024-03-27 17:44:49 +05:30
Manav Rathi 937e09f6a3
Fix import errors 2024-03-27 17:21:42 +05:30
Manav Rathi 8ffe1ece2d
Relay isFolder error back to renderer 2024-03-27 17:13:25 +05:30
Manav Rathi 175ea274c4
Alternative formatting 2024-03-27 17:07:56 +05:30
Manav Rathi 08489c8237
Tweak "render-process-gone" handler 2024-03-27 17:04:46 +05:30
Manav Rathi 3e61ebf1df
Add types for shellescape
Refs:

- https://github.com/boazy/any-shell-escape
- https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/types/shell-escape/index.d.ts
- https://www.typescriptlang.org/docs/handbook/declaration-files/templates/module-d-ts.html
2024-03-27 16:36:31 +05:30
Manav Rathi e1c2c9fc98
Rearrange 2024-03-27 15:55:02 +05:30
Manav Rathi c38542dbfb
Init logging 2024-03-27 15:34:29 +05:30
Manav Rathi 27047da08b
Use a truthy check 2024-03-27 15:12:40 +05:30
Manav Rathi 846c2af02b
Outline a potential approach 2024-03-27 15:10:35 +05:30
Manav Rathi 42679bc9da
Remove duplicated icon
Per https://www.electron.build/icons, a single 512x512 icon.png placed in the
buildResources directory (default `build`) is enough to generate icons for all
three - macOS, Windows and Linux.
2024-03-27 15:00:25 +05:30
Manav Rathi 88e8e1a18d
Remove hacky splash window with a background color
...hacky because it was using a timer instead of the "ready-to-show" event
(which wasn't getting fired for some reason). It is recommended that we set a
background color anyway.
2024-03-26 21:45:21 +05:30
Manav Rathi ac97d65c12
Remove one copy of duplication from IPC types 2024-03-26 21:45:21 +05:30
Manav Rathi b0ca3a1a9f
Preload won't have logging 2024-03-26 21:45:21 +05:30
Manav Rathi c055cd9b4a
Remove the tscw 2024-03-26 21:45:21 +05:30
Manav Rathi 9e987f62f6
Fix paths of splash etc 2024-03-26 21:45:21 +05:30
Manav Rathi cb33b6df10
Refactor the init process 2024-03-26 21:45:20 +05:30
Manav Rathi c3dfa46514
Major version update of Electron
And other surrounding packages.
2024-03-26 21:42:48 +05:30
Manav Rathi 24176d8c40
Document a few more dependencies 2024-03-26 21:42:48 +05:30
Manav Rathi 6e737cdf9a
Mention package.json in the shx description 2024-03-26 21:42:48 +05:30
Manav Rathi 8f978a3d3d
Manually update the version info in package.json 2024-03-26 21:42:48 +05:30
Manav Rathi fe94a4cd77
yarn-upgrade interactive 2024-03-26 21:42:48 +05:30
Manav Rathi 140b65b69d
Use default import instead of star import
Refs:
https://stackoverflow.com/questions/31386631/difference-between-import-x-and-import-as-x-in-node-js-es6-babel
2024-03-26 21:42:48 +05:30
Manav Rathi db930feaf3
Stop source map generation
This isn't doing anything for us currently, and I suspect is also the source of
this error when trying to run a binary built using `yarn build:quick`

> DevTools failed to load source map: Could not load content for next://app/preload.js.map:
  Unexpected token '<', "<!DOCTYPE "... is not valid JSON

Note that the renderer process already has source maps.
2024-03-26 21:42:48 +05:30
Manav Rathi 2038b036c5
Remove baseUrl that didn't work
From what I've understood, there isn't a way for us to use the baseUrl for
absolute imports without also using a bundler. The baseUrl works for the
tsconfig, but not for the generated JS.

Since this setting was anyways not working, remove it. Tested by doing `yarn
dev`, `yarn build` and also doing a quick perusal in VSCode to see that it is
not reporting any errors.

Refs:

- https://stackoverflow.com/questions/50679031/why-are-these-tsconfig-paths-not-working
- https://github.com/electron-react-boilerplate/electron-react-boilerplate/issues/2737
- https://stackoverflow.com/questions/40407342/resolving-paths-in-typescript-outdir
- https://stackoverflow.com/questions/51683827/using-paths-in-typescript-in-a-nodejs-project
2024-03-26 21:42:48 +05:30
Manav Rathi a4ecc2c344
Update ente.io/faq => help.ente.io where possible
On desktop, now there Help menu will have an "Ente Help" option instead of "FAQ"
(Unrelated: I noticed that user facing strings in the desktop app are not
localized).

The only place remaining after this is the sidebar on mobile
(`support_section_widget.dart`), but I wasn't sure of what string to use (and
how to add it to the localized strings for mobile) so I've left it unchanged.
2024-03-25 19:26:10 +05:30
LI-NA 8e4ca0bc79 [desktop] Add shx and change the build command
To make the build script work on Windows, added the `shx` package in dev dependency and changed the `rm` and `ln` commands to `shx rm` and `shx ln`.
2024-03-25 20:11:44 +09:00
Manav Rathi f8a36852a6
Prepare for test 2024-03-25 15:39:29 +05:30
Manav Rathi 892bf852a5
Convert remaining upload functions 2024-03-25 15:29:39 +05:30
Manav Rathi f53b1361e8
Move file related functions 2024-03-25 15:09:51 +05:30
Manav Rathi 4261624da5
Handle rest of watch related functions 2024-03-25 14:03:20 +05:30
Manav Rathi 186e76c62b
Move add/remove watch functions to preload 2024-03-25 13:49:48 +05:30
Manav Rathi 96ea53face
preload / watch - part 1
The change event was not being used (since
dca542e781), so also remove that dead code.
2024-03-25 13:31:28 +05:30
Manav Rathi 67468c6ff9
Move the selection dialogs 2024-03-25 13:02:06 +05:30
Manav Rathi e8acbd8c9f
Convert the other conversion functions 2024-03-25 12:45:21 +05:30
Manav Rathi 2522da2b5e
Handle runFFMPEGCmd in preload 2024-03-25 12:32:57 +05:30
Manav Rathi dd7e87274a
Handle set/getEncryptionKey in preload 2024-03-25 12:19:19 +05:30
Manav Rathi 106ba270fe
Handle ML related functions in updated preload 2024-03-25 12:09:11 +05:30
Manav Rathi d3093809d6
Inline more into preload 2024-03-23 20:25:56 +05:30
Manav Rathi 81ba5379c9
Move checkExistsAndCreateDir out of preload 2024-03-23 20:06:27 +05:30
Manav Rathi f21dc84840
Switch to async fs.exists
We cannot expose the sync version over the context bridge - the node:fs module
is not available to the preload script under context isolation.
2024-03-23 19:59:47 +05:30
Manav Rathi a5c3aff54b
Expose an fs.exists over the context bridge 2024-03-23 18:28:22 +05:30
Manav Rathi 7a3209ebf6
Fix preload.ts - Part x/x 2024-03-23 16:13:16 +05:30
Manav Rathi 0fdb2fb357
Fix type errors in fs.ts 2024-03-22 20:01:02 +05:30
Manav Rathi 6c8f4185f7
Fix error in clipService 2024-03-22 19:56:36 +05:30
Manav Rathi 31ad9a3eb3
Document that the main process is not restarted 2024-03-22 19:55:57 +05:30
Manav Rathi 68fe6f45c4
Validate that getPath is not throwing 2024-03-22 17:54:02 +05:30
Manav Rathi 3dbf82552d
Use the web native cache only - desktop side changes 2024-03-22 17:28:05 +05:30
Manav Rathi 22e57669fb
[photos-desktop] Disable node integration - Part x/x (#1176)
This continues the refactoring to disable node integration in our
rendered process. The code is still in a WIP state, and more PRs in this
series will come.
2024-03-22 16:06:16 +05:30
Manav Rathi f083f0633d
Remove electron-reload
It reloads the BrowserWindow, but that already has HMR since we're connecting to
a Next dev server on localhost.

What we want is the main process to reload if the files for the main process are
changed. All options I've found so far just restart the main app on changes to
the main process code. I'm not sure that'll be useful, so not adding them right
now (and in any case, this is not a regression, it just wasn't working with
electron-reload either). For future reference if I need to revisit this, these
are the things I scouted:

- https://www.electronforge.io/config/plugins/webpack
- https://github.com/sindresorhus/electron-reloader
- https://electron-vite.org/guide/hot-reloading.html
2024-03-22 15:55:25 +05:30
Manav Rathi f2c288bdab
Remove promise-fs
Unnecessary, and unmaintained (since now node offers it natively)
2024-03-22 15:54:18 +05:30
Mathieu Velten 87de9e2afa Fix an error in the order of the arguments for imagemagick 2024-03-22 11:21:36 +01:00
Manav Rathi 1830a1b931
Let fs.readFile throw on non-existent files 2024-03-22 15:39:05 +05:30
Manav Rathi b6b4ee7e3a
recursive: true is mkdir -p 2024-03-22 15:31:45 +05:30
Manav Rathi c41bb571f6
Convert more promise-fs 2024-03-22 15:23:41 +05:30
Manav Rathi 94ac21950d
Convert to Electron's native fetch 2024-03-22 15:21:27 +05:30
Manav Rathi 8c40b950c7
Remove old and no longer necessary desktop cutoff version flag
It's been more than an 1.5 years since this was needed, everyone should've
updated by now.
2024-03-22 15:17:59 +05:30
Manav Rathi 8391e7edfc
Start migrating from promise-fs 2024-03-22 15:13:37 +05:30
Manav Rathi d98c3686c5
Inline 2024-03-22 11:33:24 +05:30
Manav Rathi 025ef4e1d9
Shorten 2024-03-22 11:26:04 +05:30
Manav Rathi 18deac3a41
Document 2024-03-22 11:21:05 +05:30
Manav Rathi b1f45c8602
Move export functions to preload 2024-03-22 09:49:11 +05:30
Manav Rathi 3c4619e5e4
Add a notice 2024-03-21 12:13:39 +05:30
Manav Rathi 4ea43e619b
More docs 2024-03-21 10:54:32 +05:30
Manav Rathi cd1d22cdfb
Shorten 2024-03-21 10:45:48 +05:30
Manav Rathi cc623e5010
Remove unnecessary steps
I'm not sure how it is happening, but both ffmpeg-static and onnx get to their
correct path without this configuration. the paths it gets to is also slightly
different, so it seems that this snippet does not have any effect (at best):

    ente.app/Contents/Resources/app.asar.unpacked/node_modules
2024-03-21 10:43:33 +05:30
Manav Rathi bb865a7b15
Add documentation about ffmpeg
https://alexandercleasby.dev/blog/use-ffmpeg-electron
2024-03-21 10:16:21 +05:30
Manav Rathi 7b1b6bf88f
Document a better, more explicit, reference 2024-03-20 13:47:38 +05:30
Manav Rathi 4c651da244
Document my current understanding 2024-03-20 13:17:41 +05:30
Manav Rathi 467acf2b8e
Remove old migration path
This migration path was in the last release v1.6.63, and it has now been out
there for a couple of months so apart from some outliers the migration should've
already happened. Even for the outliers, this will increase their cache size but
won't have a functional impact.

Cleaning this code now to reduce the amount that needs to be changed to support
a contextBridge aware cache.
2024-03-20 12:29:58 +05:30
Manav Rathi 0eedd5e57f
Add deprecation notice to ElectronFile 2024-03-20 10:52:31 +05:30
Manav Rathi 0634727ef3
Remove unused file
From my understanding, this was accidentally leftover from 3c8af97f69
2024-03-20 10:34:17 +05:30
Manav Rathi 8b0ce5d521
Add documentation links 2024-03-20 10:32:29 +05:30
Manav Rathi 8f2bb9c861
Add note about custom errors 2024-03-19 19:18:05 +05:30
Manav Rathi 83477cfe37
Forward clearElectronStore 2024-03-19 19:18:05 +05:30
Manav Rathi 3ce8513e48
Move more standalone methods to preload 2024-03-19 19:18:05 +05:30
Manav Rathi b3289f2b8d
Remove (kindof) unused reloadWindow IPC
We now bundle the renderer code within the app. So a load-fail indicates
something really wrong, not something we can deal with upfront (the code wasn't
probably even working - e.g. it was assigning to a function parameter
mainWindow, not the actual global var behind it).
2024-03-19 19:18:05 +05:30
Manav Rathi 3a6c7b2dcd
Remove unused sendNotification IPC 2024-03-19 19:18:05 +05:30
Manav Rathi 502469e97f
Move some non-duplicated FS related functions to preload 2024-03-19 19:18:05 +05:30
Manav Rathi c98762b448
Inline ML related functions 2024-03-19 19:18:05 +05:30
Manav Rathi e00b8fd2f1
Remove unused IPC for getPlatform 2024-03-19 19:18:05 +05:30
Manav Rathi eeaa5165ab
Remove custom cache directory
From discussions, it seems that it was pre-emptively added but not specifically
requested by a customer. We can bring this back later if needed, or at least
offer better options to clean it, but for now I'm pruning the IPC surface to
reduce the amount of work needed for handling contextIsolation and sandboxing.
2024-03-19 19:18:04 +05:30
Manav Rathi e4684b22df
Move out the electron-builder config to separate file 2024-03-19 19:17:01 +05:30
Manav Rathi d80fad6cf1
Remove unused vscode extension support
This doesn't belong in the repo even if were used
https://github.com/standard/vscode-standard
2024-03-19 19:17:01 +05:30
Manav Rathi a8de049519
Update concurrently's major version
No breaking changes that impact us - https://github.com/open-cli-tools/concurrently/releases
2024-03-19 19:17:01 +05:30
Manav Rathi e9fa525fe9
Remove unused electron-download
It was used for downloading symbols
2024-03-19 19:17:01 +05:30
Manav Rathi bff58f7b78
Update eslint settings to match main project 2024-03-19 19:17:01 +05:30
Manav Rathi a0f95b6080
Settle on a tsconfig for now
Electron also comes with its own type definitions, and from a (possibly dated)
blog post announcing this I got that we should not be overriding it with
@types/node: https://www.electronjs.org/pt/blog/typescript
2024-03-19 19:17:01 +05:30
Manav Rathi c19370ec51
Outline an ideal tsconfig.json 2024-03-19 19:17:01 +05:30
Manav Rathi 341f0fa559
Upgrade TypeScript 2024-03-19 19:17:01 +05:30
Manav Rathi e64d44639d
Document the conceputal way forward
Alternatives considered:

- https://github.com/alex8088/electron-toolkit
- https://electron-vite.org/
- https://github.com/cawa-93/vite-electron-builder/
2024-03-19 19:17:01 +05:30
Manav Rathi 04b9966425
Quicker quick
Ref: https://webpack.electron.build/building
2024-03-19 19:17:01 +05:30
Manav Rathi 0e861d5c48
Add some notes
The helpful snippet about the purpose of install-app-deps taken from
https://webpack.electron.build/dependency-management
2024-03-19 19:17:01 +05:30
Manav Rathi b7b33eba4a
Switch to contextBridge - Part 1 2024-03-19 19:17:01 +05:30
Manav Rathi 1266648562
Merge docs 2024-03-19 19:17:01 +05:30
Manav Rathi eb4f9402db
Enable prose-wrap 2024-03-19 19:17:01 +05:30
Manav Rathi 983beb89dc
Enable prose-wrap 2024-03-19 19:17:01 +05:30
Manav Rathi f29d9e1583
Re-enable contextIsolation and sandboxing
Things will break, but let's try to fix them. In the current state, this is
preventing us from running `yarn dev` without reverting back to Electron 21.
2024-03-19 19:17:01 +05:30
Manav Rathi d83f9d0210
Still need submodules
Until web needs them
2024-03-19 19:17:01 +05:30
Manav Rathi b79f8347b6
Import the existing DesktopDistribute notes 2024-03-14 20:31:47 +05:30
Manav Rathi a5e6f0cc30
Let Prettier 3 have a go at it 2024-03-12 18:01:09 +05:30
Manav Rathi 2322b41f67
Watch during dev 2024-03-12 17:56:46 +05:30
Manav Rathi 685e75d97d
Switch to upstream 2024-03-12 17:38:39 +05:30
Manav Rathi cde87716a1
Remove the custom next-electron-server
The only change this has in addition to next-electron-server seems to be
https://github.com/ente-io/next-electron-server/pull/1/files, will try to test
along the way to determine its impact.
2024-03-12 17:02:28 +05:30
Manav Rathi dff0af3397
Fix path to main process entrypoint 2024-03-12 16:47:41 +05:30
Manav Rathi c8b9b4cd8f
Document better 2024-03-12 16:33:43 +05:30
Manav Rathi d7cd2cecbc
Default buildResources is build 2024-03-12 16:12:53 +05:30
Manav Rathi e219197e2f
Fix import 2024-03-12 15:07:06 +05:30
Manav Rathi 9b6e47d291
[desktop] Remove sentry
See 70cddfdf0b
2024-03-12 13:54:17 +05:30
Manav Rathi 84926cbee1 build take 2 2024-03-11 18:52:28 +05:30
Manav Rathi 027ae1cfb9 build => resources 2024-03-11 17:37:43 +05:30
Manav Rathi 621f81355b Work towards fixing build 2024-03-11 17:37:10 +05:30
Manav Rathi 849b61c5cf Document some and fix the path 2024-03-11 17:29:39 +05:30
Manav Rathi 267ad0d11f [desktop] Fix yarn build 2024-03-11 17:04:17 +05:30
Manav Rathi 88741083fe Prettier 3 + reformat (same as web) 2024-03-11 16:46:52 +05:30
Manav Rathi 829406fa62 Tweak .gitignore 2024-03-11 16:38:32 +05:30
Manav Rathi df13eac6ef Remove unused files 2024-03-11 16:35:00 +05:30
Manav Rathi 25dda3598c Remove husky and lint-staged 2024-03-11 16:31:48 +05:30
Manav Rathi 918e70b516 Update links to GitHub from within the apps 2024-03-03 18:08:11 +05:30
Manav Rathi 6f7a47f04e Update desktop/ to account for new monorepo structure 2024-03-02 17:57:37 +05:30
Manav Rathi 0fc7f31818 Remove the recursive submodule 2024-03-01 16:38:56 +05:30
Manav Rathi d7ef0e238c Add README notices about the in-progress migration to this repository 2024-03-01 16:35:45 +05:30
Manav Rathi 9cdaabc403
Move all submodules to the top level (#505)
## Description

## Tests
2024-03-01 16:16:25 +05:30
Manav Rathi 1ac5222b09 Move into desktop/ 2024-03-01 12:36:35 +05:30