Skip to content

CLI build option to omit embedded terminal assets #2897

Description

@AuDevTist1C

Context & Problem Statement

With the ongoing work to replace the Alpine terminal environment with Ubuntu (#2699), the embedded terminal rootfs installation payload increases from ~15 MB to roughly ~90 MB. This expands the overall compiled APK artifact size to approximately 113 MB.

For developers working under a capped/metered internet connection, downloading ~113 MB APK artifacts for every incremental test run creates significant bandwidth overhead and friction during testing.

Developer Use Case & Workflow

  • Fork Testing Workflow: Before opening a Pull Request or pushing updates to an active PR branch, test APKs are compiled via custom GitHub Actions workflows on personal forks to verify feature implementations and bug fixes.
  • Current CLI Limitations: The standard build task npm run build paid dev apk forcefully bundles the complete embedded rootfs payload into the final APK.
  • F-Droid Build Workaround Constraints: Although the npm run build paid dev apk fdroid command excludes certain assets, F-Droid builds target legacy Android SDK levels (API 28), making them unsuitable for accurately testing modern Android API behaviors and release builds.

Proposed Solution

Could we introduce an optional CLI flag or environment parameter (e.g., --no-terminal-assets or via utils/storage_manager.mjs) during the build step?

This toggle would skip copying the heavy terminal rootfs package into platforms/android/app/build/outputs/apk/debug/, producing lightweight modern-target APKs specifically optimized for rapid iteration and bandwidth-constrained testing environments.

Key Benefits

  • Bandwidth Savings: Drastically reduces artifact download sizes from ~113 MB down to a fraction of the size for developers on capped data plans.
  • Faster CI/CD Iteration: Speeds up workflow execution, artifact packaging, and step summary generation during fork testing.
  • Targeted Verification: Allows thorough testing of non-terminal app features against modern API targets without carrying the extra ~90 MB terminal payload.

AI: Gemini 3.6 Flash

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions