Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
68 changes: 22 additions & 46 deletions .fdroid.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,137 +12,113 @@ RepoType: git
Repo: https://github.com/andre487/AndroidMegaProxy.git

Builds:
- versionName: 0.0.8
versionCode: 8001
commit: d314a250df796643ce9e52c60f9b061318634935
- versionName: 0.0.10
versionCode: 10001
commit: v0.0.10
subdir: app
ndk: 29.0.14206865
sudo:
- apt-get update
- apt-get install -t trixie-backports -y golang-go
- apt-get install -y gcc libc-dev make openjdk-21-jdk-headless
- mkdir -p /home/runner/work/AndroidMegaProxy
- chown -R vagrant:vagrant /home/runner
gradle:
- yes
gradleprops:
- megaproxyVersionVariant=armeabi-v7a
srclibs:
- go@go1.26.3
binary: https://github.com/andre487/AndroidMegaProxy/releases/download/v%v/mega-proxy-armeabi-v7a.apk
prebuild:
- sdkmanager 'platforms;android-26'
- echo 'megaproxyVersionVariant=armeabi-v7a' >> ../gradle.properties
build:
- pushd $$go$$/src
- ./make.bash
- popd
- export GOROOT=$$go$$
- export GOPATH=$HOME/go
- export PATH=$GOROOT/bin:$GOPATH/bin:$PATH
- rm -rf /home/runner/work/AndroidMegaProxy/AndroidMegaProxy
- cp -a .. /home/runner/work/AndroidMegaProxy/AndroidMegaProxy
- cd /home/runner/work/AndroidMegaProxy/AndroidMegaProxy/app
- MEGAPROXY_ANDROID_ABI=armeabi-v7a ../scripts/build-fdroid-native.sh
- mkdir -p $OLDPWD/libs
- cp libs/megaproxy.aar $OLDPWD/libs/

- versionName: 0.0.8
versionCode: 8002
commit: d314a250df796643ce9e52c60f9b061318634935
- versionName: 0.0.10
versionCode: 10002
commit: v0.0.10
subdir: app
ndk: 29.0.14206865
sudo:
- apt-get update
- apt-get install -t trixie-backports -y golang-go
- apt-get install -y gcc libc-dev make openjdk-21-jdk-headless
- mkdir -p /home/runner/work/AndroidMegaProxy
- chown -R vagrant:vagrant /home/runner
gradle:
- yes
gradleprops:
- megaproxyVersionVariant=arm64-v8a
srclibs:
- go@go1.26.3
binary: https://github.com/andre487/AndroidMegaProxy/releases/download/v%v/mega-proxy-arm64-v8a.apk
prebuild:
- sdkmanager 'platforms;android-26'
- echo 'megaproxyVersionVariant=arm64-v8a' >> ../gradle.properties
build:
- pushd $$go$$/src
- ./make.bash
- popd
- export GOROOT=$$go$$
- export GOPATH=$HOME/go
- export PATH=$GOROOT/bin:$GOPATH/bin:$PATH
- rm -rf /home/runner/work/AndroidMegaProxy/AndroidMegaProxy
- cp -a .. /home/runner/work/AndroidMegaProxy/AndroidMegaProxy
- cd /home/runner/work/AndroidMegaProxy/AndroidMegaProxy/app
- MEGAPROXY_ANDROID_ABI=arm64-v8a ../scripts/build-fdroid-native.sh
- mkdir -p $OLDPWD/libs
- cp libs/megaproxy.aar $OLDPWD/libs/

- versionName: 0.0.8
versionCode: 8003
commit: d314a250df796643ce9e52c60f9b061318634935
- versionName: 0.0.10
versionCode: 10003
commit: v0.0.10
subdir: app
ndk: 29.0.14206865
sudo:
- apt-get update
- apt-get install -t trixie-backports -y golang-go
- apt-get install -y gcc libc-dev make openjdk-21-jdk-headless
- mkdir -p /home/runner/work/AndroidMegaProxy
- chown -R vagrant:vagrant /home/runner
gradle:
- yes
gradleprops:
- megaproxyVersionVariant=x86
srclibs:
- go@go1.26.3
binary: https://github.com/andre487/AndroidMegaProxy/releases/download/v%v/mega-proxy-x86.apk
prebuild:
- sdkmanager 'platforms;android-26'
- echo 'megaproxyVersionVariant=x86' >> ../gradle.properties
build:
- pushd $$go$$/src
- ./make.bash
- popd
- export GOROOT=$$go$$
- export GOPATH=$HOME/go
- export PATH=$GOROOT/bin:$GOPATH/bin:$PATH
- rm -rf /home/runner/work/AndroidMegaProxy/AndroidMegaProxy
- cp -a .. /home/runner/work/AndroidMegaProxy/AndroidMegaProxy
- cd /home/runner/work/AndroidMegaProxy/AndroidMegaProxy/app
- MEGAPROXY_ANDROID_ABI=x86 ../scripts/build-fdroid-native.sh
- mkdir -p $OLDPWD/libs
- cp libs/megaproxy.aar $OLDPWD/libs/

