Verified Commit 5405c943 authored by Pier Angelo Vendrame's avatar Pier Angelo Vendrame 🎃
Browse files

Bug 41123: Move firefox-android inside geckoview.

The steps to build Fenix after the migration to the monorepo are very
similar to the ones we used to build it from the previous repository.
However, they need to be run on the tor-browser.git repository, so in
this commit we move part of the firefox-android project to the
merge_aars phase of GeckoView.
parent 9abf39ee
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -34,6 +34,8 @@ export PATH="/var/tmp/dist/rust/bin:/var/tmp/dist/cbindgen:/var/tmp/dist/nasm/bi
tar -xf [% c('input_files_by_name/application-services') %]
export NIMBUS_FML=$rootdir/application-services/nimbus-fml

[% INCLUDE 'fake-git' %]

tar -C /var/tmp/build -xf [% project %]-[% c('version') %].tar.[% c('compress_tar') %]

cd /var/tmp/build/[% project %]-[% c("version") %]
+11 −0
Original line number Diff line number Diff line
@@ -26,12 +26,14 @@ var:
    - yasm
    - python3
    - python3-distutils
    - python3-venv
    - pkg-config
    - openjdk-17-jdk-headless
  # this should be updated when the list of gradle dependencies is changed
  # see doc/how-to-create-gradle-dependencies-list.txt
  gradle_dependencies_version: 13
  gradle_version: 8.8
  glean_parser: 14.0.1
  variant: beta
  has_l10n: '[% !c("var/testbuild") && !c("var/locales").empty %]'
  l10n-changesets: '[% exec("cat browser/locales/l10n-changesets.json") %]'
@@ -63,6 +65,9 @@ steps:
      - project: node
        name: node
        pkg_type: build
      - project: application-services
        name: application-services
        pkg_type: build
      - filename: 'gradle-dependencies-[% c("var/gradle_dependencies_version") %]'
        name: gradle-dependencies
        exec: '[% INCLUDE "fetch-gradle-dependencies" %]'
@@ -92,6 +97,12 @@ steps:
        pkg_type: build
        target_prepend:
          - torbrowser-android-armv7
      - name: translation-fenix
        project: translation
        pkg_type: fenix
      - URL: '[% pc("glean", "var/glean_wheels_url/" _ c("var/glean_parser"), { error_if_undef => 1 }) %]'
        name: glean-wheels
        sha256sum: '[% pc("glean", "var/glean_wheels_sha256sum/" _ c("var/glean_parser"), { error_if_undef => 1 }) %]'

  list_toolchain_updates:
    git_hash: tor-browser-128.0b1-14.0-1
