From 1f56032b22089cb58e5613a714db95753bf807e0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Krist=C3=B3f=20Marussy?= Date: Sun, 2 Jan 2022 11:32:15 +0100 Subject: fix: Ensure dev user directory exists MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes #5 Signed-off-by: Kristóf Marussy --- packages/main/package.json | 1 + packages/main/src/index.ts | 7 ++++--- yarn.lock | 1 + 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/packages/main/package.json b/packages/main/package.json index f4cf18b..3b3e45c 100644 --- a/packages/main/package.json +++ b/packages/main/package.json @@ -12,6 +12,7 @@ "@sophie/shared": "workspace:*", "chalk": "^5.0.0", "electron": "16.0.5", + "fs-extra": "^10.0.0", "json5": "^2.2.0", "lodash-es": "^4.17.21", "loglevel": "^1.8.0", diff --git a/packages/main/src/index.ts b/packages/main/src/index.ts index 41424ab..ff14332 100644 --- a/packages/main/src/index.ts +++ b/packages/main/src/index.ts @@ -24,8 +24,7 @@ import { BrowserWindow, ipcMain, } from 'electron'; -import { readFileSync } from 'fs'; -import { readFile } from 'fs/promises'; +import { ensureDirSync, readFile, readFileSync } from 'fs-extra'; import { autorun } from 'mobx'; import { getSnapshot, onPatch } from 'mobx-state-tree'; import { join } from 'path'; @@ -55,7 +54,9 @@ app.enableSandbox(); // Use alternative directory when debugging to avoid clobbering the main installation. if (isDevelopment) { - app.setPath('userData', `${app.getPath('userData')}-dev`); + const devUserDataPath = `${app.getPath('userData')}-dev`; + app.setPath('userData', devUserDataPath); + ensureDirSync(devUserDataPath); } // Only allow a single instance at a time. diff --git a/yarn.lock b/yarn.lock index 41293cb..50f2abf 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1207,6 +1207,7 @@ __metadata: electron: 16.0.5 electron-devtools-installer: ^3.2.0 esbuild: ^0.14.9 + fs-extra: ^10.0.0 jest: ^27.4.5 json5: ^2.2.0 lodash-es: ^4.17.21 -- cgit v1.2.3