- versionName: 0.0.8
versionCode: 8004
commit: d314a250df796643ce9e52c60f9b061318634935
- versionName: 0.0.10
versionCode: 10004
commit: v0.0.10
subdir: app
ndk: 29.0.14206865
sudo:
- apt-get update
- apt-get install -t trixie-backports -y golang-go
- apt-get install -y gcc libc-dev make openjdk-21-jdk-headless
- mkdir -p /home/runner/work/AndroidMegaProxy
- chown -R vagrant:vagrant /home/runner
gradle:
- yes
gradleprops:
- megaproxyVersionVariant=x86_64
srclibs:
- go@go1.26.3
binary: https://github.com/andre487/AndroidMegaProxy/releases/download/v%v/mega-proxy-x86_64.apk
prebuild:
- sdkmanager 'platforms;android-26'
- echo 'megaproxyVersionVariant=x86_64' >> ../gradle.properties
build:
- pushd $$go$$/src
- ./make.bash
- popd
- export GOROOT=$$go$$
- export GOPATH=$HOME/go
- export PATH=$GOROOT/bin:$GOPATH/bin:$PATH
- rm -rf /home/runner/work/AndroidMegaProxy/AndroidMegaProxy
- cp -a .. /home/runner/work/AndroidMegaProxy/AndroidMegaProxy
- cd /home/runner/work/AndroidMegaProxy/AndroidMegaProxy/app
- MEGAPROXY_ANDROID_ABI=x86_64 ../scripts/build-fdroid-native.sh
- mkdir -p $OLDPWD/libs
- cp libs/megaproxy.aar $OLDPWD/libs/

VercodeOperation:
- 1000 * %c + 1
Expand All @@ -153,5 +129,5 @@ VercodeOperation:
AutoUpdateMode: Version
UpdateCheckMode: Tags
UpdateCheckData: app/build.gradle.kts|versionCodeBase = (\d+)|.|versionName = "([^"]+)"
CurrentVersion: 0.0.8
CurrentVersionCode: 8004
CurrentVersion: 0.0.10
CurrentVersionCode: 10004
26 changes: 26 additions & 0 deletions .github/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
changelog:
exclude:
labels:
- skip-changelog
categories:
- title: Breaking changes
labels:
- breaking-change
- title: New features
labels:
- enhancement
- feature
- title: Fixes
labels:
- bug
- bugfix
- title: Documentation
labels:
- documentation
- title: Maintenance
labels:
- dependencies
- maintenance
- title: Other changes
labels:
- "*"
11 changes: 10 additions & 1 deletion .github/workflows/fdroid-recipe.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,4 +32,13 @@ jobs:
uses: actions/checkout@v6

