fix: store Hive data in the app support directory, not ~/Documents

This commit is contained in:
randogoth 2026-09-27 00:09:18 +03:00
parent f57336b7ea
commit f80315e7c4
3 changed files with 9 additions and 2 deletions

View file

@ -1,6 +1,7 @@
import "package:flutter/material.dart";
import "package:flutter_riverpod/flutter_riverpod.dart";
import "package:hive_flutter/hive_flutter.dart";
import "package:path_provider/path_provider.dart";
import "package:smol_mail/data/providers/providers.dart";
import "package:smol_mail/smol/config.dart";
@ -9,7 +10,12 @@ import "package:smol_mail/presentation/app_widget.dart";
void main() async {
WidgetsFlutterBinding.ensureInitialized();
await Hive.initFlutter();
// Hive.initFlutter() defaults to getApplicationDocumentsDirectory(), which
// on Linux resolves to the user's actual ~/Documents folder (XDG_DOCUMENTS_DIR)
// rather than app-private storage — getApplicationSupportDirectory() is the
// one that's actually sandboxed per-app on every platform.
final dataDir = await getApplicationSupportDirectory();
Hive.init(dataDir.path);
final store = await SmolStore.open();
applyPresetServer(store);