qrserv icon indicating copy to clipboard operation
qrserv copied to clipboard

Build question

Open IzzySoft opened this issue 10 months ago • 27 comments

At IzzyOnDroid we support Reproducible Builds (see: Reproducible Builds, special client support and more at IzzyOnDroid). Trying for yours, I unfortunately was not even able to build the APK:

...

Downloading linux-x64 tools...                                   1,922ms
Downloading linux-x64/font-subset tools...                         294ms
Resolving dependencies...
The current Dart SDK version is 3.7.2.

Because qrserv requires SDK version >=3.8.0-265.0.dev <4.0.0, version solving failed.
Failed to update packages.

I've used the latest stable Flutter (currently 3.29.3) with the following recipe:

build:
  - sed -r '/signingConfigs.getByName/d' -i android/app/build.gradle.kts
  - sed -r '/create\("release"\) \{/,/}/d' -i android/app/build.gradle.kts
  - FLUTTER_VERSION="3.29.3"
  - git clone -b $FLUTTER_VERSION https://github.com/flutter/flutter
  - export PUB_CACHE=$(pwd)/.pub-cache
  - flutter/bin/flutter config --no-analytics
  - flutter/bin/flutter pub get
  - flutter/bin/flutter build apk --release --target-platform android-arm

(the first two lines are just to remove the signing config, as we need an unsigned APK here). Did I miss a step? How can I see what Flutter version you are using? Maybe you could add flutter as git submodule, or add the version used to your pubspec.yaml:

environment:
    sdk: '>= 3.8.0-265.0.dev <4.0.0'
    flutter: ^3.29.3

And while I'm here: could you let us know what path you build in, as Flutter loves to embed the build path in its native libs? That would save us a few test-runs to find it via e.g. Diffoscope 😉

We'd appreciate if you could help making your build reproducible. We've also prepared some hints on reproducible builds for that.

Looking forward to your reply!

IzzySoft avatar May 10 '25 13:05 IzzySoft