Skip to content

Commit

Permalink
Merge branch 'master' into issue369-radio
Browse files Browse the repository at this point in the history
  • Loading branch information
andrekir authored Oct 23, 2023
2 parents b86f856 + f404bf2 commit f98fa75
Show file tree
Hide file tree
Showing 254 changed files with 16,148 additions and 5,917 deletions.
13 changes: 13 additions & 0 deletions .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# These are supported funding model platforms

github: meshtastic
patreon: # Replace with a single Patreon username
open_collective: meshtastic
ko_fi: # Replace with a single Ko-fi username
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
liberapay: # Replace with a single Liberapay username
issuehunt: # Replace with a single IssueHunt username
otechie: # Replace with a single Otechie username
lfx_crowdfunding: # Replace with a single LFX Crowdfunding project-name e.g., cloud-foundry
custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2']
52 changes: 35 additions & 17 deletions .github/workflows/android.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,9 @@ name: Android CI

on:
push:
branches: [ master ]
paths-ignore:
- "**.md"
pull_request:
branches: [ master ]

Expand All @@ -12,36 +15,51 @@ jobs:
steps:

- name: Checkout code
uses: actions/checkout@v2
uses: actions/checkout@v4
with:
submodules: 'recursive'

- name: Validate Gradle wrapper
uses: gradle/wrapper-validation-action@v1

- name: Mock files for CI
run: |
rm ./app/google-services.json
cp ./app/google-services-example.json ./app/google-services.json
rm ./app/src/main/res/values/curfirmwareversion.xml
cp ./app/special/curfirmwareversion.xml ./app/src/main/res/values/
rm -rf ./app/src/main/assets/firmware
mkdir -p ./app/src/main/assets/firmware
- name: Set up JDK 11
uses: actions/setup-java@v2
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
java-version: 11
distribution: 'adopt'
cache: gradle

- name: Validate Gradle wrapper
uses: gradle/wrapper-validation-action@v1

- name: Integration test
run: ./gradlew test --stacktrace
java-version: '17'
distribution: 'zulu'

- name: Build debug APK
- name: Setup Gradle
uses: gradle/gradle-build-action@v2

- name: Check lint
run: ./gradlew lintFdroidDebug lintGoogleDebug

- name: Build debug artifacts
run: ./gradlew assembleDebug

- name: Upload APK
uses: actions/upload-artifact@v2
- name: Run local tests
run: ./gradlew testFdroidDebug testGoogleDebug

- name: Upload debug artifact
uses: actions/upload-artifact@v3
with:
name: fdroidDebug
path: app/build/outputs/apk/fdroid/debug/app-fdroid-debug.apk
retention-days: 30

- name: Upload build reports
if: always()
uses: actions/upload-artifact@v3
with:
name: app-debug
path: app/build/outputs/apk/debug/app-debug.apk
name: build-reports
path: app/build/reports
retention-days: 30
61 changes: 37 additions & 24 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -1,22 +1,25 @@
name: Make Release

on:
workflow_dispatch:
inputs:
version:
description: "Release version (Example: 1.0.0, must match app/gradle.build 'versionName')"
required: true
default: '1.0.0'

jobs:

release-build:
runs-on: ubuntu-latest
steps:

- name: Checkout code
uses: actions/checkout@v2
uses: actions/checkout@v4
with:
submodules: 'recursive'

- name: Get versionName
run: echo "versionName=$(grep -oP 'versionName \"\K[^\"]+' ./app/build.gradle)" >> $GITHUB_ENV

- name: Validate Gradle wrapper
uses: gradle/wrapper-validation-action@v1

- name: Load secrets
run: |
rm ./app/google-services.json
Expand All @@ -29,11 +32,11 @@ jobs:
KEYSTORE_FILENAME: ${{ secrets.KEYSTORE_FILENAME }}
KEYSTORE_PROPERTIES: ${{ secrets.KEYSTORE_PROPERTIES }}

- name: Set up JDK 11
uses: actions/setup-java@v2
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
java-version: 11
distribution: 'adopt'
java-version: '17'
distribution: 'zulu'
# Note: we don't use caches on release builds because we don't want to accidentally not have a virgin build machine

- name: Find firmware release tag
Expand Down Expand Up @@ -75,14 +78,14 @@ jobs:
rm -rf ./app/src/main/assets/firmware
mkdir -p ./app/src/main/assets/firmware
- name: Validate Gradle wrapper
uses: gradle/wrapper-validation-action@v1
- name: Build F-Droid release
run: ./gradlew assembleFdroidRelease

- name: Gradle bundleRelease
run: ./gradlew bundleRelease
- name: Enable Crashlytics
run: sed -i 's/useCrashlytics = false/useCrashlytics = true/g' ./build.gradle

- name: Gradle assembleRelease
run: ./gradlew assembleRelease
- name: Build Play Store release
run: ./gradlew bundleGoogleRelease assembleGoogleRelease

# - name: Upload Release to Play Store
# run: cp ./app/src/main/play/release-notes/en-US/production.txt ./app/src/main/play/release-notes/whatsnew-en-US.txt
Expand All @@ -101,31 +104,41 @@ jobs:
with:
draft: true
prerelease: true
release_name: Meshtastic Android ${{ github.event.inputs.version}} alpha
tag_name: ${{ github.event.inputs.version}}
release_name: Meshtastic Android ${{ env.versionName }} alpha
tag_name: ${{ env.versionName }}
body: |
Autogenerated by github action, developer should edit as required before publishing...
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: Add AAB to release
- name: Add F-Droid APK to release
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: app/build/outputs/apk/fdroid/release/app-fdroid-release.apk
asset_name: fdroidRelease-${{ env.versionName }}.apk
asset_content_type: application/zip

