Skip to content

Commit cf636ea

Browse files
authored
Merge pull request utkarshdalal#277 from utkarshdalal/cleanup-0.6.0-pre
updated workflow for dual-builds, some small improvements for 0.6.0 p…
2 parents e532ed7 + 73d50c2 commit cf636ea

4 files changed

Lines changed: 109 additions & 23 deletions

File tree

.github/workflows/app-release-signed.yml

Lines changed: 53 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -36,12 +36,28 @@ jobs:
3636
KEYSTORE_KEY_PASSWORD: ${{ secrets.KEYSTORE_KEY_PASSWORD }}
3737
KEYSTORE_STORE_PASSWORD: ${{ secrets.KEYSTORE_STORE_PASSWORD }}
3838
run: |
39+
mkdir -p app/keystores
3940
echo "$KEYSTORE" | base64 --decode > app/keystores/keystore
4041
echo "storeFile=keystores/keystore" >> app/keystores/keystore.properties
4142
echo "keyAlias=$KEYSTORE_KEY_ALIAS" >> app/keystores/keystore.properties
4243
echo "storePassword=$KEYSTORE_STORE_PASSWORD" >> app/keystores/keystore.properties
4344
echo "keyPassword=$KEYSTORE_KEY_PASSWORD" >> app/keystores/keystore.properties
4445
46+
- name: Configure Production Keystore
47+
env:
48+
PROD_KEYSTORE: ${{ secrets.PROD_KEYSTORE }}
49+
PROD_KEYSTORE_KEY_ALIAS: ${{ secrets.PROD_KEYSTORE_KEY_ALIAS }}
50+
PROD_KEYSTORE_KEY_PASSWORD: ${{ secrets.PROD_KEYSTORE_KEY_PASSWORD }}
51+
PROD_KEYSTORE_STORE_PASSWORD: ${{ secrets.PROD_KEYSTORE_STORE_PASSWORD }}
52+
run: |
53+
mkdir -p app/keystores
54+
echo "$PROD_KEYSTORE" | base64 --decode > app/keystores/prod.keystore
55+
cat <<EOF > app/keystores/prod-keystore.properties
56+
keyAlias=$PROD_KEYSTORE_KEY_ALIAS
57+
keyPassword=$PROD_KEYSTORE_KEY_PASSWORD
58+
storePassword=$PROD_KEYSTORE_STORE_PASSWORD
59+
EOF
60+
4561
- name: Inject credentials
4662
run: |
4763
cat <<EOF > local.properties
@@ -51,13 +67,47 @@ jobs:
5167
SUPABASE_KEY=${{ secrets.SUPABASE_KEY }}
5268
EOF
5369
70+
- name: Install Android SDK Build Tools
71+
run: |
72+
SDKMANAGER="$ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager"
73+
if [ ! -x "$SDKMANAGER" ]; then
74+
SDKMANAGER="$ANDROID_SDK_ROOT/cmdline-tools/latest/bin/sdkmanager"
75+
fi
76+
yes | "$SDKMANAGER" --install "build-tools;34.0.0"
77+
5478
- name: Build with Gradle
55-
run: ./gradlew :app:bundleRelease-signed
79+
run: ./gradlew :app:bundleRelease
5680

5781
- name: Extract APK from Bundle
5882
run: |
59-
java -jar tools/bundletool-all-1.17.2.jar build-apks --bundle=app/build/outputs/bundle/release-signed/app-release-signed.aab --output=app-release-signed.apks --mode=universal --ks='app/keystores/keystore' --ks-pass='pass:${{ secrets.KEYSTORE_STORE_PASSWORD }}' --ks-key-alias='${{ secrets.KEYSTORE_KEY_ALIAS }}' --key-pass='pass:${{ secrets.KEYSTORE_KEY_PASSWORD }}'
60-
unzip app-release-signed.apks
83+
java -jar tools/bundletool-all-1.17.2.jar build-apks --bundle=app/build/outputs/bundle/release/app-release.aab --output=app-release.apks --mode=universal
84+
unzip -o app-release.apks universal.apk
85+
86+
- name: Dual sign universal APK
87+
env:
88+
DEBUG_ALIAS: ${{ secrets.KEYSTORE_KEY_ALIAS }}
89+
DEBUG_KEY_PASS: ${{ secrets.KEYSTORE_KEY_PASSWORD }}
90+
DEBUG_STORE_PASS: ${{ secrets.KEYSTORE_STORE_PASSWORD }}
91+
PROD_ALIAS: ${{ secrets.PROD_KEYSTORE_KEY_ALIAS }}
92+
PROD_KEY_PASS: ${{ secrets.PROD_KEYSTORE_KEY_PASSWORD }}
93+
PROD_STORE_PASS: ${{ secrets.PROD_KEYSTORE_STORE_PASSWORD }}
94+
run: |
95+
BUILD_TOOLS_DIR="${ANDROID_HOME}/build-tools/34.0.0"
96+
if [ ! -d "$BUILD_TOOLS_DIR" ]; then
97+
BUILD_TOOLS_DIR="${ANDROID_SDK_ROOT}/build-tools/34.0.0"
98+
fi
99+
"${BUILD_TOOLS_DIR}/apksigner" sign \
100+
--ks app/keystores/keystore \
101+
--ks-key-alias "$DEBUG_ALIAS" \
102+
--ks-pass pass:$DEBUG_STORE_PASS \
103+
--key-pass pass:$DEBUG_KEY_PASS \
104+
--next-signer --ks app/keystores/prod.keystore \
105+
--ks-key-alias "$PROD_ALIAS" \
106+
--ks-pass pass:$PROD_STORE_PASS \
107+
--key-pass pass:$PROD_KEY_PASS \
108+
--out universal-signed.apk \
109+
universal.apk
110+
mv universal-signed.apk universal.apk
61111
62112
- name: Upload Artifact
63113
id: upload_app

