diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 4427a12d..798ea4a6 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -85,33 +85,38 @@ jobs:
- name: Build components
run: melos run build-components --no-select
- - name: Build APK
+ - name: Build APK (Alpha)
+ if: steps.build-type.outputs.is_prerelease == 'true'
+ run: melos run build-browser-alpha --no-select
+
+ - name: Build APK (Stable)
+ if: steps.build-type.outputs.is_prerelease == 'false'
run: melos run build-browser --no-select
- name: Build App Bundle
if: steps.build-type.outputs.is_prerelease == 'false'
working-directory: apps/weblibre
- run: flutter build appbundle --target-platform android-arm,android-arm64 --no-tree-shake-icons
+ run: flutter build appbundle --flavor stable --target-platform android-arm,android-arm64 --no-tree-shake-icons
- name: Create github artifact release (Prerelease)
if: steps.build-type.outputs.is_prerelease == 'true'
uses: ncipollo/release-action@v1.17.0
with:
- artifacts: "apps/weblibre/build/app/outputs/apk/release/*.apk"
+ artifacts: "apps/weblibre/build/app/outputs/apk/alpha/release/*.apk"
prerelease: true
- name: Create github artifact release (Full)
if: steps.build-type.outputs.is_prerelease == 'false'
uses: ncipollo/release-action@v1.17.0
with:
- artifacts: "apps/weblibre/build/app/outputs/apk/release/*.apk,apps/weblibre/build/app/outputs/bundle/release/app-release.aab"
+ artifacts: "apps/weblibre/build/app/outputs/apk/stable/release/*.apk,apps/weblibre/build/app/outputs/bundle/stableRelease/app-stable-release.aab"
- name: Upload app bundle artifact
if: steps.build-type.outputs.is_prerelease == 'false'
uses: actions/upload-artifact@v4
with:
name: appbundle
- path: apps/weblibre/build/app/outputs/bundle/release/app-release.aab
+ path: apps/weblibre/build/app/outputs/bundle/stableRelease/app-stable-release.aab
- name: Release to Google Play (internal)
if: steps.build-type.outputs.is_prerelease == 'false'
@@ -121,7 +126,7 @@ jobs:
SUPPLY_JSON_KEY_DATA: ${{ secrets.GOOGLE_SERVICE_ACCOUNT_KEY }}
run: |
bundle exec fastlane supply \
- --aab build/app/outputs/bundle/release/app-release.aab \
+ --aab build/app/outputs/bundle/stableRelease/app-stable-release.aab \
--track internal
- name: Cleanup
diff --git a/.vscode/launch.json b/.vscode/launch.json
index a11517b5..026e41ce 100644
--- a/.vscode/launch.json
+++ b/.vscode/launch.json
@@ -5,55 +5,41 @@
"version": "0.2.0",
"configurations": [
{
- "name": "app",
- "cwd": "app",
+ "name": "WebLibre",
+ "cwd": "apps/weblibre",
"request": "launch",
"type": "dart",
"args": [
"--device-user",
- "0"
+ "0",
+ "--flavor",
+ "alpha"
]
},
{
- "name": "app (profile mode)",
- "cwd": "app",
+ "name": "WebLibre (profile mode)",
+ "cwd": "apps/weblibre",
"request": "launch",
"type": "dart",
"flutterMode": "profile",
"args": [
"--device-user",
- "0"
+ "0",
+ "--flavor",
+ "alpha"
]
},
{
- "name": "app (release mode)",
- "cwd": "app",
+ "name": "WebLibre (release mode)",
+ "cwd": "apps/weblibre",
"request": "launch",
"type": "dart",
"flutterMode": "release",
"args": [
"--device-user",
- "0"
- ]
- },
- {
- "name": "flutter_mozilla_components",
- "cwd": "packages/flutter_mozilla_components/example",
- "request": "launch",
- "type": "dart",
- "args": [
- "--device-user",
- "0"
- ]
- },
- {
- "name": "simple_intent_receiver",
- "cwd": "packages/simple_intent_receiver/example",
- "request": "launch",
- "type": "dart",
- "args": [
- "--device-user",
- "0"
+ "0",
+ "--flavor",
+ "alpha"
]
},
]
diff --git a/apps/weblibre/android/app/build.gradle b/apps/weblibre/android/app/build.gradle
index 9737cd1f..dec89641 100644
--- a/apps/weblibre/android/app/build.gradle
+++ b/apps/weblibre/android/app/build.gradle
@@ -48,6 +48,20 @@ android {
versionName = flutterVersionName
}
+ flavorDimensions "track"
+ productFlavors {
+ stable {
+ dimension "track"
+ manifestPlaceholders = [appName: "WebLibre"]
+ }
+ alpha {
+ dimension "track"
+ applicationIdSuffix ".alpha"
+ versionNameSuffix "-alpha"
+ manifestPlaceholders = [appName: "WebLibre Alpha"]
+ }
+ }
+
dependencies {
// implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
implementation 'androidx.glance:glance-appwidget:1.1.1'
diff --git a/apps/weblibre/android/app/src/alpha/res/drawable-hdpi/ic_launcher_foreground.png b/apps/weblibre/android/app/src/alpha/res/drawable-hdpi/ic_launcher_foreground.png
new file mode 100644
index 00000000..f4436801
Binary files /dev/null and b/apps/weblibre/android/app/src/alpha/res/drawable-hdpi/ic_launcher_foreground.png differ
diff --git a/apps/weblibre/android/app/src/alpha/res/drawable-hdpi/ic_launcher_monochrome.png b/apps/weblibre/android/app/src/alpha/res/drawable-hdpi/ic_launcher_monochrome.png
new file mode 100644
index 00000000..f4436801
Binary files /dev/null and b/apps/weblibre/android/app/src/alpha/res/drawable-hdpi/ic_launcher_monochrome.png differ
diff --git a/apps/weblibre/android/app/src/alpha/res/drawable-mdpi/ic_launcher_foreground.png b/apps/weblibre/android/app/src/alpha/res/drawable-mdpi/ic_launcher_foreground.png
new file mode 100644
index 00000000..9dc5e77b
Binary files /dev/null and b/apps/weblibre/android/app/src/alpha/res/drawable-mdpi/ic_launcher_foreground.png differ
diff --git a/apps/weblibre/android/app/src/alpha/res/drawable-mdpi/ic_launcher_monochrome.png b/apps/weblibre/android/app/src/alpha/res/drawable-mdpi/ic_launcher_monochrome.png
new file mode 100644
index 00000000..9dc5e77b
Binary files /dev/null and b/apps/weblibre/android/app/src/alpha/res/drawable-mdpi/ic_launcher_monochrome.png differ
diff --git a/apps/weblibre/android/app/src/alpha/res/drawable-xhdpi/ic_launcher_foreground.png b/apps/weblibre/android/app/src/alpha/res/drawable-xhdpi/ic_launcher_foreground.png
new file mode 100644
index 00000000..bccef354
Binary files /dev/null and b/apps/weblibre/android/app/src/alpha/res/drawable-xhdpi/ic_launcher_foreground.png differ
diff --git a/apps/weblibre/android/app/src/alpha/res/drawable-xhdpi/ic_launcher_monochrome.png b/apps/weblibre/android/app/src/alpha/res/drawable-xhdpi/ic_launcher_monochrome.png
new file mode 100644
index 00000000..bccef354
Binary files /dev/null and b/apps/weblibre/android/app/src/alpha/res/drawable-xhdpi/ic_launcher_monochrome.png differ
diff --git a/apps/weblibre/android/app/src/alpha/res/drawable-xxhdpi/ic_launcher_foreground.png b/apps/weblibre/android/app/src/alpha/res/drawable-xxhdpi/ic_launcher_foreground.png
new file mode 100644
index 00000000..cf4bf79a
Binary files /dev/null and b/apps/weblibre/android/app/src/alpha/res/drawable-xxhdpi/ic_launcher_foreground.png differ
diff --git a/apps/weblibre/android/app/src/alpha/res/drawable-xxhdpi/ic_launcher_monochrome.png b/apps/weblibre/android/app/src/alpha/res/drawable-xxhdpi/ic_launcher_monochrome.png
new file mode 100644
index 00000000..cf4bf79a
Binary files /dev/null and b/apps/weblibre/android/app/src/alpha/res/drawable-xxhdpi/ic_launcher_monochrome.png differ
diff --git a/apps/weblibre/android/app/src/alpha/res/drawable-xxxhdpi/ic_launcher_foreground.png b/apps/weblibre/android/app/src/alpha/res/drawable-xxxhdpi/ic_launcher_foreground.png
new file mode 100644
index 00000000..b642ffee
Binary files /dev/null and b/apps/weblibre/android/app/src/alpha/res/drawable-xxxhdpi/ic_launcher_foreground.png differ
diff --git a/apps/weblibre/android/app/src/alpha/res/drawable-xxxhdpi/ic_launcher_monochrome.png b/apps/weblibre/android/app/src/alpha/res/drawable-xxxhdpi/ic_launcher_monochrome.png
new file mode 100644
index 00000000..b642ffee
Binary files /dev/null and b/apps/weblibre/android/app/src/alpha/res/drawable-xxxhdpi/ic_launcher_monochrome.png differ
diff --git a/apps/weblibre/android/app/src/alpha/res/mipmap-anydpi-v26/launcher_icon.xml b/apps/weblibre/android/app/src/alpha/res/mipmap-anydpi-v26/launcher_icon.xml
new file mode 100644
index 00000000..2c8762dc
--- /dev/null
+++ b/apps/weblibre/android/app/src/alpha/res/mipmap-anydpi-v26/launcher_icon.xml
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/apps/weblibre/android/app/src/alpha/res/mipmap-hdpi/launcher_icon.png b/apps/weblibre/android/app/src/alpha/res/mipmap-hdpi/launcher_icon.png
new file mode 100644
index 00000000..6111b6a5
Binary files /dev/null and b/apps/weblibre/android/app/src/alpha/res/mipmap-hdpi/launcher_icon.png differ
diff --git a/apps/weblibre/android/app/src/alpha/res/mipmap-mdpi/launcher_icon.png b/apps/weblibre/android/app/src/alpha/res/mipmap-mdpi/launcher_icon.png
new file mode 100644
index 00000000..6e33fa92
Binary files /dev/null and b/apps/weblibre/android/app/src/alpha/res/mipmap-mdpi/launcher_icon.png differ
diff --git a/apps/weblibre/android/app/src/alpha/res/mipmap-xhdpi/launcher_icon.png b/apps/weblibre/android/app/src/alpha/res/mipmap-xhdpi/launcher_icon.png
new file mode 100644
index 00000000..b51d3f3f
Binary files /dev/null and b/apps/weblibre/android/app/src/alpha/res/mipmap-xhdpi/launcher_icon.png differ
diff --git a/apps/weblibre/android/app/src/alpha/res/mipmap-xxhdpi/launcher_icon.png b/apps/weblibre/android/app/src/alpha/res/mipmap-xxhdpi/launcher_icon.png
new file mode 100644
index 00000000..4cf5c77f
Binary files /dev/null and b/apps/weblibre/android/app/src/alpha/res/mipmap-xxhdpi/launcher_icon.png differ
diff --git a/apps/weblibre/android/app/src/alpha/res/mipmap-xxxhdpi/launcher_icon.png b/apps/weblibre/android/app/src/alpha/res/mipmap-xxxhdpi/launcher_icon.png
new file mode 100644
index 00000000..8c891d7e
Binary files /dev/null and b/apps/weblibre/android/app/src/alpha/res/mipmap-xxxhdpi/launcher_icon.png differ
diff --git a/apps/weblibre/android/app/src/alpha/res/values/colors.xml b/apps/weblibre/android/app/src/alpha/res/values/colors.xml
new file mode 100644
index 00000000..bb6e8f03
--- /dev/null
+++ b/apps/weblibre/android/app/src/alpha/res/values/colors.xml
@@ -0,0 +1,4 @@
+
+
+ #FF000000
+
\ No newline at end of file
diff --git a/apps/weblibre/android/app/src/main/AndroidManifest.xml b/apps/weblibre/android/app/src/main/AndroidManifest.xml
index 03b7d90b..862f59df 100644
--- a/apps/weblibre/android/app/src/main/AndroidManifest.xml
+++ b/apps/weblibre/android/app/src/main/AndroidManifest.xml
@@ -48,7 +48,7 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ALPHA
+
+
diff --git a/apps/weblibre/flutter_launcher_icons-alpha.yaml b/apps/weblibre/flutter_launcher_icons-alpha.yaml
new file mode 100644
index 00000000..7d3927cc
--- /dev/null
+++ b/apps/weblibre/flutter_launcher_icons-alpha.yaml
@@ -0,0 +1,7 @@
+flutter_launcher_icons:
+ android: "launcher_icon"
+ image_path: "assets/icon/icon_alpha.png"
+ adaptive_icon_foreground: "assets/icon/icon_alpha.png"
+ adaptive_icon_monochrome: "assets/icon/icon_alpha.png"
+ adaptive_icon_foreground_inset: 25
+ adaptive_icon_background: "#FF000000"
diff --git a/pubspec.yaml b/pubspec.yaml
index e88ddf8c..df946712 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -78,8 +78,14 @@ melos:
sh scripts/build-readability.sh
python3 scripts/build_quotes_db.py
build-browser:
- description: Build release APK split per ABI
+ description: Build stable release APK split per ABI
run: |
set -e
cd apps/weblibre
- flutter build apk --release --target-platform android-arm,android-arm64 --split-per-abi --no-tree-shake-icons
+ flutter build apk --release --flavor stable --target-platform android-arm,android-arm64 --split-per-abi --no-tree-shake-icons
+ build-browser-alpha:
+ description: Build alpha release APK split per ABI (side-by-side installable with stable)
+ run: |
+ set -e
+ cd apps/weblibre
+ flutter build apk --release --flavor alpha --target-platform android-arm,android-arm64 --split-per-abi --no-tree-shake-icons