+79 −0
Original line number Diff line number Diff line
@@ -2830,3 +2830,82 @@ a840968176645684bb01aed376e067ab39614885f9eee44abe35a5f20ebe7fad | https://repo1
0341395a481bb887803957145a6a37879853dd625e9244c2ea2509d9bb7531b9 | https://repo1.maven.org/maven2/xpp3/xpp3/1.1.4c/xpp3-1.1.4c.jar
4e54622f5dc0f8b6c51e28650268f001e3b55d076c8e3a9d9731c050820c0a3d | https://repo1.maven.org/maven2/xpp3/xpp3/1.1.4c/xpp3-1.1.4c.pom
0139ec7a506dbbd54cad62291b019cb850534be097c8c66c1000d5fbe8edef3e | https://repo1.maven.org/maven2/com/squareup/okio/okio-jvm/3.4.0/okio-jvm-3.4.0.jar
096fc94de01f27bc783bb0b8984b49aeda688f6329f8393d42d4b6754beae7da | https://maven.google.com/androidx/compose/runtime/runtime-android/1.6.7/runtime-android-1.6.7.aar
f3bb626badc17ef2405ba38ad8e896d667cc2602822ce46e916dc85d6b2f395c | https://maven.google.com/androidx/compose/runtime/runtime-saveable-android/1.6.7/runtime-saveable-android-1.6.7.aar
5d6d4e3a4113b3d781f924c7dbdaa8f64b6a82ede7ce4d18483a9077a5c28735 | https://maven.google.com/androidx/compose/ui/ui-android/1.6.7/ui-android-1.6.7.aar
4b530fb4562fb997fccc6ba33072c028f2c16edb1cea733ce653f8afe9fc5c17 | https://maven.google.com/androidx/compose/ui/ui-geometry-android/1.6.7/ui-geometry-android-1.6.7.aar
7c536689141a77b2c1611b549380acbe1a7b8a9571f3335a215f29ccf5e9b8ef | https://maven.google.com/androidx/paging/paging-common-android/3.3.0/paging-common-android-3.3.0.aar
71ba68b3676a11eb8574afb7f87aad19933f0d7c3c5431918cbee850eef6de79 | https://maven.google.com/androidx/compose/ui/ui-util-android/1.6.7/ui-util-android-1.6.7.aar
858aedc34429ebe9583c376ee55335a00bb6e1b6f40b9e4c29988fd073f1541b | https://maven.google.com/androidx/compose/ui/ui-unit-android/1.6.7/ui-unit-android-1.6.7.aar
a7e344570337dd5cc27db30eaeca1905a7ac19b25057a45c390bc307fb24bc87 | https://maven.google.com/androidx/compose/ui/ui-text-android/1.6.7/ui-text-android-1.6.7.aar
b7f23801b1c53de2a86d2bfbf848e911da9f7fd540ec5d13278cd7f6b8c54056 | https://maven.google.com/androidx/compose/ui/ui-graphics-android/1.6.7/ui-graphics-android-1.6.7.aar
883abc911e4b14119959e44e20a520523f59c303e834d6b325007b3ee5e9cb6c | https://maven.google.com/androidx/datastore/datastore-core-android/1.1.1/datastore-core-android-1.1.1.aar
0f15760838ff0413521ab1596e8ac5c999c3822d1fcc3f38ce6d6f562aeebbac | https://maven.google.com/androidx/datastore/datastore-preferences-android/1.1.1/datastore-preferences-android-1.1.1.aar
fce724038fea3bdef7b0d1aaf10cda6614b61bec66571750cc9be7048b950119 | https://maven.google.com/androidx/datastore/datastore-android/1.1.1/datastore-android-1.1.1.aar
25b39e82c57af36b0232e7e9f7d390ae864a850a49c7999cef9b8674f6a060f4 | https://maven.google.com/androidx/compose/ui/ui-tooling-android/1.6.7/ui-tooling-android-1.6.7.aar
afd702fd2480c3555c4a1e5fca7903c256962ad2007c32a3ff4ed7419b90097f | https://maven.google.com/androidx/compose/ui/ui-tooling-data-android/1.6.7/ui-tooling-data-android-1.6.7.aar
8dee05d61bd7abe392e6f3d47f06da922ebfb7efe9fd941074cc617d373881cb | https://maven.google.com/androidx/compose/material/material-ripple-android/1.6.7/material-ripple-android-1.6.7.aar
6b4a0d8e13408298770cf8fd31b33c4a5af668e4545142c2a78dff55a1c67f80 | https://maven.google.com/androidx/compose/material/material-icons-core-android/1.6.7/material-icons-core-android-1.6.7.aar
c0aa421e13db8f02bfeacf43be414364f1849eeffaf420c49aac47937c390976 | https://maven.google.com/androidx/compose/material/material-android/1.6.7/material-android-1.6.7.aar
080b75340aafc4362f2afb9a93705cf664b2537264be72ebf63fbfa822916383 | https://maven.google.com/androidx/compose/animation/animation-core-android/1.6.7/animation-core-android-1.6.7.aar
5679bd5b963f9a29069f631db786845c7945bc79b3342b47e7f13e9713fcde67 | https://maven.google.com/androidx/compose/animation/animation-android/1.6.7/animation-android-1.6.7.aar
faf2064b0602d78e6697631f5b0428abea25178adc378484a07605d8ca4d36ac | https://maven.google.com/androidx/compose/foundation/foundation-layout-android/1.6.7/foundation-layout-android-1.6.7.aar
3b6cd27611e2fbd0976ec3896579d45e570b26966cc9898ed0ed03865087bf3c | https://maven.google.com/androidx/compose/foundation/foundation-android/1.6.7/foundation-android-1.6.7.aar
78e0998bb8f394e17693df4017ebcffe68b2c39b8a5413de66913976a89d469e | https://maven.google.com/androidx/compose/ui/ui-tooling-preview-android/1.6.7/ui-tooling-preview-android-1.6.7.aar
afd702fd2480c3555c4a1e5fca7903c256962ad2007c32a3ff4ed7419b90097f | https://maven.google.com/androidx/compose/ui/ui-tooling-data-android/1.6.7/ui-tooling-data-android-1.6.7.aar
25b39e82c57af36b0232e7e9f7d390ae864a850a49c7999cef9b8674f6a060f4 | https://maven.google.com/androidx/compose/ui/ui-tooling-android/1.6.7/ui-tooling-android-1.6.7.aar
096fc94de01f27bc783bb0b8984b49aeda688f6329f8393d42d4b6754beae7da | https://maven.google.com/androidx/compose/runtime/runtime-android/1.6.7/runtime-android-1.6.7.aar
f3bb626badc17ef2405ba38ad8e896d667cc2602822ce46e916dc85d6b2f395c | https://maven.google.com/androidx/compose/runtime/runtime-saveable-android/1.6.7/runtime-saveable-android-1.6.7.aar
5d6d4e3a4113b3d781f924c7dbdaa8f64b6a82ede7ce4d18483a9077a5c28735 | https://maven.google.com/androidx/compose/ui/ui-android/1.6.7/ui-android-1.6.7.aar
4b530fb4562fb997fccc6ba33072c028f2c16edb1cea733ce653f8afe9fc5c17 | https://maven.google.com/androidx/compose/ui/ui-geometry-android/1.6.7/ui-geometry-android-1.6.7.aar
7c536689141a77b2c1611b549380acbe1a7b8a9571f3335a215f29ccf5e9b8ef | https://maven.google.com/androidx/paging/paging-common-android/3.3.0/paging-common-android-3.3.0.aar
71ba68b3676a11eb8574afb7f87aad19933f0d7c3c5431918cbee850eef6de79 | https://maven.google.com/androidx/compose/ui/ui-util-android/1.6.7/ui-util-android-1.6.7.aar
858aedc34429ebe9583c376ee55335a00bb6e1b6f40b9e4c29988fd073f1541b | https://maven.google.com/androidx/compose/ui/ui-unit-android/1.6.7/ui-unit-android-1.6.7.aar
a7e344570337dd5cc27db30eaeca1905a7ac19b25057a45c390bc307fb24bc87 | https://maven.google.com/androidx/compose/ui/ui-text-android/1.6.7/ui-text-android-1.6.7.aar
b7f23801b1c53de2a86d2bfbf848e911da9f7fd540ec5d13278cd7f6b8c54056 | https://maven.google.com/androidx/compose/ui/ui-graphics-android/1.6.7/ui-graphics-android-1.6.7.aar
883abc911e4b14119959e44e20a520523f59c303e834d6b325007b3ee5e9cb6c | https://maven.google.com/androidx/datastore/datastore-core-android/1.1.1/datastore-core-android-1.1.1.aar
0f15760838ff0413521ab1596e8ac5c999c3822d1fcc3f38ce6d6f562aeebbac | https://maven.google.com/androidx/datastore/datastore-preferences-android/1.1.1/datastore-preferences-android-1.1.1.aar
fce724038fea3bdef7b0d1aaf10cda6614b61bec66571750cc9be7048b950119 | https://maven.google.com/androidx/datastore/datastore-android/1.1.1/datastore-android-1.1.1.aar
25b39e82c57af36b0232e7e9f7d390ae864a850a49c7999cef9b8674f6a060f4 | https://maven.google.com/androidx/compose/ui/ui-tooling-android/1.6.7/ui-tooling-android-1.6.7.aar
afd702fd2480c3555c4a1e5fca7903c256962ad2007c32a3ff4ed7419b90097f | https://maven.google.com/androidx/compose/ui/ui-tooling-data-android/1.6.7/ui-tooling-data-android-1.6.7.aar
8dee05d61bd7abe392e6f3d47f06da922ebfb7efe9fd941074cc617d373881cb | https://maven.google.com/androidx/compose/material/material-ripple-android/1.6.7/material-ripple-android-1.6.7.aar
6b4a0d8e13408298770cf8fd31b33c4a5af668e4545142c2a78dff55a1c67f80 | https://maven.google.com/androidx/compose/material/material-icons-core-android/1.6.7/material-icons-core-android-1.6.7.aar
c0aa421e13db8f02bfeacf43be414364f1849eeffaf420c49aac47937c390976 | https://maven.google.com/androidx/compose/material/material-android/1.6.7/material-android-1.6.7.aar
080b75340aafc4362f2afb9a93705cf664b2537264be72ebf63fbfa822916383 | https://maven.google.com/androidx/compose/animation/animation-core-android/1.6.7/animation-core-android-1.6.7.aar
5679bd5b963f9a29069f631db786845c7945bc79b3342b47e7f13e9713fcde67 | https://maven.google.com/androidx/compose/animation/animation-android/1.6.7/animation-android-1.6.7.aar
faf2064b0602d78e6697631f5b0428abea25178adc378484a07605d8ca4d36ac | https://maven.google.com/androidx/compose/foundation/foundation-layout-android/1.6.7/foundation-layout-android-1.6.7.aar
3b6cd27611e2fbd0976ec3896579d45e570b26966cc9898ed0ed03865087bf3c | https://maven.google.com/androidx/compose/foundation/foundation-android/1.6.7/foundation-android-1.6.7.aar
78e0998bb8f394e17693df4017ebcffe68b2c39b8a5413de66913976a89d469e | https://maven.google.com/androidx/compose/ui/ui-tooling-preview-android/1.6.7/ui-tooling-preview-android-1.6.7.aar
afd702fd2480c3555c4a1e5fca7903c256962ad2007c32a3ff4ed7419b90097f | https://maven.google.com/androidx/compose/ui/ui-tooling-data-android/1.6.7/ui-tooling-data-android-1.6.7.aar
25b39e82c57af36b0232e7e9f7d390ae864a850a49c7999cef9b8674f6a060f4 | https://maven.google.com/androidx/compose/ui/ui-tooling-android/1.6.7/ui-tooling-android-1.6.7.aar
c39c94c654f21e4f31328c1c3c948d14fb9318e0f551f7c46c17ba47548a3462 | https://maven.google.com/androidx/compose/ui/ui-test-junit4-android/1.6.7/ui-test-junit4-android-1.6.7.aar
f379dc85c9dc04bb9bdfce87461127b9b805668e9e0ebe0b0d7c0b970ac93a8a | https://maven.google.com/androidx/compose/ui/ui-test-android/1.6.7/ui-test-android-1.6.7.aar
00421ed4ed83f8b1ef2a22434a6c7102bb08e16b2cc4acfda503da9ddc213e91 | https://maven.google.com/androidx/compose/ui/ui-geometry/1.6.7/ui-geometry-1.6.7.jar
548f57ae3f6aa9ec87aaac82572f225f99830ec1ece01b622721947c8fb3075d | https://maven.google.com/androidx/compose/foundation/foundation/1.6.7/foundation-1.6.7.jar
d2a6ee7e58a3586e399991fadfd4d09f2304787384d51c9ec87b62fc46e922d4 | https://maven.google.com/androidx/compose/ui/ui-text/1.6.7/ui-text-1.6.7.jar
fe70ace6f942a5fc29045bb2fe25b4e77bdc742dc69f76ed65b39c3ae185888e | https://maven.google.com/androidx/annotation/annotation/1.8.0/annotation-1.8.0.jar
daf50f1c9404b224a1d6dd5286f8e8ee7d63fe807f78ea98f71795c183b6025f | https://plugins.gradle.org/m2/org/jetbrains/kotlinx/kotlinx-coroutines-core/1.8.1/kotlinx-coroutines-core-1.8.1.jar
7daf288a2f1efe727eac9fb75d9c8a773512c654740eb8381d443439c3d0c3a1 | https://maven.google.com/androidx/datastore/datastore-preferences/1.1.1/datastore-preferences-1.1.1.jar
b628671c9ebefd68ff33b35d2c5ca644bdb4f110c5fa24260930258d4bfef93d | https://maven.google.com/androidx/compose/animation/animation-core/1.6.7/animation-core-1.6.7.jar
951f2a3a6c0913819dfaae7c69cb8cdf977f7c79bd53fef03e4faf459ee30a0f | https://maven.google.com/androidx/compose/material/material-icons-core/1.6.7/material-icons-core-1.6.7.jar
a51a58d4a9f2a5a1177c25ed0cab927fe525caa2cf458514dcdff7033ab90555 | https://maven.google.com/androidx/compose/animation/animation/1.6.7/animation-1.6.7.jar
00421ed4ed83f8b1ef2a22434a6c7102bb08e16b2cc4acfda503da9ddc213e91 | https://maven.google.com/androidx/compose/ui/ui-util/1.6.7/ui-util-1.6.7.jar
4ab4086b6359ea81eb359451f0f005c78bc508d75c070555154cdf6313b0e1cb | https://maven.google.com/androidx/datastore/datastore/1.1.1/datastore-1.1.1.jar
eca64a1631de1d4a5eaeb98783cb983159cc31b3dcb0820df0ba399156292abc | https://maven.google.com/androidx/compose/material/material/1.6.7/material-1.6.7.jar
d6556739ebbfa9e4fa2f802c55bcb05bfa53f57276b105194842062e0acd3c4e | https://plugins.gradle.org/m2/org/jetbrains/kotlinx/kotlinx-serialization-protobuf/1.6.3/kotlinx-serialization-protobuf-1.6.3.jar
13a43cc361aced06050b235ae2ba0231b73b72c5bf9d14f0c3bd27169e3e06e3 | https://maven.google.com/androidx/compose/runtime/runtime-saveable/1.6.7/runtime-saveable-1.6.7.jar
335679dcda5b9047e8e0838772c272fd7cbcbbceed87565184a369c0563ac06b | https://maven.google.com/androidx/collection/collection/1.4.0/collection-1.4.0.jar
a22a84cf98bb1f1b04edc3ff2a4a5f3a273205c773c14d008618c9e2501e440b | https://maven.google.com/androidx/datastore/datastore-preferences-core/1.1.1/datastore-preferences-core-1.1.1.jar
117beb462cad6a885864fe0296ed8cfee509da08d064c44d226efbd60538599b | https://maven.google.com/androidx/datastore/datastore-core-okio/1.1.1/datastore-core-okio-1.1.1.jar
9328484158a30fbb2ebe5693605700ae9c4ad61af2fad531464561c09a4f3653 | https://maven.google.com/androidx/compose/ui/ui-tooling-preview/1.6.7/ui-tooling-preview-1.6.7.jar
eebcaad22243f49e712aae8ea011d72fb5caedd250e27e6cecd6a5b20fb61872 | https://maven.google.com/androidx/compose/ui/ui-graphics/1.6.7/ui-graphics-1.6.7.jar
2fa05aff0f33a70da873c09a0ff66b5d54ccdc15e39e7ca4b82633e70c792f34 | https://plugins.gradle.org/m2/org/jetbrains/kotlinx/kotlinx-serialization-core/1.6.3/kotlinx-serialization-core-1.6.3.jar
3a00bde031ca057829a9e5c1722322a7660379033498f2a1ec837f33506f7e2b | https://maven.google.com/androidx/paging/paging-common/3.3.0/paging-common-3.3.0.jar
7db8660ebe4b91bb478edb3616c4e3a50ba59c07dca517d1e1284c03fe86ac57 | https://plugins.gradle.org/m2/org/jetbrains/kotlinx/atomicfu/0.23.1/atomicfu-0.23.1.jar
73570416f75fd20e1269c17c588884c3d1d1098a5cf4a15ccae3f4e1ab08329e | https://plugins.gradle.org/m2/com/squareup/okio/okio/3.4.0/okio-3.4.0-all.jar
dfdcb0213751b038b5486a178d3e7f7f8cd0ce7d2888a0ba6a9f3bd1c9f16b7c | https://maven.google.com/androidx/datastore/datastore-core/1.1.1/datastore-core-1.1.1.jar
b25acd07331b59c6ddf49b639f7322552c31b25e03a83f97f04ec4a3bacd8d25 | https://maven.google.com/androidx/compose/ui/ui/1.6.7/ui-1.6.7.jar
fd64e97234d4c056018ed5ab1e22932bfe5a31b8d80ab9375b6b7b9dfa7ed031 | https://maven.google.com/androidx/compose/ui/ui-unit/1.6.7/ui-unit-1.6.7.jar
9f40ab0b8cf4e7cb0f593493c2ed96e7155d0e91eb592407597ecd61e2d5a054 | https://maven.google.com/androidx/compose/runtime/runtime/1.6.7/runtime-1.6.7.jar
3018ecf7ef0302f1c2492e4c627ae36b763167779b4595fa89331553f5b0c51a | https://maven.google.com/androidx/compose/material/material-ripple/1.6.7/material-ripple-1.6.7.jar
4e75469751c9d4c464c7d06af283b9737693c20bc4aaf657630bb294c27bbff1 | https://maven.google.com/androidx/compose/foundation/foundation-layout/1.6.7/foundation-layout-1.6.7.jar
+46 −6
Original line number Diff line number Diff line
@@ -11,6 +11,16 @@ mkdir -p $builddir $distdir
tar -C $distdir -xf [% c('input_files_by_name/node') %]
export PATH="/var/tmp/dist/node/bin:$PATH"

