Skip to content

Commit 5c3eec5

Browse files
authored
Komodo Wallet 0.9.2 Release: Merge pull request GLEECBTC#2850 from KomodoPlatform/dev
chore(release): Komodo Wallet 0.9.2 Release
2 parents de7c8fa + 976943a commit 5c3eec5

File tree

391 files changed

+13145
-9849
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

391 files changed

+13145
-9849
lines changed

.devcontainer/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
FROM docker.io/ubuntu:22.04
22

3-
ENV FLUTTER_VERSION="3.29.2"
3+
ENV FLUTTER_VERSION="3.32.5"
44
ENV USER="komodo"
55
ENV USER_ID=1000
66
ENV PATH=$PATH:/opt/flutter/bin

.docker/android-sdk.dockerfile

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,8 @@ FROM docker.io/ubuntu:22.04
44
# LABEL org.opencontainers.image.source=https://github.com/cirruslabs/docker-images-android
55

66
ENV USER="komodo"
7-
ENV USER_ID=1000
7+
ARG BUILD_USER_ID=1000
8+
ENV USER_ID=${BUILD_USER_ID}
89

910
RUN apt update && apt install -y sudo && \
1011
useradd -u $USER_ID -m $USER && \
@@ -39,11 +40,11 @@ RUN set -o xtrace \
3940
wget zip unzip git openssh-client curl bc software-properties-common build-essential \
4041
ruby-full ruby-bundler libstdc++6 libpulse0 libglu1-mesa locales lcov libsqlite3-dev --no-install-recommends \
4142
# For Linux build
42-
xz-utils \
43+
xz-utils acl \
4344
clang cmake git \
4445
ninja-build pkg-config \
4546
libgtk-3-dev liblzma-dev \
46-
libstdc++-12-dev \
47+
libstdc++-12-dev libsecret-1-dev \
4748
# for x86 emulators
4849
libxtst6 libnss3-dev libnspr4 libxss1 libatk-bridge2.0-0 libgtk-3-0 libgdk-pixbuf2.0-0 \
4950
&& sudo rm -rf /var/lib/apt/lists/* \
@@ -66,4 +67,5 @@ RUN set -o xtrace \
6667
"platforms;android-$ANDROID_PLATFORM_VERSION" \
6768
"build-tools;$ANDROID_BUILD_TOOLS_VERSION" \
6869
&& yes | sdkmanager "ndk;$ANDROID_NDK_VERSION" \
69-
&& sudo chown -R $USER:$USER $ANDROID_HOME
70+
&& sudo chown -R $USER:$USER $ANDROID_HOME \
71+
&& sudo setfacl -R -m u:$USER:rwX -m d:u:$USER:rwX /usr/local

.docker/build.sh

100644100755
Lines changed: 45 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,54 @@ else
2222
PLATFORM_FLAG=""
2323
fi
2424

25-
docker build $PLATFORM_FLAG -f .docker/android-sdk.dockerfile . -t komodo/android-sdk:35
25+
HOST_UID=$(id -u)
26+
HOST_GID=$(id -g)
27+
28+
# Use fallback UID/GID if running as root to avoid conflicts
29+
# in GitHub Actions where the UID/GID may be 0.
30+
# android-sdk.dockerfile attempts to create a user with the
31+
# provided UID/GID, so 0 is not a valid choice (already exists).
32+
if [ "$HOST_UID" = "0" ]; then
33+
HOST_UID=1000
34+
HOST_GID=1000
35+
fi
36+
37+
docker build $PLATFORM_FLAG --build-arg BUILD_USER_ID=$HOST_UID -f .docker/android-sdk.dockerfile . -t komodo/android-sdk:35
2638
docker build $PLATFORM_FLAG -f .docker/komodo-wallet-android.dockerfile . -t komodo/komodo-wallet
2739

40+
# Create the build directory ourselves to prevent it from being created by the Docker daemon (as root)
41+
mkdir -p ./build
42+
43+
COMMIT_HASH=$(git rev-parse --short HEAD | cut -c1-7)
44+
45+
ENV_ARGS=""
46+
ENV_VARS="GITHUB_API_PUBLIC_READONLY_TOKEN TRELLO_API_KEY \
47+
TRELLO_TOKEN TRELLO_BOARD_ID TRELLO_LIST_ID \
48+
FEEDBACK_API_KEY FEEDBACK_PRODUCTION_URL FEEDBACK_TEST_URL \
49+
COMMIT_HASH"
50+
51+
for VAR in $ENV_VARS; do
52+
case "$VAR" in
53+
GITHUB_API_PUBLIC_READONLY_TOKEN) VALUE=$GITHUB_API_PUBLIC_READONLY_TOKEN ;;
54+
TRELLO_API_KEY) VALUE=$TRELLO_API_KEY ;;
55+
TRELLO_TOKEN) VALUE=$TRELLO_TOKEN ;;
56+
TRELLO_BOARD_ID) VALUE=$TRELLO_BOARD_ID ;;
57+
TRELLO_LIST_ID) VALUE=$TRELLO_LIST_ID ;;
58+
FEEDBACK_API_KEY) VALUE=$FEEDBACK_API_KEY ;;
59+
FEEDBACK_PRODUCTION_URL) VALUE=$FEEDBACK_PRODUCTION_URL ;;
60+
FEEDBACK_TEST_URL) VALUE=$FEEDBACK_TEST_URL ;;
61+
COMMIT_HASH) VALUE=$COMMIT_HASH ;;
62+
*) VALUE= ;;
63+
esac
64+
65+
[ -n "$VALUE" ] && ENV_ARGS="$ENV_ARGS -e $VAR=$VALUE"
66+
done
67+
2868
# Use the provided arguments for flutter build
2969
# Build a second time if needed, as asset downloads will require a rebuild on the first attempt
3070
docker run $PLATFORM_FLAG --rm -v ./build:/app/build \
31-
-u "$(id -u):$(id -g)" \
71+
-v $(pwd):/app \
72+
-u "$HOST_UID:$HOST_GID" \
73+
$ENV_ARGS \
3274
komodo/komodo-wallet:latest sh -c \
33-
"flutter pub get --enforce-lockfile && flutter build $BUILD_TARGET --no-pub --$BUILD_MODE || flutter pub get --enforce-lockfile && flutter build $BUILD_TARGET --no-pub --$BUILD_MODE"
75+
"sudo chown -R komodo:komodo /app/build; flutter pub get --enforce-lockfile; flutter build web --no-pub || true; flutter build $BUILD_TARGET --config-only; flutter build $BUILD_TARGET --no-pub --dart-define=COMMIT_HASH=$COMMIT_HASH --$BUILD_MODE"

.docker/komodo-wallet-android.dockerfile

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,13 @@
11
FROM komodo/android-sdk:35 AS final
22

3-
ENV FLUTTER_VERSION="3.29.2"
3+
ENV FLUTTER_VERSION="3.32.5"
44
ENV HOME="/home/komodo"
55
ENV USER="komodo"
66
ENV PATH=$PATH:$HOME/flutter/bin
77

88
USER $USER
99

1010
WORKDIR /app
11-
COPY --chown=$USER:$USER . .
1211

1312
RUN curl -O https://storage.googleapis.com/flutter_infra_release/releases/stable/linux/flutter_linux_${FLUTTER_VERSION}-stable.tar.xz && \
1413
tar -xvf flutter_linux_${FLUTTER_VERSION}-stable.tar.xz -C ${HOME} && \

.github/actions/flutter-deps/action.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ runs:
77
uses: subosito/flutter-action@v2
88
with:
99
# NB! Keep up-to-date with the flutter version used for development
10-
flutter-version: "3.29.2"
10+
flutter-version: "3.32.5"
1111
channel: "stable"
1212

1313
- name: Prepare build directory

.github/actions/generate-assets/action.yml

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,22 @@ inputs:
4545
runs:
4646
using: "composite"
4747
steps:
48+
- name: Determine commit hash
49+
shell: bash
50+
run: |
51+
echo "Determining commit hash..."
52+
if [ "$GITHUB_EVENT_NAME" = "pull_request" ]; then
53+
# For PRs, use the HEAD of the feature branch
54+
PR_SHA=$(jq -r .pull_request.head.sha "$GITHUB_EVENT_PATH")
55+
COMMIT_HASH=${PR_SHA:0:7}
56+
echo "Detected pull_request event. Using PR HEAD SHA: $COMMIT_HASH"
57+
else
58+
# Otherwise use the current checked-out HEAD
59+
COMMIT_HASH=$(git rev-parse --short HEAD | cut -c1-7)
60+
echo "Using git HEAD SHA: $COMMIT_HASH"
61+
fi
62+
# Export for subsequent steps
63+
echo "COMMIT_HASH=$COMMIT_HASH" >> $GITHUB_ENV
4864
- name: Fetch packages and generate assets
4965
shell: bash
5066
env:
@@ -66,8 +82,7 @@ runs:
6682
unset GITHUB_API_PUBLIC_READONLY_TOKEN
6783
fi
6884
69-
# Get the current commit hash
70-
COMMIT_HASH=$(git rev-parse --short HEAD)
85+
# Now COMMIT_HASH comes from the previous step, not recalculated here.
7186
7287
# Prepare build command with feedback service credentials
7388
BUILD_CMD="${{ inputs.BUILD_COMMAND }}"
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
name: Build Android Docker image
2+
3+
on:
4+
pull_request:
5+
branches:
6+
[
7+
dev,
8+
main,
9+
release/*,
10+
hotfix/*,
11+
bugfix/*,
12+
feature/*,
13+
chore/*,
14+
build/*,
15+
ci/*,
16+
]
17+
paths:
18+
- ".docker/**"
19+
- "android/**"
20+
- "pubspec.yaml"
21+
- "pubspec.lock"
22+
workflow_dispatch:
23+
24+
jobs:
25+
build-android-docker:
26+
runs-on: ubuntu-latest
27+
steps:
28+
- name: Checkout
29+
uses: actions/checkout@v4
30+
31+
- name: Set up QEMU
32+
uses: docker/setup-qemu-action@v3
33+
34+
- name: Set up Docker Buildx
35+
uses: docker/setup-buildx-action@v3
36+
37+
# Temporary workaround until firebase configs are added to CI
38+
- name: Comment out Google Play Services import
39+
shell: bash
40+
run: |
41+
sed -i 's/id .com\.google\.gms\.google-services./\/\/ id .com\.google\.gms\.google-services./' android/app/build.gradle
42+
echo "Google Play Services import commented out"
43+
44+
- name: Build Android image
45+
env:
46+
GITHUB_API_PUBLIC_READONLY_TOKEN: ${{ secrets.GITHUB_TOKEN }}
47+
run: |
48+
chmod +x .docker/build.sh
49+
sh .docker/build.sh apk release

.github/workflows/mobile-builds.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,14 @@ jobs:
6868
FEEDBACK_PRODUCTION_URL: ${{ secrets.FEEDBACK_PRODUCTION_URL }}
6969
FEEDBACK_TEST_URL: ${{ secrets.FEEDBACK_TEST_URL }}
7070

71+
# Flutter build with `--no-pub` flag fails on Android due to a
72+
# known regression with the build system in 3.32.5.
73+
# https://github.com/flutter/flutter/issues/169336
74+
- name: Temporary workaround for Android build issue
75+
if: ${{ matrix.platform == 'Android' }}
76+
run: |
77+
flutter build apk --config-only
78+
7179
- name: Build for ${{ matrix.platform }}
7280
env:
7381
GITHUB_API_PUBLIC_READONLY_TOKEN: ${{ secrets.GITHUB_TOKEN }}

.github/workflows/roll-sdk-packages.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ jobs:
4545
uses: subosito/flutter-action@v2
4646
with:
4747
# NB! Keep up-to-date with the flutter version used for development
48-
flutter-version: "3.29.2"
48+
flutter-version: "3.32.5"
4949
channel: "stable"
5050

5151
- name: Determine configuration

.gitignore

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
# First-party
2-
sdk/
1+
# Ignore the SDK symmlink (if it exists)
2+
/sdk/
33

44
# Miscellaneous
55
*.class
@@ -83,3 +83,4 @@ venv/
8383
# FVM Version Cache
8484
.fvm/
8585
/macos/build
86+
AGENTS_1.md

0 commit comments

Comments
 (0)