Skip to content

Build electron package using Bazel #12860

@farmaazon

Description

@farmaazon

Current progress:

  • esbuild configuration for building electron client
  • Removing Project Manager Remove project manager #14174
    • Remove project manager from the codebase, simplifying packaging
    • Fix CI and open PR for reviewers
  • Electron Builder Configuration for multiplatform package build
    • Mac
      • Basic unpackaged build
      • Do we really need rules_js patchfs flag to avoid sandboxing issues?
      • Signing and notarization (what are those?!)
      • Support building dmg with hdiutil
        • Experiment with providing hdiutil via toolchain or repository (turns out the issue is happening in hdiutil’s business logic)
        • Investigate hdiutil sandboxing issues by debugging
        • Consider HFS+ vs APFS images (https://github.com/create-dmg/create-dmg)
        • Use out-of-sandbox build step or fix the issue
    • Windows
      • Fix engine issues (see below)
      • Do we really need rules_js patchfs flag to avoid sandboxing issues?
      • Build!
      • Integrating installer/uninstaller (or simplifying this part of distribution)
    • Linux
    • Bring back file associations
    • Proper version info configuration
      • Version info in Electron
      • Version info in GUI
      • Version info in Engine
      • Version info in package metadata (electron-builder-config.cjs must contain correct version info)
      • Mirror or simplify release version generation in the Rust build script
    • Engine distribution files are incorrectly symlinked, not copied to the final package
    • Configuration in TypeScript (?, it causes issues, might not worth it)
    • Update electron-builder to the latest version
      • Fix build
    • Provide new .icon on Mac Add icon for MacOS Tahoe #14118
    • Replace JVM engine build with native build when it’s ready
  • Backend build
  • Simplifying electron client
  • Do we implement our custom toolchains correctly? It seems repositories are formed with files for all supported platforms (e.g., Win, Mac, and Linux flatc distributions on Win)
  • CI
    • Gather statistics (like build time) to track improvements
    • Basic smoke test for testing app packaging on Linux

Sub-issues

Metadata

Metadata

Assignees

Labels

-build-scriptCategory: build script-guig-electronGUI: electron application specific

Type

Projects

Status

❓New

Relationships

None yet

Development

No branches or pull requests

Issue actions