- name: Compare the recipe with fdroiddata
run: ./scripts/check-fdroid-metadata-sync.sh
env:
EVENT_NAME: ${{ github.event_name }}
run: |
if ./scripts/check-fdroid-metadata-sync.sh; then
exit 0
fi
echo "::warning title=F-Droid recipe is out of sync::Update the fdroiddata merge request after publishing the release."
if [[ "$EVENT_NAME" != "push" ]]; then
exit 1
fi
4 changes: 2 additions & 2 deletions app/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ val releaseKeystorePath = providers.environmentVariable("MEGAPROXY_KEYSTORE_PATH
val releaseKeystorePassword = providers.environmentVariable("MEGAPROXY_KEYSTORE_PASSWORD").orNull
val releaseKeyAlias = providers.environmentVariable("MEGAPROXY_KEY_ALIAS").orNull
val releaseKeyPassword = providers.environmentVariable("MEGAPROXY_KEY_PASSWORD").orNull
val versionCodeBase = 9
val versionCodeBase = 10
val versionVariant = providers.gradleProperty("megaproxyVersionVariant")
.orElse("universal")
.get()
Expand Down Expand Up @@ -43,7 +43,7 @@ android {
// universal code below the ABI variants lets app stores prefer the
// smaller compatible APK when both are available.
versionCode = versionCodeBase * 1000 + versionVariantCode
versionName = "0.0.9"
versionName = "0.0.10"
buildConfigField("String", "GIT_COMMIT_HASH", "\"$gitCommitHash\"")
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
if (versionVariant != "universal") {
Expand Down
2 changes: 1 addition & 1 deletion scripts/build-fdroid-native.sh
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,6 @@ gomobile bind \
-target="$gomobile_target" \
-androidapi 26 \
-trimpath \
-ldflags='-s -w -buildid=' \
-ldflags='-s -w -buildid= -X=runtime.modinfo=' \
-o "$project_dir/app/libs/megaproxy.aar" \
./mobile
21 changes: 11 additions & 10 deletions scripts/build-release-apks.sh
Original file line number Diff line number Diff line change
Expand Up @@ -57,8 +57,9 @@ keytool -list \
-alias "$MEGAPROXY_KEY_ALIAS" >/dev/null

version_name="$(sed -nE 's/^[[:space:]]*versionName = "([^"]+)"/\1/p' "$project_dir/app/build.gradle.kts" | head -n 1)"
if [[ -z "$version_name" ]]; then
echo "Unable to determine versionName from app/build.gradle.kts" >&2
version_code_base="$(sed -nE 's/^[[:space:]]*val versionCodeBase = ([0-9]+)/\1/p' "$project_dir/app/build.gradle.kts" | head -n 1)"
if [[ -z "$version_name" || -z "$version_code_base" ]]; then
echo "Unable to determine versionName or versionCodeBase from app/build.gradle.kts" >&2
exit 1
fi

Expand Down Expand Up @@ -129,10 +130,10 @@ echo "Running native tests"

# gomobile architecture names and their corresponding Android ABI names.
targets=(
"arm64:arm64-v8a:9002"
"arm:armeabi-v7a:9001"
"amd64:x86_64:9004"
"386:x86:9003"
"arm64:arm64-v8a:$((version_code_base * 1000 + 2))"
"arm:armeabi-v7a:$((version_code_base * 1000 + 1))"
"amd64:x86_64:$((version_code_base * 1000 + 4))"
"386:x86:$((version_code_base * 1000 + 3))"
)

# A clean checkout has no app/libs/megaproxy.aar. Gradle resolves local AAR
Expand All @@ -149,7 +150,7 @@ echo "Building initial native AAR for $first_android_abi"
-target="android/$first_go_arch" \
-androidapi 26 \
-trimpath \
-ldflags="-s -w -buildid=" \
-ldflags="-s -w -buildid= -X=runtime.modinfo=" \
-o ../app/libs/megaproxy.aar \
./mobile
)
Expand Down Expand Up @@ -177,7 +178,7 @@ for target in "${targets[@]}"; do
-target="android/$go_arch" \
-androidapi 26 \
-trimpath \
-ldflags="-s -w -buildid=" \
-ldflags="-s -w -buildid= -X=runtime.modinfo=" \
-o ../app/libs/megaproxy.aar \
./mobile
)
Expand Down Expand Up @@ -213,7 +214,7 @@ echo "Building optimized native AAR for the universal APK"
-target=android \
-androidapi 26 \
-trimpath \
-ldflags="-s -w -buildid=" \
-ldflags="-s -w -buildid= -X=runtime.modinfo=" \
-o ../app/libs/megaproxy.aar \
./mobile
)
Expand All @@ -232,7 +233,7 @@ if [[ ! -f "$built_apk" ]]; then
fi
cp "$built_apk" "$universal_apk"
verify_release_apk "$universal_apk"
verify_release_version_code "$universal_apk" 9000
verify_release_version_code "$universal_apk" "$((version_code_base * 1000))"

(
cd "$MEGAPROXY_RELEASE_DIR"
Expand Down
2 changes: 1 addition & 1 deletion scripts/build-release-bundle.sh
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@ echo "Building universal native AAR for the App Bundle"
-target=android \
-androidapi 26 \
-trimpath \
-ldflags="-linkmode=external -buildid= -extldflags=-Wl,--build-id=sha1" \
-ldflags="-linkmode=external -buildid= -X=runtime.modinfo= -extldflags=-Wl,--build-id=sha1" \
-o ../app/libs/megaproxy.aar \
./mobile
)
Expand Down