diff --git a/src/main/config/app.ts b/src/main/config/app.ts index c90216e..884b927 100644 --- a/src/main/config/app.ts +++ b/src/main/config/app.ts @@ -9,7 +9,13 @@ let appConfig: IAppConfig // config.yaml export async function getAppConfig(force = false): Promise { if (force || !appConfig) { const data = await readFile(appConfigPath(), 'utf-8') - appConfig = parse(data) || defaultConfig + const parsedConfig = parse(data) + const mergedConfig = deepMerge({ ...defaultConfig }, parsedConfig || {}) + if (JSON.stringify(mergedConfig) !== JSON.stringify(parsedConfig)) { + await writeFile(appConfigPath(), stringify(mergedConfig)) + } + + appConfig = mergedConfig } if (typeof appConfig !== 'object') appConfig = defaultConfig return appConfig