- name: Add Play Store AAB to release
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: app/build/outputs/bundle/release/app-release.aab
asset_name: app-release-${{ github.event.inputs.version}}.aab
asset_path: app/build/outputs/bundle/googleRelease/app-google-release.aab
asset_name: googleRelease-${{ env.versionName }}.aab
asset_content_type: application/zip

- name: Add APK to release
- name: Add Play Store APK to release
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: app/build/outputs/apk/release/app-release.apk
asset_name: app-release-${{ github.event.inputs.version}}.apk
asset_path: app/build/outputs/apk/google/release/app-google-release.apk
asset_name: googleRelease-${{ env.versionName }}.apk
asset_content_type: application/zip

# - name: Gradle publishBundle
Expand Down
4 changes: 2 additions & 2 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[submodule "app/src/main/proto"]
path = app/src/main/proto
url = https://github.com/meshtastic/Meshtastic-protobufs.git
url = https://github.com/meshtastic/protobufs.git
[submodule "design"]
path = design
url = https://github.com/meshtastic/meshtastic-design.git
url = https://github.com/meshtastic/design.git
17 changes: 0 additions & 17 deletions .project

This file was deleted.

13 changes: 0 additions & 13 deletions .settings/org.eclipse.buildship.core.prefs

This file was deleted.

28 changes: 8 additions & 20 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

![GitHub all releases](https://img.shields.io/github/downloads/meshtastic/meshtastic-android/total)
[![Android CI](https://github.com/meshtastic/Meshtastic-Android/actions/workflows/android.yml/badge.svg)](https://github.com/meshtastic/Meshtastic-Android/actions/workflows/android.yml)
[![Crowdin](https://badges.crowdin.net/e/f440f1a5e094a5858dd86deb1adfe83d/localized.svg)](https://crowdin.meshtastic.org/android)
[![CLA assistant](https://cla-assistant.io/readme/badge/meshtastic/Meshtastic-Android)](https://cla-assistant.io/meshtastic/Meshtastic-Android)
[![Fiscal Contributors](https://opencollective.com/meshtastic/tiers/badge.svg?label=Fiscal%20Contributors&color=deeppink)](https://opencollective.com/meshtastic/)
[![Vercel](https://img.shields.io/static/v1?label=Powered%20by&message=Vercel&style=flat&logo=vercel&color=000000)](https://vercel.com?utm_source=meshtastic&utm_campaign=oss)
Expand All @@ -12,9 +13,9 @@ This project is currently beta testing, if you have questions or feedback
please [Join our discussion forum](https://meshtastic.discourse.group/). We would love to hear from
you!

[<img src="https://fdroid.gitlab.io/artwork/badge/get-it-on.png"
[<img src="https://gitlab.com/IzzyOnDroid/repo/-/raw/master/assets/IzzyOnDroid.png"
alt="Get it on F-Droid"
width="49%">](https://mesh.tastic.app/fdroid/repo)
width="49%">](https://apt.izzysoft.de/fdroid/repo)
[<img src="https://play.google.com/intl/en_us/badges/static/images/badges/en_badge_web_generic.png"
alt="Download at https://play.google.com/store/apps/details?id=com.geeksville.mesh]"
width="49%">](https://play.google.com/store/apps/details?id=com.geeksville.mesh&referrer=utm_source%3Dgithub-android-readme)
Expand All @@ -24,6 +25,10 @@ If you encounter any problems or have questions, [post in the forum](https://mes

However, if you must use 'raw' APKs you can get them from our [github releases](https://github.com/meshtastic/Meshtastic-Android/releases). This is not recommended because if you manually install an APK it will not automatically update.

## Translations

You can help translate the app into your native language using [Crowdin](https://crowdin.meshtastic.org/android).

## Build instructions

If you would like to develop this application we'd love your help! These build instructions are brief and should be improved, please send a PR if you can.
Expand Down Expand Up @@ -61,21 +66,4 @@ for verbose logging:
adb shell setprop log.tag.FA VERBOSE
```

# Credits

This project is the work of volunteers:

- @artemisoftnian: Contributed Spanish translations.
- @CycloMies: Contributed Swedish, Finnish and German translations.
- @eriktheV-king: Contributed Dutch and French translations.
- @Lgoix: Contributed tooltip for radio mode
- @Eugene: Contributed Russian translation.
- @Jinx17: Contributed Slovenian translation.
- @Konradrundfunk: Contributed German fixes.
- @Mango-sauce: Contributed Chinese translation.
- @NEKLAN: Contributed Japanese translation.
- @Ohcdh: Contributed Irish and Italian translations.
- @Slavino: Contributed Slovak translation.
- @Zone: Contributed Turkish translation.

Copyright 2022, Geeksville Industries, LLC. GPL V3 license
Copyright 2023, Meshtastic LLC. GPL-3.0 license
58 changes: 0 additions & 58 deletions TODO.md

This file was deleted.

6 changes: 0 additions & 6 deletions app/.classpath

This file was deleted.

23 changes: 0 additions & 23 deletions app/.project

This file was deleted.

2 changes: 0 additions & 2 deletions app/.settings/org.eclipse.buildship.core.prefs

This file was deleted.

Loading

0 comments on commit f98fa75

Please sign in to comment.