From 909f35a9e0436db902699c76834cfbf05f57baa5 Mon Sep 17 00:00:00 2001 From: Thomas Farstrike Date: Tue, 29 Apr 2025 17:23:33 +0200 Subject: [PATCH] Move /apps_builtin to /builtin/apps and add /builtin/resources --- .../com.example.launcher/META-INF/MANIFEST.MF | 0 .../com.example.launcher/assets/launcher.py | 8 +++----- .../com_example_appstore/META-INF/MANIFEST.MF | 0 .../com_example_appstore/assets/appstore.py | 0 .../res/mipmap_mdpi/icon_64x64.bin | Bin .../com_example_osupdate/META-INF/MANIFEST.MF | 0 .../com_example_osupdate/assets/osupdate.py | 0 .../res/mipmap_mdpi/icon_64x64.bin | Bin .../com_example_wificonf/META-INF/MANIFEST.MF | 0 .../com_example_wificonf/assets/wificonf.py | 0 .../res/mipmap_mdpi/icon_64x64.bin | Bin internal_filesystem/main.py | 2 +- .../resources/default_icon_64x64.bin | Bin 12300 -> 0 bytes 13 files changed, 4 insertions(+), 6 deletions(-) rename internal_filesystem/{apps_builtin => builtin/apps}/com.example.launcher/META-INF/MANIFEST.MF (100%) rename internal_filesystem/{apps_builtin => builtin/apps}/com.example.launcher/assets/launcher.py (95%) rename internal_filesystem/{apps_builtin => builtin/apps}/com_example_appstore/META-INF/MANIFEST.MF (100%) rename internal_filesystem/{apps_builtin => builtin/apps}/com_example_appstore/assets/appstore.py (100%) rename internal_filesystem/{apps_builtin => builtin/apps}/com_example_appstore/res/mipmap_mdpi/icon_64x64.bin (100%) rename internal_filesystem/{apps_builtin => builtin/apps}/com_example_osupdate/META-INF/MANIFEST.MF (100%) rename internal_filesystem/{apps_builtin => builtin/apps}/com_example_osupdate/assets/osupdate.py (100%) rename internal_filesystem/{apps_builtin => builtin/apps}/com_example_osupdate/res/mipmap_mdpi/icon_64x64.bin (100%) rename internal_filesystem/{apps_builtin => builtin/apps}/com_example_wificonf/META-INF/MANIFEST.MF (100%) rename internal_filesystem/{apps_builtin => builtin/apps}/com_example_wificonf/assets/wificonf.py (100%) rename internal_filesystem/{apps_builtin => builtin/apps}/com_example_wificonf/res/mipmap_mdpi/icon_64x64.bin (100%) delete mode 100644 internal_filesystem/resources/default_icon_64x64.bin diff --git a/internal_filesystem/apps_builtin/com.example.launcher/META-INF/MANIFEST.MF b/internal_filesystem/builtin/apps/com.example.launcher/META-INF/MANIFEST.MF similarity index 100% rename from internal_filesystem/apps_builtin/com.example.launcher/META-INF/MANIFEST.MF rename to internal_filesystem/builtin/apps/com.example.launcher/META-INF/MANIFEST.MF diff --git a/internal_filesystem/apps_builtin/com.example.launcher/assets/launcher.py b/internal_filesystem/builtin/apps/com.example.launcher/assets/launcher.py similarity index 95% rename from internal_filesystem/apps_builtin/com.example.launcher/assets/launcher.py rename to internal_filesystem/builtin/apps/com.example.launcher/assets/launcher.py index 68eeda39..4261f8e5 100644 --- a/internal_filesystem/apps_builtin/com.example.launcher/assets/launcher.py +++ b/internal_filesystem/builtin/apps/com.example.launcher/assets/launcher.py @@ -46,7 +46,7 @@ def load_icon(icon_path): # Check and collect subdirectories from existing directories apps_dir = "/apps" -apps_dir_builtin = "/apps_builtin" +apps_dir_builtin = "/builtin/apps" app_dirs = [] seen_base_names = set() @@ -71,9 +71,7 @@ for dir_path in [apps_dir, apps_dir_builtin]: pass # Should we skip 'Launcher' apps from the list here? -for app_dir in app_dirs: - # Paths - app_dir_fullpath = f"{apps_dir}/{app_dir}" +for app_dir_fullpath in app_dirs: app_name, main_script = parse_manifest(f"{app_dir_fullpath}/META-INF/MANIFEST.MF") # Create a container for each app (icon + label) app_cont = lv.obj(cont) @@ -87,7 +85,7 @@ for app_dir in app_dirs: image.set_src(load_icon(icon_path)) except Exception as e: print(f"Error loading icon {icon_path}: {e} - loading default icon") - icon_path = "/resources/default_icon_64x64.bin" + icon_path = "/builtin/resources/default_icon_64x64.bin" try: image.set_src(load_icon(icon_path)) except Exception as e: diff --git a/internal_filesystem/apps_builtin/com_example_appstore/META-INF/MANIFEST.MF b/internal_filesystem/builtin/apps/com_example_appstore/META-INF/MANIFEST.MF similarity index 100% rename from internal_filesystem/apps_builtin/com_example_appstore/META-INF/MANIFEST.MF rename to internal_filesystem/builtin/apps/com_example_appstore/META-INF/MANIFEST.MF diff --git a/internal_filesystem/apps_builtin/com_example_appstore/assets/appstore.py b/internal_filesystem/builtin/apps/com_example_appstore/assets/appstore.py similarity index 100% rename from internal_filesystem/apps_builtin/com_example_appstore/assets/appstore.py rename to internal_filesystem/builtin/apps/com_example_appstore/assets/appstore.py diff --git a/internal_filesystem/apps_builtin/com_example_appstore/res/mipmap_mdpi/icon_64x64.bin b/internal_filesystem/builtin/apps/com_example_appstore/res/mipmap_mdpi/icon_64x64.bin similarity index 100% rename from internal_filesystem/apps_builtin/com_example_appstore/res/mipmap_mdpi/icon_64x64.bin rename to internal_filesystem/builtin/apps/com_example_appstore/res/mipmap_mdpi/icon_64x64.bin diff --git a/internal_filesystem/apps_builtin/com_example_osupdate/META-INF/MANIFEST.MF b/internal_filesystem/builtin/apps/com_example_osupdate/META-INF/MANIFEST.MF similarity index 100% rename from internal_filesystem/apps_builtin/com_example_osupdate/META-INF/MANIFEST.MF rename to internal_filesystem/builtin/apps/com_example_osupdate/META-INF/MANIFEST.MF diff --git a/internal_filesystem/apps_builtin/com_example_osupdate/assets/osupdate.py b/internal_filesystem/builtin/apps/com_example_osupdate/assets/osupdate.py similarity index 100% rename from internal_filesystem/apps_builtin/com_example_osupdate/assets/osupdate.py rename to internal_filesystem/builtin/apps/com_example_osupdate/assets/osupdate.py diff --git a/internal_filesystem/apps_builtin/com_example_osupdate/res/mipmap_mdpi/icon_64x64.bin b/internal_filesystem/builtin/apps/com_example_osupdate/res/mipmap_mdpi/icon_64x64.bin similarity index 100% rename from internal_filesystem/apps_builtin/com_example_osupdate/res/mipmap_mdpi/icon_64x64.bin rename to internal_filesystem/builtin/apps/com_example_osupdate/res/mipmap_mdpi/icon_64x64.bin diff --git a/internal_filesystem/apps_builtin/com_example_wificonf/META-INF/MANIFEST.MF b/internal_filesystem/builtin/apps/com_example_wificonf/META-INF/MANIFEST.MF similarity index 100% rename from internal_filesystem/apps_builtin/com_example_wificonf/META-INF/MANIFEST.MF rename to internal_filesystem/builtin/apps/com_example_wificonf/META-INF/MANIFEST.MF diff --git a/internal_filesystem/apps_builtin/com_example_wificonf/assets/wificonf.py b/internal_filesystem/builtin/apps/com_example_wificonf/assets/wificonf.py similarity index 100% rename from internal_filesystem/apps_builtin/com_example_wificonf/assets/wificonf.py rename to internal_filesystem/builtin/apps/com_example_wificonf/assets/wificonf.py diff --git a/internal_filesystem/apps_builtin/com_example_wificonf/res/mipmap_mdpi/icon_64x64.bin b/internal_filesystem/builtin/apps/com_example_wificonf/res/mipmap_mdpi/icon_64x64.bin similarity index 100% rename from internal_filesystem/apps_builtin/com_example_wificonf/res/mipmap_mdpi/icon_64x64.bin rename to internal_filesystem/builtin/apps/com_example_wificonf/res/mipmap_mdpi/icon_64x64.bin diff --git a/internal_filesystem/main.py b/internal_filesystem/main.py index e7bb54ea..992fcb2b 100644 --- a/internal_filesystem/main.py +++ b/internal_filesystem/main.py @@ -363,7 +363,7 @@ except Exception as e: # The launcher might have been updated from the builtin one, so check that: import uos custom_launcher = "/apps/com.example.launcher" -builtin_launcher = "/apps_builtin/com.example.launcher" +builtin_launcher = "/builtin/apps/com.example.launcher" try: stat = uos.stat(custom_launcher) start_app(custom_launcher, True) diff --git a/internal_filesystem/resources/default_icon_64x64.bin b/internal_filesystem/resources/default_icon_64x64.bin deleted file mode 100644 index 3ea6ad43e8af576d70d1dc33bb51a23d979b6fc7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12300 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