.github/workflows/tagged-release.yml

Lines changed: 55 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -33,12 +33,28 @@ jobs:
3333
KEYSTORE_KEY_PASSWORD: ${{ secrets.KEYSTORE_KEY_PASSWORD }}
3434
KEYSTORE_STORE_PASSWORD: ${{ secrets.KEYSTORE_STORE_PASSWORD }}
3535
run: |
36+
mkdir -p app/keystores
3637
echo "$KEYSTORE" | base64 --decode > app/keystores/keystore
3738
echo "storeFile=keystores/keystore" >> app/keystores/keystore.properties
3839
echo "keyAlias=$KEYSTORE_KEY_ALIAS" >> app/keystores/keystore.properties
3940
echo "storePassword=$KEYSTORE_STORE_PASSWORD" >> app/keystores/keystore.properties
4041
echo "keyPassword=$KEYSTORE_KEY_PASSWORD" >> app/keystores/keystore.properties
4142
43+
- name: Configure Production Keystore
44+
env:
45+
PROD_KEYSTORE: ${{ secrets.PROD_KEYSTORE }}
46+
PROD_KEYSTORE_KEY_ALIAS: ${{ secrets.PROD_KEYSTORE_KEY_ALIAS }}
47+
PROD_KEYSTORE_KEY_PASSWORD: ${{ secrets.PROD_KEYSTORE_KEY_PASSWORD }}
48+
PROD_KEYSTORE_STORE_PASSWORD: ${{ secrets.PROD_KEYSTORE_STORE_PASSWORD }}
49+
run: |
50+
mkdir -p app/keystores
51+
echo "$PROD_KEYSTORE" | base64 --decode > app/keystores/prod.keystore
52+
cat <<EOF > app/keystores/prod-keystore.properties
53+
keyAlias=$PROD_KEYSTORE_KEY_ALIAS
54+
keyPassword=$PROD_KEYSTORE_KEY_PASSWORD
55+
storePassword=$PROD_KEYSTORE_STORE_PASSWORD
56+
EOF
57+
4258
- name: Inject credentials
4359
run: |
4460
cat <<EOF > local.properties
@@ -48,21 +64,50 @@ jobs:
4864
SUPABASE_KEY=${{ secrets.SUPABASE_KEY }}
4965
EOF
5066
67+
- name: Install Android SDK Build Tools
68+
run: |
69+
SDKMANAGER="$ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager"
70+
if [ ! -x "$SDKMANAGER" ]; then
71+
SDKMANAGER="$ANDROID_SDK_ROOT/cmdline-tools/latest/bin/sdkmanager"
72+
fi
73+
yes | "$SDKMANAGER" --install "build-tools;34.0.0"
74+
5175
- name: Build with Gradle
52-
run: ./gradlew :app:bundleRelease-signed
76+
run: ./gradlew :app:bundleRelease
5377

