From 0805b8048fc75c8b471acb492aa55ef0690fdabd Mon Sep 17 00:00:00 2001 From: Adam Duskett Date: Wed, 17 Jan 2024 15:50:49 -0700 Subject: [PATCH] package/flutter-gallery: clean up install_target_cmds Remove and create the kernel_blob.bin file in the flutter_assets directory: When Flutter compiles the source code, it creates the kernel_blob.bin file, a Dart Kernel Bytecode of the application. If kernel_blob.bin exists inside the flutter_assets directory, then the application source code can be extracted with nothing more than apktool. Not only is this a security risk, it's also redundant and a waste of space. Removing the kernel_blob.bin file generated for flutter-gallery saves 86M! Because this package is a reference package, and some applications may check if the kernel_blob.bin file exists, we also touch a blank kernel_blob.bin file. Do not use relative symlinks: Users may install their applications in any arbitaryt location, not necessarily in the /usr/share/flutter/${package_name} directory. Because flutter-gallery is a reference application, using exact symlinks to icudtl.dat and libflutter_engine.so is preferable. Signed-off-by: Adam Duskett Signed-off-by: Yann E. MORIN --- package/flutter-gallery/flutter-gallery.mk | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/package/flutter-gallery/flutter-gallery.mk b/package/flutter-gallery/flutter-gallery.mk index 8f7e325e5a..acad706dae 100644 --- a/package/flutter-gallery/flutter-gallery.mk +++ b/package/flutter-gallery/flutter-gallery.mk @@ -46,10 +46,12 @@ define FLUTTER_GALLERY_INSTALL_TARGET_CMDS $(INSTALL) -D -m 0755 $(@D)/libapp.so \ $(FLUTTER_GALLERY_INSTALL_DIR)/lib/libapp.so - ln -sf ../../../$(FLUTTER_ENGINE_RUNTIME_MODE)/data/icudtl.dat \ + ln -sf /usr/share/flutter/$(FLUTTER_ENGINE_RUNTIME_MODE)/data/icudtl.dat \ $(FLUTTER_GALLERY_INSTALL_DIR)/data/ - ln -sf ../../../../../lib/libflutter_engine.so $(FLUTTER_GALLERY_INSTALL_DIR)/lib/ + ln -sf /usr/lib/libflutter_engine.so $(FLUTTER_GALLERY_INSTALL_DIR)/lib/ + $(RM) $(FLUTTER_GALLERY_INSTALL_DIR)/data/flutter_assets/kernel_blob.bin + touch $(FLUTTER_GALLERY_INSTALL_DIR)/data/flutter_assets/kernel_blob.bin endef $(eval $(generic-package))