mirror of
https://github.com/Such-Software/hash-wallet.git
synced 2026-10-26 06:08:40 +01:00
fix linux
This commit is contained in:
@@ -1,4 +1,3 @@
|
||||
import 'dart:ffi';
|
||||
import 'dart:io';
|
||||
|
||||
import 'package:cw_core/db/sqlite_debug.dart';
|
||||
@@ -6,7 +5,6 @@ import 'package:cw_core/root_dir.dart';
|
||||
import 'package:cw_core/utils/print_verbose.dart';
|
||||
import 'package:flutter/foundation.dart';
|
||||
import 'package:sqflite_common_ffi/sqflite_ffi.dart';
|
||||
import 'package:sqlite3/open.dart';
|
||||
import 'package:path/path.dart' as p;
|
||||
|
||||
Database? db;
|
||||
@@ -51,20 +49,6 @@ Future<void> initDb({String? pathOverride}) async {
|
||||
|
||||
Future<void> _initDb({String? pathOverride}) async {
|
||||
if (Platform.isLinux || Platform.isWindows) {
|
||||
if (Platform.isLinux) {
|
||||
// The Linux bundle only installs the bundled sqlite3 shared object as
|
||||
// libsqlite3_flutter_libs_plugin.so (see linux/CMakeLists.txt); load it
|
||||
// directly instead of relying on a libsqlite3.so symlink, which the
|
||||
// release tarball dereferences into a second copy of the same library
|
||||
// and crashes the process when both copies get mapped.
|
||||
open.overrideFor(OperatingSystem.linux, () {
|
||||
try {
|
||||
return DynamicLibrary.open('libsqlite3_flutter_libs_plugin.so');
|
||||
} catch (_) {
|
||||
return DynamicLibrary.open('libsqlite3.so.0');
|
||||
}
|
||||
});
|
||||
}
|
||||
databaseFactory = databaseFactoryFfi;
|
||||
}
|
||||
|
||||
|
||||
@@ -47,7 +47,6 @@ dependencies:
|
||||
bech32:
|
||||
git:
|
||||
url: https://github.com/cake-tech/bech32.git
|
||||
sqlite3: 3.5.1
|
||||
sqlite3_flutter_libs: 0.5.40
|
||||
|
||||
dev_dependencies:
|
||||
|
||||
@@ -160,6 +160,12 @@ foreach(bundled_library ${PLUGIN_BUNDLED_LIBRARIES})
|
||||
COMPONENT Runtime)
|
||||
endforeach(bundled_library)
|
||||
|
||||
# Copy the native assets provided by the build.dart from all packages.
|
||||
set(NATIVE_ASSETS_DIR "${PROJECT_BUILD_DIR}native_assets/linux/")
|
||||
install(DIRECTORY "${NATIVE_ASSETS_DIR}"
|
||||
DESTINATION "${INSTALL_BUNDLE_LIB_DIR}"
|
||||
COMPONENT Runtime)
|
||||
|
||||
# Fully re-copy the assets directory on each build to avoid having stale files
|
||||
# from a previous install.
|
||||
set(FLUTTER_ASSET_DIR_NAME "flutter_assets")
|
||||
|
||||
Reference in New Issue
Block a user