5478
- name: Extract APK from Bundle
5579
run: |
5680
java -jar tools/bundletool-all-1.17.2.jar build-apks \
57-
--bundle=app/build/outputs/bundle/release-signed/app-release-signed.aab \
58-
--output=app-release-signed.apks \
59-
--mode=universal \
60-
--ks=app/keystores/keystore \
61-
--ks-pass=pass:${{ secrets.KEYSTORE_STORE_PASSWORD }} \
62-
--ks-key-alias=${{ secrets.KEYSTORE_KEY_ALIAS }} \
63-
--key-pass=pass:${{ secrets.KEYSTORE_KEY_PASSWORD }}
64-
65-
unzip app-release-signed.apks universal.apk
81+
--bundle=app/build/outputs/bundle/release/app-release.aab \
82+
--output=app-release.apks \
83+
--mode=universal
84+
unzip -o app-release.apks universal.apk
85+
86+
- name: Dual sign universal APK
87+
env:
88+
DEBUG_ALIAS: ${{ secrets.KEYSTORE_KEY_ALIAS }}
89+
DEBUG_KEY_PASS: ${{ secrets.KEYSTORE_KEY_PASSWORD }}
90+
DEBUG_STORE_PASS: ${{ secrets.KEYSTORE_STORE_PASSWORD }}
91+
PROD_ALIAS: ${{ secrets.PROD_KEYSTORE_KEY_ALIAS }}
92+
PROD_KEY_PASS: ${{ secrets.PROD_KEYSTORE_KEY_PASSWORD }}
93+
PROD_STORE_PASS: ${{ secrets.PROD_KEYSTORE_STORE_PASSWORD }}
94+
run: |
95+
BUILD_TOOLS_DIR="${ANDROID_HOME}/build-tools/34.0.0"
96+
if [ ! -d "$BUILD_TOOLS_DIR" ]; then
97+
BUILD_TOOLS_DIR="${ANDROID_SDK_ROOT}/build-tools/34.0.0"
98+
fi
99+
"${BUILD_TOOLS_DIR}/apksigner" sign \
100+
--ks app/keystores/keystore \
101+
--ks-key-alias "$DEBUG_ALIAS" \
102+
--ks-pass pass:$DEBUG_STORE_PASS \
103+
--key-pass pass:$DEBUG_KEY_PASS \
104+
--next-signer --ks app/keystores/prod.keystore \
105+
--ks-key-alias "$PROD_ALIAS" \
106+
--ks-pass pass:$PROD_STORE_PASS \
107+
--key-pass pass:$PROD_KEY_PASS \
108+
--out universal-signed.apk \
109+
universal.apk
110+
mv universal-signed.apk universal.apk
66111
67112
- name: Upload APK for next job
68113
uses: actions/upload-artifact@v4

app/build.gradle.kts

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ android {
5252
targetSdk = 28
5353

5454
versionCode = 6
55-
versionName = "0.5.2"
55+
versionName = "0.6.0"
5656

5757
buildConfigField("boolean", "GOLD", "false")
5858
fun secret(name: String) =
@@ -195,21 +195,13 @@ dependencies {
195195
val localBuild = false // Change to 'true' needed when building JavaSteam manually
196196
if (localBuild) {
197197
implementation(files("../../JavaSteam/build/libs/javasteam-1.8.0-SNAPSHOT.jar"))
198-
implementation(files("../../JavaSteam/build/libs/javasteam-tf:1.8.0-SNAPSHOT"))
199-
implementation(files("../../JavaSteam/build/libs/javasteam-dota2:1.8.0-SNAPSHOT"))
200198
implementation(files("../../JavaSteam/build/libs/javasteam-depotdownloader:1.8.0-SNAPSHOT"))
201-
implementation(files("../../JavaSteam/build/libs/javasteam-deadlock:1.8.0-SNAPSHOT"))
202-
implementation(files("../../JavaSteam/build/libs/javasteam-cs:1.8.0-SNAPSHOT"))
203199
implementation(libs.bundles.steamkit.dev)
204200
} else {
205201
implementation(libs.steamkit) {
206202
isChanging = version?.contains("SNAPSHOT") ?: false
207203
}
208-
implementation("in.dragonbra:javasteam-tf:1.8.0-SNAPSHOT")
209-
implementation("in.dragonbra:javasteam-dota2:1.8.0-SNAPSHOT")
210204
implementation("in.dragonbra:javasteam-depotdownloader:1.8.0-SNAPSHOT")
211-
implementation("in.dragonbra:javasteam-deadlock:1.8.0-SNAPSHOT")
212-
implementation("in.dragonbra:javasteam-cs:1.8.0-SNAPSHOT")
213205
}
214206
implementation(libs.spongycastle)
215207

app/src/main/java/com/winlator/xenvironment/components/GlibcProgramLauncherComponent.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -254,7 +254,6 @@ private void addBox64EnvVars(EnvVars envVars, boolean enableLogs) {
254254
}
255255

256256
envVars.putAll(Box86_64PresetManager.getEnvVars("box64", environment.getContext(), box64Preset));
257-
if (wow64Mode) envVars.put("BOX64_MMAP32", "1");
258257
String renderer = GPUInformation.getRenderer(context);
259258
if (renderer.contains("Mali"))
260259
envVars.put("BOX64_MMAP32", "0");

0 commit comments

Comments
 (0)