tar -C $distdir -xf $rootdir/[% c('input_files_by_name/translation-fenix') %]

tar -xf [% c('input_files_by_name/glean-wheels') %]
export GLEAN_PYTHON_WHEELS_DIR=$rootdir/glean-wheels

tar -xf [% c('input_files_by_name/application-services') %]
export NIMBUS_FML=$rootdir/application-services/nimbus-fml

[% INCLUDE 'fake-git' %]

tar -C $builddir -xf [% c('input_files_by_name/geckoview_armv7') %]
tar -C $builddir -xf [% c('input_files_by_name/geckoview_aarch64') %]
tar -C $builddir -xf [% c('input_files_by_name/geckoview_x86') %]
@@ -41,6 +51,7 @@ gradle_repo=/var/tmp/dist/gradle-dependencies
export GRADLE_MAVEN_REPOSITORIES="file://$gradle_repo","file://$gradle_repo/maven2"
export GRADLE_FLAGS="--no-daemon --offline -Dmaven.repo.local=$distdir/[% project %]"
mv $rootdir/[% c('input_files_by_name/gradle-dependencies') %] $gradle_repo
cp -rl $rootdir/application-services/maven/* $gradle_repo
cp -rl $gradle_repo/dl/android/maven2/* $gradle_repo || true
cp -rl $gradle_repo/m2/* $gradle_repo || true
cp -rl $gradle_repo/maven2/* $gradle_repo || true
@@ -62,6 +73,9 @@ mkdir "$HOME/.mozbuild"
  # through GeckoView.
[% END -%]

export LC_ALL=C.UTF-8
export LANG=C.UTF-8

# We still need to specify --tor-browser-version due to bug 34005.
./mach configure \
  --with-base-browser-version=[% c("var/torbrowser_version") %] \
@@ -75,12 +89,38 @@ mkdir "$HOME/.mozbuild"
  ./mach package-multi-locale --locales en-US $supported_locales
[% END -%]

# We prepare an archive to then extract it as we were using a local Maven
# repository.
# See also https://github.com/mozilla-mobile/firefox-android/blob/main/fenix/docs/substituting-local-gv.md
./mach gradle \
  geckoview:publishWithGeckoBinariesDebugPublicationToMavenLocal \
  exoplayer2:publishDebugPublicationToMavenLocal
pushd mobile/android/android-components
gradle $GRADLE_FLAGS assembleGecko -x lint
popd

# The build might fail with "file exists" otherwise.
rm -rf /var/tmp/dist/android-toolchain/gradle/glean/pythonenv

pushd mobile/android/fenix

# Use the Android Components we have just built
echo autoPublish.android-components.dir=../android-components > local.properties

# Add our localized strings
supported_locales="[% tmpl(c('var/locales_mobile').join(' ')) %]"
for lang in $supported_locales; do
  cp "/var/tmp/dist/translation-fenix/$lang/torbrowser_strings.xml" "app/src/main/res/values-$lang/"
done

# Bug 40485: Inject deterministic build date into Glean.
echo 'ext.gleanBuildDate = "0"' >> app/build.gradle

variant='[% c("var/variant") %]'
# We put the tor-browser version last to avoid int-parsing errors when consumers of project.versionName
# assume it starts with a major version number, as it does for all Mozilla version names.
version_name="[% c('var/fenix_version') %]-$variant ([% c('var/torbrowser_version') %])"

gradle $GRADLE_FLAGS -PversionName="$version_name" "assemble$variant"

mkdir $distdir/[% project %]
cp app/build/outputs/apk/fenix/$variant/*.apk $distdir/[% project %]

popd

cd $distdir/
[% c('tar', {