flutter-app icon indicating copy to clipboard operation
flutter-app copied to clipboard

Reproducible builds Linux Desktop Build Fails Due to Missing `breakpad_client` Source and Headers - WalletScrutiny.com

Open xrviv opened this issue 7 months ago • 1 comments

Hi Mixin team,

I'm working with walletscrutiny.com a project dedicated to improving transparency and verifiability in mobile and desktop cryptocurrency wallets. As part of our ongoing research and review process, I attempted to build the Linux desktop version of Mixin Messenger directly from source using the flutter-app repository.


šŸ”§ What I Tried

The goal was to build the app using flutter build linux as outlined in the README and standard Flutter practices. My environment included:

  • Ubuntu 22.04 (x86_64)
  • Flutter 3.29.3 / Dart 3.7.2
  • Rust toolchain installed
  • All relevant system dependencies, including webkit2gtk-4.1, libsqlite3-dev, libsdl2-dev, etc.

I followed the standard steps: flutter pub get, build_runner, webcrypto:setup, and then attempted the Linux build.


🚫 What Went Wrong

The build failed during the linking stage with the following error:

clang: error: linker command failed with exit code 1
fatal error: 'breakpad_client/breakpad_client.h' file not found

Investigation showed that:

  • linux/CMakeLists.txt tries to link against breakpad_client.
  • However, there is no add_library declaration for breakpad_client.
  • The header file breakpad_client.h does not exist anywhere in the repository.
  • No submodule or documented fetch mechanism exists to obtain Breakpad.
  • The file is not available via standard system packages.

āœ… Suggested Fix

  • Either vendor Breakpad directly into the repo (e.g. under third_party/),
  • Or make Breakpad optional, controlled by a CMake flag like -DWITH_BREAKPAD=OFF.

šŸ™ Final Note

This issue blocks independent builds of the Linux desktop version — a key requirement for open-source transparency. If there's a known solution, documentation update, or workaround, I’d be happy to help test it and follow up with a patch.

Thanks for open-sourcing Mixin Messenger — I look forward to your guidance on resolving this.

2025-04-30 16:33 UTC+8 Build Log

Best regards,
Daniel Andrei R. Garcia WalletScrutiny.com Contributor

xrviv avatar Apr 30 '25 10:04 xrviv

I tested build in Github actions, It seems no problem.

build for tag: v2.2.0 https://github.com/MixinNetwork/flutter-app/actions/runs/14771364723

build for main: https://github.com/MixinNetwork/flutter-app/actions/runs/14771239791

can you take a try :

  1. install the libcurl4-openssl-dev
  2. do a clean with flutter clean
  3. then rebuild: flutter build linux

boyan01 avatar May 01 '25 08:05 boyan01